- Probably, but I would not venture to suggest, and No, I have never read Knuth.
- No. My code is correct when it does exactly what I wrote it to do, or pukes gracefully.
- I am lousy at mathematics, but use mathematical thought in programming constantly. Programming in my opinion is mathematics.
- I read code someone else wrote for two reasons:
- because it needs to be changed or
- because I need to learn to do what they already have done.
I do step through it if at all possible, as the sequence tells me not only what they think but how as well. - I have not read code for fun, but have occasionally had fun reading code.
- I take what I know and see how far I can get with it
- then head for CPAN (or similar depending on the environment I am in)
- Take what I end up with and start boiling it down to subs just to clean up
- then comment where appropriate
- then run 'tidy' to smooth things for readability.
All this while keeping in mind KISS- A good programmer has something to do and gets it done, then makes it maintainable. I look for breadth of knowledge, both in programming and in other areas. I look for someone who likes to learn, but most of all wants to learn by applying.
- The one skill all the good programmers I know (and I am not one of them) have is the ability to listen, contemplate what they are listening to, and in doing so, translate that into core questions and the relevant supporting questions. Once the questions are defined, the answers are apparent. I don't think the skills change so much, they are just re-defined every so often, and then re-arranged into new "sets", which happen to correlate with the most recent fad, whether RAD or RUP or ILP or etc...
- Scientist - No
- Engineer - Yes
- Craftsman - Yes
- Artist - Yes
Gosh! I can't even count! Eight questions and nine answers! Nope, not very good at mathematics! :-)
- ...the majority is always wrong, and always the last to know about it...
- The Spice must flow...
- ..by my will, and by will alone.. I set my mind in motion