James Williams

Living on a Chromebook

Last month I presented at TakeOffConf in Lille, France. Since they were first released as prototypes in December 2010, I've been using and hacking Chromebooks. Besides the Samsung Series 550, I've owned Samsung model and they have served me well. One thing that I hadn't done was give a presentation on one at a conference.

Back in the netbook days, I tried doing that and it ended horrifically. The project I was working on pushed a rev a day or two before the conf so the app tried to pull an update of something like twenty libraries over the event WIFI. Since then I always wanted to have a machine that I could use to present but could last 6+ hours. And being light would be an added and appreciated bonus. My current dev laptop is a beast of a machine clocking in about 6 lbs with 16GB of RAM and a quad-core i7.

I was able to give myself somewhere close to the same amount of utility by traveling with the Samsung Series 5 and the Samsung ARM Chromebooks.

You might be wondering why I traveled with 2 Chromebooks rather than a single conventional laptop. One word: VGA. The Series 5 has a proprietary dongle that supports VGA output (commonly the LCD at conferences). The newer Series 3 only has HDMI output. None of the converter dongles from HDMI to VGA worked and I found out too late to load Ubuntu on the machine.

This might not sound like that much of a feat because someone will point out that every Chromebook has Google Slides on it. Slides is great for presentations that are mostly graphic with very little in code or demos but their tweakability doesn't work for me. I sometimes embed demos in my deck and you can't reliably do that with Slides.

Instead I used Chromebooks in dev mode and an HTML5 slide deck.

Dev Mode

Booting into dev mode disables verified boot and gives you access to the shell so that you can run things like vim to edit files and wget to retrieve remote assets. Enabling dev mode also allows you to dual boot with another OS. On a dual boot machine, I don't spend a lot of my time in the other OS but it's good for working offline when even Gogo Inflight WIFI won't be available, say on an international flight. Be advised that Netflix gets disabled when you are in dev mode. I watch Netflix on my Android devices so that's not that big a deal for me. Enabling dev mode varies from device to device. Some of the older devices have a physical switch and the new ones have a magic key combo. Google "dev mode" for more info.

HTML5 Slide Decks

That could be deck.js, impress.js, io-2012-slides, or my personal favorite html5slidedown which is a variant of the standard Google IO slide deck but tweaked to allow you to author slides in Markdown. I would work in vim in one tab and then refresh it in another.


It was great having laptop power for the full day without having to stalk power outlets. I did use them when they were convenient but I didn't resort to the tactics I've seen others resort to like camping out in a room with a track you don't like because you are sitting on a power plug. The lighter weight (even though I was carrying two Chromebooks) was appreciated as I was trekking from Schipol Airport in The Netherlands to Lille, France and then from Lille to Paris and onward to the Rhône-Alpes in Southern France. The fact that I was presenting on HTML5 technologies made the experiment easier. YMMV if you need to do a hardcore compiled language like Java. It's doable with a ssh machine but you are much more dependent on there being good WIFI. Other than Google IO, Devoxx, and a few other conferences here and there, conference WIFI is not so great.

If you can live in Google Slides, you will have an even easier time.