Digital Dustbusting

tl;dr: I’m tidying up and consolidating my personal hosting; I’ve made a little progress, but I’ve got a way to go – fortunately I’ve got a sabbatical coming up at work!

At the weekend, I kicked-off what will doubtless be a multi-week process of gradually tidying and consolidating some of the disparate digital things I run, around the Internet.

I’ve a long-standing habit of having an idea (e.g. gamebook-making tool Twinebook, lockpicking puzzle game Break Into Us, my Cheating Hangman game, and even FreeDeedPoll.org.uk!), deploying it to one of several servers I run, and then finding it a huge headache when I inevitably need to upgrade or move said server because there’s such an insane diversity of different things that need testing!

Screenshot from Cheating Hangman: I guessed an 'E', but when I guessed an 'O' I was told that there was one (the computer was thinking of 'CLOSE'), but now there isn't because it's switched to a different word that ends with 'E'.
My “cheating hangman” game spun out from my analysis of the hardest words for an optimal player to guess, which was in turn inspired by the late Nick Berry’s examination of optimal strategy.

I can simplify, I figured. So I did.

And in doing so, I rediscovered several old projects I’d neglected or forgotten about. I wonder if anybody’s still using any of them?

Hosting I’ve tidied so far…

  • Cheating Hangman is now hosted by GitHub Pages.
  • DNDle, my Wordle-clone where you have to guess the Dungeons & Dragons 5e monster’s stat block, is now hosted by GitHub Pages. Also, I fixed an issue reported a month ago that meant that I was reporting Giant Scorpions as having a WIS of 19 instead of 9.
  • Abnib, which mostly reminds people of upcoming birthdays and serves as a dumping ground for any Abnib-related shit I produce, is now hosted by GitHub Pages.
  • RockMonkey.org.uk, which doesn’t really do much any more, is now hosted by GitHub Pages.
  • EGXchange, my implementation of a digital wallet for environmentally-friendly cryptocurrency EmmaGoldCoin, which I’ve written about before, is now hosted by GitHub Pages.
  • Sour Grapes, the single-page promo for a (remote) murder mystery party I hosted during a COVID lockdown, is now hosted by GitHub Pages.
  • A convenience-page for giving lost people directions to my house is now hosted by GitHub Pages.
  • Dan Q’s Things is now automatically built on a schedule and hosted by GitHub Pages.
  • Robin’s Improbable Blog, which spun out from 52 Reflect, wasn’t getting enough traffic to justify “proper” hosting so now it sits in a Docker container on my NAS.
  • My μlogger server, which records my location based on pings from my phone, has also moved to my NAS. This has broken Find Dan Q, but I’m not sure if I’ll continue with that in its current form anyway.
  • All of my various domain/subdomain redirects have been consolidated on, or are in the process of moving to, to a tiny Linode/Akamai instance. It’s a super simple plain Nginx server that does virtually nothing except redirect people – this is where I’ll park the domains I register but haven’t found a use for yet, in future.
Screenshot showing EGXchange, saying "everybody has an EGX wallet, log in to yours now".
I was pretty proud of EGXchange.org, but I’ll be first to admit that it’s among the stupider of my throwaway domains.

It turns out GitHub pages is a fine place to host simple, static websites that were open-source already. I’ve been working on improving my understanding of GitHub Actions anyway as part of what I’ve been doing while wearing my work, volunteering, and personal hats, so switching some static build processes like DNDle’s to GitHub Actions was a useful exercise.

Stuff I’m still to tidy…

There’s still a few things I need to tidy up to bring my personal hosting situation under control:

DanQ.me

Screenshot showing this blog post.
You’re looking at it. But later this year, you might be looking at it… elsewhere?

This is the big one, because it’s not just a WordPress blog: it’s also a Gemini, Spartan, and Gopher server (thanks CapsulePress!), a Finger server, a general-purpose host to a stack of complex stuff only some of which is powered by Bloq (my WordPress/PHP integrations): e.g. code to generate the maps that appear on my geopositioned posts, code to integrate with the Fediverse, a whole stack of configuration to make my caching work the way I want, etc.

FreeDeedPoll.org.uk

Right now this is a Ruby/Sinatra application, but I’ve got a (long-running) development branch that will make it run completely in the browser, which will further improve privacy, allow it to run entirely-offline (with a service worker), and provide a basis for new features I’d like to provide down the line. I’m hoping to get to finishing this during my Automattic sabbatical this winter.

Screenshot showing freedeedpoll.org.uk
The website’s basically unchanged for most of a decade and a half, and… umm… it looks it!

A secondary benefit of it becoming browser-based, of course, is that it can be hosted as a static site, which will allow me to move it to GitHub Pages too.

Geohashing.site

When I took over running the world’s geohashing hub from xkcd‘s Randall Munroe (and davean), I flung the site together on whatever hosting I had sitting around at the time, but that’s given me some headaches. The outbound email transfer agent is a pain, for example, and it’s a hard host on which to apply upgrades. So I want to get that moved somewhere better this winter too. It’s actually the last site left running on its current host, so it’ll save me a little money to get it moved, too!

Screenshot from Geohashing.site's homepage.
Geohashing’s one of the strangest communities I’m honoured to be a part of. So it’d be nice to treat their primary website to a little more respect and attention.

My FreshRSS instance

Right now I run this on my NAS, but that turns out to be a pain sometimes because it means that if my home Internet goes down (e.g. thanks to a power cut, which we have from time to time), I lose access to the first and last place I go on the Internet! So I’d quite like to move that to somewhere on the open Internet. Haven’t worked out where yet.

Next steps

