[Courses] [Careers] How do you judge your skills?

Jacinta Richardson jarich at perltraining.com.au
Mon Mar 7 15:59:53 EST 2005

Terri Oda wrote:

> For those of you who've since moved peer groups through switching jobs, 
> schools, courses, new groups of friends, etc... how did you make 
> comparisons?  Is it helpful to know how you stand?  Do you try to avoid 
> making comparisons in some circumstances?

I'm going to write about how to compare yourself as a coder.  Strangely enough 
much of what I'm writing applies in other circumstances as well.

I find user groups, online discussion forums, conferences and journals are the 
best options.

User groups (for example in Melbourne there is OzZope for Zope 
users/programmers, MelbPHP for the PHP programmers and Melbourne Perl Mongers 
for the Perl programmers) provide a number of good things.  They allow you to 
increase your professional network, learn new ways of doing things, make friends 
and improve your public speaking.  Have you found or written a great new module 
to make your life easier?  Present it at your local user group meeting.  Do you 
want help with a problem?  Ask on your user group mailing list.  Etc.

Try to attend local user groups in other cities when you're travelling.  This 
increases your variety and networking possibilities.

Online discussion forums vary a lot in quality.  One of the best that I've ever 
associated with is Perl Monks ( www.perlmonks.org ).  I believe there's a Java 
Junkies as well with a similar setup as Perl Monks.  Once you find a good one, 
sign up; contribute.  Answer questions, ask questions.  You'll get a good idea 
both of what the community thinks "good code" is as well as how yours compares. 
  If "big members" of the community regularly suggest that you should do x 
instead of y to solve z, then they're probably right; so you learn something.

Conferences are a mixed bag.  Once again they're excellent changes to network. 
Take a huge stack of business cards (get some made up).  Networking can never be 
overrated.  Try to go to grass-roots conferences like the YAPCs ( yapc.org ) and 
code-heavy conferences like OSCON.  These will give you the opportunity to see 
how other people solve problems and provide examples of both good and bad code.

Take out a subscription to a relevant journal.  This will keep you informed of 
new ways of doing things, new thoughts, new developments and all good things 
like that.  I've saved hours on new projects due to reading about new modules 
through The Perl Journal.

Actively finding and associating with your peers in whatever field you work in 
will help you benchmark your abilities.  Knowing where you stand allows you to 
recognise the areas in which you need to improve.  Having no point of comparison 
merely leads to you assume that the best solution you're aware of is the same as 
the best solution altogether.  In many cases, though, that's not the case.

There was a great paper published on recognising competance ( Unskilled and 
Unaware of it - How Difficulties in Recognizing One's Own Incompetence Lead to 
Inflated Self-Assessments: 
http://www.phule.net/mirrors/unskilled-and-unaware.html ).  Basically it says 
that if you're not competant enough to tell; you'll assume you're better at 
things than you really are.  Conversely if you are very competant, you start to 
be aware of how much more there is left to learn and you tend to assume you're 
less good than you really are (comparitively).

I think it's important to know where you stand because that's the easiest way to 
  learn about what there is left to learn.  None of the above suggestions are 
sufficient exclusively.  It helps to use all of them where possible.  And to 
cultivate friends/collegues/people you interact with who are also proficient in 
your field so you have someone you can bounce ideas off.

Of course all of my suggestions are also those I give to people who want to 
learn more about things in their field.  This should make sense, as even if 
you're an expert today, you'll have fallen behind in a year's time if you never 
update your knowledge.

All the best,


    ("`-''-/").___..--''"`-._          |  Jacinta Richardson         |
     `6_ 6  )   `-.  (     ).`-.__.`)  |  Perl Training Australia    |
     (_Y_.)'  ._   )  `._ `. ``-..-'   |      +61 3 9354 6001        |
   _..`--'_..-_/  /--'_.' ,'           | contact at perltraining.com.au |
  (il),-''  (li),'  ((!.-'             |   www.perltraining.com.au   |

More information about the Courses mailing list