I’m a student of computer science and a professional programmer who has learned from reading SICP among many other sources, but I don’t recommend that route for a novice that does not actively seek and enjoy reading mathy textbooks.
I prefer fun, interactive, and game like learning, and you probably do to.
You: I want to learn to program...but I’m too lazy/shy to download anything, or even look at a book—even if its online. But I guess if the computer basically talks to me and walks me through things (interactively in the browser!)...then I might spare 20+ minutes.
Me: http://tryruby.org/ Stop reading this and click it.
You: Uh, first I want to see what else you have to say...and look at some other comments, and do my job or something.
Me: Nope. Stop what you are doing right now and click the link. Life can wait.
You: Wow. That wasn’t that bad. Ok, fine, I’ll look at a book...as long as it’s online, and free, and it lets me test and experiment with what it’s teaching me without leaving the page.
Me: http://eloquentjavascript.net/
You: Ok, that’s pretty amazing. I never knew it would by that easy to dive into this stuff—with just this knowledge I can already write a complete interactive website—I mean, ruby and javascript are all twitter had to work with and look at them now! But I feel like I’m still mostly just learning to program and I yearn for more. I want to grok the deep structure of procedures and computation. What should I do?
Me: http://icampus.mit.edu/xtutor/content/?6001publichints
Now that you’ve gotten over your activation energy hurdle, it is time to unlock the sacred power of SICP—except with this site (made for the author’s class) the slides talk to you and the problems check themselves. I also do highly recommend the actual book and lectures (available online for free). And for maximal learning you should download and play with a scheme interpreter outside of the site, even though you don’t need to.
You: Ok, you win. I’m now well on the path to being the next Jeff Dean (http://www.quora.com/What-are-all-the-Jeff-Dean-facts). Anything else I should know about?
Me: Since you asked so nicely...if you like zombies, here’s a decent video introduction to a web framework with videos and checked problems http://railsforzombies.org/
And here’s a great way to play around with basic programming, and if you give it to a kid they might figure it out before you do: http://scratch.mit.edu/
Let me know if you find anything else in this vein, and pass it along.
I’m a student of computer science and a professional programmer who has learned from reading SICP among many other sources, but I don’t recommend that route for a novice that does not actively seek and enjoy reading mathy textbooks. I prefer fun, interactive, and game like learning, and you probably do to.
You: I want to learn to program...but I’m too lazy/shy to download anything, or even look at a book—even if its online. But I guess if the computer basically talks to me and walks me through things (interactively in the browser!)...then I might spare 20+ minutes. Me: http://tryruby.org/ Stop reading this and click it. You: Uh, first I want to see what else you have to say...and look at some other comments, and do my job or something. Me: Nope. Stop what you are doing right now and click the link. Life can wait.
You: Wow. That wasn’t that bad. Ok, fine, I’ll look at a book...as long as it’s online, and free, and it lets me test and experiment with what it’s teaching me without leaving the page. Me: http://eloquentjavascript.net/
You: Ok, that’s pretty amazing. I never knew it would by that easy to dive into this stuff—with just this knowledge I can already write a complete interactive website—I mean, ruby and javascript are all twitter had to work with and look at them now! But I feel like I’m still mostly just learning to program and I yearn for more. I want to grok the deep structure of procedures and computation. What should I do? Me: http://icampus.mit.edu/xtutor/content/?6001publichints Now that you’ve gotten over your activation energy hurdle, it is time to unlock the sacred power of SICP—except with this site (made for the author’s class) the slides talk to you and the problems check themselves. I also do highly recommend the actual book and lectures (available online for free). And for maximal learning you should download and play with a scheme interpreter outside of the site, even though you don’t need to.
You: Ok, you win. I’m now well on the path to being the next Jeff Dean (http://www.quora.com/What-are-all-the-Jeff-Dean-facts). Anything else I should know about? Me: Since you asked so nicely...if you like zombies, here’s a decent video introduction to a web framework with videos and checked problems http://railsforzombies.org/ And here’s a great way to play around with basic programming, and if you give it to a kid they might figure it out before you do: http://scratch.mit.edu/ Let me know if you find anything else in this vein, and pass it along.
You: Thanks, will do! exit(0)