Being a Good Programmer
Unfortunately, this is for the people who are more inclined to learn about the Science of Computers rather than those who want to study Computer Science.
The only additional thing I have to say after you read this and this(in the correct order) is that winning a programming competition is a great thing. But losing them does not mean you are not a good programmer.
From Jeff Atwood’s article:
Fully understanding an average program requires an almost limitless capacity to absorb details and an equal capacity to comprehend them all at the same time.
From Dijkstra’s transcribed article:
We shall do a much better programming job, provided that we approach the task with a full appreciation of its tremendous difficulty, provided that we stick to modest and elegant programming languages, provided that we respect the intrinsic limitations of the human mind and approach the task as Very Humble Programmers.
I think you’ll understand what I mean reading the articles linked above(or below).
LinkConnect 1 : Why I’m the best programmer in the world
LinkConnect 2: The Humble Programmer
Via Sudhang (who’s resisted my conversations without starting a blog)
