

Ask HN: What resources do you provide to someone who wants to learn to code? - canadev

A friend is looking for a new line of work and we&#x27;re going to discuss software development as a possibility.<p>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.<p>Still, I realize that today there are lot of resources available that I just don&#x27;t know about or haven&#x27;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&#x2F;CSS&#x2F;JS, on its own, even) would be a good place also. I just don&#x27;t know.<p>I&#x27;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.<p>Also, I&#x27;m planning on starting him off with two of my favorite quotes:<p>&quot;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....<p>&quot;Yet the program construct, unlike the poet&#x27;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.&quot; - Fred Brooks<p>&quot;If you want to set off and go develop some grand new thing, you don&#x27;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.&quot; - John Carmack
======
BWStearns
I learned Python first a couple years ago through Udacity (the search engine
101 not the Java 101), and it was awesome. It's a great way to dive in and see
how to solve problems with code, not just learn the syntax. That said, I think
I have officially defected to the Ruby camp as far as the language I would
bring to a desert island inexplicably equipped with computers and electricity.
There are a lot of really good intro to programming resources for Ruby as
well, just none that are as interactive and broad as Udacity's. One Month
Rails is good if you can already program, but it seems like it's really for
after you know Ruby.

Overall I would say definitely go for Ruby or Python or Javascript as opposed
to C for your friend's first language. The less syntactic pain and more
friendly the language is the more the beginner can focus on the concepts.

