
while (dead_horse) beat (): If you're like most people, the above seems like nonsense. Actually, it's computer sense--C programming. After digesting C For Dummies, 2nd Edition, you'll understand it. C programs are fast, concise and versatile. They let you boss your computer around for a change. So turn on your computer, get a free compiler and editor (the book tells you where), pull up a chair, and get going. You won't have to go far (page 13) to find your first program example. You'll do short, totally manageable, hands-on exercises to help you make sense of: All 32 keywords in the C language (that's right--just 32 words) The functions--several dozen of them Terms like printf(), scanf(), gets (), and puts () String variables, numeric variables, and constants Looping and implementation Floating-point values In case those terms are almost as intimidating as the idea of programming, be reassured that C For Dummies was written by Dan Gookin, bestselling author of DOS For Dummies, the book that started the whole library.
I guess what I'm trying to get at is that I wish to see learning to code, per se, easily accessible for all. I'm not talking about cheap or even free boot camps that promise entry into a lucrative job market. I'm talking about a kid, or a parent, or an auntie or uncle or cousin or sister or brother, about whoever, who just sees something they want to make happen and they literally do because they can. I read through the comments and I re-read the wonderful article by Robin Sloan linked below ("An app can be a home-cooked meal" -- look through this comment thread, and you'll see it, alongside my first observation of the term "OA", one that took me some time to decipher -- another thing that will stick with me).
I believe that programming is and always will be for the masses. I believe in development best practices when they are called for. But for learning, for discovering the beauty of computing and the joy of software, of writing one's first programs, I wish the barriers were less!
Personally, I learned from “C for Dummies” (Dan Gookin) some years ago. My first inclination is to recommend this book: It was very fun, a great way to dip my toe in the water, and helped me begin exploring the world of computers from the inside out.
Still, I realize that today there are lot of resources available that I just don't know about or haven't paid much attention to. I code a lot in Ruby and it strikes me that it or Python might be a better place for a beginner to start these days. Perhaps something web oriented (HTML/CSS/JS, on its own, even) would be a good place also. I just don't know.
I'm wondering if anyone has any suggestions or thoughts, especially if they have either learned from scratch in the last few years or have helped another to do so.
Also, I'm planning on starting him off with two of my favorite quotes:
"The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures....
"Yet the program construct, unlike the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself. [...] The magic of myth and legend has come true in our time. One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be." - Fred Brooks
"If you want to set off and go develop some grand new thing, you don't need millions of dollars of capitalization. You need enough pizza and Diet Coke to stick in your refrigerator, a cheap PC to work on and the dedication to go through with it." - John Carmack