

What should we teach new software developers? Why? - Uncle_Sam
http://delivery.acm.org/10.1145/1630000/1629192/p40-stroustrup.html?key1=1629192&key2=1190626821&coll=portal&dl=ACM&CFID=104402275&CFTOKEN=58956171

======
dman99
Honestly, I'm not really sure what to make of this. As a CS student I
definitely feel that there's a huge gap between the industry needs and what
the academia supplies. However, discussing basic algorithms and data
structures with my 'self-taught' friends makes me feel like I'm listening to a
Wikipedia page that can't simply answer the question, "So how does it work?"

I feel that it's this basic understanding of 'quantitative and algorithmic
thinking' that schooling instills in you that will allow you to think of new
concepts instead of dwelling in the old.

However, I can't deny that there are times where my professors' downright
frustrate me with their lack of simple programming skills, such as small
syntactical things that anyone who actually programs would know like second
nature. I guess it is true that I'm going to school to learn advanced concepts
and not syntax, but that doesn't mean it doesn't make me doubt my schooling
just a touch.

~~~
wccrawford
That's funny, I went to college just for the paperwork. I watched them teach
the absolute fundamentals of programming but not how to -think-. The people
that graduated with me couldn't come up with new ideas if their life depended
on it. One guy even dropped out when he wasn't able to write a simple poll
application.

On the other hand, I taught myself and I -can-. In fact, most of time I -was-.
Turns out some of the ideas were really good and I'm just starting to see
other people use them, and others weren't so good and I ended up scrapping
them.

As far as syntax errors go, all programmers make them sometimes. Mistakes or
typos, it doesn't really matter. A decent IDE will catch most of them, and
proper unit testing will catch the rest.

~~~
dhimes
_On the other hand, I taught myself and I -can-._

I suspect you have this reversed: you _can_ , so you teach yourself. In my
experience this is true of most competent people. At best, high-level
schooling can be a guide, and an excellent teacher can save us some time
gaining insight. But by-and-large it's up to us to learn.

