# Wanted: Network Computer

This fat-client-to-run-a-browser insanity has to stop. Probably even where developers are concerned.

To make a long story short, my work laptop’s HD is dying. After a particularly violent crash (apparently induced by VirtualBox) it came up painstakingly slowly and spewing console errors, so I rebooted it, tried to access the recovery partition, and… Nothing.

Mysteriously, the recovery partition was gone. Internet Recovery kicked in, but failed to load at first, then failed to recognize the HD, and when I got it to work Disk Utility flat out refused to repair the disk - either wholesale or on a per-volume basis.

After much fiddling around with a USB image, I finally decided at around 7AM this Saturday to go medieval on it and use diskutil from a terminal to nuke the CoreStorage setup. I had to rebuild part of it by hand before I could even get it to reinstall from USB, because nothing would recognize, diagnose or repair the disk otherwise.

I haven’t messed with CoreStorage much, but it appears the Disk Utility GUI is basically ignorant of it to a baffling extent, whereas the command-line version was pretty straightforward to use after reading up on logical volume groups.

So much for GUI tools and ease of use.

Anyway, turns out that the disk is failing, and apparently decided to start doing so by nicking the partition table and neutering the recovery partition.

So far it’s holding up (no mysterious errors after a nuke and pave other than SMART niggling me), but I just don’t trust that disk anymore, and am glad we live in the age of cloud storage.

All my work files, including code repositories, Keynote presentations, encrypted disk images, VM snapshots, etc., now live in CloudPT, and a dwindling amount of my personal stuff is still on Dropbox. Couple that with my using IMAP for all my mail, and there will be (I hope) effectively zero data loss - even without considering Time Machine backups (which, incidentally, failed miserably).

The annoying thing is that we could do better. For starters, I agree with this guy that hard disks are wasting our lives. In particular, my last Friday evening and this Saturday (morning, at least) as I tried to backup, re-image and restore my machine.

It takes forever to move around multi-gigabyte files or enumerate literally millions of tiny files (my Development tree alone probably has over half a million tiny files in various git repos, and is responsible for a lot of disk grinding while it syncs over the network), and a hard disk is simply useless at that – my personal, half a decade old, non-Pro MacBook just breezes through it all on a cheap SSD, as it does with backups, restores and everything else.

But we can go further. I pine for the days when I ran everything off Citrix and needed effectively nothing on my machine. To this day it hasn’t really caught on, and even though I use RDP on my iPad to run SublimeText and Chrome on a separate VPS for my weekend hacks, the truth is that it’s still a somewhat fiddly setup, and that Open Source has failed to deliver a true equivalent in both performance1 and ease of use.

After this incident I’m inclined to take a look at Chromebooks again, preferably with hacks that wouldn’t entail storing anything on Google services2.

Ironically, and given the current state of affairs in the Linux world, Android and an RDP client would probably work best and provide the better balance between running a few local apps (an ActiveSync-enabled mail client, properly agnostic IM and a few other business tools) and a full-blown remote desktop.

I know I’m repeating myself, but someone really ought to fork Android, add a modern variant of Cornerstone (there are a couple of working 4.2-compatible forks out there) and ship it on Chromebook-like hardware with an RDP client.

Heck, I’d hack an ARM Chromebook myself to do it if:

1. I had the spare cash
2. It wasn’t a year-long project for a single person

Anyway, I’ve got a long weekend ahead poking inside my laptop and checking to see if that hard disk holds out, so I’m going to get back to it now.

1. Even considering today’s hardware and network speeds, it’s still slow and underperforming. And if I recall correctly Citrix never actually released an ICA server implementation for any UNIX other than Solaris, even though their business no longer relies on it to survive. ↩︎