• 1 Post
  • 179 Comments
Joined 3 years ago
cake
Cake day: June 14th, 2023

help-circle
  • 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!




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




  • If you’ve any suggestion on how to implement that, then it’s a million-dollar idea.

    The “I’m a human” test that only takes a few seconds and then lets you do what you like for an hour was always vulnerable to ‘auth farms’. Pay some poor bastards in the third world a pittance to pass the test a thousand times an hour, let the bots run wild. And the bots have gained the ability to pass the tests themselves, at least by boiling the oceans in some datacentre while the VC money holds out.

    Finding the people running the bots, fitting them with some very heavy boots and then seeing if they can swim in the deep ocean is probably needlessly cruel, but I’d be up for tarring and feathering a few. Once the videos got out, the rest might think harder about their life choices…


  • I dunno. Oxygen Not Included looks crisp on a 4K monitor. And it makes my job easier, being able to have an absolute tonne of code on-screen and readable. I reckon I could probably use an 8K monitor for those things.

    Yeah, I generally have FSR running on any 3D game made in about the last decade - even if I can run it at 4K at a reasonable framerate, my computer fans start to sound like a hoover and the whole room starts warming up. But upscaling seems a better solution than having separate monitors for work and play.




  • Interesting, but misguided, I think.

    If you’ve selected Python as your programming language, then your problem is likely either to do some text processing, a server-side lambda, or to provide a quick user interface. If you’re using it for eg. Numpy, then you’re really using Python to load and format some data before handing it to a dedicated maths library for evaluation.

    If you’ve selected Go as your programming language, then your problem is likely to be either networking related - perhaps to provide a microservice that mediates between network and database - or orchestration of some kind. Kubernetes is the famous one, but a lot of system configuration tools use it to manipulate a variety of other services.

    What these uses have in common is that they’re usually disk- or network- limited and spend most of their time waiting, so it doesn’t matter so much if they’re not super efficient. If you are planning to peg the CPU at 100% for hours on end, you wouldn’t choose them - you’d reach for C / C++ / Rust. Although Swift does remarkably well, too.

    Seeing how quickly you can solve Fannkuch-Redux using Python is a bit like seeing how quickly you can drive nails into a wall using a screwdriver. Interesting in its way, but you’d be better picking up the correct tool in the first place.