

Ask HN: How do you determine your own knowledge level? - diminium

I've been looking at the latest HN job listing and they always mention they are looking for experts.  This got me thinking.<p>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.<p>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.<p>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?
======
simonbarker87
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

~~~
diminium
"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.

~~~
simonbarker87
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.

------
bking
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.

------
pinion247
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.

------
checkmeout
If you're wondering how much you know about PHP comparing to your peers for
instance, you could search for quizzes online for it.

