• 1 Post
  • 186 Comments
Joined 3 年前
cake
Cake day: 2023年6月14日

help-circle
  • An interesting assertion. A full install of 3.11 was about 8 MB or so, and all of the 8086 / -186 / -286 / -386 code will have been thrown away a long time ago. I doubt there’s much of PROGMAN left, and all the fonts and art assets are long superseded. So in terms of total code, it can’t be much. But on the other hand, the code that you write for an event loop or to handle driver interrupts hasn’t changed conceptually very much in that time. Most programmers would reimplement the basics in a very similar way, so there’s not much point in redoing it.

    When I used to work in the water industry, we still had programmable logic controllers (PLCs) controlling pumpsets from the 1950s. The last person that could have modified them had retired and since died more than 30 years before. But deciding which pumps to run in order to best fill a reservoir is not logic that needs updating every day, not even every decade. Still working fine, don’t touch it. So I still laugh at my colleagues that can’t touch code that was written a few years ago in an unfashionable library. That’s not tech debt. Try, written by your grandparents for CPUs that had stopped being made before you were born.

    And I remember 3.11 being perfectly good enough at the time, anyway. Wasn’t any Linux at that point.



  • I just don’t see the thinking here.

    • buy a decent steak
    • leave it out at room temperature for an hour so that it will cook properly. During this time, prepare the vegetables, potatoes, sauce that will go with it.
    • cook the steak for two minutes a side in a heavy frying pan on high heat
    • let the steak rest somewhere warm for ten minutes while you finish assembling everything else.

    I could spend a fucking fortune, enough to live on for months, to cook my steak upright in a toaster for 90 seconds instead, for a worse end result, and it would save me zero time, because cooking the steak is not the time-critical step here.

    Would only save you time if you’re buying the kind of steak that can be cooked in 90 seconds, and taking it straight from the fridge, cooking it, and then putting it in sandwich, and anyone who thinks that sounds a good idea frankly doesn’t deserve to have a decent steak.


  • They’re quite versatile computers for general purposes, but their i/o performance is dreadful. Mine all max out at about ten megabytes per second. That will not do, for server purposes.

    Fortunately, there’s businesses all over that are chucking out all their old mini PCs since they won’t run Win11. I got an extremely decent one for £20 and it’s my new home server. Absolutely storms it, while just sipping at electricity.





  • We can only hope so.

    I’ve suggested to my team a few times that we should start a new business developing “Atlassian, but good”. They’re up for it. So many of our wider business have never used “anything but Jira”, and they can’t see it for the steaming pile of shite that it is. Not just that it’s a bad tool for developers, QE, project management or customer support, but they couldn’t imagine anything that’s better in any way, or how it would look if it didn’t have so many issues.


  • Yep. Arch on my personal multi-use laptop, Arch on my work Java-development laptop, Arch on my gaming PC, Arch on my home Forgejo / DNS / NAS server. Just easier to not have to remember how to do things in different ways, plus my home server can efficiently act as a repo cache.

    Did have ALARM installed on the home server back when I used a raspberry pi, and while that’s an amazing project, a pi is just a bit underpowered for some uses. Got a mini PC extremely cheap since it wouldn’t support Win11, but it runs Linux like a champ.


  • Awesome page, thanks. Have bookmarked.

    Harfbuzz though? That’s going to take some replacing. Hopefully someone will fork an earlier version. The thing that it does (accurate multi-script font shaping) is difficult to do; requires a lot of rule-of-thumb knowledge that’s unlikely to be possessed by a single person, needs a lot of collaboration.


  • I’ve installed both Arch (systemd) and Void (runit) on the same laptop as an experiment to see whether you could have them both coexisting on the same filesystem. (Which you can - main difficulty is keeping their kernel names separate in /boot.) There was very little difference between them in time-to-desktop. Arch was faster, if anything. And I run more services on a desktop than I would on a server.

    Choosing init scripts over systemd is fine for philosophical reasons or if you prefer it for maintenance, but speed isn’t an issue. Init scripts are simpler, but systemd goes to great efforts to start things in parallel. Critical servers should be load-balanced and redundant anyway so that you can restart them for updates; whether they take a second longer to start-up doesn’t matter.



  • There’s some very important transatlantic cables that come ashore in New Jersey; data centres built there will have excellent links to both the Eastern US and a lot of Europe, making it quite a desirable location.

    Data centres have a few constraints on their locations. Network connections, of course, and power and water for cooling. Their margins are also a bit dubious (Ed Zitron did an excellent investigation in a recent article) but they benefit from low taxes and sweetheart deals with the local municipalities. Doesn’t take much to make that deal look shaky and be rid of the DC. Well done though NJ, keep it up!



  • Which is strange, because Azure’s documentation is complete dogshit.

    We were trying to solve something at work (send SMTP messages using OAuth authentication, not rocket science) and Azure’s own chatbot kept on making up non-existent server commands, rest endpoints that don’t exist, and phantom permissions that needed to be added to the account.

    Seriously; fuck Azure, fuck Copilot. Made a task that should have taken hours, take weeks.


  • Each package has an average of 1.1 Gb of binaries? Maybe delete a few of the old versions, then. But I think the most serious ask there is the network infrastructure - lots of big downloads around the world soon add up.

    The Arch linux package is about 150 Mb; they’ve a few larger ones, but most come in at a few megabytes. (Have just checked my Pacoloco shared cache - average of 773 packages is 5.8 Mb. That serves a network server, a gaming desktop, my personal development laptop and my work development laptop, so it’s a cross section.)


  • The female ones don’t smell too bad - ‘rodenty’ but not too pungent.

    The males are extremely whiffy. Very musky, akin to BO, gets into everything.

    My grandad used to keep them as working ferrets, for flushing rabbits out of their warrens, and fed them on leftover rabbit carcasses. You could smell that from quite a distance.

    The babies are incredibly cute - size of your thumb, very soft. The adults are also cute, but have sharp claws and a nasty bite when they’re annoyed. They’re faster than you might expect, too - can really cover the distance when they get their bounce on.



  • Audio codecs like MP3 usually do a Fourier transform to move the sound into the frequency domain, discard any frequencies that you’re unlikely to notice, and encode ‘rate of change’ for the remaining ones. So the encoding problem is usually sound with fast changes in intensity or frequency, which is basically what percussion is.

    System is quite percussion heavy, so will sound bad.

    Recently moved from Spotify to Qobuz, because fuck Dan Ek, and the fact that they’ve got better bitrates across the board really makes the difference for jazz and jazzy stuff. Neglected, sounds crap on Spotify. Sounds great on Qobuz. But that’s the change from ‘bad’ to ‘quite good’ bitrates; additional bits are very much a case of diminishing returns.