• 0 Posts
  • 360 Comments
Joined 2 years ago
cake
Cake day: June 9th, 2023

help-circle

  • Maybe we’re now at a point where it’s a good choice for more techy people to use, and that adoption will mean more work gets done on it.

    I installed it because I wanted to see how well it would run games. But, I haven’t actually played many games on it, not because they don’t work (they work great), but because I’ve found it’s so good at everything else too. It made it easy to get around to some projects I’d been putting off.

    My machine plays all kinds of fairly recent games extremely well, but Microsoft is ditching Windows 10 support in less than a year, and has decided this machine doesn’t qualify for Windows 11. I bet there are lots of other people in the same boat. Bazzite doesn’t have to be perfect, but if it can be better than throwing away your old machine, there could be a lot of people switching soon.


  • Yeah, +1 for Bazzite.

    It looks like it’s really designed for Linux beginners. They’ve done a solid amount of work sanding off the rough edges.

    As someone who has been using Linux for decades, I’m also impressed with it for a development system. I chose Bazzite because I wanted to be able to play games easily, but since I installed it a month or so ago, I’ve barely played any. I’ve installed a few to make sure they work, but I got interested in another project once I installed it, so for me it’s been a machine used to set up and administer a Kubernetes cluster, as well as doing some Go / Javascript development.

    In the early 2000s, I was one of those guys who ran Gentoo and liked building all my own software on my own machine so that it was perfectly tweaked for what I wanted to do. But, these days, I really like having an OS that’s stable and gets out of my way, so I can focus on more interesting things.


  • Bazzite, a gaming-focused Linux distribution, is designed to work really well with Steam. One drawback is that if you have a game installed in Windows on a Windows drive, you can’t use it from Linux steam. But, there is a way to have games accessible to both operating systems. I haven’t done this, yet, but I’m probably going to try it this week.

    It involves installing a Windows driver that supports BTRFS partitions.

    Here’s the video guide I found.


  • If OP is a gamer and not too comfortable with Linux, Bazzite is a good choice of distribution.

    It’s a so-called “Atomic” distro. Basically what that means is that it works more like Android / iOS than Windows or a traditional Linux distribution.

    The base system including drivers and key applications is built as an image by Fedora. Every 2 weeks or so, they release a new one, and Bazzite users get the new one the next time they reboot. Everything in that base image is tested to work together, so you don’t get weird incompatibilities. You can still install all the other software you want, but you tend to do it using Flatpaks rather than rpms/debs. (For someone who doesn’t know what that means, Bazzite is a nice OS because that’s something you don’t need to learn right away.)

    Bazzite is meant to be something that you can install on a SteamDeck, or another handheld gaming PC, but it also works great for desktop machines. But, because it’s meant for handheld machines, they’ve worked extra hard to sand away some of the rough edges.

    If you’re a more advanced user, Bazzite is still good because you can still do almost everything you’d do on a normal distribution, you’re just discouraged from doing things that affect the base image because it makes updates slower and means they’re not guaranteed to work. I actually really like some of the things you’re encouraged to do in Atomic distros that you wouldn’t do normally. For example, using distrobox as a way to install certain kinds of dev tools. I currently have one project I’m running in an Ubuntu distrobox and another I’m running in a Fedora distrobox. It keeps some of the tools isolated to the “box” where they’re needed. I haven’t used Fedora much lately, so it’s fun to have the more familiar Ubuntu environment in one, and then the other one where I can experiment and learn.

    For someone who doesn’t play games, Bazzite probably isn’t ideal, but I’d still recommend an Atomic build. There are downsides, but unless you’re the kind of person who really likes building their own kernel and making sure it’s optimal for their system, it’s so nice to have a stable base image so you can focus on the other stuff.



  • If you go somewhere where the main language isn’t English, you should make an effort to learn the local language. Yes, there are places like the Netherlands where virtually everybody speaks English well, but not putting in the effort means you’ll always be an outsider.

    Things are smaller outside the US: vehicles, apartments, kitchens, refrigerators, etc. It can take a while to get used to not having the same space you’re used to. Also, some devices like clothes driers are rare.

    Europeans take recycling seriously. In some places you have to pay to throw away garbage, while recycling is free. But, recycling is sometimes a real effort, like there’s not a “glass and plastics” box, you have to take the clear glass to one place, the brown glass to another, etc.

    Tipping mostly doesn’t exist. That means that if you go to a restaurant you don’t normally have one assigned waiter. Whoever is free will help you, which tends to speed things up a lot. OTOH, since they’re not working for tips, the waitstaff don’t feel the need to fake a smile, pretend to be your friend, etc. Some Americans think that comes off as unfriendly.

    Electricity is more expensive (part of the reason for the smaller appliances) so sometimes will completely unplug things that an American would just turn off (like a TV).

    Businesses don’t have the same convenient hours as in the US. In some places, like Switzerland, they almost completely shut down on Sunday. 24 hour places are much more rare.

    The European take on freedom of speech is different. You are simply not allowed to say certain things. Some things, like libel laws, are much more friendly to the person who is the target, rather than the “free speaker”.

    Oh, and smoking is still much more common in Europe, and it can be pretty disgusting. In the US it has been largely eliminated from public spaces, and smokers are confined to small smoking areas. Even in private homes people will often smoke outdoors either to be considerate or because their landlord doesn’t allow smoking indoors. In Europe, smoking is still common indoors in many places, and… ugh.





  • I believe that, because test scripts tend to involve a lot of very repetitive code, and it’s normally pretty easy to read that code.

    Still, I would bet that out of 1000 tests it writes, at least 1 will introduce a subtle logic bug.

    Imagine you hired an intern for the summer and asked them to write 1000 tests for your software. The intern doesn’t know the programming language you use, doesn’t understand the project, but is really, really good at Googling stuff. They search online for tests matching what you need, copy what they find and paste it into their editor. They may not understand the programming language you use, but they’ve read the style guide back to front. They make sure their code builds and runs without errors. They are meticulous when it comes to copying over the comments from the tests they find and they make sure the tests are named in a consistent way. Eventually you receive a CL with 1000 tests. You’d like to thank the intern and ask them a few questions, but they’ve already gone back to school without leaving any contact info.

    Do you have 1000 reliable tests?


  • That’s the problem. Maybe it is.

    Maybe the code the AI wrote works perfectly. Maybe it just looks like how perfectly working code is supposed to look, but doesn’t actually do what it’s supposed to do.

    To get to the train tracks on the right, you would normally have dozens of engineers working over probably decades, learning how the old system worked and adding to it. If you’re a new engineer and you have to work on it, you might be able to talk to the people who worked on it before you and find out how their design was supposed to work. There may be notes or designs generated as they worked on it. And so-on.

    It might take you months to fully understand the system, but whenever there’s something confusing you can find someone and ask questions like “Where did you…?” and “How does it…?” and “When does this…?”

    Now, imagine you work at a railroad and show up to work one day and there’s this whole mess in front of you that was laid down overnight by some magic railroad-laying machine. Along with a certificate the machine printed that says that the design works. You can’t ask the machine any questions about what it did. Or, maybe you can ask questions, but those questions are pretty useless because the machine isn’t designed to remember what it did (although it might lie to you and claim that it remembers what it did).

    So, what do you do, just start running trains through those tracks, assured that the machine probably got things right? Or, do you start trying to understand every possible path through those tracks from first principles?




  • Yes, my point is that they don’t have a political ideology.

    Like, the IRA was bombing things because the goal was Irish independence. They wanted the UK out of Northern Ireland.

    Al Qaeda was bombing things to get the US out of the middle east. They wanted no US troops on Arab soil.

    Boko Haram wanted an area to be fully under Muslim law, with no western books or education.

    That’s the normal definition of terrorism, a group that’s terrorizing the population in pursuit of a political aim of some kind. It isn’t normally considered terrorism if there’s no ideology involved, and it’s just in defence of a criminal enterprise.

    In the case of the narcos, I don’t know of any political aim. I don’t think they have any particular ideology, other than “we want to keep making money selling drugs to Americans”. To a certain extent, I can see how they could be considered terrorists because they’re terrorizing the population, the courts and the government to get their way. But, in the past there has normally been a line drawn between a terrorist organization and a criminal organization.


  • Terrorist / Terrorism seems to be a magic word in US law and policy.

    If a country has organized crime in their country it’s no big deal. If there are close ties between the rulers and the criminals, that’s unfortunate.

    But, if the criminals are now labelled as terrorists, then you get to go on the state sponsors of terrorism list, which comes with all kinds of sanctions and restrictions.

    If you look at so-called “terrorist” organizations, there’s almost always elements of “terrorist” activities, but also evidence of other random criminal activities, and often legitimate political activities too. Take Sinn Fein, the political arm of the IRA. Some of their funding came from fuel and drug smuggling. So, where you draw the line between a “terrorist” group and a criminal group is pretty arbitrary. I think most people would say that the Mexican cartels are primarily criminals though. While they do kill people in ways that are intended to send a message, the message is generally “don’t mess with our profits” rather than some political ideal.

    Every country has some corruption, definitely including the US. So, what happens if a Mexican politician was accepting bribes from Narcos and passing legislation favourable to them? When does that become the state sponsoring terrorism?

    Putting the “terrorist” label on Mexican cartels seems like a prelude to doing things that violate Mexico’s sovereignty. If the cartels are merely violent criminal organizations, it’s a problem for Mexico’s government. If they’re “terrorists” then the US can lob missiles into Mexico, because it has a long-standing policy of violating the sovereignty of countries that “harbor” (i.e. contain) terrorists.


  • Yeah, I love that one.

    “Try” is too hopeful. “fuck_around” makes it clear that you know what you’re doing is dangerous but you’re going to do it anyhow. I know that in some languages wrapping a lot of code in exception blocks is the norm, but I don’t like that. I think it should be something you only use rarely, and when you do it’s because you know you’re doing something that’s not safe in some way.

    “Catch” has never satisfied me. I mean, I know what it does, but it doesn’t seem to relate to “try”. Really, if “try” doesn’t succeed, the corresponding block should be “fail”. But, then you’d have the confusion of a block named “fail”, which isn’t ideal. But “find_out” pairs perfectly with “fuck_around” and makes it clear that if you got there it’s because something went wrong.

    I also like “yeet”. Partly it’s fun for comedic value. But, it’s also good because “throw” feels like a casual game of catch in the park. “Yeet” feels more like it’s out of control, if you hit a “throw” your code isn’t carefully handing off its state, it’s hitting the eject button and hoping for the best. You hope there’s an exception handler higher up the stack that will do the right thing, but it also might just bubble all the way up to the top and spit out a nasty exception for the user.