Hi,
I have had to work professionally on a few technologies/languages till today: C++, C#, directX, opengl and now ASP.net.
I realize that I am MASTER of none but average-good at all of them.
My question is that for a successful professional career, is it favorable to experience many different technologies or try and stick to one ?
What are your views and experiences on this subject ?
views:
38answers:
2I think, one should know and understand different technologies and should also have roots down deep on few of them.
Part of this degenerates into the "Specialist vs Generalist" debate where one can wonder if it is worthwhile to just get into one niche or is it better to learn a little bit about a lot of things. Example questions of this type:
- Should developers be specialists or generalists?
- Technical generalist vs. specialist: a job hunting problem
- Are specific programming language skills and experience important in a job candidate?
- Which is more advantageous: Learning new languages or increasing knowledge of ones you already know?
- Is it better to go broad or go deep?
Initially I think it worthwhile to have exposure to many different technologies just to see what the field looks like in some respects. For example, learning a little about Numerical Analysis and Symbolic Computation can help one see if scientific computation is an area that may make sense in some ways. At the same time, seeing functional programming, procedural programming and object-oriented programming are interesting different paradigms to see and try to wrap one's head around how each approach has its merits.