Set up a Linux computer (Ubuntu Linux is the easiest to set up), and spend the summer learning to program in Python. Here are some of the best online Python tutorials, including a link to videos and course material for MIT's introductory computer science course, which uses Python: http://www.quora.com/How-can-I-learn-to-program-in-Python/an... Build something that you want to use so it will be meaningful to you. Do y…
How can I learn to program?
51–60 of 77 posts
Re: How can I learn to program?
#52The best way to learn programming conceptually is to read Structure and Interpretation of Computer Programs, by Abelson and Sussman. The book is available free on-line, along with video lectures. - http://mitpress.mit.edu/sicp/ - http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussma... Once you have mastered this material, learning the specialization of web development shouldn't take more than a week or two of…
I would advise AGAINST diving into SICP until you are familiar with turning text into a program with at least loops, conditionals, and basic functions.
Re: How can I learn to program?
#53The best way to learn programming conceptually is to read Structure and Interpretation of Computer Programs, by Abelson and Sussman. The book is available free on-line, along with video lectures. - http://mitpress.mit.edu/sicp/ - http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussma... Once you have mastered this material, learning the specialization of web development shouldn't take more than a week or two of…
It's such a great book and I basically agree with everything you said, but I feel I should add a little caveat. SICP is truly a masterpiece, but it might not be the best book for someone just starting out who wants to do productive stuff like prototype web apps. Peter Norvig wrote in his review, "I agree that the book's odds of success are better if you read it after having some experience" and I think I agree too, a…
No comment on HtDP, as I haven't read it. Heard good things about it, though.
Re: How can I learn to program?
#54http://www.jamesaltucher.com/2011/04/the-easiest-way-to-succ...
This does not fit everybody, so if it's not for you, what could you take from this?
Re: How can I learn to program?
#55Earlier quoted context omitted.
I would advise AGAINST diving into SICP until you are familiar with turning text into a program with at least loops, conditionals, and basic functions.
I've been a fan of advocating SICP as a first text specifically because students would then have fewer bad habits to unlearn.
You might have higher caliber students than I have had (or am), but I have a hard enough time explaining how to use a text editor in one window and run a script in another. To get to actually doing something useful enough to keep them interested via SICP is, well, beyond even imagining.
Re: How can I learn to program?
#56Earlier quoted context omitted.
I've been a fan of advocating SICP as a first text specifically because students would then have fewer bad habits to unlearn.
Have you had success with assigning it? Have you seen beginning students learn using it, or have they come back to and said "gosh, I am glad you told me about SICP two years ago, it put me down the right path?" You might have higher caliber students than I have had (or am), but I have a hard enough time explaining how to use a text editor in one window and run a script in another. To get to actually doing something u…
While it obviously sucks that your students can't figure out text editors and scripts, I hope to alleviate some of the pain by using Racket, its integrated editor, and the "Run" button on the toolbar.
Re: How can I learn to program?
#57Earlier quoted context omitted.
Have you had success with assigning it? Have you seen beginning students learn using it, or have they come back to and said "gosh, I am glad you told me about SICP two years ago, it put me down the right path?" You might have higher caliber students than I have had (or am), but I have a hard enough time explaining how to use a text editor in one window and run a script in another. To get to actually doing something u…
I'm about to give it a shot, and I'll let you know how it goes. :) Joking aside, I think the first chapter of SICP is the most useful, straightforward, and gentle (yes, gentle!) introduction to programming in existence. While it obviously sucks that your students can't figure out text editors and scripts, I hope to alleviate some of the pain by using Racket, its integrated editor, and the "Run" button on the toolbar.
(But then I am the type who very early learned to avoid what the best professors thought was a good intro text and only trust my fellow students. Because once you see the field as a whole, you have VERY different taste in introductory texts, and more seem to prefer terse and comprehensive overviews which start from first principles, which are also the VERY WORST sort of introductory text possible.)
Re: How can I learn to program?
#58In fact, what I saw impressed me so much that I've bought a copy to work through, even though I'm already writing basic flash games in AS3.
Re: How can I learn to program?
#59A friend of mine is in the same boat. I forwarded him all the usual suspects, from "Why's Poignant Guide to Ruby", to "Learn Python the Hard Way", to "The Schemer's Guide". But none quite worked for him. He finally found and settled on Harvard's intro CS course, CS50: https://www.cs50.net/
Re: How can I learn to program?
#60Set up a Linux computer (Ubuntu Linux is the easiest to set up), and spend the summer learning to program in Python. Here are some of the best online Python tutorials, including a link to videos and course material for MIT's introductory computer science course, which uses Python: http://www.quora.com/How-can-I-learn-to-program-in-Python/an... Build something that you want to use so it will be meaningful to you. Do y…
Print out espeed's answer. Put copies on your desk, tape them to your refrigerator, tape them over your bed. Put laminated minature copies in your wallet. I started learning this stuff... my god... 10 years ago. It took me over a year to figure out that line 1 was the best first step OS (a question I didn't even ask until 4 years in). It took me four years after that to figure out that line 2 was the best second step…
This is because the first and foremost important thing about learning to program is the desire to do so. The early hackers programmed by directly banging hexadecimal machine code into computers without screens. Were they not programmers? Sure they were. Don't put too much stress on the tools - just program.