Ask HN: Do you use a Chromebook or Pixelbook as your primary machine?
I love the design on the new pixelbook - https://store.google.com/us/product/google_pixelbook but I have a hard time believing that its of any use for a developer or even a remote power user. Does anyone have any experience using it as their primary machine and for what purposes ?
96 comments
[ 3.5 ms ] story [ 123 ms ] threadSource: https://plus.google.com/u/0/+WilliamGreene76/posts/Qosa9BstS...
Later I switched to an Android tablet: http://bergie.iki.fi/blog/working-on-android-2017/
I had to return the tablet when I quit my previous job, so now programming from an iPad Pro.
Example: https://d2vqpl3tx84ay5.cloudfront.net/android-tablet-2017/pi... (from the Android tablet I had before this current iPad)
Right now I'm typing this using the Smart Keyboard from Apple, but I also have a nice custom mechanical keyboard that I can plug in when I'm home: http://bergie.iki.fi/blog/atreus-build-log/
I don't think that ssh + vim would work for me. I like GUI editors. Is there a good self hosted cloud IDE? Or is it maybe possible to run VS Code on a remote machine and access it through a web interface?
I suppose you could use Apache Guacamole and remote-desktop to a machine..
They have preconfigured setups and you start/stop them pretty neat. Nice GUI too regarding the editor.
ISTR Firefox does an awful lot of writes in order to maintain state; https://www.servethehome.com/firefox-is-eating-your-ssd-here... is from more than a year ago, but I wouldn't be too surprised if something similar were happening to you.
Using even the free c9 service, connecting to your own server via SSH, you can create a fantastic collaborative development environment.
Although I do most of my development locally, cloud IDEs are perfect for the remote pair-programming use-case - they're far better than screen-sharing.
Asus has released an updated version (C101) with USB-C: https://liliputing.com/2017/09/asus-chromebook-flip-c101-hit...
This involves an annoying beep every time you turn your machine on (or otherwise hitting ctrl-d at the right time), and you run the risk of disabling developer mode--thereby reformatting your drive--if you accidentally hit Spacebar.
Unless they're changing how dev mode works on the new PixelBooks, I do not recommend using one as a dev machine. This year, I bought a Dell XPS Developer Edition and never looked back.
I typically get several months of uptime. Suspend/resume has been flawless too. Pressing one button combo a couple times a year hasn't been a show shopper.
My crouton-using Pixel shuts itself down if I don't use it for 24h, even without low battery. So I press that button combo about once a week. It's definitely a mild pain in the butt, losing all the state in my dozen terminals.
I bought the ASUS Transformer 200 and yeah it's a bit bulky for tablet use but still decent with i3/Ubuntu.
Keeping Windows on there, nice to have.
I had Chromebook 2 as well (with the octacore processor) and having Chrome was nice to switch back into for general use.
https://www.coreboot.org/Chromebooks
https://wiki.archlinux.org/index.php/Custom_firmware_for_Chr...
I have this "fear" that my laptop will be stolen so I try to run everything off a USB (attached to my keys) so laptop is pretty much disposable assuming ~$100 in cost (used).
The ram/storage is a concern and I'm talking the junk 2GB 32GB setups. I picked up an ASUS TP200SA 11.6" transformer lately. I know not really able to do much on a 11.6" computer.
Still it's cool got all my stuff setup but can't have different stacks configured (not enough ram) so remote to develop. At least plain JS you can run by browser.
Just my thoughts,definitely got my two screen setup at home just bought a 22" 1080p monitor ohhh yeah.
And if the container support lands soon, it might be possible to run developer tools like that without flipping the developer mode switch.
I use the headmelted build. looke like it has an actual website now https://code.headmelted.com/
I'm not sure if I should try to use something like veracrypt to encrypt the OS.
Isn't the flashdrive protected by the OS password if you try to mount it as a drive and read the contents? Or no?(answer to this is no) I think I had that experience when trying to mount an OS hard drive and read contents.
I suppose if my keys/usb drive were stolen that would be a pretty bad day.
Now I'm concerned. My plan with the regular Windows OS, always run browsers in incognito mode.
Don't store credentials on computer, possibly pull code to work on it, push then delete but that might be nuts. Looks like full encryption may not be necessary but read about swap being potentially unsecure. Aye... I don't know.
Well since this computer is garbage I'll try the encrypted home folder method. Not sure about the swap aspect. And I don't think I'll be running any webserver stacks on this because of RAM so can try to just operate from my home directory.
I don't know... one of those things where you think too much about it... like what about general consumers with a password on their Windows/Mac computer... is that "secure"? I don't know.
You could potentially access that hard drive by taking it apart assuming it wasn't a soldered on storage device.
Sir, have you heard the gospel of the Tiling Window Manager?
Really though, they are fantastic. You get ten times as much screen real estate at the tips of your fingers. My laptop has a 10" screen, it is fine. And let us not forget that Steve Jobs selected a 9" monitor for the Macintosh. How much more do you need :-)
So far the only software I miss is Darktable. They use a bunch of x86 assembly with no support for Arm.
I personally prefer a larger screen mine eyes not so good I mean like 2-3 feet away from the screen is nice.
I'm not aware of DarkTable (don't know what it is)
The best multi-tasking I got was when I was running VS Code, mysql and mongodb servers, one node web server, one python web server, music from the main chrome browser and opera on crouton.
I was trying to build Android apps on it but Android Studio is a no go so I just ended up building it from the command line. I couldn't run anything other than the editor and the build process at the time and things became very very slow until the process was done. I only did this once or twice though so I'm sure it would have eventually hung the entire system.
It's lightweight, build quality is good, screen is terrific. I got it for a great price, too. I think the original retail price of the version I bought was a bit high, but that new version you just linked looks like a good price/performance.
I really only want a shell plus a browser anyway. Though I've had X11/XFCE working in the past.
All in all I'm quite happy with it for this purpose. Though if price was no object, I'd probably reconsider.
Is there a particular model you recommend? Seems like there are a variety of chromebooks, I wouldn't expect them to all be the same quality, but perhaps they are?
I have a bigger problem with charging. My chromebook doesn't recognize high-power chargers (both the original one and one I bought afterwards) and charges extremely slowly, to the point that it even unloads when the CPU is busy. Happens in chromeos too though.
afaik, chrome asks whenever a site requests location information
(if you go to chrome://settings you can change language preferences)
Chromebook hardware is great for the money. Replace the OS and you have the best of both worlds.
Do you have a particular model that you recommend?
Our fork is called NayuOS ( https://nayuos.nexedi.com ) and is a true system for hackers. It erases user folders on every restart and no extensions are allowed. It is very hard to track and since the Chromebooks are very cheap it is easy to exchange devices often.
It has to be run in Developer Mode thus you have writable /usr/. Chrome Brew is fully functional thanks to that but it is a security hazard.
My company moved everything to cloud so we access everything via browser. It was hard to get used to it but in the end it is a huge time saver. Google went the same direction.
Termux seemed to be a good alternative, but I couldn't get gpg-agent working with the yubi key.
So you ran something inside of ChromeOS? It seems like a better option would be to replace the bootloader with CoreBoot (which doesn't have a dev mode) and you can add your own keys for whatever OS you choose.
I have to trust something, somewhere. With ChromeOS + ssh and the keys stored on a yubi key,I'm pretty sure that if someone lifts the machine without the key, there's not a whole lot they can do with it, other then factory reset it and move on.
In doing that though, I am trusting a few bits of software from the chrome app store, and that's probably the weakest link. But it's an order of magnitude less code than a linux distro.
In the nassh ssh relay server options, I'm using '--ssh-agent=gdbjpffhcollcplpbjehfhpfcpdoicob'
https://chrome.google.com/webstore/detail/secure-shell/pnhec...
https://chrome.google.com/webstore/detail/secure-shell-openp...
https://chrome.google.com/webstore/detail/smart-card-connect...
The 2560x1700 (3:2) screen is magnificent. Design/hardware is top notch, especially USB Type-C charging. Once you get used to plugging in a charger from either side of the laptop and using the same charger (I have Nexus 6P) for your phone too - you'll never want back to the whole multiple proprietary charger bullshit. I can even charge this laptop from a portable battery pack used for phones.
There are some minor downsides of course, such as absence of a conventional BIOS/UEFI, delete key, F key markings, but I can live with that, there's no such thing as perfect when it comes to laptops.
http://yieldthought.com/post/31857050698/ipad-linode-1-year-...
https://news.ycombinator.com/item?id=14863580
Personally, I installed GalliumOS on a $350 Chromebook (Toshiba CB35) and while I don't use it as a primary machine I do quite a bit of "real" development on it.
For example, it has no problem running fairly large Rails applications with Postgres, Redis, Elasticsearch running inside of Docker containers. I often have a decent amount of browser tabs, streaming music through Youtube and other typical developer things open at the same time.
Key features for me are a 1080p IPS diplay, a great keyboard and it was only $350 even after buying a third party SSD to swap in.
Full details, a review and guide on how it's done can be found at: https://nickjanetakis.com/blog/transform-a-toshiba-chromeboo...
I loved it. I could have run Linux natively, but I've spent too much of my life already fighting all the familiar recurring sound/video and suspend/resume and wifi issues on Linux laptops. No, it's not because I'm bad at it. I worked at Red Hat at the time, where most of the people who actually fix this stuff for you also work, and I was no worse than others around me. But being good at fixing problems isn't the same as not having to put up with them in the first place. I don't want to have to take even ten minutes to debug a system issue in the middle of trying to do something else while I'm on the road, over and over again every month or so. The whole point was to have a base platform that was feature-complete and stable, plus a full Linux environment (via crouton) with all of my favorite tools available simultaneously. It also helped that it's a beautiful piece of hardware, with a nice (somewhat square-ish) screen and a trackpad that works and the best battery life I've seen so far.
It was really like having two laptops instead of one, each suited to its purpose. The only reason I don't still use it is that I couldn't be bothered replicating all of the "special sauce" to conform with the infosec requirements of my current employer on an OS different than the one they installed on the laptop they gave me. If I were to switch jobs again, or retire, I'd gladly go back to the Pixel.
http://bryangrohman.com/ubuntu-i3wm-chromebook/
It's a bit underpowered, but it works just fine for my personal use which includes some light coding. It would be way underpowered to use for my day job in any capacity other than ssh-ing into other machines. Then again, it is one of the cheapest Chromebooks available at $169, so you get what you pay for :)
I have no real complaints with Gallium or the C720P, it's a really solid little machine, and it's super fast. My only gripe is the keyboard - there's no delete key, there's a magnifying glass where the Caps Lock should go, and that gets mapped to Super, and the worst part, I only have F1-F10, missing F11 and F12.
I'm sure there's a good way to remap some keys to get F11 and F12, but I haven't figured out a good key combination that doesn't interfere with other keyboard shortcuts.
I've gotten so used to it that I had to make my windows machine do the same thing!
The concept of "primary machine" is weird to me. Since the early 80s, things keep getting separated out. NFS home directories moved bulk file storage to a fileserver in the 80s or early 90s. I could run ALL the self tests and build for ALL possible outputs by hand like the old days on a local machine, but that's what the Jenkins vm is for. I could run git without any centralized server, but no one really does that, there's a host for that. I could keep track of bugs in email or in my head like the baddest of bad old days, but there's a host for that. Logging for debugging is on separate hosts now a days. I used to run my dev environment locally using lots of memory and CPU and battery power but I've had access to a vmware cluster that weighs several tons, I'm not carrying that kind of power around in a laptop. Since everything has abstracted out into cloudy hosts, there's really nothing I can do with local dev resources WRT the proverbial "what do I do in an internet outage?" question. The answer is "same thing I'd do with my desktop, nothing, because everything is online and cloudy today." In 1981 I could program productively on one machine air gap isolated from every other machine on the planet, but that was a very long time ago. There may also be inherent cultural issues, you can and we did program in Z80 assembler in '81 on completely isolated self hosted machines, but I'm not sure that even works culturally with modern languages, burned right into the tools are things like automatic dependency resolution that assume internet connectivity.
Having infinite cloud power laying around makes things weird talking with older generation devs. Yes the Scala compiler is not fast if you run it on a low speed battery friendly laptop cpu with 2 gigs of ram and slow spinning rust for storage, but the vmware image I compile on has specs better than anything you can buy today in as a laptop so I just don't care about speed.
You have to get used to some closed source weirdness, but can be worked around. You "right click" using alt and the touchpad on my weird keyboard. The keyboard feel is awful compared to an original model-M on my desk but it does work. The cheapest chromebooks have ridiculous low res low dpi screens and one with a good screen, is, as you'd expect, hundreds of dollars not $49 or whatever the school kids get today. The vnc client still complains about security every time I use it as if I'll respond on the 35194th complaint. The SSH client UI is like a weird re-interpretation of putty which is initially weird.
On the other hand, its never crashed or failed in any way not designed into it, OS security and maint patching isn't an issue, the boot time is a couple seconds so I don't bother with sleep mode, the battery really does last ten hours while it weighs practically nothing. It just works as an appliance which is very unusual for general purpose computer use.
Most chromebook solutions are multistep which makes it either impossible to use or trivial to use depending on your mindset and past experience. How to program an arduino on a chromebook? Well, that's impossible in one step there is no one click arduino IDE installer on the google play store, but absolutely trivial in multiple steps. Setting up a VNC client on a chromebook is trivial. Setting up VNC server on a dirt cheap pi and accessing it via the network is trivial. Setting up arduino ide on a pi is trivial. So its both impossible to program an arduino using a chromebook in one step, and its also four unimaginably trivial steps to accomplish. So using "windows monolithic thinking" many things are simply impossible on the chromebook and will forever be impossible as long as you demand one click solutions, while "unix small optimized tools thinking" means...
I've also got a cheap Acer chromebook (which got me started on the whole ChromeOS trip), which I'd already put GalliumOS on and found it pretty usable overall - indeed almost 'throwaway' because of the low cost secondhand (I paid £60 for it in the UK).
GalliumOS was generally pretty good on both machines - giving access to Linux software which was generally easy to install, but the issue on the Chromebook was the battery life/power consumption and management; it seemed to be running the fan a lot, and went from the usual 8-10 hours on ChromeOS for the Pixel down to maybe 2 or 3, which kind of defeated the object of having it.
During this time I got a MacBook Air at the right price secondhand, and that has taken over as my main 'browsing/mobile use/learning Python' machine, so I put the Pixel back to stock and sold it (amazingly for more than I paid for it).
If there had been a native Python IDE for the Pixel I would have kept it - it really was a high quality piece of equipment - but alas I didn't find a solution that I was happy with (and certainly not one that made use of the Pixel's true power and quality).
It was fine for building and testing web app changes. I used Chrome Remote Desktop to test with Firefox and IE. It was fine for building and testing Android apps but only when I was physically next to the remote workstation to plug in a device for adb. I think there might be some weird hack to tunnel adb over ssh through your Chromebook, but I never got that to work.
It was a bit more cumbersome to get personal and work Chrome profiles running on the same monitor. You can sign in to multiple accounts at once, but they're separate desktops. However, you can right-click on a title bar for a "move to other session" option. A ChromeOS PM showed me that trick; no idea how a user is supposed to discover that.
The other things I missed on ChromeOS were 1Password (the Chrome extension relies on the desktop app being present) and BetterTouchTool (for programming additional trackpad gestures and remapping mouse buttons).
[1]: https://chrome.google.com/webstore/detail/secure-shell/pnhec...