James Williams
LinkedInMastodonGithub

ChromeBook as Developer Machine

Tags: HTML5 Gaming

+Louis Gray has blogged pretty prolifically about the ChromeBook as a day-to-day machine. AFAIK I he doesn't use it to development work so I thought I'd chime in on that respect. Despite not being about to run typical GNU apps and version control in secure mode, the machine is still very capable. Like Louis I have a MacBook Air as well. One reason I decided to give the ChromeBook a try was to avoid the fire crotch caused by doing anything CPU-intensive on the Air. I've gotten in the habit of coding while on Google+ Hangouts so reduced fertility as a side-effect won't do. ;)

You could flip the dev switch and install Ubuntu as I have on my CR-48 but this post will talk about apps that you can use on an unmodified ChromeBook.

Cloud9 (requires Internet connection)

Cloud9 IDEis my go-to tool for doing JavaScript, CoffeeScript, and Node.js development. **For the past few weeks, I have been using it for 95% of my dev work on book examples, the HTML5 Video Poker game included.**Cloud9 allows you to interact with either Github or Bitbucket(Mercurial) repositories. For a simple JS application, you can use the preview function to quickly test your apps. Reportedly the Cloud9 guys will have offline support soon. The jury is out on whether this will include ChromeBook and offline checkin support.

SourceKit (requires Internet connection)

For creating text-based files that aren't tied to a repository, you can use SourceKit. SourceKit syncs to Dropbox but is unusable while offline.

Quick Note(offline cache, online sync)

Quick Note is a note taking app that allows you to sync to Diigo when online (using your Google credentials) but also maintains an offline cache of the notes you have created. I'm writing this post in Quick Note right now.

Scribble (offline cache, online sync)

Scribble is another note taking app with offline support. The only difference between it and Quick Note is the location of the online sync and the UI. Otherwise it's a matter of personal preference. I often switch between the two depending on my mood.

Amazon Cloud Reader (offline book pinning)

For reference books that I might need to check while working on samples, I use Amazon Cloud Reader. Using it requires a little pre-thought because you have to download the books that you want to read offline in advance. Luckily, the books download fairly quickly so that even if you are running late, you could probably download whatever books you needed in under a couple minutes.

WriteSpace (offline cache)

WriteSpace is a minimalist text editor that is modeled after the OS X application WriteRoom. You are given an empty window that is essentially a giant text area. At the lower edge of the screen, it shows the number of words, lines, and characters in the document. The application gives you a couple options to change the background and text colors along with some editor settings. WriteSpace doesn't have multiple document support and stores its data using localStorage. In my opinion, it's good for writing longish documents, that don't require images or formatted text. Absent from WriteSpace is the built-in support to export documents (though it can import text fles). Hopefully as the FileSystem Chrome APIs become more codified, it will emerge as a feature. FWIW, neither Quick Note nor Scribble support exporting to a file. For now, the solution with any of the three is to wait for online access and pasting into a Google Doc.

While I would certainly take pause if going somewhere without reliable Internet access for at least 70% of a trip, contrary to what has been reported, the ChromeBook doesn't become a brick without an Internet connection. Using the ChromeBook instead of my Air has actually been freeing because I no longer have to worry about what would happen if it got lost or stolen. Sure it would be a sucky couple of days but otherwise, it wouldn't be a big issue. Though updates aren't that often, if you have files that you need to guarantee persistence, save them to a USB stick and avoid saving to the HDD in the machine(especially if you aren't the owner user on the machine).