
How we turn $199 Chromebooks into Ubuntu-based code learning machines for kids - mojombo
http://blog.codestarter.org/post/93985346780/how-we-turn-199-chromebooks-into-ubuntu-based-code
======
rglover
Hell yeah! This is a great initiative.

 _By university, many students have already set their minds against a career
in tech. We need to reach kids earlier, when they are motivated by curiosity
instead of social pressures._

This came up the other day. A 19 year old kid came to my door working for the
electric company. We ended up talking a bit and he asked what I did. I
explained I'm a designer/developer and I work from home. For him, that was a
total mind blow and he explained how he always wanted to be a game developer.
I suggested that he should try and that his current job was just a temporary
thing he could use to invest in getting better.

The thing that bothered me, though, was that he didn't even think that he
could do that, purely based on where he was from and what he saw around him
(he alluded to being from the south side of Chicago). Stuff like Codestarter
is a great step in the direction toward teaching kids of any background that
they can do this stuff, just like everyone else.

Personally, I'd like to see something like this _but_ with a more down-to-
earth "here's what they told you and here's why it's wrong" lesson up front.

~~~
rubicon33
I've got to ask -

What is the drive behind this "get everyone everywhere to code!" initiative?

I just don't get it. You don't see this kind of thing in other industries, do
you? Why are so many programmers intent on getting everyone from every
demographic, rich poor, black white, interested not interested, into coding?

Forgive me, but it just seems like there's this misconception that everyone
should know coding like they know algebra. I understand you people like it, so
do I - that doesn't mean it's for everyone.

This comment may get down voted but I assure you it comes from a place of
genuine intrigue.

~~~
joosebox
At this point it's almost a literacy thing. Basic knowledge and breaking that
fear of computers would be enough. At that point people can decide if they're
genuinely interested based on knowledge instead of (probably) irrational fear.
For some people it really is a matter of just breaking that initial
intimidation factor. There's more than enough time wasted in K-12 to not put
at least an intro class in there for a year...

I remember getting scolded in my 7th grade (required) home education class
because I had the pan's handle in a dangerous position while cooking eggs. The
pillow I made was the shit though and I did learn how to make muffins so it
wasn't a complete loss. But you've got to agree an Intro to Python/Java class
would be a much better use of time.

And then there was that one time I broke my arm playing flag football in one
of my countless years of "physical education". Teach kids diet and exercise
for that "subject" to be remotely beneficial in my opinion, with an emphasis
on the diet. That's lifelong knowledge. I don't play flag football anymore,
also still don't have full range of motion in my left arm (it's nothing bad al
all, just kind of annoying on occasion).

Or those two years I spent in French. I remember my French name was Pascal. I
can tell you my name and count to three but unfortunately can't remember how
to tell you bye, or anything else. Everyone should at least be introduced to
code like they are to algebra. I was introduced to woodworking, close to a
decade of random ass activities in phys. ed., clay classes, jewelry classes,
and more I can't even remember.

A semester or better yet full year is more relevant in today's society. And
frankly, is a skill that will have a subjectively higher quality of life than
whatever else they were considering. Breaking the initial intimidation
faction, like I said, could be all it takes. Stupid to not do that when so
many other almost-mind-boggling stupid things are required.

I know my 6th/7th grade cousins were amazed this year when I told them I was
making an Android app. I told them they could too and there are plenty of
sites to start, told them a few, but I know they didn't believe me. I think
kids around that age would love making a simple HTML5 game or something.
Accomplishing that at a young age would change how they think about tech for
the rest of their lives. I know my cousins will never get exposure to that
outside of school because their blue collar father (not saying anything bad,
my dad is blue collar as well) has them playing sports year round - football,
basketball, baseball, and soccer. Now that's awesome, but over the top. Those
aren't lifelong skills the same way coding can be. I hate to even limit it to
'coding', it's knowledge that can help apply logic to all areas of life while
potentially creating plenty of opportunities.

~~~
visarga
> I had the pan's handle in a dangerous position while cooking eggs. ... But
> you've got to agree an Intro to Python/Java class would be a much better use
> of time.

Even as a programmer, you still eat 3 times a day, right? There you get your
utility. I think cooking and personal finance classes should be much more
prominent. The think that was useless for me was Chemistry. The subject I got
the most out of - English (I am not a native speaker).

