Wednesday, December 17, 2014

Ubuntu 14.04 on C720 Chromebook

I'm so ahead of time. Now almost all student have a google account in the cloud and they are all using chrome. And it make no sense to buy anything else other than a chromebook. For a while the C720 falls to $150, amazing! What are you going to do with a pad if you are to type an essay?

The C720 Chromebook is the 1st netbook that worked 100% (well, almost, after patches) for Linux, that doesn't rip you off.

To install full Ubuntu on C720, follow the instructions for installing Chrubuntu. It doesn't matter if it's not most up to date. It's like full Ubuntu so you can update from the official Ubuntu depositories. This is dual boot with ChromeOS so leave a few gigabytes for it. It's worth it.

When you see the warning screen, Ctrl-L to boot into Ubuntu. It takes a while to boot probably because of some IO errors. The screen will probably be blank most of the time.  Also, the touchpad isn't likely to work.

I would use the terminal, Ctrl-Alt-T, to update Ubuntu first. I'll upgrade it to 14.04 or higher via commands. I've been using 12 and 13 with no problems. But you are to upgrade the kernel so use the latest version if possible.

Next upgrade the kernel to 3.17 and follow the few command line instructions from the man, the Linux inventor. The command "uname -a" should give you the kernel version. 14.04 use an earlier version than 3.17. Reboot and the touch pad should now work.

Now google and follow the Mike Lin fix for the suspend mode (05_sound file). I think the problem arise from I/O so the patch corrects a few things. For one the chromebook boot better or even normally.

Then set the warning screen to 2 secs without beeping. So kids can still use Chrome OS by default.

http://johnlewis.ie/neutering-the-developer-mode-screen-on-your-chromebook/

Now I'm keeping Chrome OS because things like scrapbook and zetoro are not in the cloud without paying. Dropbox is the obvious solution. But I might be able to do everything in Google Drive for free, and hopefully cheaper than dropbox when the time comes when I have to pay. If I need disk space it will be for media and an external drive is what I need anyway. VPN works decently with a visual feedback when it's connected. It's just not openvpn yet.

I need Ubuntu for encrypting external drive. It's a pity as both OS use the same software. There's just no apps for it in Chrome.

Tuesday, August 12, 2014

Ruby versus Python - a programmer's choice

If you regard or call yourself a "programmer", the obvious choice is Ruby. If you spent an hour looking at both languages totally new to you, and you cannot tell which is better, I can assure you that Ruby got there first at two of the biggest things now, Ruby on Rail, and Chef/Puppet. Python is just playing catch up and doesn't seem to catch on. Would you ask yourself why?

The most important thing is programmer productivity. An early airline reservation system shared their experience that they are the early developers, with how many mega lines of Lisp code written by few programmers. Provided these guys are not static, there's no way other developers can catch up. If you are one many year ahead, others will always lag you by one year. If they throw in 12 man for one month, there will certainly be a disaster. When your product get to maturity, there's just no need for another similar product.

Many of the arguments and comparisons are irrelevant to "programmers". Ruby code can make your eyes bleed more. I agree but bad programming practice is a personal choice. Ruby is as object oriented and as functional as anybody else. There's no inherently obstacle to readability and maintainability. Perl is still alive and so are it's generation of system admins. If they want to write Ruby in Perl style that is a personal choice.

Most of the time veteran programmers and contractors deliberately make their code impossible to maintain by others so as to secure their job and status. This is hard to avoid but management would prefer something with more inherent restrictions. The majority of companies are not startups that need productivity and creativity.

Python has a lot more mature libraries. It's because Python was supposed to be a better Shell in it's early days. If you can't rewrite those things you need in Ruby you have no choice. If you have to learn you can always learn Ruby on the side or later.

I read about that most libraries in the scientific community are written in Python. That's true and I regard myself in the scientific/engineering community, but screw them. Many will be happy to use Fortran if Microsoft still let them. Since nobody let them they move on to Matlab.

Trust me, I had the privilege to help a professor who dug up a ancient dialect of Fortran program to interpret the moon's surface data using dot matrix printer. I knew too much Fortran than I would like to admit because I had failed to convert a few critical "routine", but utterly incomprehensible, to C or preferably C++. I managed to fix the dialect and get the programming running in a single lab lesson, which is a miracle to me. I even get to view a little of the moon's surface on a dot matrix printer!

