Skip Navigation
InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)ST
Posts
10
Comments
58
Joined
1 yr. ago
  • I'd actually argue Python stops people learning how to solve problems.

    I love teaching juniors and have done so for 10 years but I've noticed in the last 4-5 years since Python became the popular choice at universities Graduates aren't learning anything about Static Types, Memory Management, Object Oriented Programming, Data Encapsulation, Composition, Service Oriented Architecture, etc..

    I used to expect most graduates to have a mixed grounding in those concepts and would find excuses for them to work on a small UI projects. I would do this as it gets them used to solving a small problem and UI's give instant feedback. As Python became dominate university teaching language the graduates aren't spending their time learning Typescript, Angular, HTML, etc.. but instead getting overwhelmed by the concept of types.

    Those concepts I want them to learn were created to help make solving problems easier and each has their strengths and weaknesses but most graduates are coming through only knowing how to lay out a small amount of procedural logic using Python and really struggling to move beyond that.

  • 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

  • Web Development @programming.dev
    stevecrox @kbin.run

    Theming Storybook

    I have been building several react components as libraries to use as part of a bigger idea.

    While writing up documentation I realised the examples I provided were Stories I had created for Storybook to test the look of the components.

    The storybook MDX documentation seems to provide a nice way to document your stories.

    But I am hitting an issue, ideally I would like the Storybook Sidebar/view to be embedded into my page layout (for consistency) or failing that themed to use the same colours/icons/etc..

    The documentation seems out of date with Storybook 8 using a different structure and while I have tried to populate a ThemeVar object it seems several of the fields need specific unspecified input.

    Has anyone done anything like this before and how well did it work for you?

    Linux Gaming @lemmy.world
    stevecrox @kbin.run

    CD Copy Protection & WINE

    Recently I have been trying to play my old games (Worms, Sims, Black & White, etc..) on my Steam Deck.

    I created an ISO of the various CD's via the dd command, but I have noticed Crossover doesn't support ISO. I needed to mount the ISO to a location.

    This worked to install the game but fails copy protection. If I connect a USB DVD drive it detects the disc and works but this isn't particularly helpful.

    Does anyone know what I should be setting or doing so the game sees the ISO or ISO mount as the disc?

    A lot of the games I want to play simply don't have a steam version to buy

  • 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.

  • If you have the freedom try Typescript.

    The tsx files are almost identical to jsx except for the need to define the field types your ingesting.

    While thats a little extra work, it allows Visual Studio Code to perform deeper analysis and provide much more helpful contextual hints.

    I grew to love JSX and tried TSX out of interest and you couldn't convince to go back to pure JS

  • 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.

  • I agree Grian shenanigans are fantastic.

    I am currently working my way through Mumbo's S6 and the best episodes so far have Iskall and Grian in them.

    The thing I have noticed it Mumbo isn't really pressuring himself on a build. He has just kept focus on the storage system because he is finding it fun.

    I thought Grian was at his best with the barge, his episodes had a flow where he would resource, stock the bardge, do a "small" build/project and then shenanigans.

    I am not sure that flow is sustainable but he was clearly having fun.

    At the moment it just seems he is increasingly beating himself up on being a builder and needing to build the most epic base ever.

  • SpaceX are on track to launch 130 times this year. The industry competitors launch 6-12 times per year.

    I suspect the higher incident rate is related, since you will need to manufacture, roll out, etc.. much more often.

    The article also talks about most the incidents being in booster recovery. Only 2 Space competitors do that,

    Blue Origins sub orbital booster always returned to launch site and at best managed monthly launch. This rocket hasn't launched in more than a year.

    Rocket Lab perform ocean recovery but only launched 11 times last year and only recovered the booster twice.

    So its hard to really compare

  • I have listened and as the seasons go on I get increasingly worried about him. He is increasingly showing signs of burn out so clearly his flow isn't working for him.

    Listen to season 7 as he talks about the back of the mansion. He is feeling self pressure to complete the back and he is getting fustrated at himself.

    Its the same with the Ally, you can hear how excited he is at the start and as the season progresses anything to do with the ally he talks about like an unpleasant chore.

    With the stones other hermits try to intervene to help him, his reaction there really doesn't seem a bit. It sounded a lot like the panic caused by burn out.

    He clearly loves being on the SMP and his shenanigans and ideas are fantastic and clearly a lot of fun for him. I want him to stick around and think unless he learns how to break up work so he can find joy in all his builds he will loose that joy

  • Minecraft @lemmy.world
    stevecrox @kbin.run

    Lets talk about Grian..

    I recently started watching Grian's hermit craft season playlists and watching them back to back, it feels like Grian is burning himself out as he repeats the same mistake.

    TLDR; he keeps getting stuck planning huge mega builds that require so much grinding he gets stuck in procrastination cycles. He needs to break things down into small pieces (a building, tunnel, etc..) and learn to iterate towards a vision.

    In each season he will quickly jump to mega scale for any project (the Tower, The Mansion, The Ally & The Entity). The issue with each project is any significant progress requires a huge amount of grinding and you see his avoidance of the main base gets worse with each season.

    We do see large scale projects and the Entity and Barge actually shows the problem.

    The barge started small and iteratively enlarged as the number of items increased, he then created 'big plans' schemed to get extra space and never fulfilled them. The next iteration became too much of a grind an

    Selfhosted @lemmy.world
    stevecrox @kbin.run

    How are you making services remotely accessible?

    I need help figuring out where I am going wrong or being an idiot, if people could point out where...

    I have a server running Debian 12 and various docker images (Jellyfin, Home Assistant, etc...) controlled by portainer.

    A consumer router assigns static Ip addresses by MAC address. The router lets me define the IP address of a primary/secondary DNS. The router registers itself with DynDNS.

    I want to make this remotely accessible.

    From what I have read I need to setup a reverse proxy, I have tried to follow various guides to give my server a cert for the reverse proxy but it always fails.

    I figure the server needs the dyndns address to point at it but I the scripts pick up the internal IP.

    How are people solving this?

    Star Trek Social Club @startrek.website
    stevecrox @kbin.run

    Star Trek Lower Decks S4?

    I have been waiting on Star Trek Lower Decks Season 4 to be released on Blu Ray for months, does anyone know where I can buy it?

    Amazon listed it last year and it turns out that was in error and searching lists the release as April 16th and yet I can't find it in any where.

    I am in the UK

  • Nah Linux Mint is a Kia Ceed.

    Ubuntu is a Ford Focus, they successfully stole the volvo estate market (Debian). The car was fun, good value and very practical. It was everywhere. Then Ford started increasing the size, weight, price, etc.. killing the point of the Focus.

    So along comes Kia trying to make a competitor in the Ceed.

    In theory the Ceed is a great car, its super cheap, lots of cabin space, nippy, the inside has every modern convenance, but....

    • It plays engine noises via speakers that aren't aligned with what you are doing
    • The boot space is rubbish, so 5 people can happily travel in the car you barely fit a suitcase in it
    • There is an steering sensitivity button that stays on at 70 MPH with no indication on the display
    • A Vauxhall Nova just out accelerated you

    Your left wondering why anyone is bothering with hot hatchbacks these days as you climb into your volvo

  • Debian would be a Volvo Estate, its the boring practical family choice, the owner is soneone boring like an architect or a financial advisor.

    Arch is a Vauxhall Nova, second hand battered owned almost exclusively by teenage lads who spend a lot of time/money modifying it (e.g. lowering so it can't go over speed bumps, adding a massive exhaust to sound good but destroys engine power).

    Fedora is something slightly larger/more expensive like a Ford Focus/VW Golf/Vauxhall Astra owned by slightly older lads. The owners spend their time adding lighting kits and the largest sound systems money can buy.

    Slackware is clearly a Subaru Impreza, at one point the best World Rally Car but hasn't been a contender for a while. Almost all are owned by rally fans who spend fantastic amounts of time tinkering with the car to get set it up an ultimate rally car. None of the owners race cars.

    OpenSuse is a Nissan Cube, its insanely practical. It should be the modern boring family choice, but it manages to ve too quirky for your architect while not practical enough for van drivers.

    I don't know the other distros well enough.

    I run Debian btw

  • UK Politics @feddit.uk
    stevecrox @kbin.run
  • I would argue this is good journalism, you have a noted economic expert that the SNP tried to hire and is pro independence give his opinion on the SNP independence plans from an economic perspective.

    He thinks they are pretty disastrous.

  • UK Politics @feddit.uk
    stevecrox @kbin.run

    Sir Keir Starmer reveals plans for new public energy company during Wales trip | ITV News

    Labour has pledged more than £8bn into energy company if it wins UK General Election as Sir Keir Starmer tries to "get Putin's boot of our throat." | ITV News Wales

    UK Politics @feddit.uk
    stevecrox @kbin.run
    UK Politics @feddit.uk
    stevecrox @kbin.run
  • When AMD launched Ryzen they deliberately offered way more I/O bandwidth than Intel.

    The first generation Ryzen CPU's used RAM frequency that could cause performance issues if you used low frequency RAM. That got fixed in the 3000 series.

    There are a small number of Ryzen CPU's which end with "3D," it means they had 3D Cache memory and its supposed to add rediculous performance in certain situations. Phoronix runs tons of benchmarks on CPU and GPU.

    The only Intel instructions AMD haven't implemented is AVX-512 and AVX-10. No one uses AVX-512 as Intel CPU's get so hot they performance throttle so much its faster to not use the extension. AVX-10 is something new Intel released this year to get around that.

    AMD does support AVX2 which a lot of Audio/Video products do use.

  • You are far worse than the people you are claiming to act against.

    Lots of people can feel something is a problem and struggle to articulate it. So you have to take people on a case by case basis.

    OP talks about how they feel diverse characters are shoe horned in or badly written. Ask them to provide an example.

    When they can't, then call them out. They are a bigot and deserve scorn.

    If they can provide an example, help them understand the issue and use appropriate language.

    Calling someone out who genuinely feels there is a problem doesn't stop them feeling there is a problem. These people will go looking for some who acknowledges their feelings.

    Which is how you make a bigot

  • I think they are saying most attempts at diversity come from middle aged white guys and just end up being poorly done and so detract from the game/story.

    Similar to how 00's electronic companies just painted it pink to appeal to women or why South Park added Token.

    So arguing for more diversity within the companies themselves

  • Permanently Deleted

  • I wouldn't get massively excited.

    Python is a scripting language, its shines when you want to write a stand alone file which takes an input and performs a task. Scripting languages are great to learn as a first language and so python is wonderful for non developers.

    The issue you hit is the build management solutions for Python are kind of broken and these help support and encourage good development practice so a lot of Python projects end up a collection of scripts rather than a mature project. You can have good projects but...

    In raw benchmarks Java has 90% of the performance of C/C++, but in reality Java is more performant because developers get bogged down in memory management on C/C++ and they get more time to optomise in Java as a result. I'm not sure where Rust will come out to be honest.

    Python benchmarks at 50% the performance of Java, in reality I've found code ends up slightly worse because Python is procedural, library support and streaming is poorly supported.

    Take library support, Spring really rose to prominese because of 'hibernate' which was a way to abstract talking to different databases through objects, you could switch from PostgreSQL to Oracle through config. Spring data has dumbed this down so I define a plain old Java object and Spring will generate everything I need.

    Python expects you to hand craft SQL statements and every database extends SQL slightly differently, so i need to write SQL for every operation and manage/own it. So the win in being able to quickly read/write to a database (since you don't have to learn anything about Spring) is quickly ruined because of the all the boilerplate and error handling you now have to write.

  • Permanently Deleted

  • Every programming languages has communities built around them.

    Its becoming clear Rust solves a lot of C/C++ type problems and the embedded communities are definitely shifting over.

    Apache is the primary community for Java, a quick look at their project list shows it's entirely web servers, data engineering and clustered projects for distributed computing.

    Personally if you asked me to solve this problem I would use Spring Boot with various Spring libraries for talking to the caddy, user control, etc... Looking at the project, its exactly what they have done

  • Every big UK company I have worked for doesn't own its building. They will typically agree to rent a building for 5-20 years at a fixed rate (longer times if its being purpose built for them) .

    So I would expect this is paying out the rest of the rental agreements for a building to escape the building lease.

    It is to do with financial reporting and the way asset and operational costs are reported.

  • Java @programming.dev
    stevecrox @kbin.run

    Bootstrap Themed Maven Site

    I find Maven sites look incredibly dated and I couldn't find a nice way to integrate other auto documentation tools such as MKDocs.

    So I've written a series of Apache Velocity templates which integrate Bootstrap, I've tried to respect Bootstrap components and the layout/structure of Apache projects (you'll find various configurations under 'layouts').

    You can apply various bootstrap themes to it to improve it dramatically.