~~~
e12e
Pah, chemistry is just useless because you can't make fireworks any more
without risk ending up on a no-fly list or worse ;-)

On a more serious note, I'd not remove anything from parent's list of classes
-- I'd even defend the breaking of his arm (in the sense that, I'd rather have
_some_ kids break arms, than playtime/phys.ed. being too cuddled).

It's really sad that he didn't feel he got anything from learning French. I
suppose that's the price one pays for having "won" the language lottery (it
was a little like that with German 70 or so years ago, I'd imagine). Perhaps
French should be dropped from American schools and be replaced by a language
that actually is more of a gateway into an alternative culture and history,
like Arabic or something...

------
Aissen
The problems exposed show that being a distributor is harder than it seems;

> The “developer mode” boot screen is scary and unhelpful.

Then put your own bootloader ? You can do this by accessing the hardware:
[http://www.chromium.org/_/rsrc/1381990807648/chromium-
os/dev...](http://www.chromium.org/_/rsrc/1381990807648/chromium-os/developer-
information-for-chrome-os-devices/acer-c720-chromebook/c720-chromebook-
annotated-innards.png) and removing the write-protect screw. Of course the
chromeOS team is making sure it's not easy to bypass their security features,
and it has the (desired?) side effect of preventing this kind of mass-scale
re-purposing.

> Kernel updates wipe out the custom kernel modules.

Then put your own kernel. Being a distributor means taking responsibility
about what's running on your hardware. Make your own repositories, recompile
the kernel(you can even automate it), and while you're at it, add all those
packages you're installing in the script(hello .deb package downloaded over
http), and VERIFY THEIR SIGNATURES with apt.

About the kernel, you could also make sure the upstream kernel supports the
trackpad, and then make sure the (intermediary) distributors pick up the
associated patches, so it's a burden off your plate in the mid/long term. You
could also probably pay Canonical (or anyone else) to do this job.

~~~
DennisP
Where is the write-protect screw in that picture?

~~~
kps
7.

Information for all available devices can be found under
[http://www.chromium.org/chromium-os/developer-information-
fo...](http://www.chromium.org/chromium-os/developer-information-for-chrome-
os-devices)

Edit: re the GP post, the design is described here:
[http://www.chromium.org/chromium-os/chromiumos-design-
docs/d...](http://www.chromium.org/chromium-os/chromiumos-design-
docs/developer-mode)