I had little idea why that somebody in that community can write huge incomprehensible and eye bleeding programs. That's just me, from my viewpoint. They seems to enjoy it. But if you talk with them about objects, class, functions (as in functional program), they would walk away. Some C programmers challenge every C++ thing I made creeping into their system even though the compiler have no problem with it and they don't need to know. Most of them are commented out test code anyway.

Professors are wary that students run into bad program practice if the language lets them. Students are wary if the language is good enough. Nobody uses Pascal. There's no harm to teach or learn it, but ..., nobody ever uses Pascal. If you are a professor, you should be able to turn the disadvantage of an imperfect language into an advantage, of teaching. If you are a student that worry about learning bad programming practices, you should not learn anything on your own.

Many people worry about feature rich languages. If they come across something that they don't know, they will freak out. They cannot say they are competent in that language. A programmer will have no problem if you yourself are the only one that you answer for.

Every time you want something for yourself, somebody else will shoot you down one way or another. What about the runtime efficiency? Java didn't apologize for it and got compilers for it. Now Java became the "efficient" language to write compilers for others like Ruby.

C++ is the first language available on most computers that allows painless writing and using of "libraries" on anything. MS screwed it up. They are more happy to sell you visual basics and they charge you dearly for whatever language you use. Unix screwed it up. Even the compilers have no problem with it, the graphical system community soldiered on C way much longer.

Java is very limited as a general purpose language as compared to C++. For one there's no operator definition when the Math (not Mathlab) community uses it since ancient times. Not to mention the lack of overloading.

Nowadays you should enjoy the chance to open up any browser on any computer to learn and use a pretty object oriented language - Javascript, totally free. Ruby is even better outside the browser with all types of system, graphical and web related things.

Wednesday, April 16, 2014

The 2048 game should be renamed to 4096

Yes, it was quite addictive and a good way to spend time waiting. But soon, after a day or two, I won - getting a 2048 square . I tested my strategy and soon it was obvious that it's pretty easy if you have the right simple strategy. A day or two more I got 4096 and my personal high score to date is 45184.

I don't think I'll be addicted to it anymore because it's too easy.  And once you get to 4096, there's not a lot of difference to get to 8192. But I'm not too interested to find out, unless there's a new SAVE feature so I don't need to start fresh every time from 2.

The strategy is simply to keep the largest square at the corner, with decreasing value outwards.  For example, at the bottom of the board, you should have:

128 64 32 16

You don't want to move the corner 128 to the right or up. If you keep the 4 squares occupied all the time, the bottom row  can't shift right. And you never need to shift the row up if they are the largest numbers.

You keep the largest squares at bottom and at left when you grow the numbers.  And always target the smallest square 1st at bottom. In this case if you get another 16 over the 16 at right bottom, you immediately carry on to get 256 at the left corner.

Things are seldom ideal. But still you target the smallest at bottom and they will be improved.

Also you never put a bigger number on top of a smaller number. They will happen from time to time but this is the 1st you have to deal with.

That's about it.

Tuesday, April 8, 2014

XP going strong

Windows 3 starts to be useful, when you can start ditching DOS. Widows 95 is the 1st usable GUI OS. People keep reminding people that OS is just for loading applications. I'm 8/10 in that camp. For this reason I resisted upgrade until Windows XP. I built my own PC mostly so I have to pay extra for the OS if I want to upgrade it too.

I upgraded to XP for several reasons. It came out about 2001 so my 6 year old OS seems to be ancient at the time. XP merged the corporate/business NT line and the home user line 9x into one. It's a lot more usable, reliable and powerful, than W95 that is. I pay the OEM price for just the software so it's not a big deal. I said at the time just the bundled windows movie maker worth the price, providing a usable movie editor. My comment answers somebody asking should I upgrade. If you have doubts and have to ask, you don't need to.

And then it's same old same old. I was happy with XP. Even when I got the netbook with Windows 7, it's full of bulk ware and very slow. I saw no need to upgrade.

