Mainly, I'm not sure if mariadb and postgresql data volumes can just be "moved" between AMD64 and ARM64 architectures of if I'm gonna have to dump/reload them all.
It's gonna be interesting to see what breaks in the move to ARM 64 (not amd, whoops)
I never ever knew this song had a video. Weird.
Building out a new server means finding a new one-word Shihad song title to use as a hostname.
Names I've used in the last ten years: churn -> killjoy -> silvercup -> screwtop
So my new Graviton AMD64 server that I'll move secateur and all my docker containers to is called "stations".
OMG, am dying!!!
Someone used the bug GitHub refused to fix, that allows you to add a commit to a repo you don’t control... to upload YouTube-dl to the DMCA request repo on GitHub.
hey @aurynn is this just a rule for the site? "You can't ask people how they voted"
I don't think that's a law or regulation except for actually *at* the polling places.
I think I just realise that most of the music I listened to when I was younger was written to make me feel strong emotions. Metal, grunge, angry stuff, soulful stuff, bluesy stuff.
A lot of the music I listen to these days is to *prevent* myself from feeling strong emotions. Chill-out stuff, instrumental stuff, ambient stuff, atmospheric stuff.
I'm ten days in to Dry July! Last night was our big office party and celebration with an open bar with delicious craft beers.
I had lemon, lime and bitters. I'm happy to make the sacrifice but I do wish for more interesting alternatives!
I'm raising money for several New Zealand cancer charities, please support me and throw in a donation! It's to a damned good cause and I have 21 days to go!
Hey everyone, Sharesies is hiring a few intermediate / senior devs. I would LOVE IT if you applied. If you're thinking about it but you're not sure for any reason, don't hesitate to reach out with questions! Apply here https://www.sharesies.nz/jobs
I had two million profiles taking up about 2gb.
Copying all the interesting fields out of the profile object into regular database columns straight in to the 'account' table will mean a ton less IOPS (which is the real constraint I've got), and only takes 300mb or so.
Now that I've committed to a reserved instance for a while, I have to make Secateur scale by making it smarter, not just throwing more cloudy money at it.
To that end, I just chopped off about 75% of its database size without losing any data.
Previously, I was saving the JSON object of every Twitter user's profile as a PostgreSQL JSONB field in its own table
JSONB is fantastic, and awesome when you need it, but it's grossly inefficient compared to normal tuples.
I wrote about trying to wrest some small part of my data back from Twitter.
What it took to delete my 'like' history.
So I found myself playing with -- and learning about -- the save-vs-unsafe ways you can decouple PostgreSQL transaction commits from fsync() on disk.
PostgreSQL gives you a lot of options, some of which are dangerous, and some of which aren't. It's interesting how much you can tune.
Recently someone signed up to https://secateur.app and proceeded to try and block basically all of Twitter. My poor little server fell over and died twice as they blocked over 2.5 million Twitter accounts.
Interestingly, the constraint isn't CPU or even the Twitter API. It's the IOPS of an EBS storage volume being used for PostgreSQL commits.
Oh man, a CSS stylesheet that looks exactly like LaTeX. This is the closest I've come in years to wanting to throw away my blog and replace it with static-site generation (again).
It might seem obvious that if you value something, you'll make an effort to get better at it. What's less intuitive is that if you make an effort to get better at something you're not good at, you'll learn its value.
A paid, early access, strongly moderated Mastodon instance hosted entirely in Aotearoa New Zealand.