6 ms·
Development on a Chromebook: an opinionated guide
- doktrin 13y agoNice write up, this will definitely come in handy if I ever decide to go the Chromebook route. However, as much as I like the thought of trying something new, I'm still having trouble justifying the purchase. In other words - why develop on a Chromebook as opposed to a lightweight notebook? I guess it's a question of typical use case, but I don't find myself too often developing in areas without wi-fi. A 100mb /mo plan also felt like fairly sparse offerings, but it sounds like that's NBD in practice. As far as the price point is concerned, I'm pretty sure there are refurbished lenovo x220's / 230's available for the same as a Samsung Chromebook (~$500). Especially with regards to the latter, I guess I'd feel a little weird spending close to the same about on $ on a 3g browser with a terminal. I'd love to hear thoughts from anyone who's moved to a Chromebook for on-the-go development.
- simon_weber 13y agoI switched to the 550 from a eeepc (running debian). CrOS is the real added value, if you ask me: it's the closest thing to the "linux that just works" dream. I'd be curious to see how the cheaper ARM Chromebook performs with these tools (especially crouton). Anyone have experience with that?
- mehrdada 13y agoI'm happily using crouton with Ubuntu and xfce4 on ARM Chromebook. The machine is on the cheap side, especially for someone spoiled with Retina MacBook Pros like me, but the best thing about it is that it lacks a fan. The machine is completely silent (except for the noise from its capacitors), it never gets hot, and the battery life is better than advertised, and the keyboard is surprisingly good for a machine this cheap. I am not a big fan of x86 Chromebooks (to be fair, I haven't seen the Pixel yet), but the ARM one is close to a MacBook Air that's four times the price.
- Einherji 13y agoI don't quite understand how you can say the ARM chromebook is close to the macbook air as the dualcore A15 in that thing is nowhere near the MBA performance wise. I don't doubt that it's a nice machine but ARM still has a very long way to go until they can match even low-end intel IVB CPUs. Right now these A15s are just a little better than a 2011 budget aton core from intel.
- hayksaakian 13y ago> Right now these A15s are just a little better than a 2011 budget aton core from intel. Which is conveniently an improvement over my current 1st gen atom
- mehrdada 13y agoI am not talking about its raw computational performance. I am thinking about the usage scenarios of this machine as an average developer and how this machine could replace my Air. Most development tasks do not require the computational power of a MacBook Air and the ARM Chromebook actually feels quite smooth. The main thing is, unlike budget netbooks, this one has an okay display resolution, a very good keyboard, better than 11" Air battery life, less heat, flash storage (though small), and less weight and thickness. I personally did never even consider buying a netbook (Atom or otherwise). If for any reason you care about sheer performance locally on your laptop, I totally agree that this machine is not for you. This Chromebook easily has the most bang for the buck than anything I bought. If I did not have the money, I could conceivably live my entire life off of it (yes, it's that good) and a Nexus 4 (again, the best bang for the buck in smartphone area.) I should point out that by no means I meant that the MacBook Air is not worth its price. Even at four times the price of the Samsung Series 3 Chromebook, it is worth every penny in my opinion. It's a much better, faster, classier, sturdier, more beautiful, and higher quality machine in general.
- gsf 13y agoSame here -- loving crouton, and development in general, on the ARM. I was already doing just about everything in the browser and terminal before I got the Chromebook, so I was happy to get a machine with, as simon_weber said, "Linux that just works." I assumed I would just ssh into my servers for development work, but crouton has given me a full local dev environment as well, so I have everything I need at this point. Thanks for the article, Simon. My setup is pretty much the same, except that I haven't tried out mosh yet: https://gist.github.com/gsf/5377654 https://gist.github.com/gsf/5377654.
- 6ren 13y agoNot the tools, but for ARM performance: first, how does your 550 compare with the Acer C7 Chromebook? http://www.google.com/intl/en/chrome/devices/acer-c7-chromebook.html#specs http://www.google.com/intl/en/chrome/devices/acer-c7-chromeb... Both are listed as having a dual-core Celeron. EDIT google says your 550 is 867, 1.3 GHz; Acer C7 is B847 1.1 GHz, so yours is about 20% faster...? I ask, because I did an informal comparison between the Acer C7 and the samsung ARM chromebook (with dual-core cortex-A15), using a computationally intensive JS demo. The Acer C7 was far more performant - by a factor of about x2-x3. Which disappointed me... I'd hoped the A15 was getting there.
- 6ren 13y agoThere's chromebooks for $199 and $250 now: http://www.google.com/intl/en/chrome/devices/chromebooks.html#ac-c7 http://www.google.com/intl/en/chrome/devices/chromebooks.htm... http://www.google.com/intl/en/chrome/devices/chromebooks.html#ss-cb http://www.google.com/intl/en/chrome/devices/chromebooks.htm...
- nhebb 13y agoI'm wary of any system that doesn't list the RAM in the specifications.
- bluedino 13y ago> In other words - why develop on a Chromebook as opposed to a lightweight notebook? It's half the price of the Lenovo you mentioned. It has fairly long battery life, it's small yet has a full-size keyboard. It's slick hardware compared to a $299 Best Buy laptop or a netbook. But it has a whole list of disadvantages. You can't fire up a VM. You can't browse using the actual desktop versions of Chrome, Firefox, Opera, or IE. You can't use software package X. You need to be connected to the internet to do development. It's just a fancy ssh/rdp terminal in this case. I understand the romanticism about developing on a Chromebook. I love the 11" Air, and despite the low-resolution screen and low specs (ULV CPU, 2GB or 4GB RAM and 64GB/128GB SSD) you can actually get stuff done. Is it the 'Ultimate Developer PC'? No, but a great machine. The Chromebook is far more limited, but maybe the next revision along with a regular Linux distribution will be a workable solution for the rest of us.
- doktrin 13y ago> It's half the price of the Lenovo you mentioned. To clarify, I did mention the price was close to refurbished models. This isn't a like-for-like comparison, of course, but it reflects my choices as a consumer. I'm more likely to pick up a refurbished Lenovo X-series than a refurbished Chromebook, for instance. For reference, there's a x230 on sale from the Lenovo outlet for $546 [1]. Price and availability vary, of course, but this isn't super uncommon. [1] http://outlet.lenovo.com/SEUILibrary/controller/e/outlet_us/LenovoPortal/en_US/catalog.workflow:item.detail?GroupID=445&Code=R9W419M-2306CTR http://outlet.lenovo.com/SEUILibrary/controller/e/outlet_us/...
- bluedino 13y agoYou get what you pay for when it comes to the Lenovo - the slightly bigger screen is available in IPS and blows the Chromebook screen away. The i5 (and available i7) is very powerful CPU, you can have 8GB of RAM and your choice of SSD/HD...
- derekp7 13y agoYou actually get a choice of having both SSD and HD at the same time (not sure if this is what you were implying) -- since the X230 (and 220 I believe) has an mSATA slot under the palm rest. I've got mine booting off the mSATA (128 GB running Fedora), and have the spinning disk left with the factory installed Windows 7 (plus a large partition formatted ext4 for my VMs).
- gcb0 13y ago- So this company sells a laptop that works as a browser for a online site and nothing else. - great, i will buy one and waste a lot of time to make it work offline. ... genius. just genius. I would just write it off as a good hack or something, but the chrome books have ZERO advantage. it's hardware is pure garbage if you compare it to anything on the same price range.
- CrazedGeek 13y agoAre there that many $250 laptops with 6 hours of battery life? And you don't have to "waste a lot of time". Crouton (https://github.com/dnschneid/crouton https://github.com/dnschneid/crouton) makes setting up and using a chrooted Ubuntu incredibly simple and straightforward, and there are other easy ways as well.
- Wilya 13y agoAny decent modern netbook will give you 5 or 6 hours of battery. The EeePCs claim something like 8 hours of battery life. The Chromebook isn't bad, but if you don't want ChromeOS, it's not fantastically better than the loads of other netbooks on the market.
- nkorth 13y agoI don't know of any company that's still making new netbooks, so unfortunately that option might not last too long. I like tablets, but I hate them for killing the netbook market!
- beagle3 13y agoMicrosoft killed netbooks before tablets finished the job, by mandating 10" and specs that made them much more expensive. They'll taake my 9" eee from my cold dead hands!
- wycats 13y agoI've been using Nitrous.io (formerly Action.io) on my ChromeBook Pixel and loving it. I've been using my Pixel full-time as a development environment for a couple of weeks now, and haven't given up in frustration yet :) The Nitrous guys have been extremely responsive, fixing a bunch of bugs that were causing me problems (like awaken-from-sleep, problems with $COLUMNS on a retina display). Their terminal emulator is great; it even has mouse support (although it seems to be off by 1 diagonal column -- looking forward to seeing that fixed soon). One extremely important point: by default today, ChromeOS discards tabs when it runs low on memory. This experience was sufficiently problematic for me that I almost gave up on the entire thing, until I learned about http://gigaom.com/2013/04/05/running-out-of-memory-on-a-chromebook-heres-a-30-second-solution/ http://gigaom.com/2013/04/05/running-out-of-memory-on-a-chro.... tl;dr Google is experimenting with zRAM (https://en.wikipedia.org/wiki/ZRam https://en.wikipedia.org/wiki/ZRam), which will eventually be on by default, and you can trivially enable it right now. Do it.
- stickhandle 13y agoWow - never heard of nitrous.io. Might be exactly what i've been hoping for ... what kind of dev have you been doing with it?
- wycats 13y agoI've been building: - a Rails plugin - a Rails app - an Ember app - Ember itself - Several small JS libraries that I hope to use in Ember Each of these projects gets its own tmux session (I didn't really know tmux before nitrous.io, and I have basically the same advice about tmux that I had about vim at http://yehudakatz.com/2010/07/29/everyone-who-tried-to-convince-me-to-use-vim-was-wrong/ http://yehudakatz.com/2010/07/29/everyone-who-tried-to-convi... -- use it to keep open sessions and learn more advanced features as you need them).
- simon_weber 13y agoI wasn't aware of the zRAM tip (I don't think I've ever hit the ram threshold). I'll be turning this on and adding it to the post; thanks. For the curious, there's a good explanatory post here: https://groups.google.com/d/msg/chromebook-central/r27r3ZcchhM/V8Y5S0fy4bAJ https://groups.google.com/d/msg/chromebook-central/r27r3Zcch.... edit: this will be on by default for r27 (https://code.google.com/p/chromium/issues/detail?id=218559 https://code.google.com/p/chromium/issues/detail?id=218559).
- stickhandle 13y agoWe need a robust web-based development environment. Think jsFiddle for other languages but more complete. Version control integrated (think github or bitbucket). Deployment integrated (think heroku). Dependency management. Offline capabilities (probably limited). Technically, i have little doubt it could be possible. No idea what the business model would look like. SaaS/PaaS? A freemium setup would likely be possible? Free base usage, paid extensions? [edit] looks like nitrous.io and/or cloud9 are doing exactly this.
- guylhem 13y agoI'm sorry but the proposed options are not acceptable. No VPN? SSH as a plugin ??? Using a Chrome plugin for SSH is taking unnecessary risks. I see no reason why there couldn't be a terminal application on the Chromebook. If it's due to UI, maybe there could be a way out of the GUI - IIRC the Chromebook runs on X-Windows. If you can't hack it in a way where ctrl-alt-f1 will get you to a genuine linux getty, running standard GNU/Linux command line software after a recompile, I don't want a Chromebook for development. Unless you have money constraints, it makes more sense to purchase a real laptop - a macbook if you need the battery time.
- simon_weber 13y agoUsing a Chrome plugin for SSH is taking unnecessary risks. What kind of risks are you concerned about? It's a sandboxed NaCl plugin with a strict CSP that runs OpenSSH. I suppose you could get concerned about key security (since they're stored in an html5 filesystem), but you should really have a passphrase on those anyway. If you can't hack it in a way where ctrl-alt-f1 will get you to a genuine linux getty, running standard GNU/Linux... Developer mode lets you do exactly this. Crouton just gives you a pleasant way of running a full Ubuntu install. edit: I agree that vpn support is a huge disadvantage right now.
- guylhem 13y ago[it is just a theoretical concern. I do not give ssh passwords or keys to applications I am not comfortable with. Any browser plugin qualifies as such.] I haven't one, and so far thought against purchasing one, yet if developer mode gives me a real console, I may give it a try. Is it sandboxed or restricted in any way (storage, network, etc), like for the privileges in android, that may prevent me from running an important daemon (say openvpn, creating or accessing tun/tap interfaces, doing tcpdump etc) ? From http://www.chromium.org/chromium-os/developer-information-for-chrome-os-devices/samsung-arm-chromebook#TOC-Entering-Developer-Mode http://www.chromium.org/chromium-os/developer-information-fo..., I understood that one had to reboot to get a command line. I don't want to reboot everytime I need a terminal. Is it possible to Ctrl-Alt-Fx to get a console while leaving the browser running? Could you please detail about your experiences in developper mode? (ie can you leave X, or do you just get a xterm) In http://stackoverflow.com/questions/11205504/chromebook-chome-os-developer-mode-abilities http://stackoverflow.com/questions/11205504/chromebook-chome... it mentions Ctrl-Alt-t - but is that a xterminal or a text-mode getty? I'm old school and prefer having gettys in inittab so that Ctrl-Alt-Fx gets me to the xth getty - and yes I know about tmux and screen.
- donniezazen 13y agoChrome PDF Viewer doesn't have PDF highlight feature which has forced me to consider it a secondary laptop.
- kgingeri 13y agoTry PDFZen from the web store
- donniezazen 13y agoIt is nice. Google integration would be nice.
- brent_noorda 13y agoVery ignorant question: "development" means developing what? Applications? Web sites? mobile something-or-other? chrome plugins? If applications then for what OS? Where does the compiler run? Is this just a shell into some other server that runs the compiler?
- simon_weber 13y ago"development" means developing what? I probably should have put that in: I work on everything you mentioned, with the exception of mobile apps. I do most of my work remotely (my campus wifi is pretty good), but everything works locally as well.
- brent_noorda 13y agoSuppose I have a c++ file I want to compile. I've assumed you couldn't do that on a chromebook directly, but would need to open a terminal on some system that does run a compiler. So does developing on a chromebook require that you also have an account on some remote computer and you're using the chromebook in various ways to remote to that other development system? I.E. does most of your chromebook development come down to using it as a smart terminal?
- simon_weber 13y agoI've assumed you couldn't [compile c++] on a chromebook directly You can, actually - just not out of the box. I describe switching to dev mode and using crouton for this in my post. does most of your chromebook development come down to using it as a smart terminal That said, yes; I normally remote into beefy servers on campus. I may find myself doing more local work once I graduate, however.