In 2011, I decided to move on to Ubuntu all the way. I played with Linux/Ubuntu for a couple of years via dual boot. Before that, I couldn't do without XP for proxies, VPN, encryption and such. Soon after I'm 100% Ubuntu with upgrades per 6 month. I need to go to XP very rarely. One XP only app is car diagnosis with adaptor, and the other is a cheap Fax modem just in case I need to send legally recognized documents fast. I still need them but they are compatible to W7 I think.

The problem of Ubuntu is that they are going the way of Macs, while the others are not that well supported without a profitable company behind it.

I brought Chromebook for my wife and kids so I don't need to do backup. (I never do much anyway.) I ended up using a lot myself. It's a lot faster than most of my computers. I "built" my last fast computer for video recoding and editing. There's no need for it anymore because people only capture short clips in standard formats.

Now you can't do a lot of things on Chromebook but ideal for wife and kids. They were using LibreOffice anyway. Using Google "Office" is a step "forward" without the need for saving. For me it's a super Linux machine with all the hardware compatibility problem solved because Chrome OS is Linux and all the hardware drivers are compatible with other Linux.

When I revisited my old XP boot partition, I'm surprised it's so fast. Much faster than Ubuntu now and comparable to the basic Chrome book on an ancient machine with rotating disks! I should do this more often. 

The free anti-virus software installed is still going strong. They are still near the top at industry performances. Though one of them seems to be giving up XP gradually, and falling down the charts.

I installed the British Comodo firewall to be paranoid. I need that hopefully to detect irregular activities on the computer. My model is that someone may have gained access to my computer and installed something to monitor me. They may sent information back to headquarter on a very low frequency so it's hard to detect. Comodo is doing well and got a lot bigger now. But they still are not too good for anti-virus so  can't have just one malware software.

Again, booting XP is a lot faster than Ubuntu and loading firefox there is a lot faster too. Should do it more often.

Saturday, January 25, 2014

Game changer Moto G

I thought I missed something when I saw the Moto G.  But no.  Google only put that out in Jan.  I got a Jiayu G4 last Christmas.  I didn't saw it coming.

It's a game changer in many ways.  First, people have been buying phones (and other things) direct from China for years now.  The US product lines are too bad, too expensive, or didn't fill the gap.  So you have to pay a markup price for middlemen.  But once crossing national border, guarantees don't hold any more.  You have to pay more for some respectable middlemen.

For the Moto G, there is no 4G, single-band wifi, otherwise it's state-of-the-art - quad-core, 720p HD.  I never want 4G.  But to get a decent 4.5" phone without putting up a few hundred dollars up front, the carriers forced people to pay for 4G data, so they can complete the 4G network.  I'm not a travelling salesman.  When I'm commuting, 10Mbps is good enough for me, good enough for streaming a movie.  Otherwise I have wifi.  If you signup for AT&T internet, you can have all their wifi around the country for free.  (The catch is that they aren't as good as cable yet.)  I don't even want to get a smart phone for my wife but then texting will difficult for her.

For me it's a palm sized tablet, personal communicator, smart organizer, whatever.

For my boy, $179 for a handheld game device is a bargain.  It's comparable to a nintendo but the graphics is a lot better on the Moto G and games are free or cost little.  For my girl, she wanted a 3.5" phone to fit her pocket, but must be a smart phone for her to text.  She settled for a cheap 4" phone because I told her any smaller screen will look bad.

Google don't want or need to compete with carriers and phone manufacturers for dollars.  They are not strong armed by carriers.  They can also make what they want themselves.  One more Android sold means one more gmail and hangout user.  And one more user of the many Play store apps serving ads.

Google don't want or need to compete with game hardware or software manufacturers.  It's an open game platform.

Friday, January 24, 2014

Struggling with Cancer Research

......, the fund raiser for it.  They are relentless. I surrendered before but they start that every year as I'm on their list.

First I agreeded to donate some stamps.  Then I looked up their calling history for the 1st time.  It's not good.  I'll keep my promise when they mail me something but I blocked their calls.  But they keep calling everyday with different numbers.

Times like this I am grateful that I cut the phoneline at last and used the internet and Android.  I can look at the caller id at any or all smartphones to see if I pickup the phone.  I think I can block all their numbers on the phone but it's easier at my SIP provider's website to block them so no phone will even ring.

Landline providers are providing similar service but mine is much cheaper and more features.

