Using the Chromebook Pixel (as a developer)
Google I/O was an interesting event this year and as usual, Google gave all attendees a parting gift. A Chromebook Pixel. A machine I never would have bought myself, but the more I use, the more I like.
As a second laptop, one that for the most part stays at home or comes with me on trips, the Pixel is just about perfect. Also it follows a paradigm that my 3yr old daughter expects (i.e. it has a touch screen).
Where the Pixel has fallen flat so far is as a machine to develop with.
Over the weekend I left my Macbook Pro on my desk at Shelby.tv and ventured into the great unknown that is developing on the Pixel!
Step 1: Developer Mode
My first thought was I need shell access! Pressing ctrl-alt-T gets you a terminal but its crosh. So I endevoured to get my Pixel into developer mode which gets you a real shell to work in. I followed this helpful tutorial. Then I realized that while this was close to the right direction. It’s not really what I need right now.
Step 2: Embrace the Cloud
My framework of choice is Ruby on Rails and for the most part when I build something on the side, it’s using Heroku. So the next step on my journey was getting a cloud server to develop on which I could then connect to Github, Heroku, etc.
The guys at Digital Ocean are building a solid cloud hosting product using SSD tech so I went with them. Did I mention that the base box costs $5/month!?!
SSH onto that box. Set that machine up. Git, Vim, Heroku to your hearts delight.
BUT I’m a web developer and I want actually *see* and *feel* what it is I am working on. In my browser. Not just in the code. So…
Step 3: *REALLY* Embrace the Cloud
Enter Cloud 9. Cloud 9 gives you a pretty full fledged IDE experience (pictured below). You can push and pull to Git to your hearts delight. Although I couldn’t get the feature to work properly you are also supposed to be able to deploy to Heroku too.
So my workflow over the weekend was
1) open a new window in ChromeOS
2) open Cloud 9 in one tab
3) open the terminal ssh’d into my new cloud box in another tab.
4) I write code in Cloud 9 push it to Github and in the tab with my terminal, I pull changes and deploy to Heroku!
One additional way to improve this workflow in the future is going to be to create a “scrap” directory in my apps where I code pure html that I can preview in Cloud 9 before I add any ruby erb goodness.
This can’t be the ideal setup, so I’ll be updating this post in the near future.
I’d love to hear if you have any other tips for developing on this machine