In reply to JJL:
> So, imagine fairly smart person in time capsule from 1980. How to get them up to speed?
I honestly think very little has changed since my days writing Z80 assembler. In any language you have I/O, maths, flow control and that's about it. Object orientation is a very thin addition on top of that. Very powerful, but not complicated in its essence.
The problem you face is that whilst many languages are little more complex than 35 years ago, the environments surrounding them - the "standard libraries" etc - are far more complex as they've grown with the applications of computers.
One of the biggest changes is just how gods-damned complicated it now is to get direct access to the screen as an XY canvas, and to get immediate keyboard input. That's been abstracted away from the core language into user interface libraries. Which are almost never simple.
You could do worse than to buy a copy of "The C Language" by K&R and take a few days to work through it cover to cover. Then for a change you could work through the Python tutorial -
https://docs.python.org/3/tutorial/
But, really, it's almost impossible to recommend anything given the wide range of well developed, freely available languages and environments out there. But still, I've got a lot of affinity for Python for almost everything really.
Alternatively I've written quite a lot of code for the PicoBlaze which is a "soft core" CPU implemented in an FPGA. The great thing about this is that the full source code for the CPU is freely available so you can look at all the grubby details of how the CPU is built, and even edit it yourself.
http://www.xilinx.com/products/intellectual-property/picoblaze.html
> I know an intrigued young adult's view of programming and computers.
They think it's like J.A.R.V.I.S. from Iron Man. Very young people think it's all touch interfaces. Less flippantly you might want to Google around "computational thinking" and how its entered Key Stage 1 education. A really positive move that's about far more than programming.
Post edited at 23:35