I Learned to Program...
jeanhsu.com
jeanhsu.com
Now I'm starting to wonder if this assumption is just a result of crummy Computer Science teaching. In particular, I grounded a lot of that opinion on my experience as a CS undergrad. Students seemed to fall into 3 buckets:
- Could program when they came in (had been doing it since they were kids, etc.) Did well, became good programmers.
- Couldn't program when they came in, worked hard and came to "get it", became good programmers.
- Couldn't program when they came in, didn't really get it, most disliked programming, graduated (!) and became mediocre programmers or technical managers.
... I've always been inclined to see that split as a direct consequence of "innate ability", given that category (3) contained some intelligent people who just weren't programmers for whatever reason. Now I come to think about it, though, our CS teaching program was not very good. Amusingly, a professor told me that the CS department was consistently rated worse in the entire university on student course assessments but "I think it's just because this stuff is hard, and people don't like doing things which are hard. If we were teaching something easy then they'd give good scores." (paraphrasing, but that's very close.)
So maybe my perceived division is more an indictment of teaching practices and programming culture than some ingrained difference. Time to read that book, I think. :)
And yes, time to read the book for this and other reasons!
- Was a X buff before college. Did well. - Wasn't but became one. Did well. - Wasn't and got through college without becoming one.