|
It is neither formal training, nor self teaching that is the real issue with a 'good' programmer. It is conformity to the body of experience that has already been acquired by the community.
Formally trained people tend to conform to what has been learned by the 'thought collective'. Those self-taught, which can be taken to mean randomly taught as someone learning on their own from a standard course can be deemed formally trained, tend not to conform.
This underlies the previous comments about the differences in approach to problem solving.
So I agree with you; as someone with both types of training is more likely to be free-er to think separately from the corpus of prior knowledge and methods, whilst also understanding the relevance and application of the existing methods.
|
|
|
|
|
Correct! I use a number of sub contractors. But in general I use two.
The first is formally trained with a Degree in Computer Science and some further quals (Masters/PHD .. can't remember which) where his central area of study was compiler design. He's a great resource for elegant algorithm design for tricky problems.
The second is completely self taught and I often end up cleaning up after him, BUT, he has a really unique way of looking at things and often comes up with really great alternatives to a solution that I would never have thought of.
I suppose it comes down to that programming is half science, half and art form. Neither is dominant over the other.
The only thing unpredictable about me is just how predictable I'm going to be.
|
|
|
|