Dillon Lareau

Electrical and computer engineer, maker, and general nerd.

The History of Cluster Counter

19 Mar 2018

Humans complicate everything…

I’ve been populating my website’s “Projects” section, and when it came time to make a page for Cluster Counter, I basically started typing out the story below. Realizing that most of it was actually very far from the technical details of the project, which is what I wanted on that page, I decided to make the story this post instead.

A bit of background information. Carnegie Mellon offers a number of computing facilities to students, one of which is a number of computer labs where students can go to get work done. Some have their stigmas and to an extent their social cliques, but none more than the Gates Hall 3000 cluster. The Gates Hall 3000 cluster or “G3K” or “cluster” as many of the inhabitants called it, was special for a few reasons, not the least of which being that almost all of the walls in the cluster were whiteboards. The most prominent thing about this cluster though, was that it was a self dubbed “social cluster”, a place to hang out, chat, rest, discuss interesting thoughts/problems, and maybe if you are lucky, get work done. This social culture was a far cry from the normal library-esque feeling of most other computer clusters on campus, and this allowed many many silly things to come to pass in this cluster.

It isn't nearly that spacious in real life.
It isn't nearly that spacious in real life.
An example of what the walls usually looked like.
An example of what the walls usually looked like.

One of the silly things that came to pass started when I brought a small mechanical counter that I had salvaged from an old piece of machinery into cluster.

V0.1: What it would have looked like when new.
V0.1: What it would have looked like when new.

How it worked was simple, depress and release the lever on the right and it would increment the display by one. If you turned the knob on the left it would reset by first setting the numbers to 11111, then 22222, all the way up to 99999 where it would wrap to 00000. I first brought it into cluster as sort of a fidget toy for myself, the mechanical action and click of the lever each time it incremented was a nice mental distraction. Soon though, someone noticed the small device and wanted to see what it was and try it for themselves. After it got passed around most of the group that was in cluster at that point, someone said “I wonder how high we could get it as a group”. Thinking that was a good idea, but not wanting the relatively small device to get thrown away, I screwed it to a block of wood and made its purpose obvious. Cluster counter was born:

V1.0: Not the prettiest thing.
V1.0: Not the prettiest thing.

Like the lead-in says though, humans complicate everything. The local anarchists of cluster quickly got to spinning the reset knob to either clear the progress or set it to something like 11111 then click it a few times to make it look like we had achieved 11148. Feeling that was against the spirit of the challenge, I came up with a quick fix.

V1.1: 'Security patch'
V1.1: 'Security patch'

People could still somewhat reach in the end of the nut and twist the knob as evidenced by the value in the photo, but it stopped most activity of the reseting variety. As with a few things that come into cluster, the counter got a bit of a makeover and it also received some additional tamper-proofing.

V1.2: 'UI update'
V1.2: 'UI update'

And that is how it pretty much stayed for about a month until it went missing during some renovation and failed to return. Jump forward two months, students were returning from winter break, and some people were missing the counter. I was itching for a small electronics project at this point, so of course I made an electronic version. Lacking a nice pushbutton for a physical interface, this version would be web based. See the project page for more details, but it was basically a number of seven segment displays hooked up to an Intel Edison that would poll a file on the internet every second or so and update the number on the display. Along with some helpful text telling people where to go, and a tiny web script, the counter was reborn.

V2.0: Now with more electrons!
V2.0: Now with more electrons!

I can’t believe I thought people would be reasonable about this. Within a week it was a battle between me and the computer literate members of cluster to see who could out-script the other person. On one side we had me intending to have the only incrementing of the counter done by a human clicking an HTML button, on the other side, we had people thinking it would be funny to have a script increment the counter to something like 12345. In the end, I couldn’t overcome the torrent of scripters and gave in, cluster counter was the wild west for it’s remaining few months in 3K. In the end, it was an overeager power supply that killed the Edison running it, and when taken out for repairs it never came back. It now suffers the same fate as many of my projects, sitting on a shelf in my workshop, waiting for a chance to be pulled out and be useful again.