Hacker News new | ask | show | jobs
by Adaptive 3394 days ago
I'm running a coding class right now that is almost entirely run over ssh on chromebooks to a linux server. Works beautifully.

No fancy IDE, but lots of actual learning to code.

5 comments

I have found that notebooks like Jupyter (http://jupyter.org) and especially JupyterHub (http://jupyterhub.readthedocs.io/en/latest/) are made to teach languages with a REPL from the browser.

> "With JupyterHub you can create a multi-user Hub which spawns, manages, and proxies multiple instances of the single-user Jupyter notebook server. Due to its flexibility and customization options, JupyterHub can be used to serve notebooks to a class of students, a corporate data science group, or a scientific research group."

I have grown less and less fond of Python but I still use Jupyter with other languages and I have it running on my personal server.

Have you considered online tools such as Cloud9, replit etc.? If so, is the problem missing features, workflow or pricing?
FWIW, amid the talk about Raspberry Pis, the (fully open) BeagleBone Black/Green has a default experience for casual-tinker-friendly programming where it spins up an on-board Cloud9 instance for the user to poke around.

It's slightly more expensive than its Pi contemporary, but that's expected when everyone keeps flocking to the Pi and the alternative can't make use of the same volume discounts and self-fund engineering to put new board revisions out every year. And even for all that, it's a popular alternative—you're not left hanging out in no-man's land with some exotic hardware. Check the hackerboards.com surveys from over the years that show it trailing the Pi(s).

Eclipse's Che is also very interesting. I hate the name, but it was super when I tried it.
If I were teaching, I would definitely look at something like Cloud9. I'm in the process of going through Michael Hartl's Ruby on Rails tutorial based on Cloud9 and I'm blown away by how good it is.
What are they writing code with? Is it lots of learning to code, or lots of fighting with vim? Or are you using a REPL?
Does X forwarding work? Or has someone got some kind of screen-scraping client that runs in a browser?
I have never used chromeOS, does it have a terminal or is there some sort of ssh as a service?
There's a chrome extension by Google that provides a supported way to ssh on ChromeOS, from the device. There's limited support for SSH keys built in, and there's also a mosh extension.

https://chrome.google.com/webstore/detail/secure-shell/pnhec...

(It's pretty easy to enable developer mode in order to allow unsigned code to run, and then Ubuntu/other Linux can run it in a chroot, though education/corporate deployments can/should prohibit that by policy, so isn't relevant to the larger discussion, though it means personal ChromeOS laptops can be quite functional.)

It has a built in terminal called crosh, which might have an SSH client built in (I'm not sure). What most people do is download a chrome extension like Secure Shell[1] that lets you ssh from a tab.

[1] https://chrome.google.com/webstore/detail/secure-shell/pnhec...

Sadly, ssh was removed from crosh just recently.

    crosh> ssh
    The 'ssh' command has been removed.  Please install the official SSH extension:
  
  https://chrome.google.com/webstore/detail/pnhechapfaindjhompbnflcldabbghjo
    crosh>
Me neither, but this looks interesting:

https://www.emacswiki.org/emacs/EmacsForChromeBooks

I might pick one up at Fry's today just for giggles.

Update: Tried to run the NaCl Development Environment on my macbook to get a taste and it just crashes on launch. Seems like a lot of people have the same problem on chromebooks too: https://chrome.google.com/webstore/detail/nacl-development-e...

So maybe I'm not so excited to run out and buy a chromebook for development just yet.

There's an ssh client in the chrome store($0, I think it's published by google). It runs as a chrome tab (one tab per connection), which means you do waste some screen space for browser UI that doesn't make sense, but it's workable.
You can (or could, anyway) force it to open in a window (right click the app icon and select "open in window"). This allows you to go really fullscreen and fixes control keys (C-w works again rather than closing the tab).