I believe that the only way you can know which way to go is to look as forward as you can.

Wednesday, March 16, 2005

How about certification?

What can I say? Certification is now kind of “U must do it”. What for? The employer is sure that you know that thing. Also you make sure yourself that you do know that thing. Further, the client will be sure that the respective product/ service is made well.
Ok, but this is theory. How close are the current certification tests to this? I am in the stage of leaning for my Sun Java Certified Programmer exam. I like the book. I see lot of things I did not know until now… but still I was able to program… some code… I think certification is a personal self- confidence act. And ok, gives confidence in you to everyone.
I think this kind of stuff will become more and more a routine in all possible jobs. It already is… but not exactly in creative or unusual jobs… How would it sound: “Hello I am a certified painter. Trust me your walls will be wonderful decorated”. But things move closer and closer.
To come with a diploma saying that you know to generally tailor, design and sew clothes is one thing and to guarantee that you know everything about gloves is another. Perhaps you need a certificate to prove this ;))
And here I am.
What is the danger? Everyone learns of course standard stuff. Only that I am affraid that gloves will become more and more alike. I am affraind that the glove designers might loose their inspiration. Nothing more. For the rest... well all the gloves will have quality. And guess what? About the same quality. High or low... depends on what was requested to learn to get the certificate.


Marian Luparu said...

A minus for certifications:

The official courses for the examination, and the examination itself tend to cover all the theory democratically (meaning that each piece of information is presented in an equal amount of time).

But let's just be fair. In everything so even in real-life programming, the 20%-80% rule of thumb applies - that is: you will only use 20% of the features of a language 80% of the time. That's why a really appreciated real-life programmer can mess up a certification, and a high-scorer can be of little use in a software environment.

What am I trying to say is that the certification will only prove that you master a language or a technology not that you are a programmer. My statement is a little exaggerated because I've never met a certificated individual that doesn't kick ass at programming.

But I've seen programmers that kick ass, that fail the certification tests. And that put me to thinking: what makes a good programmer? I think a good programmer is the one that comes with solutions. And that is not even close to the definition of a "language master". Like the difference between "what can this framework do for me?" and "what can I do with this framework?". If you ever answered the last question you surely are a programmer. If you answered the first question you are a high-scorer. If you answered them both...

A plus for certification:

I think the main purpose of a certification is to avoid the embarrassing and time consuming basic questions at an interview.

I'll give you an example from my last C++ interview. There weren't many C++ specialists at that company so they picked one to shoot a few "tricky" C++ questions at me. The last one (the most complex *SMILE*) was: "What is the size of a char* typed variable and the size of a char[4] typed variable?". The question was tricky in the way that sizeof of pointers is always 4 as opposed to sizeof statically allocated arrays that return the actual number of elements times the size of the element. My answer came instantly "4 bytes both", undoubtedly sensing the "tricky" part and also the "embarrassing" choice of example (the coincidence in sizes). He smiled... "Gotcha!" and went on "...They don't have the same size because the pointer ... lalala ... the statically... lalala". At this point I've sort of got a little irritated and I asked him (kinda rudely) of his experience on C++. Turned out to be lesser than mine, so it was my turn to smile ironically and say "Trust me. They are 4 bytes both". Evil me. >:)

To put it simpler I don't like to be asked questions that is obvious that I should know given my certifications; and I would never ask you the difference between "extends" and "implements" if you are a SJCP, but I will ask you how would you implement a queue using just an array. Creatively.

Logged Off.