Actually, according to this article, "All programmer’s are self-taught." Unfortunately, some are also self-taught in grammar and punctuation. (I had to. My snark quota is done for the day.)
All Programmers Are Self-Taught
21–30 of 86 posts
Re: All Programmers Are Self-Taught
#22Carnegie Mellon is quite a stronghold of this. They don't teach much coding -- they hand you the books, give you projects and grade the results. If you produce workable code, mostly you win :-) It's telling that CMU is considered such a great tech school. Even the best don't know how to teach programming (yet?).
On the contrary, I don't really think that it is the University's job to teach "programming". University traditionally focuses around teaching the skills to do research. Higher level skills such as analysis and problem solving. Consider learning history. It is expected that you "know" how to write an essay. You may be critiqued on it, but it is not the primary motivation for your study of that subject. My personal op…
To do otherwise is to require that incoming students already know how to program. That is, I think, indefensible. If students want to test out of the introductory course, fine. But it must exist, just as the intro to physics course must exist for physics majors.
Re: All Programmers Are Self-Taught
#23Re: All Programmers Are Self-Taught
#24[1] http://www.cs.northwestern.edu/~riesbeck/critiquing.html
Re: All Programmers Are Self-Taught
#25I agree with the premise. However, the whole world runs on sloppy, inelegant, and downright ugly code. I strive to write pretty code but the truth is it doesn't matter that much. Just getting it done and out the door counts for so much more.
Though now that I reflect for a second I have to acknowledge that it's all that matters to the stakeholders, and not necessarily to the coders (nor future maintainers).
Re: All Programmers Are Self-Taught
#26I'm not sure I can fully agree with the idea that programmers are self-taught in the sense of writing good code. I'm a student at the University of Waterloo, and in the courses in 1st and 2nd year a sizeable chunk of the marks depends on readability/documentation and such. We have coding guidelines and we lose marks for not following them. Needless to say, this doesn't mean most students at Waterloo write good, well-…
There are just some things you'll never learn, for example, until you have to interact daily with code you wrote a year ago.
Re: All Programmers Are Self-Taught
#27The Software Engineering course I took at university was a pretty good introduction to "programming". One of our required texts for the course was Code Complete by Steve McConnell. We were required to read all the chapters that focused on programming style.
Re: All Programmers Are Self-Taught
#28Programming is also an unusually marketable hobby skill. With many hobbies you can invest a lot of time and effort and produce beautiful things, but that's liable to only gain you praise; in programming, it can gain you a really good job. This is a pretty smart investment: for a modest expenditure yourself you might net a high income so it should not be surprising if people often teach themselves.
Besides, when I hire someone I like seeing evidence of side projects that reveal a certain passion for doing good software work. I wouldn't hire an artist or designer without seeing a portfolio either, and software has a lot of things in common with art and design.
Re: All Programmers Are Self-Taught
#29Working with and learning from other people is way more effective (than just writing code) in figuring out how to identify good and bad code. And I think formal CS education usually gives people the right tools (like algos, design patterns, data structures, etc.) to understand and work with others.
Re: All Programmers Are Self-Taught
#30My school does offer a class called "Production Quality Software" but it's a graduate course and if you want to take it as an undergrad you only get 3 credits.
IMO the situation is not good.