Let’s face it: certifications are a product, and a damned profitable one, at that. Plenty of folks, and plenty of companies too, have been suckered into believing that persuaded that “if only” they can hang such-and-such certificate on their wall (and, if they like, tack on such-and-such letters after their last names), that the gates of Nirvana will magically open before their eyes. A perfectly unreasonable expectation, of course, but the grass is always greener on the other side of any fence.
I find, though, that experience is what people really want. It doesn’t really matter so much if you are building applications “in Perl,” or “in VB,” or “in Ruby.” What matters is that you are building applications, and servicing existing ones, in real business environments and for real people. You showed yourself to be competent, easy to work with, professional, trustworthy and reliable. You have amassed a group of people who will speak well of you for what you have done. You do not try to “know it all,” because you have mastered the art of finding out “what you need to know at a particular time,” at that particular time. If a new language system appears to be the right tool for a new engagement, well, by now you only need a single weekend to adequately prepare. (And no, you’re not bluffing anyone.)
There is no “certification” that can equal that.
The “language haters,” quite frankly, I ignore. I ignore them because they are demonstrating that they don’t have anything useful to say. If they want to pick a fight with me, to thrust a burning torch in my face, I merely decline to catch fire, and move on about my business. The peddlers of certificates receive a polite but firm decline. Their mailings go into the recycle bin.
The people who tell me that, in order to improve an existing system, I must re-write that system in “trendy new language Blah” ... I also am reasonably polite to these people, but I ignore them completely. (I do, always, allocate a block of time to at least cursorily familiarize myself with the latest newcomer. There’s always room for one more good idea, and “latest languages” are usually where you’ll find them.) Every language that is in use today, at least from PL/1 forward, was somebody’s silver bullet that was going to make the application backlog disappear and allow you to reduce your programming staff count by two-thirds. Another unrealistic expectation. Some spectacularly good work has been made in all of them, and some spectacularly bad work, and a whole lot of pure-mediocrity. But the language in question, whatever it was, was neither cause nor cure.
| |
As I am writing this proposal (and still continuing to gather resources/information from online resources to support the assertions it will contain) I keep butting up against that awful word, 'certification.' Let me briefly describe what certification is (in my view) and how this proposal is not certification and how it would be difficult (but certainly not impossible) for hiring organizations/etc. to use any status conferred by it whilst simultaneously making it valuable.
Briefly, certification essentially is much like a small wooden bar my grammar school gym teacher used to hold while he would make us to run in a circle around the gym. While running he would shove out the bar in front of us and say, 'jump over it.' Simple enough, I'd say, and leap over the little thing before doing another easy lap. When I came 'round again however that mean teacher raised the bar. Suddenly I had to jump much higher to get across it. Other kids stumbled, fell, or simply refused to jump.
So certification in IT is an attempt to verify or validate knowledge by setting a particular bar -- one that involves question/answer style proficiency. I find that the main problem most people have with certification is not that they are expected to meet some expectation but rather whether the particular bar chosen is adequate to actually prepare them for the work ahead.
Since the most common bar used is the question/answer format a common complaint about certification is that there are people who are brilliant at passing tests but cannot actually solve IT problems who obtain certification. I had never really met a person like this until about two years ago. A young fellow talked his way onto a large implementation I was working on purely by exhibiting his impressive 'knowledge.' Very soon afterward I was stuck working late nights fixing his errors and trying to help him through the numerous mistakes he was making.
Having learned from experiences like this one my proposal is to do away with the question/answer style bar. In this proposed system the bar will consist of targeted project work that will be graded on a scale that is openly described. This is actually the method used for the written portion of a law school examination. In an examination of this type a given scenario is offered and the student must use the rules of law to come up with an answer. In law school this is typically done in IRAC (issue, rule, application, conclusion) format, but in a computer science course you would simply write your code at the level expected of you given the target audience. For instance, if you were a 100 level student or lower (meaning you were doing remedial work) you could write a very C-looking style Perl solution to a given problem and it would be graded (forgivingly) on style, execution -- it has to actually work, and other aspects I have not yet come up with. Students will not actually ever get a grade either. They will receive a recommndation to move onward to the next course or a recommendation that they repeat the existing one. Scores on projects could be appealed to reviewers at a higher level if the original grader is unfair, but only if the grading violated the published grading rules (similar to law school exams).
So, it would be hard for a third party to assess your skill level by any certification given by such a university because no certification is ever actually conferred. Instead, you either get a recommendation to move to the next level or not. This model more closely matches how adults learn computer science topics because they will start learning something, get distracted, and often need to take a particular course multiple times before being ready to progress to the next level. So long as the courses are really inexpensive this can be done affordably.
Celebrate Intellectual Diversity
| [reply] |
Thank you very much for your post. Regarding your question, 'why is Perl not taught in undergraduate school?' I cannot speak for most universities but at my college most of the textbooks were written with examples written in C/C++. Colleges that achieve accreditation for their CS programs must use books that go far in helping their programs meet standard requirements. The books we are using for Perl are excellent and popular but most do not cover many aspects in the abstract/standard/generic terms that are certain to meet the requirements.
Let me give you a quick example. I once attended a OO Perl class at a conference that came with a small course guide. It was a good class; very informative and I enjoyed it a lot. The course guide is on my shelf along with Perl books even though it doesn't fit very well. That being said, the course simply would not have met a college course's requirements or standards for object oriented education. The main problem would have involved the terminology. Encapsulation, inheritance, and polymorphism were simply not described in abstract terms or in-depth.
So this brings to light another important goal for this proposed university -- academic writing should be encouraged by instructors. I'm not thinking of meeting the same kind of rigorous requirements that accredited programs must meet, but there is room to coordinate course material with standard, accepted, and even emerging computer science trends when applicable. This falls under one of the main principles of this proposed university's mission: academic honesty (read my update in the main post ... I plan to write up a more comprehensive/formal proposal for this school describing, among other things, the university's mission). A 'university press' is normally a must for most institutions because, if you have brilliant instructors, the books are quickly outmoded. Perhaps striking a deal with a preferred publisher is the ticket (O'Reilly comes immediately to mind but there are others and even micro-publishing can work).
Celebrate Intellectual Diversity
| [reply] |