Just yesterday I received the book "Pragmatic Thinking and Learning: Refactor Your Wetware" by Andy Hunt. I browsed through the TOC, read the introduction and started the second chapter "Journey from Novice to Expert". Even though it was quite late in the night, I just couldn't put the book down until I finished this chapter.
Andy, talks about the five stages on the journey from novice to expert; Novices, Advanced Beginners, Competent, Proficient, and finally Expert. He explains each of these stages so well, and has some thought provoking quotes as well.
You are neither "expert" nor novice at all things; rather, you are at one of these stages in some particular skill domain.
Isn't that so true about all of us? We as developers have to learn many languages, frameworks, tools, IDE's almost everyday. We can't be experts in everything we use in our development. We might say "I am a Java or .NET expert", I am an Ant expert, but can we say "I am an expert in everything listed in my resume"? Would anyone believe us at all?
Know what you don't know.
I have seen too many know it all developers in all these years. I am sure you have many in your team who are like that. I would suggest them to read this book, or even better but them a copy of this book.
Ten Years to Expertise? So, you want to be an expert? You need to budget about ten years of effort, regardless of the subject area.
If that's what requires us to be an expert, than most tools we have right now, and are using almost everyday in our development are not 10 years old. So, is there a fast track to become an expert? I don't know.
And finally the last quote:
Keep practicing in order to remain expert.
How do I rate myself? I have been using Java from 99, close to 10 years. Am I an expert in Java? Maybe. I started using .NET from 2001, so couple more years to promote to the expert level. I didn't want to list every other language or tool or frmaework I have used or even have on my resume, so just chose two of my favorite languages from the many I know.
So, how do you rate yourself? Are you an expert in all the languages and tools you use? How do you think your colleagues rate? Does it matter at all for the team to have a mix of all skill sets?
Stay tuned for a detailed review of this book as well.
Update: The first two chapters are available online as PDF.