The US National Institute of Standards and Technology have produced a Blockchain Technology Overview (NISTIR 8202) with an excellent flowchart addressing “Do You Need A Blockchain?”:
Hiring is hard to do well, but easy to do badly.
Determining exactly how to do it well is hard and requires nuance and context. But avoiding common mistakes is much easier.
Fundamentally, hiring processes reflect the organisation.
If you’re on the hiring side, think hard about what you’re putting in front of people who want to join you, if that will attract and select for the people you want, and correctly filter those you don’t.
If you’re on the other side of the table, think about the people who created the system you’re going through, the kind of things they’re setting up for success and failure, and the kind of people who’ve likely got through the process before you.
I’m a big advocate of using services like Heroku or AWS Elastic Beanstalk rather than running your own servers where you can, but sometimes it’s the right thing to do. For my home automation setup, I want to keep as much of it on the local network as possible, so this was definitely one of those situations.
So I bought an Intel NUC - it’s small, fairly quiet so I can run it indoors, and yet fairly powerful (Core i5, 4GB RAM, 1TB HDD in the one I bought).
I want Infrastructure as Code. I want a documented reproducible version-controlled setup. One perspective is that this is overkill for “just a home server” - my position is that it’s even more necessary, because I’m going to fiddle with it sporadically, it’s highly unique, and it’s only me maintaining it. However I still want a fairly minimal setup.
In the past I’ve done things like writing a bunch of Puppet or Ansible and/or running a suite of VMs, but this can get tedious fast - hoping that a module exists, handling dependencies, encoding installation instructions as config management, etc.
What I really want is akin to a self-hosted PaaS that I can easily deploy on a single box, and that allows me to define apps declaratively.
Thanks to Docker, Docker Compose, Traefik, and a bit of systemd config, that’s fairly straightforward!
DNS is great. Having to remember IP addresses sucks.
Being able to plug in a device to my home network, give it a name, then be able to reach it as
$name.local? That’s great.
(One day I’ll set up local authoritative DNS but realistically that’s unlikely to happen soon)
How does that work though? And what do you do when it doesn’t?
Based on Richard Morgan’s book of the same name, Netflix’s Altered Carbon is “dystopian science fiction cyberpunk” that looks at life, thrills and crimes in a world where bodies are just “sleeves”, and consciousness is stored in a small disk embedded in the spine.
It’s dark, it’s graphic, and it’s gripping.
Images can contain metadata. This is useful for things like “when was this photo taken?” or information about the camera, or a text description of what the image contains.
Many cameras (e.g. your iPhone) will include GPS coordinates of where the photo was taken. This is useful for things like “where were we when we had that amazing pizza?” or “where was that beautiful sunset??”.
This is much more problematic when the selfie you just shared includes the precise location of your home.
“Do you smell burning?”
“No, really, what’s that smell??”
Turns out the Raspberry Pi that ran my home automation hub had kicked the bucket, shuffled off its mortal coil, run down the curtain and joined the choir invisible - in a rather hot and fragrant fashion!
Sigal is yet another simple static gallery generator
You give it a directory of photos, it spits out HTML/CSS/JS for a nice static gallery you can point a browser at.