Building Your Own Consensus

With billions of computers talking to each other daily, how do they decide anything? Even in a database or server deployment, how do the different computers that make up the database decide what values have been committed? How do they agree on what time it is? How do they come to a consensus?

But first, what is the concept of consensus in the context of computers? Boiled down, it is for all involved agents to agree on a single value. However, allowances for dissenting, incorrect, or faulting agents are designed into the protocol. Every correct agent must answer, and all proper agents must have the same answer. This is particularly important for data centers or mesh networks. What happens if the network becomes partitioned, some nodes go offline, or the software crashes weirdly, sending strange garbled data? One of the most common consensus algorithms is Raft. Continue reading “Building Your Own Consensus”

Reflection On A Decade Of Hackerspace Expansion

A few days ago I was invited to a party. Party invites are always good, and if I can make it to this one I’ll definitely go. It’s from a continental European hackerspace, and it’s for their tenth birthday party. As I spent a while checking ferries and flights it struck me, a lot of the spaces in my sphere are about a decade old. I went to London Hackspace’s 10th earlier in the year, and a host of other British hackerspaces aren’t far behind. Something tells me I’ll be knocking back the Club Mate and listening to EDM of some form at more than one such party in the coming year.

For most of the decade since I found the then-recently-established mailing list of my local hackerspace I’ve spent a lot of my time involved in more than one space. I’ve been a hackerspace director, a member, and many roles in between and I’ve seen them in both good times and bad ones. Perhaps it’s time to sit back and take stock of that decade and ask a few questions about hackerspaces. How have they fared, what state are they in now, and where are they going?

Continue reading “Reflection On A Decade Of Hackerspace Expansion”