It’s felt good so far to consolidate and tidy-up my personal web hosting (and to rediscover some old projects I’d forgotten about). There’s work still to do, but I’m expecting to spend a few months not-doing-my-day-job very soon, so I’m hoping to find the opportunity to finish it then!

× × × × ×

Christmas Cheer with Bytemark

For the last eight winters, we at Three Rings have sent out Christmas cards – and sometimes mugs! – to our clients (and to special friends of the project). The first of these was something I knocked up in Photoshop in under an hour, but we’ve since expanded into having an official “company artist” in the form of our friend Ele who each year takes the ideas that the Three Rings volunteer team have come up with and adapts them into a stunning original design that we’re proud to show off to our clients.

Three Rings' 2009 Christmas card
Our first Christmas card, in 2009, was knocked-up quickly and printed only a couple of days before the Christmas posting deadline, but it kicked-off a tradition that’s grown every year since.

This year’s card is still winging its way to some of our more-distant customers, as Three Rings is used in six countries, and so it doesn’t yet appear on our gallery of previous cards. But here’s a sneak peek:

Three Rings' 2017 Christmas card
Last week, I helped stuff a little under 400 of these into envelopes and put stamps on them all for delivery to our UK customers. (Our international customers needed slightly more-careful attention.)

For most of Three Rings life, our server’s been hosted by the awesome folks at Bytemark. We had a brief dalliance with Amazon Web Services for a while but had a seriously unsatisfying experience and we eventually came crawling back to Bytemark (complete with a conveniently-timed Valentines’ Day message expressing our love for them and our apologies for our mistake). What I’m saying is that we’ve made a habit of sending seasonal greetings to our buddies at Bytemark – and this Christmas was no different – but what surprised us was what we received from them this year:

Christmas card - and cake! - from Bytemark.
Bytemark sent us not only a Christmas card but a fancy-looking fruitcake! Thanks, Bytemark!

Not only did Bytemark send us a delightful Christmas card (with a pixel-art picture of Sana literally burning the logs) but they included a fabulous-looking fruitcake. Thanks for bringing a little bit of extra cheer to our Christmas, Bytemark!

× × ×

One of my favourite hosting companies is recruiting using anonymous online interviews, in an effort to combat industry sexism

This link was originally posted to /r/girlsgonewired. See more things from Dan's Reddit account.

The original link was: https://blog.bytemark.co.uk/2015/05/20/bytemark-is-hiring-by-anonymous-interview

So, in May 2015, we made the huge decision to start an anonymous recruitment process. The biggest change compared to tradition recuiting is this – your first two interviews are truly anonymous. We conduct them over instant messaging and run our skills tests remotely too.

You won’t even have to give your real name or a CV in the initial stages. We don’t know anything about you that you don’t choose to present in the interview.

That makes us work hard for explicit goals. We want to know about your:

Most valuable skills
Ability to learn
Ability to work effectively in a team

We make decisions based on those factors. Avoiding the “X factor” of cultural fit, which we’ve seen as an excuse for all kinds of implicit and explicit bias across industries.

We also want to be respectful of your time, your enthusiasm and your interests – we’ll test not just what you know but what you can learn. Our focus is on letting you put your abilities to the fore, without fear that you’ll be judged on irrelevant things. We define the job, we define the skills, and we want to test those without bias.

Our culture comes from you, the best person for the job at the end of the process. Of course we still need to meet you, we want to meet you. But we will start our interviews on the solid foundation of anonymity. Only at the final stages will you be asked to come in for a face-to-face interview.

In Praise Of Dreamhost’s Backup System

I’ve been impressed, again, by Dreamhost, who provide hosting for this and many of my other websites. During a fit of stupidity, I accidentally rm -rf *‘d Abnib Gallery. For those of a less techy nature, I deleted it: pictures and site and all. Whoopsie.

So I thought: perhaps they have a tape backup or something. I filled in their support form, which asks lots of useful questions like “How much do you know about this?”, with options ranging from “I don’t know anything, hold me by the hand,” to “TBH, I probably know more about this than you do!” and a nice scale of rating the urgency, as well as indicating how many calls they’re dealing with right now and a link to an outstanding issues page.

Within half an hour I’d been e-mailed back by a tech support person, who explained in exactly the appropriate level of detail that hourly and daily backups (with grandfather-father-son fallbacks) of everybody’s home directory are made into their hidden .snapshot directory. I took a peep, and lo and behold there was my backup. Very impressed.

Now, if only they’d improve the reliability and speed of their Rails hosting, I’d offer them a round of oral sex.

Reply #13108

Sian wrote:

Going to be registering a website thingy tonight to mess around with. Any hints/tips/advice from all you people who know about this stuff would be gratefully received. I am, after all, officially computer illiterate.

Register your domain name with somebody respectable (won’t rip you off or otherwise fuck up) like Easily, who’ll give you a domain name (whateveryoulike.co.uk) for as little as £9.99/2 years.

As far as hosting is concerned, I can’t say a bad word about the fantastic DreamHost, who now provide hosting for me, Paul, Claire, Matt (from SmartData), JTA & Ruth, Statto… etc. etc.

I’m not sure if it still works, but if you sign up for their Crazy Domain Insane offer ($9.95/month), paying for the first year up-front, and use the promo code “777”, they’ll give you the first YEAR for the price of the first month. Which is nice. And as it includes a free .com domain name of your choice, that’s pretty fab, too (saves you heaps of cash, no commitment to stay with them more than a year anyway, etc.). They’re pretty damn good.

Drop me an e-mail if you want any specific help/advice on such geekibits. Will see what I can do.