• 6 Posts
  • 20 Comments
Joined 6 months ago
cake
Cake day: January 3rd, 2024

help-circle
  • QT is a cross platform UI development framework, its goal is to look native to the platform it operates on. This video by a linux maintainer from 2014 explains its benefits over GTK, its a fun video and I don’t think the issues have really changed.

    Most GTK advocates will argue QT is developed by Trolltech and isn’t GPL licensed so could go closed source! This argument seems to ignore open source projects use the Open Source releases of QT and if Trolltech did close source then the last open source would be maintained (much like GTK).

    Personally I would avoid Flutter on the grounds its a Google owned library and Google have the attention span of a toddler.

    Not helping that assessment is Google let go of the Fuschia team (which Flutter was being developed for) and seems to have let go a lot of Flutter developers.

    Personally I hate web frontends as local applications. They integrate poorly on the desktop and often the JS engine has weird memory leaks



  • It was a mixture of factors.

    Data was to be dumped into a S3 bucket (minio), this created an event and anouther team had built an orchestrator which would do a couple of things but eventually supply an endpoint a reference to a plain/txt file for analysis.

    For the Java devs they had to [modify the example camel docs.](https://camel.apache.org/manual/rest-dsl.html) and use the built in jackson library to convert the incoming object to a class. This used the default AWS S3 api to create a stream handle which fed into the OpenNLP docs. .

    The Python project first hit a wall in setting up Flask. They followed the instructions and it didn’t work from setup tools. The Java team had just created a new maven project from the Intelij but the same approach didn’t work for the Python team using pycharm. It lost them a couple days, I helped them overcome it.

    Then they hit a wall with Boto3, the team expected to stream data but Boto3 only supports downloading, there was also a complexity issue the AWS SDK in Java waa about 20 lines to setup and a single line to call, it was about 50 lines in Python. On the positive side I got to explain what all the config meant in S3.

    This caused the team anouther few days of delay because the team knew I used a 350MiB Samsung TV guide to test the robustness and had to go learn about Docker volume mounting and they thought they needed a stateful kubernetes service and I had to explain why that was wrong.

    Basically Python threw up a lot of additional complexity and the docs weren’t as helpful as they could have been.



  • You do, but considering the scales they process data I suspect Google would be better building Go tooling (or whatever the dominate internal language is).

    A few years back I was trying to teach some graduates the importance of looking at a programming language ecosystem and selecting it based on that.

    One of my comparison projects was Apache OpenNLP/Camel vs Flask/Spacy.

    Spacy is the go to for NLP, I expected it to be either quicker to develop, easier to use, better results or just less resources.

    I assigned Grads with Java experience Spacy and Python experience OpenNLP.

    The OpenNLP guys were done first, they raved about being able to stream data into the model and how much simplier it made life.

    When compared with the same corpus (Books, Team emails, corporate sharepoint, dev docs, etc…) OpenNLP would complete on 4GiB of RAM in less than a second on 0.5vCPU. Spacy needed 12GiB and was taking ~2 seconds with 2vCPU. They identified the same results…

    Me and a few others ended up spending a day reading the python and trying to optimise it, clearly the juniors had done something daft, they had not.

    It rather undermined my point.


  • My expectation is whatever the solution it needs to dockerise and be really easy to deploy via docker compose or Kubernetes so people can quickly and easily set up their own.

    The front end is effectively static files so I would probably choose Apache or Express (whichever gives me a smaller docker image)…

    For the backend I would choose Java for Spring Boot. An Alpine image with OpenJDK and the app is tiny. Spring has a library for every kind of interface making them trivial to implement but the main reason is hibernate.

    Hibernate (now Spring Data) was the first library for being able to switch out databases without having to change code (its all config). A lot of mastodon instances struggle with the resource requirements of elastic search so letting small instances use something like postgres would seem ideal.

    I have noticed Go/Rust still expect you to write or manage a lot of stuff Spring gives away for free. Python is ok if your backend is really tiny but there is a lot of boilerplate in how Python libraries work so complex projects get hard to manage and I assume interacting with the fediverse will add complexity.




  • While there is nothing wrong with trying something new, the point of using a franchise is to leverage the existing fanbase.

    If you can’t get the fanbase enthusiastic you have a problem. Since you aren’t leveraging the existing fan base and the franchise will alienate some of your new target fan base.

    Replying to every comment that expresses an ambivalent or pessimistic view about a new show doesn’t change that. It just makes this space seem hostile to discussion.









  • stevecrox@kbin.runtoFediverse@lemmy.worldWhat's going on with kbin.social?
    link
    fedilink
    arrow-up
    62
    arrow-down
    1
    ·
    edit-2
    5 months ago

    The developer behind KBin seems to have issues delegating/accepting contributors.

    If you look at the pull requests, most have been unreviewed for months and he tends to regularly push his branches once complete and just merge them in.

    That behaviour drove the MBin fork, where 4-5 people were really keen to contribute but were frustrated.

    To some extent that would be ok, its his project and if he doesn’t want to encourage contributions that is his decision but…

    KBin.social has gotten to the size where it really should have multiple admins (or a paid full time person). Which it doesn’t have.

    The developer has also told us he has gone through a divorce, moved into his own place, gotten a full time job and now had surgery.

    Thats a lot for any normal person and he is going through that while trying to wear 2 hats (dev & ops) each of which would consume most of your free time.

    Personally I moved to kbin.run which is run by one of the MBin devs


  • It does but for the 90’s/00’s a computer typically meant Windows.

    The ops staff would all be ‘Microsoft Certified Engineers’, the project managers had heard of Microsoft FuD about open source and every graduate would have been taught programming via Visual Studio.

    Then you have regulatory hurdles, for example in 2010 I was working on an ‘embedded’ platform on a first generation Intel Atom platform. Due to power constraints I suggested we use Linux. It worked brilliantly.

    Government regulations required anti virus from an approved list and an OS that had been accredited by a specific body.

    The only accredited OS’s were Windows and the approved Anti Viruses only supported Windows. Which is how I got to spend 3 months learning how to cut XP embedded down to nothing.



  • There will always be someone who is beating you in a metric (buying houses, having kids, promotions, pay, relationships, etc…) fixating on it will drive you mad.

    Instead you should compare your current status against where you were and appreciate how you are moving forward

    As for age

    During university my best mate was 27 who dropped out of his final year, grabbed a random job, then went to college to get a BTEC so they could start the degree.

    It was similar in my graduate intake, we had a 26 year old who had been a brickie for 5 years before getting a comp sci degree.

    The first person I line managed was a junior 15 years older than me, who had a completely different career stream. They had the house, kids, had managed big teams, etc… honestly I learnt tons from them.



  • Wine attempts to translate Windows calls into Linux, its developed by Codeweavers whose focus is/was application compatibility.

    Valve took Wine and modify it to best support games, the result is called Proton. For example:

    Someone built a library to convert DirectX 9-11 calls and turn them into Vulkan ones, it was written in C++ and is called DxVK.

    Wine has strict rules on only C code and their directx library handles odd behaviour from old CAD applications.

    Valve doesn’t care about that, they care that the Wine DirectX library is slow and buggy and DxVK isn’t. So they pull out Wines and use DxVK.

    There are lots of smaller changes, these are ‘Proton Fixes’, sometimes Proton Fixes are passed on to Wine. Sometimes they can’t but discussion happens and a Wine fix is developed.





  • Plex has been baking in features like that to help you see what is on other streaming channels, etc…

    Personally the whole point of Plex for me was it was a container for my existing DVD/Blu Ray collection, while Plex has added some really cool features. Increasingly they keep resetting the dashboard to try and force engagement with new features, it feels a bit user hostile and I’ve been switching to Jellyfin (same idea but entirely open source and self hosted).

    From a discovery perspective, personally I’ve found good content tends to create its own word of mouth style buzz.

    For example at the moment you can’t go near twitter, reddit, work, BBC News, etc… without someone talking about ‘Mr Bates vs The Post Office’. Recently the risa community kept mentioning Babylon 5 so I picked up all 5 seasons for £20 and watched it through. Similarly the Risa community really seems to love Star Trek prodigy so I’ll probably give that a go at some point.