Is this this the best way to learn programing? perhaps, it's better to use books which approach the subject more ... linearly -- if that is possible.
I think it's a pretty good way. the problem sets are the key. practice. the major drawback about OCW is you're not getting specific feedback. What I mean by that is you need to practice correctly. For example, if you're practicing taking free throws in basketball, if your form is bad all you're doing is ingraining a bad habit. In the same way, in OCW you're not getting a lot of feedback. Your program might work but it might not be the best way of writing the program. What you really want is feedback that corrects errors. The lack of feedback in OCW is the biggest drawback in my view. What I've been doing is once I complete a program, I post it to get feedback. I want to know if there was a better way to implement the program. That's a bit hit or miss because OpenStudy doesn't have TAs, it just a bunch of novices trying to help each other.
I agree with valmont that the best way to learn is to practice, and that you must take care not to get bad programming habits. So you gotta get some feedback and I think this is a great place for that. I disagree when valmont says that there's just a bunch of novices here. I'll give you my own experience, not to boast about myself, but to illustrate: I'm a seasoned java developer (more than 10 years of enterprise development), and I've got a master's degree (Advanced Information System). I folow the course to refresh my knowledge about computer science, to see what a MIT course look like, and to learn Python. I'm not a Python professional but I know what a good program looks like (and a bad too). I guess I'm not the only one here in this case. I've spent a lot of time in university and I can tell you that professors and TA's are often quite average developers, though they may rock when it comes to theory. That was my little pamphlet, thanks :)
So, I guess I'll try to post my program and get feedback.
could I get some feedback about this program I just wrote for pset2. It is very neat -- I would say. Did not struggle this time. :)
http://www.udacity.com/ this is another approach you might be interested in as well. http://www.nytimes.com/2011/08/16/science/16stanford.html
Join our real-time social learning platform and learn together with your friends!