------
imaffett
(disclosure: I'm an Intel employee)

I love the C720. My dad got me one for xmas, and himself. I used crouton to
install Ubuntu, but like your approach better. I work on the Intel XDK team
and am pushing the C720 as a great development machine since we provide cloud
based builds for hybrid apps. You should look into the XDK for Code Starter
[https://software.intel.com/en-us/html5/tools](https://software.intel.com/en-
us/html5/tools)

~~~
tootie
If developer mode for ChromeOS gives you shell access, what do you gain by
installing an Ubuntu partition?

~~~
mojombo
Even in developer mode, ChromeOS provides a very limited set of tools, no
package manager, and a mostly undocumented environment. It's not really
appropriate to use as the base of a developer machine. Ubuntu, on the other
hand, has all of the right things to make it easy to use and extensible for
devs.

~~~
gozzoo
I think that in long term it will take much less effort to customize ChromeOS
than Ubuntu. Initially it will be harder but after that it will require next
to no maintenance. Changing the kernel sounds much more complicated than
finding a way to install a package manager. Google might also be willing to
participate in this in more ways than just helping set up the environment,
which could be very beneficial for the whole project.

------
pgeorgi
Getting rid of the nag screen is explained here: [https://johnlewis.ie/how-to-
make-seabios-the-default-on-your...](https://johnlewis.ie/how-to-make-seabios-
the-default-on-your-acer-c720/)

Since this _totally_ undermines the security concept, some dis-assembly is
required (open the case, turn a screw, close the case), which is described in
the chromeos developer documentation

~~~
mojombo
Yeah, I saw this technique, but it requires violating the warranty (opening
the case), and we'd really like kids to be able to get their laptops fixed for
free if something goes wrong. Still great that it's possible to do, and can
make a fun project for kids with our laptops.

------
lukebennett
I have an Acer C720 myself but put ElementaryOS on instead of Ubuntu - runs
like a dream and looks great to boot.

A good thing about the C720 is that the SSD is upgradeable fairly simply[0],
though it's easy enough to stick an SD card in as a stopgap.

I picked up a refurb (not that you'd know to look at it, feels brand new) for
£130. Wouldn't get an 8.5hr lightweight laptop for anything close to that
elsewhere.

[0] [http://www.thessdreview.com/daily-news/latest-buzz/acer-
chro...](http://www.thessdreview.com/daily-news/latest-buzz/acer-
chromebook-c720-ssd-upgrade-mydigitalssd-m-2-ngff-128gb-sc2-ssd-worlds-
easiest-upgrade/)

~~~
cnaut
Does ElementaryOS run better than Ubuntu on it?

~~~
lukebennett
I can't say for sure unfortunately as my only previous experience of Ubuntu on
a Chromebook was via Crouton on a Samsung which, being ARM, was somewhat
limited in what you could do with it.

Elementary on the other hand I run natively via dual boot. It's nice and
slick, and I much prefer Pantheon to Unity, but I can't really give you a
direct comparison on this device.

~~~
listic
> being ARM, was somewhat limited in what you could do with it

What are the limitations and where do they come from? I suspected something
like that could be true, but not exactly sure.

------
dshankar
I quite like the work you've done here! Most computers in a school are ill-
equipped for programming needs.

I'm a bit concerned that this laptop is designed with an experienced
programmer in mind. I don't think the *nix Terminal is friendly to noobs,
considering it comes with no safety nets. Additionally, a teacher who is
unfamiliar with Ubuntu is likely to have a hard time helping students. I
tweeted a few more thoughts here:
[https://twitter.com/dshankar/timelines/497091774792228864](https://twitter.com/dshankar/timelines/497091774792228864)

In it's current state, perhaps this laptop would be better suited at college
students who are already familiar with the basics? At middle school/high
school, students & teachers need a more friendly introduction into the
programming world, not the real & scary one that is modern day Linux. However
at the college level, students need tools that will prepare them for the
industry and Codestarter packages all the tools one will likely use.

~~~
mojombo
Thanks! We're targeting an age range of 7-17 years old, and distributing these
laptops to kids that are attending learn-to-code programs like CoderDojo. For
the very young, most will choose to boot ChromeOS and use online programming
tools like Scratch, which is totally great. Installing Ubuntu gives more
advanced kids a place to go further, with no limitations, and that's why we do
it.

~~~
dshankar
That makes sense. Considering how popular Chromebooks are becoming, this could
be quite valuable for schools.

------
drewg123
For the driver problem: You should look into DKMS. That's a better stop-gap
than holding back the kernel modules. What DKMS does is to re-compile your
kernel module each time the kernel is updated. It can also move aside kernel
modules with the same name in the base kernel. See
[http://linux.dell.com/dkms/manpage.html](http://linux.dell.com/dkms/manpage.html)

~~~
mojombo
I did come across DKMS during my research on solving the problem, and spent
some time trying to figure out how to get it set up, but fizzled out in my
attempts to get it working. Do you know of any more extensive tutorials on the
matter? Real-world examples would also be hugely helpful. I couldn't find
much. Thanks!

~~~
drewg123
Arch linux has a decent tutorial:
[https://wiki.archlinux.org/index.php/Dynamic_Kernel_Module_S...](https://wiki.archlinux.org/index.php/Dynamic_Kernel_Module_Support)

As for a _simple_ example.. At a previous job, I did dkms support for a
driver. Grab [https://www.myricom.com/pub/Myri10GE/myri10ge-
linux.1.5.3.p5...](https://www.myricom.com/pub/Myri10GE/myri10ge-
linux.1.5.3.p5.tgz) & look at dkms.conf and read linux/README.dkms

For more complex examples, look at zfs-on-linux. I know that is also how
nvidia packages their hybrid binary blob drivers.

~~~
efuquen
I really love Arch, even though I don't use it on a daily basis anymore the
community wiki is the best resource I've found for guides on how to do a large
number of tasks with the kernel that can work in most other distros.

------
angersock
It's good to see Minecraft mentioned--a friend of mine recently ran a two-day
Saturday class on beginning programming in Python, using Minecraft on
Raspberry pis.

Kids had a lot of fun making functions to do cool things in Minecraft. Gamedev
is probably the most rewarding way to learn programming.

~~~
mojombo
That's rad. Minecraft is such a great gateway for getting kids into
programming, it's awesome to see educators taking advantage of that. Does your
friend have their curriculum available anywhere? I'd love to take a look at
how they ran it.

~~~
willstrimling
I'd also like to see the curriculum!

~~~
pbhjpbhj
mewtoo^w me too

------
bnejad
Cool project but sublime text is not free software and a nag screen isn't
exactly fun to see quite often especially for kids.

~~~
Igglyboo
Also if you want to be taken serious you shouldn't be advising people to use a
trial version for free without paying.

I guess you can legally say you're trying it out for any amount of time but
it's still unethical.

~~~
mojombo
These are both fair points, and we'd like to offer free Sublime Text licenses
to recipients of our laptops, I just haven't had time yet to explore the best
way to make that happen. Once Atom has a competent Linux version, we'll likely
switch to installing that instead, as it's open source but still very friendly
for novice developers.

~~~
catern
Why not just use Gedit or Geany or any of the other many free software text
editors available on Linux?

~~~
adrianmalacoda
Probably the same reason they're using Ubuntu and Chrome: the alternatives,
while free, aren't fashionable enough.

~~~
Igglyboo
Except Ubuntu and Chrome are both really good products while still being
fashionable.

I'd use Sublime any day of the week over Gedit even if it wasn't "cool"

~~~
digisign
Gedit is pretty bare-bones and not really a programmers editor despite a few
features in that direction.

Geany, on the other hand is everything a beginner needs and without
proprietary concerns.

------
html5web
You can buy Toshiba Satellite 15.6" with 4GB Memory and 500 GB hard drive for
$229 [http://www.bestbuy.com/site/toshiba-satellite-15-6-laptop-
in...](http://www.bestbuy.com/site/toshiba-satellite-15-6-laptop-intel-
celeron-4gb-memory-500gb-hard-drive-jet-
black/7351008.p?id=1219265947912&skuId=7351008&st=categoryid$pcmcat247400050000&cp=1&lp=1)

~~~
shazow
I just stumbled on this:

[http://www.groupon.com/deals/gg-acer-116-chromebook-
with-14g...](http://www.groupon.com/deals/gg-acer-116-chromebook-with-14ghz-
dual-core-processor)

$129.99 for a refurbished 11" Acer Chromebook. Crazy.

~~~
mehrdada
This guy seems to have a big inventory of them for $120:

[http://sacramento.craigslist.org/syd/4584307735.html](http://sacramento.craigslist.org/syd/4584307735.html)

------
keithpeter
OA says Java is being included.

Would processing (processing.org) make a good added extra? Has a lot of
example 'sketches'. Has audio as well as graphical code examples. Lots of
example projects around, some ambitious[1], exhibit Web sites, plenty teaching
material available, peer reviewed/published stuff (might help with school
committees). Comes with an integrated IDE and docs.

Might act as a bridge between the simplified graphical environments and
Java/Eclipse while developing code concepts further.

[1] [https://www.ibm.com/developerworks/opensource/library/os-
dat...](https://www.ibm.com/developerworks/opensource/library/os-datavis/)

------
afarrell
I know I can donate, but why can't I buy one through you? If you've already
done the effort to develop the product, why not sell it to the "savvy
developer looking for an inexpensive laptop to travel with", reduce your per-
unit costs, and make some profit you can pour back into the project?

~~~
mojombo
We'd very much like to, but we're only a few months into this endeavor, and we
want to make sure that our product is really polished before we start selling
them in quantity. We'll get there! In the meantime, if you're willing to put
$300 towards a ready-made Codestarter laptop, I'd be game to put one together
for you and have any proceeds go towards the program. If you're interested,
email me: tom@codestarter.org.

------
owenversteeg
I'm a mentor for a Lego robotics team and have been for years - this year's
season will mark my eighth year of Lego Robotics. I love to help the kids
learn and I even try to teach them (to some extent) how to code.

This looks great, and I'd much rather get four of these for my team than a new
laptop for myself. However, it's crucial to have Mindstorms software, which
only runs in a VM [0]. Can you test if it's at all possible (speed-wise) to
run the NXT-G software in a VM? I don't care if it's a bit sluggish or if it
takes five minutes to start as long as it's usable.

If so, this would be absolutely revolutionary. So many teams don't have enough
computers or have to share one computer.

If you don't have the software or an NXT, I'd love to buy one from you guys,
test it out, and evangelize it to everyone I meet. My kids would go crazy for
another computer.

[0] [http://superuser.com/questions/364864/is-it-possible-to-
run-...](http://superuser.com/questions/364864/is-it-possible-to-run-nxt-g-
software-under-linux-using-wine)

------
ff_
When I bought it this Acer C720 was like an experiment, at first I was
skeptical.

Now it's my main dev machine: its very little weight enables me to carry it
wherever I go, the battery lasts 18h (18 HOURS, CRAZY!) if I read only PDFs,
the 2gb of ram and the dual core are just perfect (but not tempting about
running virtual machines on it), and with the SSD it performs better than more
powerful machines with HDs. Oh, and I just love the 12" format.

(Of course I have thrown away ChromeOS, now I run elementary OS)

~~~
ameen
How good is development on it (& elementary OS). I've only used Ubuntu/OSX for
serious development.

Does the 2GB RAM cause any issues?

~~~
ff_
I think it's just perfect: the zero-bloat of elementary OS allows me to get my
multitasking work done flawlessly, keeping firefox+sublime+atom+a-lot-of-
terminals open without a glitch.

Also the dual core Celeron is fast in compiling things for elementary dev (of
course just don't think to run Gentoo on it), while moderates the desire to
play games.

About the 2GB RAM: as devs we are used to systems with 8/16 GB today; if you
can accept that even RAM is a finite thing so it isn't an issue.

Anyway I try to preserve my SSD, so I keep my ~/Downloads folder in RAM, and
at first I disabled the swap volume: the system just freezed too often. So I
re-enabled the swap, but I reduced the swappiness and I plan to move it on an
SD card.

~~~
DanBC
> Anyway I try to preserve my SSD

You really don't need to do that anymore.

~~~
ff_
Why? Any writing cycle consumes it.

And trust me, the Downloads folder in RAM is one of the best thing you can do
to reduce the bloating of files in a system: you learn to copy away the things
you really need, and leave the others there; at the next reboot they'll be
vanished.

------
tokenizerrr
I got an ARM chromebook, and one of the biggest downsides is that I cannot run
Sublime Text. Very disappointing there is no ARM build.

~~~
sbuccini
This was a huge problem for me as well. If I couldn't apt-get something, I was
stuck. Also, it was hard for me to install things locally since my directories
were all mucked up from the hacky installation. It ended up being more trouble
than it was worth.

~~~
mojombo
The Intel Celeron processor is what finally made me interested in the latest
Chromebooks. For development, ARM is still a pretty painful thing to have to
deal with.

------
Sephr
I think crouton is a much better-integrated experience than dual booting. You
can set up the Ubuntu chroot exactly the same way you have in this, but you
don't have to reboot if you want to watch Netflix or use Chrome OS. With the
crouton integration extension (synchronized clipboard, open links from Ubuntu
in Chrome OS), Chrome OS will feel like "just another app" (even though Ubuntu
is the "app"/chroot).

Another benefit of using crouton (with an SD card) is that if the user
accidentally hits space during the boot warning and developer mode is
disabled, they can simply re-enable developer mode and nothing is lost in the
Ubuntu chroot. Unfortunately, the C720 has an extremely slow SD reader, so
you'd probably want to go with the Dell Chromebook 11 (same processor, ~90MB/s
SD reader, better battery and build quality, $70 more) if you wanted to go
this route.

~~~
mojombo
It is very nicely integrated, and that may very well be the best method for a
more experienced developer. For our recipients, the simplicity of the dual-
boot setup is nice and makes it easy to understand what's going on under the
hood.

------
ck2
Here is a refurbished C720 for $130 if that helps

[http://www.groupon.com/deals/gg-acer-116-chromebook-
with-14g...](http://www.groupon.com/deals/gg-acer-116-chromebook-with-14ghz-
dual-core-processor)

------
thebiglebrewski
Awesome! Reminds me of this article on my blog

[http://blog.zfeldman.com/2013-10-05-setting-up-a-
chromebook-...](http://blog.zfeldman.com/2013-10-05-setting-up-a-chromebook-
development-laptop/)

~~~
thebiglebrewski
Also, I totally faced the same problems which is why my Chromebook is
basically bricked now - when people press space all of the changes are
erased...there needs to be a more user friendly way to make this process work.
I'd be interested in collaborating on this process perhaps, shoot me an e-mail
at zach (at) nycda (dot) com

~~~
mojombo
Great post! I'll definitely take you up on the offer, thanks!

------
yeukhon
Do people remember Edubuntu? Maybe there should be a version called Codebuntu.

~~~
mojombo
That would be amazing, and it's something I'd love to pursue in the long run.
It seems a natural evolution of our current approach.

------
hardmath123
I wanted to mention that you can install Scratch 2.0 offline—it runs as an
Adobe Air app. See
[http://scratch.mit.edu/scratch2download/](http://scratch.mit.edu/scratch2download/)

The offline editor also lets you import extensions, which means that if you're
adventurous, you can hook up Scratch to your NXT, your Arduino, your LEAP
Motion, your Sphero, your Kinect, anything. That should be pretty exciting for
new coders. A friend of mine's speaking about this at the Scratch conference
now-ish.

------
dharma1
One of our sdk devs broke his mb air and got one of these as a temporary
replacement. Seemed to work really well, used it over a week long sprint. Wish
they came with more RAM though

~~~
Glyptodon
The original Acer version had 4GB. I tried to buy one a month or two ofter
they were released, but 4gb versions ended up being sold out because of the
switch to the current 2GB version. So I never ended up getting one.

------
cashoil
In programming there are doers and thinkers.

Thinkers also write code, but they have a perfect understanding - breadth and
depth - of the application, the environment, the tools they use, the
purpose...

They have full autonomy and initiate things.

They have passion and basically do not need any formal education in CS.

Doers receive requirements and implement using the framework they have being
told to use.

Most people who have been told to do CS because it is financially rewarding or
a good job end up in this category. It is any-office-job for them.

------
aceperry
I have the Acer C720 and installed Linux on it. It is an excellent development
machine for what it is. Cheap but sturdy, light enough to carry places that
I'm afraid to bring my Chromebook Pixel, cheap enough that I wouldn't be too
bothered if I were to lose it instead of the Pixel, and fast enough to do most
of what I want.

------
listic
Are you sure you won't run into limitations of 2GB RAM? That's the thing that
worries me most about these Chromebooks, if the SSD is indeed expandable. I
routinely run over 2GB on 32-bit Ubuntu with regular office and internet
browsing tasks; sometimes over 4GB.

------
sspiff
I'm wondering, technically you're supposed to buy Sublime Text. Are you just
running the (infinite) trial version of Sublime, are you purchasing a license
for every laptop, or do you have some kind of sponsoring by the guy behind
Sublime?

Same question goes for Minecraft.

~~~
mojombo
I'd love to offer free licenses of ST and am working on a way to do that.
Until then, the trial will suffice for a lot of kids, and pre-installing it
means they can easily try it out. But yes, a better long-term solution is
needed.

~~~
jck
Github's atom might be a good long-term solution when it becomes more stable.

~~~
mojombo
Absolutely, and I mentioned that in a different comment. I'd love to provide
Atom on our laptops.

------
dpcan
Everything was going fine UNTIL.... one accidental press of the space bar and
you wipe everything out! Yikes. :) Still looks great, but something tells me
this would be in my kids' hands for about 3 days until everything accidentally
got wiped out.

~~~
mojombo
To be fair, pressing SPACE gets you a 2nd confirmation screen that must also
be accepted, before your fate is sealed. And even then it just places you back
into normal ChromeOS mode. The installer can easily be re-run to get you back
to Codestarter-factory-settings, and is actually a pretty nice learning
experience all on its own. But, yeah, those are all rationalizations for what
is a non-ideal experience. I'm hoping to find a good solution to the problem.

~~~
dpcan
But what about all your saved work? Reinstalling and losing everything could
be a real tear jerker for kids. In fact, it's unlikely they would start over,
possibly resulting in giving up on it completely given the emotional side
effects.

Maybe the solution should have a cloud backup option built in that uses
Dropbox or something to clone all your data. Then at least you are just a
couple-hour restore away from being back online.

------
kleiba
Sorry for my lack of knowledge, but will this leave ChromeOS side-by-side with
Ubuntu? If so, is this because it's technically not possible to only run
Ubuntu, or because of other (legal, warranty, etc.) issues, or simply by
choice?

Thanks.

~~~
mojombo
Our installer will leave you with the ability to boot either ChromeOS or
Ubuntu. It is possible to wipe ChromeOS completely and boot just to Ubuntu, if
that is your goal.

~~~
ameen
Are there any driver issues with a clean Ubuntu 14.04 install? (the post had
mentioned some issues with the touchpad)

------
rrss1122
Why _must_ it run Ubuntu? Especially if you're gonna turn around and make
Chrome (not Chromium) the default browser anyway?

Is it for the Minecraft (which, by the way, encourages a construction mindset,
not an engineering mindset, since Minecraft takes numerous liberties with the
laws of physics)?

That seems like the only good reason, because you can already learn to code
just fine on Chrome/Chromium.

------
luckyno13
Im not a kid but I may look into this to learn a bit of code myself.

~~~
mojombo
That's amazing! Let me know if I can help in any way.

~~~
luckyno13
Coming from an almost totally Windows experience, how restrictive is 2GB of
RAM going to be in Ubuntu, because Im not even sure a Windows machine would
function on 2GB these days haha.

~~~
mojombo
For browsing the web and simple development tasks, 2GB is sufficient. More is
better, but if you're working on a budget, then 2GB will get the job done.

------
cpursley
Or do it the easy way without messing up the bootloader and Os: Set them up
with Nitrous.io and get right to coding.

~~~
mojombo
Yep, and still totally possible by just booting into ChromeOS and firing up
Chrome. But we want these kids to have the opportunity to explore a full
operating system and see what makes the machine tick. It's also really
important to us that kids can learn to program without a full-time internet
connection (not all of our recipients have internet at home), and Ubuntu
allows for that.

------
tmathmeyer
I'll probably get a bunch of hate for this, but I honestly think this is a bad
idea. My main concerns are the phrases "It must run Ubuntu", "It must have
Google Chrome as the default browser", and "It must support Minecraft", and I
have minor concerns with the solutions to the other statements.

* Ubuntu: why ubuntu? because it is _popular_? that's a bad reason, and it's magnified that this is supposed to be a teaching tool. How can you justify teaching kids to do something because it's popular?

* Must have Chrome: I read this and laughed. As a fairly large supporter of the free software foundation, I am frankly appalled that you want to use chrome when there are many better and more free alternatives. There is of course firefox, which is free, but if your real desire is the webkit rendering engine or v8, then there is always chromium or DWB.

* Minecraft: I play minecraft, and I think it's fun. I write mods, and I run servers. But to include video games on an educational computer is repulsive and you should be ashamed. So what if kids like it? Kids like refined sugar too, lets just give that to students as a way for them to enjoy food.

Some other points: _The wide variety of programming languages is good, but the
list you provided is noticeably lacking C (the most widely used language) or
any systems language. Programming is about much more than stupid hello world
programs and writing silly kiddie games, and should be treated as such. I also
noticed a lack of purely functional languages, which bothers me more than I
can effectively express in words._ The lack of internet is good, but you
completely missed the existence of man pages and virtually all compilers work
offline as well. _Having a great editor is fantastic, and I use sublime text
(I even paid $70 for the license!), but as many people have said, you shouldn
't. That $70 is much better spent on better hardware for the computer, and
shipping with unlicensed software is wrong. Vim and Emacs are both more than
capable of doing EVERYTHING sublime does and are much lighter weight, and
free. _Including the paragraph about the 'custom sidebar' is laughable. Aside
from the fact that I dislike Unity and that the sidebar can be configured by
students already, I don't think it's appropriate to coerce students into using
the software YOU want them too. That flies so hard in the face of the unix
philosophy. _the function keys are easy to remap. I suggest looking into sxhkd
as a replacement for the bloated tools you listed. It 's free software and can
be found on github. It is written by the same author as bspwm. _developer mode
screen: so reformat the laptop. I did it with arch and it works fine and has
no 'scary screen' as you put it. *trackpad support is not the responsibility
of the kernel, and a kernel update will not in fact remove support. This
problem can easily be solved by distributing modified versions of the apt-get
remote upstream lists.

My final remark is that every time I hear someone refer to themselves as a
'coder' rather than a programmer, I die a bit inside. Please take this
profession seriously and don't encourage what are commonly know as 'skript
kiddies'.

~~~
vacri
Ubuntu's popularity is actually a benefit - popular things have more
resources, both in terms of software/documentation, and in terms of eyeballs
that can help out when things go south.

In addition, Ubuntu is a good choice because it's target audience is naive
users. If you want to be a hardcore developer, you can use Ubuntu, but you're
not its _target_ audience. It also has official support lasting for years for
appropriate releases, which not all distros do.

You seem to be personally offended by a lot of personal choices - for example,
calling preinstalling text editors 'coercion'. I wonder what this
'coercion'-free system you're imagining looks like? Is it just a boot screen
that says "insert SD card with distro installer of your choice"? Then you can
install whatever you like, with no-one pushing any particular software on you.

~~~
shmerl
_> Ubuntu's popularity is actually a benefit_

Except it's often exaggerated. I doubt Ubuntu is even the most popular distro
these days. Also, lately Ubuntu (or rather Canonical) diverged from the global
Linux community with efforts like Mir and so on. So they are quite
controversial, and using them as a recommended distro for new Linux users is
now more questionable than before.

~~~
vacri
What do you think is a more naif-friendly distro?

As for popularity, whenever I encounter projects on the web, they almost
always have an ubuntu .deb (usually specifically ubuntu and not debian), with
redhat/centos being in second place. It's not as common to see installation
sections for other distros. At a conference, when a speaker does the who-uses-
what-distro question, more hands go up for ubuntu than others. I'm not sure
which distro you're thinking of when you suggest others are more popular, to
be honest.

In any case, the OP's point was that _choosing on popularity_ was a bad thing
- selecting another popular distro in place of distro X would not change that
line of reasoning. I disagree, for the reasons I gave: more willing hands to
help out, more appropriate resources available. Given the OP is an FSF fan,
maybe they go for gNewSense... which doesn't have much mindshare. "I'm having
problems with my gNewSense install, can you help?" isn't going to hit as many
resources as a popular distro (and on a tangent, why would you ever name your
distro a homonym to the word 'nuisance'?)

~~~
shmerl
_> I encounter projects on the web, they almost always have an ubuntu .deb_

Ubuntu got a lot of hype in the past, and Canonical put an effort in PRing it.
However it doesn't really mean that it's actually most used. I never really
saw some conclusive studies on that. It surely is the most PRed / hyped. Or
rather was until recently. That hype cooled off somewhat lately because of
various controversies like Mir. Mint is commonly perceived as most popular
distro these days (I'm not a Mint user for the reference, I use Debian),
though again - it's hard to prove it globally.

I don't equate PR with actual size of the user base. It's probably more proper
to use the term "most used" than "most popular" for such kind of evaluation.
Making a choice based on PR / perceived popularity works to some degree, but
it's not a precise method therefore it can be disputed.

 _> What do you think is a more naif-friendly distro?_

I'd recommend Mint or may be some KDE centric distro for new users, openSUSE
for instance.

~~~
vacri
Mint is popular, but it's popularity is largely because it's basically a
skinned, traditional-desktop version of Ubuntu - it's binary compatible, so
the various .debs advertised with Ubuntu also work for Mint. So in terms of
resources available, the two use the same resources (ubuntu PPAs work fine in
mint, for example).

But in terms of user experience? Depends on what you want. I prefer a
traditional desktop (debian/kde myself) so I'm not fond of Unity and loathe
guh-nome 3. But for a naive just learning about how to deal with computers,
unity might be good for them - it's pretty simple, and works the same on
touchscreens or with a mouse. That would be something worth testing, actually
- do the kids using these laptops work better with a Unity-style interface or
a traditional desktop? Which one allows them to use their computers more
effectively?

~~~
shmerl
_> do the kids using these laptops work better with a Unity-style interface or
a traditional desktop? Which one allows them to use their computers more
effectively?_

Hard to say. I personally think KDE is better for both purposes (experienced
users and beginners). Unity style UI is too limiting and I don't like the
direction it takes.

 _> Mint is popular, but it's popularity is largely because it's basically a
skinned, traditional-desktop version of Ubuntu_

It's more than that. Mint is also not managed by Canonical, and therefore they
are distanced from related controversies. They are sticking to the global
community in choices like Wayland and so on.

