• 0 Posts
  • 22 Comments
Joined 1 year ago
cake
Cake day: July 2nd, 2023

help-circle
  • It’s gotten a lot better in recent years tbf in terms of those kinds of resources. Beginner recommended languages like Python are still a pain because it’s super easy for a beginner to bork how they set it up, but on the whole there’s plenty of online code sandboxes and other ways to get started.

    Your point is definitely valid though. Why on earth would we want someone who’s just showing an interest in programming to write their own compiler??? Wtf? If someone wants to get into baking you don’t send them out into the fields for 6 months to grow some wheat.

    When I was a kid I mucked around with html and css to make some GeoCities sites. I decided I wanted to learn how to code so I got a book from the library called “how to code games for beginners” or something. The thing never told you how to set up an IDE or compile the game. So I was just frustratingly typing out the code examples into notepad without a clue as to what to do. I think this was during the dialup era so it wasn’t like there was a wealth of info online.

    I ended up abandoning programming for quite a few years. It just seemed like nonsense because writing graphics libs for C in notepad does feel like nonsense to a child. I wonder what life would be like if I had some better resources at that moment in time and decided you continue pursuing it.


  • Unadjusted pay figures is an interesting one. On the one hand adjusted pay scales makes it really clear whether people are being paid the same for the same work, on the other hand unadjusted could potentially highlight areas for improvement in terms of adjustments for new mothers etc. That’s tricky though as if the father works for a different company and can’t take time off to look after a new born then the mother will likely have to. Why not release both along with the weightings?





  • Yeah there were multiple times when the allies could have pushed Germany over before they started steamrolling. When they remilitarised the Rhineland, as you said when they occupied the Sudetenland, and even when they invaded Poland.

    France started pushing into Germany once war was first declared and there was basically nothing in front of them. Most of the tanks etc were in Poland. If they had continued pushing then it might have all ended there. Instead they pulled back to the Maginot line and the rest is history.




  • just install its 22.04 release and you should be good until April 2027

    I think this is a really great point. A lot of the Linux community really like distrohopping and running bleeding edge systems, but if you want to just use your machine to get stuff done you can’t go wrong with the LTS versions of stable distros.

    Pop 22.04 has been rock solid for me and I won’t be switching to cosmic until the issues are ironed out, my work laptop will be staying on Ubuntu 22.04 (with pop-shell) until the next LTS has been out for a while.

    Not having to worry about whether a rolling upgrade will bork your system is really nice. I think we should be suggesting LTS to all newbies as standard as it’s a much smoother experience.

    To OP: Pop is a great distro and the tiling window manager it comes with is absolutely fantastic. If you want a beginner friendly system which gets out of your way and let’s you actually use your computer it’s a fantastic choice. Getting used to the way gnome/pop-shell works and the workflows takes a little getting used to at first, but once it clicks it’s really hard to think of using anything else.

    Top tip: if you hit an issue with pop and googling for pop solutions isn’t working, 99% of the time just search for Ubuntu and you’ll find plenty of info about it.





  • Ah yep my bad, I was speaking generally. The image in the article is only a short section of highway but it does look like one of the 2 lane sections that are usually quite old. If they were more modern and built for higher speeds they’d have an even shallower curve and would probably be 3 lanes with a hard shoulder. If you drive on the Autobahn you’ll have a few moments where you notice the difference in road layout from those which more modern highways implement - the on and off ramps in particular can be a bit scary.


  • It’s not actually. It’s quite an old network so it was built before cars could go as fast as they can go now. There are surprisingly sharp corners and very short off ramps. If it were built from scratch today it would be even safer. Speed limits are bs outside of particularly tricky areas.



  • Yeah “why” comments are absolutely fine, “what” comments are useless at best and can be harmful at worst.

    I feel like this constant flood of “write comments” posts are from CS students who are told to comment everything by their lecturers. Descriptive variable and function names help explain the “what” of code pretty well most of the time.

    Sure with some old languages like C89 where you are limited in your variable name length you probably do need comments to explain wtf is going on, but most code bases aren’t as constrained.


  • Yeah it looks like the Union flag is next to Gabon on the android emoji flag picker. I think the country code is GB so it’s next to GA even though the name is United Kingdom. That might be what’s throwing people.

    The two US flag emojis are actually different Unicode emojis.

    The first is 🇺🇲 ‘U+1F1FA U+1F1F2’ and is for ‘U.S. Outlying Islands’.

    The second is 🇺🇸 ‘U+1F1FA U+1F1F8’ and is for ‘United States’.

    No malice, no bad code, no bugs or typos, this is just expected behaviour.


  • We test the shit out of our Apis. We do more API level/integration testing though.

    I.e. a test will be something like “if the db is in this state, and we hit this endpoint with these params, does it return what we expect and update the db correctly”.

    Our app is primarily about users maintaining stuff on big datasets with complicated aggregation and approval logic. So setting up a scenario and checking the app does what the business logic says it will do is what we want to know.

    It makes refactoring wayyyyy less painful to just know that the app will always behave itself. Rather than testing whether a function can add 1 + 2 correctly, we can test each endpoint does what it’s supposed to do.

    It gives us loads of confidence that the backend is doing what it’s supposed to. If you do a huge refactor you don’t need to worry about whether you broke the test or if the test is failing correctly. If the tests all pass everything is working as it should.

    Downside is longer test execution times (because a temporary db needs set up) when running the full suite. Worth the trade off for us though.