Yesterday a part of me died; my server, who’s helped me greatly over the course of past 8~ish years, is gone.
Her name was
cocaine (with following servers named
eric, so you might get the gist of my convention),
and her story begins around the year 2012.
Back then my grandparents were still alive, and my grandma decided to get me quite a costly present: my very first own laptop, a Samsung 350V5C.
Core i3, 4 GB of RAM, and - if I recall correctly - 256 GB of HDD. Objectively not a computing-power monster, but nonetheless a game-changer for me.
It served me well: I’ve been doing a lot of Pascal programming, a lot of PHP (which later landed me my first job), some Arduino; I’ve also been playing Battlefield 3 (800x600 x minimum details), and lots of other games.
Since I was a tinkering kinda guy, not once have I unscrewed and screwed the entire machine - out of all the memories, I remember breaking the connector of keyboard’s ribbon cable the most vividly, mainly because it left a permanent mark on my workflow:
(in case you don’t see it: there’s supposed to be a piece of plastic on top of the connector, to "catch" the cable and prevent it from drawing out)
From that point on, I’ve had to keep a piece of paper under the keyboard’s ribbon cable, ensuring it reliably pushes
the cable’s pins up the connector. Not long ago after, it became a customary thing that the keyboard started
malfunctioning out of the blue at least once a week (think:
backspace), making me re-do all the
paper-under-the-ribbon thingie all over.
Eventually I’ve moved on to a new computer, with improved components, and Samsung landed in a box for a few months.
In 2017, in search of work, I’ve relocated from my hometown to Kraków; I took both of my laptops with myself, although - because of my constant tinkering - the Samsung one was at that point pretty much just a motherboard with a display, unusable for a day-to-day work.
Some time after I’ve got cable internet installed, I’ve remembered about my oh-so-dear first laptop, and I realized that it doesn’t actually have to be lay away in a cardboard box: I could make it a home server!
Even though my apartment was rather small, I’ve managed to find a neat, cosy & clean space for it; it wasn’t perfect, but certainly lagom.
One of the first issues I had to solve was connecting this - at this point - server into my network. Since router was at the opposite side of the wall (in another room), the only solution was to use a wi-fi card. And so it went. Transfer rates weren’t that great (2 megabytes per second was an absolute maximum), but - once again - certainly lagom.
I remember the joy of installing an Ubuntu 16.04, doing "a professional" setup consisting of LXD and ZFS with RAID 0 on two separate HDDs.
I also remember the joy of having to choose a name for this freshly reborn machine; since I’m a humble fan of Clapton’s
music, I went with
cocaine rather swiftly.
One of the first applications I’ve installed, and ran 24 hours a day, was Folding@home; I’ve given it half of the resources, and I was ecstatic each time I logged in via ssh and saw it constantly working, constantly helping and, generally, being useful.
In 2019, because of my girlfriend’s studies, we’ve relocated from Kraków to Wrocław.
This time we’ve rented a flat in a brand-new block of flats, with top-notch 1 Gbps fiber optic internet, which opened a
completely new window of opportunities for
cocaine to shine - especially since here she was connected directly to the
router via an ethernet cable, without having to do all sorts of funky wireless twirls.
speedtest-cli is a nice way to check your internet artificial speed, but if you want some organic readings,
torrents are the way to go™.
A bit surprisingly for me, TempleOS was the most popular torrent I had the opportunity to seed so far.
Later, among others:
I’ve bought a UniFi access point, and I’ve installed the AP management software on
I’ve created a dedicated LXD container for a friend, where he’s been hosting a site he’s been working on,
One time I’ve even re-created half of the-company-im-working-at’s environment (HTTP server, database, queue, etc.), so that the frontend guys could test our latest API changes we couldn’t have deployed on our actual testing machine.
Having said that: we weren’t always getting along though.
For instance, one time
cocaine refused to boot at all; I’ve been searching the internet for countless, lengthy hours
until I’ve stumbled upon an answer suggesting to remove a single very specific capacitor near the CMOS battery:
As I’ve begun to understand that I’ve reached
cocaine 's limits - CPU-wise, memory-wise, storage-wise &
reliability-wise (no hardware RAID) - I’ve decided to shrink my wallet a bit and buy a new server (a PowerEdge T620);
I’ve moved most of the stuff there and, for the past few weeks, the only thing
cocaine has been responsible for was
A few days ago I noticed that I cannot
cocaine anymore - I checked all the cables, restarted everything, and
eventually left a note for myself to check it thoroughly later.
later occurred to be
yesterday - I dusted off an old HDMI cable and connected the motherboard into my TV.
As the screen detected the video signal coming in, I began to see a BIOS setup screen - a quick glance revealed that it wasn’t a regular BIOS setup screen though, because it was filled with lots of visual artifacts (kinda like you copy & pasted an image over itself at various, random places).
Among all the glitches I saw, I did see that BIOS correctly showed current time - it wasn’t reacting to the keyboard at all, though.
I checked "the usual stuff" (RAM, HDDs, etc.) and eventually gave up, reminding myself that she already worked long enough; certainly longer that I would ever anticipate a server scraped from a low-end motherboard, with ad-hoc USB-HDDs, and a tiny fan could endure.
I pulled the power cord out, and put her on a chair to take the last photo for my journal:
This story is an emotional one; it’s such mainly because the entire journey has been emotional too - there was joy and rage, moments of blissful satisfaction and vexing frustration; and I’ve learned a lot on the way.
And if I were to pick a single thing I’d like for you to take from this article, I’d say:
You don’t always need a fully-fledged server-server to begin with; you don’t always need a guitar-guitar, or brush-brush - just start with what you have at hand and see how it goes.