3 ms·
For your gf, I'd recommend Sinatra. Starting with HTTP basics is a pretty good idea and there's not a lot hiding that in there. You can put your whole app in a
by mhd 14y ago
For your gf, I'd recommend Sinatra. Starting with HTTP basics is a pretty good idea and there's not a lot hiding that in there. You can put your whole app in a single file and expand on that later, add models etc. You might not even go there and switch to the JavaScript (CoffeeScript?) branch pretty soon, where Sinatra basically does do the REST backend.
For kids, it's a bit difficult, especially given the wide age bracket (14-year old basically can form their own startups…). I would recommend Python over Ruby there, though. No Starch Press has a good "Python for Kids" book (as far as I can tell), listed as 10+. That seems to do a few small GUIs (tkinter) and games first. Probably more interesting in the beginning.
For teaching web programming, I'd just make a simple super-framework, i.e. just a few pages on top of a "real" framework (flask?), that allows them to do the same stuff some of us did in BASIC way back when. So at first a simple PHP-like inline python (cf. eruby) template page where they can create output dynamically. Then maybe a ready-made form handler that forwards to a "result" page so that they can play with input handling.
One could theoretically do a lot of what the aforementioned book does from within a web page context, i.e. start with canvas-based games. That would really make CoffeeScript preferable, unless one were to look for an even simpler transpiled language.