Johz's recent activity

  1. Comment on What's a culture shock that you experienced? in ~talk

    Johz
    Link Parent
    This is common in the UK as well. I remember being told off by my parents regularly for using "he" or "she" about someone in the room - they'd say something like "and who's 'she', the cat's...

    This is common in the UK as well. I remember being told off by my parents regularly for using "he" or "she" about someone in the room - they'd say something like "and who's 'she', the cat's mother?".

    Although I think it was already dying out as a cultural norm by the time we were kids, and wasn't very strictly enforced. I can't imagine many people follow the rule today - I'm sure I don't!

    15 votes
  2. Comment on What are some stories of progressivism gone wrong in implementation? in ~society

    Johz
    Link Parent
    Possibly, although I'm sceptical. My impression here is that most people buying SUVs have plenty of choice of other cars, but want larger ones because they feel safer — you're higher up on the...

    Possibly, although I'm sceptical. My impression here is that most people buying SUVs have plenty of choice of other cars, but want larger ones because they feel safer — you're higher up on the road, you're more protected, and if you've got children in the back, it feels like the car will have more structural integrity to protect them.

    2 votes
  3. Comment on What are some stories of progressivism gone wrong in implementation? in ~society

    Johz
    Link Parent
    Ah, I see the confusion, I'm talking about the increase in size in cars sold to the European market, not European brands per se. Like I (and you) said, cars sold in Europe are typically not the...

    Ah, I see the confusion, I'm talking about the increase in size in cars sold to the European market, not European brands per se. Like I (and you) said, cars sold in Europe are typically not the same models sold in the US, which means that they should not have the same regulatory pressures. Despite this, the trends are similar on both sides of the Atlantic.

    5 votes
  4. Comment on What are some stories of progressivism gone wrong in implementation? in ~society

    Johz
    Link Parent
    But European cars have also grown over the years, and as I understand it do not have the same regulatory pressure towards larger vehicles. And European cars tend to be made for the European...

    But European cars have also grown over the years, and as I understand it do not have the same regulatory pressure towards larger vehicles. And European cars tend to be made for the European market, so I wouldn't imagine the American market pressures would affect the European ones so much.

    Small cars still exist (perhaps that is a difference) but the rise of SUVs and unnecessarily large cars in urban/suburban areas is still pronounced, just like in the US.

    4 votes
  5. Comment on US strikes Venezuela and says its leader, Nicolas Maduro, has been captured and flown out of the country in ~society

    Johz
    Link Parent
    It's worth distinguishing between the implicit and explicit policies of the Nazi regime. Implicitly, Hitler seems to have been talking about eradication from very early on — it is a logical...

    It's worth distinguishing between the implicit and explicit policies of the Nazi regime. Implicitly, Hitler seems to have been talking about eradication from very early on — it is a logical conclusion from the rhetoric in Mein Kampf and similar early writings on Judaism from the '20s, and there are quotes from Hitler's followers that seem to suggest that they were privately hopeful of something like a full genocide of the Jewish people. Later, in 1939, he threatens the eradication of Jews entirely if a new world war breaks out.

    That said, these were all more implicit threats of (and hopes for) extermination, rather than any actual policy, which did only really start coming into force in 1941. And it doesn't look like the later policies were built on any concrete plans beforehand, but rather were a new strategy at that time. In terms of explicit policy, it seems the goal was more to make Jewish life in Germany so hostile that the Jews would voluntarily leave. It was only later that forced deportation (such as the Madagascar plan), and then mass murder were considered as viable options.

    So perhaps a better statement would be: eradication was a Nazi belief and talking point from very early on, albeit not an official goal until the war started in earnest. Still this is very different from the Japanese internment camps in the US which were not connected to an existing policy of racial hatred, and where there was no real impetus towards eradication at all.

    6 votes
  6. Comment on US strikes Venezuela and says its leader, Nicolas Maduro, has been captured and flown out of the country in ~society

    Johz
    Link Parent
    There were clear differences at the start, though. The Nazis wanted to eradicate the Jews entirely from day one. They did not start with the same processes they ended with, but they started with...

    There were clear differences at the start, though. The Nazis wanted to eradicate the Jews entirely from day one. They did not start with the same processes they ended with, but they started with the same goal, and were explicit about that goal. The Jews were the primary enemy and scapegoat of Nazi propaganda, and they devoted a lot of resources to attempting to demonstrate this and embed it in people's minds.

    In contrast, the American approach was primarily about controlling the population. You are completely right to call this out as a form of genocide, but there is almost no scenario where the Americans would have started up the same industrialised murder machinery. The goals from the outset were completely different. As a result, so were the methods. There is plenty of racist anti-Japanese propaganda from this time, but you'll notice that is largely about denigrating the Japanese and promoting American ways — the Japanese are weak and stupid, and we're the strong, manly heroes. This is in stark contrast to German propaganda about Jews, which included these elements, but also consistently portrayed Jews as the greatest enemy of the Germans — the great, all-powerful bankers and merchants who controlled everything and had fingers in all the pies. The closest American propaganda gets to this is stuff like Dr Seuss's "fifth column" cartoon, but primarily the Americans saw the Japanese as a foreign power, rather than the same kind of insidious menace that the Germans presented the Jews as.

    To be clear, I'm not trying to defend the US here. Americans at the time did have real issues with racism and antisemitism, and you're right to call out the eugenics movement as something that popular amongst the American elite and intellectual classes around that time. The Japanese internment camps were absolutely a form of genocide, were driven by racism and ignorance, and were an atrocity that is dangerously close to being repeated in the US right now.

    But there are still huge differences between that and the Nazi goal of eradicating the Jews entirely, and there is a danger when we compare these sorts of things too lightly of underplaying the Holocaust and the atrocities surrounding it.

    10 votes
  7. Comment on US strikes Venezuela and says its leader, Nicolas Maduro, has been captured and flown out of the country in ~society

    Johz
    Link Parent
    It's worth being a bit careful about (3). The Nazis built concentration camps and interned people there based on perceived race, similarly to the Japanese internments in the US. But they also went...

    It's worth being a bit careful about (3). The Nazis built concentration camps and interned people there based on perceived race, similarly to the Japanese internments in the US. But they also went far beyond that - their concentration camps were murder houses with industrial efficiency. They deliberately attempted to eradicate the Jews (and others) that they had interned, and would not have willingly left any alive. This did not happen in the US - people died due to poor treatment, but the industrial scale of murder was never there.

    So yes, the Japanese internment was an act that echoed some of the actions of the Nazis, but with such different goals, processes, and outcomes that it is difficult to compare them beyond just the use of concentration camps.

    13 votes
  8. Comment on YouTube is awful. Please use YouTube, though. in ~tech

    Johz
    Link Parent
    I think you're thinking of Threads there. Bluesky is only interoperable with the Fediverse via third-party bridges. Bluesky is built on a different protocol, but is very committed to the idea of a...

    I think you're thinking of Threads there. Bluesky is only interoperable with the Fediverse via third-party bridges. Bluesky is built on a different protocol, but is very committed to the idea of a decentralised network, just in a different format and with different design parameters to the Fediverse.

    17 votes
  9. Comment on JustHTML is a fascinating example of vibe engineering in action in ~comp

    Johz
    Link Parent
    I wrote elsewhere about my skepticism of the process, but I didn't feel up to reviewing the Python code in much detail. But JS is my jam! The code is kind of all over the place. The biggest flaw,...
    • Exemplary

    I wrote elsewhere about my skepticism of the process, but I didn't feel up to reviewing the Python code in much detail. But JS is my jam!

    The code is kind of all over the place. The biggest flaw, like you said, is a lack of type annotations. Simon said he wanted the code to run as an ES6 module when pulled into the browser, which is fair enough, but JSDoc is a good alternative in that case. Of course, there are no doc comments anywhere anyway, so guessing the public API, particular in terms of what options are available on which methods and what they do, seems to require reading the source code.

    The problem with the missing types is that it makes the rest of the code very difficult to follow. For example, there's a function attrListToDict that converts an array of attributes into object map. This function is written very defensively — it allows you to input essentially any JS value and it'll attempt to do the right thing. But it's not clear how defensive it really needs to be — if you look at the call sites, it's an internally-used function that, as far as I can tell, is always passed validated data. Most of that defensiveness is pointless.

    Even beyond the lack of types, there are lots of other oddities scattered around the codebase. Even in the attrListToDict function, the implementation is already kind of weird. Why is it using Object.prototype.hasOwnProperty? Almost certainly because Python requires things like key in dict or hasattr(obj, key) to avoid throwing exceptions. In JS, in cases like this, you can just do obj.key ?? default. Elsewhere, to pass optional parameters to functions and classes, sometimes you should pass object literals (fairly standard), sometimes different positional parameters (generally discouraged), and other times instances of specialised options classes. (This feels weird enough that I wonder if it's a quirk descended from porting the original codebase to Python, let alone porting the Python one to JS.)

    Then there's the project structure. Let's go back to attrListToDict and the file it's in — html5lib_serializer.js. This is a test utility — it formats the parsed tree so that it can be used in tests that use the html5lib test data. That's useful, but it's not really part of the source. It's also distinct from the toTestFormat function that exists in the serialize.js file, that does a similar thing but into an internal test format. Both of these are implemented within the src folder, so it's not clear that they're not part of the public API. (toTestFormat is even exported in index.js, which I don't really understand the logic behind — the comments imply that it is not meant to be part of the public API.)

    The test files are chaotic, each with their own style of writing tests, and none of them using anything useful like NodeJS's built-in test runner. The different output formats (including the test format) are written separately, and it's not clear how one could write their own output format if one wished. The is a chaotic mix of snake_case and camelCase, plus a bit of hyphen-case in some (but not all) file names. (The Node class explicitly has snake_case aliases of all the camelCase names, but no other class does.) There is a streaming parser that does not interact in any way with the rest of the library except for using the same underlying tokenizer, which means it's duplicating a whole bunch of the work from the main parser, and will be a pain to work with if you need streaming and want to generate some subset of nodes at the same time. There is an autogenerated entities-data.js file but no script to generate it. The whole thing has a low-level chaos to it, as if it's a five-year-old project maintained by a team of ten developers, as opposed to a couple of dozen relatively simple files worth of code.

    Like, this isn't the worst code I've ever seen, but it already feels like a legacy project, particularly with the disparate styles and how difficult it is to get much of an overview of what's going on. But I think they key part of that is that Simon doesn't really understand how the code works. In this case, he's been quite explicit about this being a one-shot prompt that ran for a few hours, where he then published the result. That's fair enough. But he also asks the question of whether it's responsible to publish this sort of stuff, presumably to NPM or similar, and I think the answer to that has to be no.

    15 votes
  10. Comment on Order of the Sinking Star | Official announcement trailer in ~games

    Johz
    Link Parent
    According to a post of Bluesky, it's taking a bunch of existing puzzle games with different mechanics, and then building on those with new puzzles that combine the different mechanics together....

    According to a post of Bluesky, it's taking a bunch of existing puzzle games with different mechanics, and then building on those with new puzzles that combine the different mechanics together.

    That said, I know very little about this, I'd just seen someone else repost that on Bluesky and then saw this thread.

    2 votes
  11. Comment on Humble Book Bundle: Adrian Tchaikovsky's Epic Fantasy in ~books

    Johz
    Link Parent
    He's also quite well known as a Warhammer author as well, I believe, but I'm less familiar with that.

    He's also quite well known as a Warhammer author as well, I believe, but I'm less familiar with that.

    1 vote
  12. Comment on Humble Book Bundle: Adrian Tchaikovsky's Epic Fantasy in ~books

    Johz
    Link
    @kfwyre, let's see how widely accessible this bundle is... 😅 A bundle of Adrian Tchaikovsky's fantasy epic fantasy books (specifically the Shadows of the Apt series, the Echoes of the Fall series,...

    @kfwyre, let's see how widely accessible this bundle is... 😅

    A bundle of Adrian Tchaikovsky's fantasy epic fantasy books (specifically the Shadows of the Apt series, the Echoes of the Fall series, and Guns of the Dawn). Amazingly, I don't think I've read any of these, despite having already picked up a couple of Tchaikovsky collections before, because the guy is a literal writing machine.

    The money goes to Cancer Research UK, and remember to adjust the sliders at the bottom of the page to make sure the money is going where you want it to!

    Also feel free to have a look at some of the other bundles - there's the Murderbot series again (I think this is the same deal posted here a few months ago), and a Doctor Who comics bundle that caught my eye when looking over the list.

    3 votes
  13. Comment on Modern Christmas carol renditions that aren't mediocre CCM? in ~music

    Johz
    Link Parent
    Ah yeah, sorry, I realised afterwards that that probably wasn't a very clear abbreviation unless you were familiar with the genre.

    Ah yeah, sorry, I realised afterwards that that probably wasn't a very clear abbreviation unless you were familiar with the genre.

  14. Comment on Modern Christmas carol renditions that aren't mediocre CCM? in ~music

    Johz
    Link Parent
    Looking into folk music is a great idea, you're right that there's a good amount of overlap and those are some great recommendations. And that O Holy Night is fantastic — just a completely...

    Looking into folk music is a great idea, you're right that there's a good amount of overlap and those are some great recommendations. And that O Holy Night is fantastic — just a completely different approach to the carol than you'd usually hear, but it works so well.

    1 vote
  15. Comment on Modern Christmas carol renditions that aren't mediocre CCM? in ~music

    Johz
    Link Parent
    Not really, I want to hear something different. But a lot of the stuff out there seems to come from the Contemporary Christian Music (CCM) scene, which has this really bland ultra-commercial...

    Not really, I want to hear something different. But a lot of the stuff out there seems to come from the Contemporary Christian Music (CCM) scene, which has this really bland ultra-commercial quality to it that makes everything it touches turn incredibly trite and dull. It's like listening to that cover of Hallelujah by Pentatonix, but if that was literally their entire range and everything they ever did sounded mostly like their cover of a song that someone else sang better.

    2 votes
  16. Modern Christmas carol renditions that aren't mediocre CCM?

    'Tis the season, and it's nice to sit down and listen to some traditional Christmas carols in a cozy candle-lit room with plenty of biscuits. And sometimes it's nice to hear more modern takes on...

    'Tis the season, and it's nice to sit down and listen to some traditional Christmas carols in a cozy candle-lit room with plenty of biscuits. And sometimes it's nice to hear more modern takes on these ancient (and not so ancient) classics.

    Unfortunately, whenever I look for this sort of thing, what I usually find is really bland CCM — some woman breathily singing "O Come All Ye Faithful" so slowly I can feel my life draining from me with every beat, a completely unnecessary modern bridge replete with painful key change, and so on. I know this stuff can be done right — Annie Lennox's Christmas album is a great example of taking classic carols and setting them to new music in such a way that it can completely change how you hear them. But finding more stuff in that vein is surprisingly hard.

    So does anyone here have any suggestions or ideas for modern takes on classic carols that actually try and do something interesting?

    21 votes
  17. Comment on Looking for a non-smart watch recommendation in ~tech

    Johz
    Link
    I will always recommend the concept of hybrid smart watches. These typically have much longer battery lives than conventional smart watches (~month typically), do the time thing really well...

    I will always recommend the concept of hybrid smart watches. These typically have much longer battery lives than conventional smart watches (~month typically), do the time thing really well (because it's just a normal clock face), and are usually a lot simpler in terms of functionality. It's the perfect combination where you'll get steps counts and the time, but it remains simple and looks elegant - it looks just like a real watch because it is just a real watch.

    Unfortunately, hybrid smart watches never really took off, so there's not really many companies to recommend. I have a Withings watch, and it's okay. It usually undercounts the step count, but you can mentally adjust for that and set lower goals and it's fine. The watch face gets quite scratched, but it's still readable. There's an app that's okay, and you can configure notifications if you want them, or set up alarms. It's fine, but it's not necessarily great. There used to be Fossil, but they've just given up on their hybrid line, so those are out. Garmin do a line of hybrid watches that are better if you're interested in sports tracking, but they also look like Garmin watches. Then there are a handful of small boutique companies that are typically more expensive and look nicer, but are typically more limited.

    I'll probably get the latest Withings watch when this one breaks, if the company is still making them. But it's not necessarily a great market for these kinds of watches right now, which is a shame because they're great and really underrated.

    TL; DR - if I convince enough people to buy the current range of okay hybrid watches, maybe they'll finally start making some good ones.

    8 votes
  18. Comment on Part of me wishes it wasn't true but: AI coding is legit in ~tech

    Johz
    Link Parent
    I agree that a lot of companies selling AI are overselling their capabilities. But that's always been true of people trying to sell you things. If you'd listened to MongoDB selling their database...

    I agree that a lot of companies selling AI are overselling their capabilities. But that's always been true of people trying to sell you things. If you'd listened to MongoDB selling their database software when they first started out, you'd be amazed that anyone would use anything else at all, because it could apparently do everything you wanted, and bring about world peace as a side-hustle. Obviously that was just sales nonsense, but it doesn't necessarily mean that MongoDB can't be useful for specific use-cases.

    I agree that claims that AI can generate an entire PR for you are mostly puffery, but I also don't think there's many people who seriously believe that, at least not without clear caveats about the nature and quality of those PRs.

    2 votes
  19. Comment on Part of me wishes it wasn't true but: AI coding is legit in ~tech

    Johz
    Link Parent
    I think that's a bit like saying "if your compiler is so good at pointing out the errors in my code, why doesn't it just correct them?". AI is not some magical monolithic tool that can do...

    I think that's a bit like saying "if your compiler is so good at pointing out the errors in my code, why doesn't it just correct them?". AI is not some magical monolithic tool that can do everything all at once. Some people might try and claim that, but some people are idiots - it's the same with microservices and NoSQL and serverless and all the rest, in that some people will promise you the world and be completely wrong, but that doesn't make the underlying tool useless.

    In this case, Google specifically trained a model to detect security bugs. I don't believe their system includes a general LLM, at least based on how old the project is. My impression is that it's classical ML stuff with a huge amount of training data. That system cannot fix bugs, but it can make finding them a lot easier. That is a useful task! You can't fix bugs without knowing where they are, and a lot of these old tools have a huge amount of very subtle code that is very difficult to analyse through conventional means.

    Beyond that, I think Google's approach here seems fairly fair. They are not demanding that work be done for them - they're just creating CVEs, which let people know about issues but don't necessarily mean that something needs to be fixed immediately. They're also sponsoring ffmpeg's development, as well as contributing to the project themselves. And the tools they're using here can be used (and I believe have been used) to find more serious issues as well that have been useful and important to fix.

    10 votes