I'll miss the voice / talking caller id of my antique answering machine.  There are apps for that but they all don't work for VOIP.  It's not a great loss as I can see who's calling with my mobile phone not far from me, even when I'm not at home or far from the answering machine.

However, since you can assign individual ringtone to a number, I can just use a sound file reading that number.  It's a bit of hassle to generate a file for each, but you can make a file for each group, with ringtone like "family calling", "company calling".  And for kids, "dady calling... dady calling".

Then they are estate agents.  They all want to see how I'm doing in this new year.  But I don't want to hear from them for the next 30 years.

Monday, January 13, 2014

Two OS, dual screen, one Chromebook

The alternative title is Crouton vs Chrubuntu (vs Chrome OS)

Crouton allows you to run Ubuntu at the "same" time as Chrome OS without the need to reboot.  You can switch by ctrl-alt-forward and ctrl-alt-backward.  Very exciting.

Crouton/Ubuntu works well on the C720, and a lot faster than on the AO722 of course.  The trackpad is fully functional as in Chrome OS, and then some.  The "some" is the half double tap that replaces mouse drag without left mouse button.  (it's a double tap without lifting the finger on the last tap, and then move to drag)  I'm elated.  I prefer half double tap (single-handed) to drag but it doesn't always work on Ubuntu.  Now the whole trackpad of the chromebook is the left button so I have that for backup up without looking for the left mouse button!

Chrome OS supports dual screen about the same way as Ubuntu, but chromeos may be a little more intuitive.  You don't want to mirror the two screens because that will cripple the higher resolution one.  BTW, the C720 screen is of course not as good looking as my 1080p HDTV.  Well, if you want that good and squeeze a big TV into 11" or so, it have to be over a grand.

With Crouton you can run a different OS on each screen!  At least the illusion of it.  When you switch OS with the hot keys combination, the screen doesn't refresh in all cases.  I don't remember exactly.  But the key thing is that Chrome OS is multitasking (of course).  You have to drag a browser tab out of the window to get another window.  Then you can move the window to another screen.  It's not clear because if you start an app anywhere, it will always default to use the first opened window.

That's the good of Crouton.  Switch with hot key.

The not so good.  Crouton is just a process in Linux.  It is under a shell under a terminal in the browser.  It seems that you can run the crouton process in the terminal background.  So you have to keep the terminal tab.  If you kill it you have to start again, get a terminal, get a shell and start crouton. I'm not sure if sound works on the other screen, the TV.

The fatal.  Crouton is using the same Chrome OS kernel, which is a version of Linux, not fully compatible with the Ubuntu kernel.  So some apps on Ubuntu will not work on the C720.  How to I know?  Trying to be clever, in chromeos I got a terminal and try to run openvpn and eryptfs as if I'm in Ubuntu.  I hope they will work as they are already part of chromeos so I don't need to install anything.  Both doesn't work.

In crouton, I got exactly the same error message as I was in a chromeos terminal.  Specifically, chromeos crippled ecryptfs so it won't work the way in Linux does.  May be so you can't possibly hack the encryption with stolen key, etc.  You can't install anything in the normal mode.  Chromeos probably use a more secure mode in openvpn for handling keys and certificates so most current vpn providers do not support chromebook's openvpn.  It's the same story for the command line execution.

For vpn I can work around it, paying more for a vpn provider who support chromebook, or run vpn at the router level with a vpn access point.  But no way I can work around the usb drive encryption.  The other encfs also doesn't work on crouton.

That drove me to Chrubuntu.  It was there earlier and there were some problems.  But for the C720 it's straight sailing.  I install with all default options and it worked fine.  It just takes a long time.  > one hour?

Everything works, video, sound, trackpad + half double click.  Ecryptfs and openvpn works.  It's about 5Gb.  I left some for Chrome OS.  So there's no much left on the hard drive.  But the usb 3 is capble of over 100 MB/s near peak.  For my old USB 2 drive it's more like 10!

I love chromeos.  The security fits me.  You can add a secret google account and delete it on the chromebook after use, all with ease.  Now that google encrypt the browser data (links + stored password), it will be easier than me currently using ecryptfs to encrypt all firefox data on the fly.  You can totally lost the book without exposing any data.  Even more secure than hardware encrypted disk drive.  The data just isn't there.

Crouton turns out to be not useful for me.  How do you know if your app is compatible with the Chromeos kernel?  If you prefer the Unity interface, may be.  But the chromeos UI isn't bad at all.  And google sync is pretty good and across android too.  If you need skype (and it works on crouton), and you can't Hangout with your friends yet, may be.  But if you don't replace the kernel, you can't be fully compatible.  And if you replace, you need bios reboot.

Chrubuntu turns out to be superior.  On intel chips, it's fully compatible I suppose.  It's also easier to dual boot.  ctrl-d to chromeos and ctrl-l to ubuntu.  You can't switch after boot, but well, you have to make some decisions.  And since booting doesn't take that long, it's not a big deal if you need to boot to another one for some work.

As for chromebook itself, it's a very good linux machine.  It's much faster than the AO722.  Everything works because the chromeos drivers should work for linux.  There's only 10Gb hard disk.  But in a way you don't carry a big hard disk with you all the time - the principle of portables.  It's absolute quiet and fast.  You can have file servers, streaming and all that.  And that it is $50 cheaper than the AO722.

Now I really doubt if the chromebook killed the chromebox.  Well, a quad core android stick computer cost $80 and more.  That's about the same if you plug the chromebook into a big monitor.  It cost $120 more but you get a portable as an extra.  The C720 is probably fast enough to run virtualbox, and run some Windows in it so you have all the os's just in case.

The chromebook screen gets in the way if you plug it into a desktop monitor.  You can use bluetooth keyboard/mouse/trackpad.  But you can also plug it into your HDTV in your home theatre.  You can have a big background screen and a close working screen.  The chromebook screen won't get in the way if you have a big screen.  Believe me, it's like working as Citizen Kane.

OK, if you installed Chrubuntu on the SSD, you can safely exit and reenter developer mode without affecting you Chrubuntu partition. But you cannot boot into Chrubuntu by cntrl-l. It wouldn't work. You have to reset the boot options. The following isn't all necessary, but sure it will work:

  • get into developer mode (probably not needed)
  • boot into chromos (what else?)
  • get terminal by ctrl-alt-forward (not t, probably better)
  • login as chronos, no password needed
  • at the command line do this: (from reddit)
$sudo su
$crossystem dev_boot_usb=1 dev_boot_legacy=1

The boot legacy option obviously let you boot into chrubuntu by ctrl-L instead of ctrl-D into Chrome OS. The usb option will boot from usb if you attach a drive to it.

Wednesday, January 8, 2014

Surprisingly good Acer Chromebook C720

Who said netbooks are dead?

I have the Acer AO722 Windows 7 netbook.  It ran Ubuntu ever since.  Everybody in the family was happy with it except me.  I thought it would play full HD video on Linux.  But in Linux you don't have drivers for hardware acceleration.  Updates never came, not that I'm aware of.  Everything else works.

The C720 is a no brainer at $200.  My wife and kids don't know anything Linux even when they are using it daily.  To them the AO722 it's really a net book and then some like word processing.  For school work or writing letters they can fire up Libre Office or anything that matters.  The C720 can't have a weaker CPU than the AO722.  The screen resolution is OK.  It should boot much faster and should fire up the native Chrome browser in no time.  That's all I needed to know.

I have reservations if they all can move into the cloud.  I doubt if dual boot Ubuntu runs smoothly and how much the dual boot annoys them.  But if the C720 can only solve some problems, I can have one more or something else for other purposes.

If you open the Chromebook, it looks like the AO722 at first.  But the screen is soft like TV and monitors.  That I call a surprise.  The AO722 is harder plastic like tablets.  But if the resolution is the same I have no complains.  Some writers complained about the narrower viewing angle.  Though he told the truth that there will be difficulties for a collaborating group in front of the computer together.  For a $200 computer?  The side to side viewing angle is pretty good, unless you are at the same time doing some weird yoga moves with your head positions.  The vertical angle is narrower, but you can tilt the screen for optimum viewing.  That's what netbooks are for.

The C720 actually has a touch screen!  You touch it, it wakes up.  A surprise.

The keyboard area is surprisingly spacious.  The C720 is a tiny bit wider and longer than the AO722, with a crowded keyboard.  Getting rid of one or two windows key can't make that much difference, can it?  The keyboard is a true redesign without worrying about windows compatibility.  Google can afford that.  It even doesn't run on Windows.  The DOS F keys are gone.  In place of them are brightness, loudness and some browser keys like back/forward, refresh and full screen.  There are no more multiplexing blue functions keys.  With the full screen key browsing is much more enjoying.  Never use full screen much if I have to use ctrl-F11.

The touch pad is another surprise.  There are no buttons, no left and right mouse buttons.  It's an obstacle to ask my family to switch.  Kids should be easy but I don't know about my wife.  For me when I got the AO722 I brought a wireless mouse at the same time just as I do with laptops before.  Never use mouse for portables much.  When I got use to the AO722's multi-gesture pad, I got rid of the mouse on my desktop instead.  The AO722's pad has less functions under Linux than Windows.  But still I never need to use the mouse buttons for good.  My lower cost keyboard + pad for the desktop has even less functions, but still I rarely use the mouse keys.  It's not some poor men's compromising.  It's superior that way than using any mouse.

In the Chrome pad, all the usual pad functions work and then some for being netbook.  Two finger tap for right click and two finger scrolling works for both horizontal and vertical.  Dragging doesn't work with half double tap as on Linux.  Surprisingly, the whole pad is a left mouse button that clicks.  In a way it's easier for people used to the left click buttons.

Pinching doesn't work, at least on the browser.  But it's easier to do it on the menu.  Pinching is also replaced by scrolling in some Linux applications and Chrome OS.  In Google Maps, you drag the map to scroll; you scroll to enlarge or shrink.

On the browser, horizontal scrolling becomes the back and forward buttons.  Three finger scrolling moves around tabs.  Four fingers ...... you must be weird to use more than that.

So I doubt very much if the touch screen version is worth it at $100 more.  For the same functions, the trackpad can do it better.  Selecting a folder on the screen takes more effort than selecting that on the trackpad.  If the touch screen is more Android like it will be confusing.

It is surprisingly easy to move into the cloud.  They all have Android so I don't even need to setup accounts for them in the chromebook.  To port their data, I just need to run the Chrome browser in the old computer and upload whole directory trees into Drive.  For Libre office files, you need to turn on the convert option when you upload.  You do not need to do that for other formats that Google Drive supports directly.

Another surprise is that you can't print directly on a printer.  As if some USB drivers will ruin it's cloud only reputation.  You need another computer to install it's own drivers and receive printing materials from the cloud.  I'm not surprised if you signed off your rights so Google can look at what you print without collecting personal information.  Not even a Wifi printer I think.  It have to be a cloud ready printer if you don't have any other computers.  But if you have another, it's trivial, because it's just the routing.

It's a big surprise without an Ethernet port.  Not that I use it.  I have to disable it for wifi to live in AO722.  Being Linux, you can still connect to Ethernet with a USB adaptor.  But you really use an Ethernet port when you backup your drive or download big media files.  But you don't do these on the C720.  You have only 10G anyway.  However, you have dual-band wifi built-in.  I would think you can get away with single band, and that the high frequency band cost a lot more to implement.

The C720 and other Chromebooks are Fort Knox's.  A big surprise.  They are using the same latest encryption system I'm using on Ubuntu, and on selected directories in my external drives.  Chromebooks use it for the whole internal disk, which is more secure than part of the file system.  Your Google password is also your encryption key so it is transparent.  If you change your password and forget the old one, your things in your local drive cannot be recovered.  It is designed for you not to put things on the drive and it's not a problem for most.  I have my machine generated Google password doubly encrypted and remembered on a PC browser.  I need to change it to one that is easier to remember and type.  Once the password is updated on Firefox, the old one is overwritten.  That's how I lost everything on the chromebook drive.  But I think I never put any user data in there yet.

You can't encrypt your external drive yet.  But if you get into a terminal, you mostly can.  It's just Linux with the Linux file system encryption.  But you need to mange your key carefully. [you can't]

You can use a Chromebook as a guest and no trace will be left whatsoever once you exit guest mode.  It's like a telephone extension on the corridor for anybody to use it.

Chromebook is more multi-user than traditional computers with the cloud in the equation.  Your disk area is separately encrypted.  Your data are mostly stored in your Google cloud account, encrypted.  I don't think any superuser can even log into the chromebook while you are using it.  I mean not even from the local network.  There's no superuser on a normal Chromebook.  You can't do anything if you are not in the developer mode.  And if you are in the normal mode, there's nothing you can install other than approved by Google.

Your bookmarks and browsing history are all at the cloud.  It's just not on the chromebook for someone else to hack.  Google has your encryption key but you have the option to keep it locally.  Also, encryption keys are easier to handle securely than private raw user data.

The video player on the chromebook is awesome.  It plays HD video on the usb drive with no problems whatsoever.  The awesomeness is on the fast forward and backward keys, < and >, which is standard on any keyboard.  It's like setting good alarm clocks.  If you don't release the buttons, time will travel faster and faster.  Perhaps not.  Because the cpu and usb 3 is fast enough, the keys are responsive.  You just need two keys for each direction to skip secs or mins.  Backward is as good as forward even in HD.  In Linux you have 3 different sets of keys to program different skip time like 10s, 30s, 5min etc.  Some players have the option of changing playing speed with a slider.  The chrome player makes them all obsolete.

Now there are nasty surprises on the video side of things.  WMV is not supported.  AVI is, but you know there may be all sorts of codecs within.  DLNA is not supported it seems, so you can't stream your movies into the C720.  There is a DLNA app but doesn't work for the unix server rygel.  There is a total solution with PLEX.  There is an app for that in Chrome OS.  It works because that's just an URL into your PLEX server.  You can stream movies.  If the format is not supported in chrome os, Plex will transcode the stream in real time, changing the format as you watch.  But that is CPU intensive and needs a decent PC for the server.  PLEX works for PS3, XBOX, WII U, and comcast.  So it's worth it.  But however you stream, the awesomeness of the chrome player will be lost.  Really, it's not bad carrying around a 1TB usb drive the weight of an android phone one or two years old model.

A silly way to get around streaming and unsupported format is the remote monitor.  It is as easy to setup as Netflix and you can control a remote computer in front of the chromebook as if you are sitting in front of the remote computer.  You can play and watch anything on the remote computer as if you are using the computer.  Movies playing on the remote computer is watchable on the chromebook, but not as good.

How about docking?  Nobody talks about that for sometime now.  Your data is always in sync as there is only one copy in the cloud.  Your main storage and backup storage is on the cloud.  Another desktop is what you want instead of docking.  But the C720 is not bad for even a desktop, or call it a nettop.  You need a bigger monitor.  No problem, just plug in the HDMI.  You don't need another keyboard and mouse.  Those on the C720 is better than the one I'm using on the desktop right now.   The only problem is that the chromebook screen getting in the way of a bigger monitor.  But it can be done depending on the size of your monitor.  The screen of the C720 at the lowest incline angle may go behind your monitor from under it, with the keyboard right in a good position.  But you can always use a bluetooth keyboard instead.

Chrome OS supports VPN natively but I think in a more secure mode of exchanging keys and certificates.  So, only if a VPN provide explicitly says it support openvpn or L2TP/IPsec FOR the chromebook, don't go for it.  Few supports it.  I tried and it just doesn't work if the servers are not setup for chrome OS.  But if you go into developer mode, it may be easy with or without another Linux. [doesn't work in dev mode either]

To get VPN it's may be cheaper to get an extra wifi router that supports VPN to be a repeater of your main browser.  Then you have a dedicated access point to connect for vpn while all other traffic are not encrypted with your IP from ISP.  I would also use this "channel" for guest access without a password.  The traffic is encrypted and your IP is protected.  I don't know if that's such a think but you can probably do it in dd-wrt installed routers.  Just to setup VPN for everybody in dd-wrt isn't easy.  Instead of using the UI, the one that works use scripts to generate config files, run steps with a few secs in between to make sure that something did ran.  You can also setup only one access point (SSID) with VPN, or only to a subnet.  But there's no simple cookbook scripts for everybody to do it.

So far I'm quite happy and enjoying my chromebook, not keen on installing Ubuntu on it yet.

I can see schools and corporates can make good use of chromebooks.  There's no maintenance.   There's even no need to setup on the chromebook.  No virus to worry.  No updates.  It's more than no maintenance because it is secure.  You are strictly limited to the apps on the chrome store.  It is secure enough to Google's standard, unless your standard is higher and you don't trust Google.