Ask HN: How do you determine your own knowledge level?
4 comments
I asked something similar the other day on a post with regards to working out how good/bad my code is. I got some great feedback.
http://news.ycombinator.com/item?id=4073866
On a broader basis there are a couple of things which I think act as an indicator.
1. Is you time spent on Stackoverflow and thumbing through books inversely related to the time you have spent on a topic. When we start out on a new language/library we spend a lot of time in the docs and checking things, over time you should start to notice that you begin spending less time in the docs and more time coding. Eventually you will notice that you can start to answer some questions on Stackoverflow on the topic. At this point I would say you are good at the chosen topic.
2. You stop looking for snippets of open source code or plugins and find yourself naturally leaning towards doing it yourself. This isn't always the correct approach for a given solution but it means you are familiar enough to "get stuff working" from first principles. This probably isn't expert level but it is certainly at the very familiar level which is good enough in most cases.
3. You begin to dig deeper into how the chosen topic works and dissect it to the point where you notice flaws and see where you can make improvements. I think this is the expert level and is very time consuming to get to and may mean you have reached this level at the detriment to your broader knowledge - which is fine if that is what you intended.
I've used coding analogies for this but I think it is basically the same in every field.
I like Valve's ethos of finding T-shaped people, nice and broad across a lot of topics and then they go deep on one.
Just my 2 cents
http://news.ycombinator.com/item?id=4073866
On a broader basis there are a couple of things which I think act as an indicator.
1. Is you time spent on Stackoverflow and thumbing through books inversely related to the time you have spent on a topic. When we start out on a new language/library we spend a lot of time in the docs and checking things, over time you should start to notice that you begin spending less time in the docs and more time coding. Eventually you will notice that you can start to answer some questions on Stackoverflow on the topic. At this point I would say you are good at the chosen topic.
2. You stop looking for snippets of open source code or plugins and find yourself naturally leaning towards doing it yourself. This isn't always the correct approach for a given solution but it means you are familiar enough to "get stuff working" from first principles. This probably isn't expert level but it is certainly at the very familiar level which is good enough in most cases.
3. You begin to dig deeper into how the chosen topic works and dissect it to the point where you notice flaws and see where you can make improvements. I think this is the expert level and is very time consuming to get to and may mean you have reached this level at the detriment to your broader knowledge - which is fine if that is what you intended.
I've used coding analogies for this but I think it is basically the same in every field.
I like Valve's ethos of finding T-shaped people, nice and broad across a lot of topics and then they go deep on one.
Just my 2 cents
"spending less time in the docs and more time coding"
Odd. I usually see the opposite effect. They usually spend a lot more reading and a lot less time coding.
I sort of know what you mean - I think what I mean is that you spend less time looking at the docs to accomplish basic stuff. For instance I spent a lot of time reading the codeigniter docs 6 months ago to even get something working, now I go back to remind myself of things every now and then. When I read the docs now it is more to get a deeper understanding of what is going on and working out how to improve what I have done.
Maybe I should say that you spend less time in the docs not knowing what is going on.
Maybe I should say that you spend less time in the docs not knowing what is going on.
If you're wondering how much you know about PHP comparing to your peers for instance, you could search for quizzes online for it.
Personally, my first step is reflection - am I as smart as I think I am regarding programming/history/science/etc?
Second is to seek out experts. This is much easier now thanks to sites like HN, StackExchange, et al. They can help you gauge your own knowledge level.
Second is to seek out experts. This is much easier now thanks to sites like HN, StackExchange, et al. They can help you gauge your own knowledge level.
I run into this all the time. There is always something more to know and everythng is evolving so fast that I personally don't think you can be an expert in any technology anymore. If you can understand it well enough to produce a completely new product and be able to figure out what you don't know fast enough to not make it a hinderance, then I would call you at least very knowledgeable.
How do I know how smart I am? How do I know if I'm actually good at this? While I know I can do certain things here and there, I'm not really sure if this fits in the amateur level or the genius level.
I tried asking other people but that brought even greater questions. How do I know if the other person is an expert or not to gauge whether I'm an expert or not? Plus, finding people who are willing to fully evaluate you without any bias only adds to the problem. Most people also seem to evaluate based on output, not thought process. They can't really say if your heading the wrong or right direction.
What ways do you guys self-evaluate yourself to determine your own knowledge level? In what ways have you used others to help determine it?