I have a lot of non-programmer friends who sometimes say that programming must be very dry and boring. My shiny go-to example to convince them otherwise is a nice desktop planetarium app, which you can't develop without first learning how the solar system works. Once you do you can write that down in code - an executable, computing form of knowledge, a living document that allows you to tinker, refine, share, reproduce. Software truly is pretty neat as a human societal tool with a wide range of applications.
It should be for everyone. The other thing I tell them: If you've ever been in bed in the morning and planned out your steps for how to get that cup of coffee you need, designing an efficient bed-to-coffee algorithm, you've already been a a programmer.
Crazy that they haven't fixed it yet, but that's Twitter I suppose.
Also tangential: I find Balaji completely insufferable. His Twitter feed almost looks like that of a cult leader than of a CTO.