Phoenix.pm: Programmer-standardized testing - was Parameter parser
scott at illogics.org
Wed Dec 4 07:49:12 CST 2002
> Well, OK. But I am afraid I will not be quoting any famous or infamous
> people on anything. Anything said here is strictly my own (possibly) (OK,
> probably) ignorant ideas.
> I am a secret champion of regulation and licensing for our industry, which
You've just been discovered - your secret is out ;)
I've edited your post. Anyone reading this reply should first read the original.
Sorry for the extremely long reply. Before I say anything else, I agree with
you. As you said, its a good start. I see the problem being much larger, as
you hinted at, and have some very specific ideas on the scope and nature of it ;)
Sorry for the lack of proofreading and spelling.
> squarely puts me in the minority I think. After all, if most people in the
> industry agreed with me, it would have been a done deal by now.
Good programmers are always burnt by bad programmers. One of my comments in
my last reply was "trust metrics be used to ferret out people causing more
harm than good" or something to that effect. In addition to bad programmers
pushing down good programmers, I've noticed lazy programmers blocking
hard working programmers and trying to keep company/client expectations low.
The lazy and the stupid are threatened by the hardworking and smart.
Once again, I could tell stories.
> Yes, I agree using "strict" and other pragmas in Perl is probably a good idea
> for many reasons, although I doubt that will do anything for Perl's built-in
> obfuscation. I wrote 1 entire C++ program once about 12 years ago, got a
> terrible pounding headache, and promptly cleaned all of my disk space of any
> trace of that awful language. But I always liked things like objects,
> modules, packages, and other methods of segregating code along (hopefully)
> logical lines. I like Perl because it has an extremely simple OO mechanism
> compared to that horror better known as C++. I think we agree on this much,
Haha, yes, I agree C++ is horrid. I'm not entirely happy with Perl's implementation,
but Perl steers programmers the right direction. There are a good number of Java
jobs - I've attended a JUG meeting now, and by rough survey, 90% of them are
employed or busy consulting. In contrast, I think Phoenix Perl Mongers is
hanging somewhere around 50%. I think I've been to meetings where Doug was the
only one with a job ;) I seem to be the only one saying this, but Perl is
experiencing a backlash for being cryptic, terse, idiomatic, and many peoples
first language. Code is seen as an investment, and an investment that is not
to be made lightly, and managers hearing "this is aweful... I have to rewrite this"
one too many times has Perl down for the count. The same thing is hastening C++'s
fall to Java. Javas poor performance and lack of selection of compilers, as well
as lack of ports are unimportant compared to code quality.
> What if, what if ... there was testing, licensing, and regulation of the
> software/IT industry? Wouldn't that just be horrible? Microsoft and Sun
> certifications are entirely inappropriate, because their exams and
> qualifications are designed to promote their commercial agendae. Now, the
> IEEE Computer Society does have a test, but having looked over some of the
> sample questions on their site, I cannot say that this would be the
> consummate test of ability, but then again, maybe it is the best thing out
> there so far. Every other area of engineering has testing, licensing and
> regulation. Architecture (AIA), Accounting (AICPA), Medicine (AMA), Law
> (ABA), and so on, all have an examination and licensing process. Some
> fields even have continuing education and retesting requirements as well.
The field is so broad and so many levels of experience are tolerated it
would be difficult. Microsoft having the market cornered on certifications
(and it seems MCSE is the best known cert) is a force in itself. Because
of the low standards established by lazy but certified "professionals"
that dominate IT today, employers see hiring more programmers as the solution -
not hiring better programmers. The demand for quantity requires that prices
also be lowered - establishing stringant education and certification
requirements would drive up salaries - something employers don't want
in their glorious ignorance. Per my first round of suggestions, I see the
crux of the problem as programmer and employer dysfunction and ignorance.
> The most common argument I have heard so far about my fascist plan for the
> I.T. professional world is that it would somehow impede progress and
> creativity in the field. As far as progress, seems to me that engineering,
It wouldn't be my objection. Engineering, medicine, structural architecture,
urban planning, metalurgy and every other field has R&D and production with
a clear distinction between them. In fact, only people who do well on
the production side are invited into the R&D side. Accomplished professionals
who know the field well on both practical and theorical levels have the
rare opporutnity to participate in developing and testing potential next
generation technologies. These technologies are only deployed if they can prove
themselves before being put into production - not if they go into production
and don't cause too many problems as is the case in software.
Computers make basement dabbling easy. History has shown that sciences
start off as things that can be done in the basement and then scale
in complexity beyond that. When the entire software landscape is defined
by interactions across Passport, software signed by Microsoft and run
on Palladium certified hardware, composed of distributed WebServices,
the days of basement dabbling in computers might be over. You can still
extract iodine from seaweed, or make foul smelling compounds, but these
are seen as amature, irrelavent dabblings in chemistry. Any real chemistry
work is done with molecular modeling and cutting edge biochemical theory,
and is done exclusively by major drug companies. To press this analogy,
in 20 years people will still be able to write Perl on their home
computer, but I imagine that they won't be able to do anything that anyone
cares about, anything constructive or useful, anything cutting edge,
or anything interesting. In this respect, I hail Microsoft as the
*only* visionary on the computer scene. IBM's sciences and GNU's
hurculean efforts will ultimately be insignificant.
> medicine, and accounting are all making very good progress. As far as
> creativity, yeah, that might be impeded a bit. Or maybe a lot, an unbearable
> lot. Perhaps once all the artsy-fartsy was removed from programming, we
> could actually start creating maintainable code that meets the needs of
> users. If you want "COOL GRAPHICS MAN!" then maybe you should consider a
> career as an artist of some type. If you want to be sloppy and arrogant
> toward customers, you could go work for a car dealership, they specialize in
> that sort of thing.
The laziness effect trickles down. Companies find it easier to be creative
about selling a bad product than creative about making a good product. Once
again, there are status quo issues.
> fields. Something fundamentally less mature, less professional, and with
> less integrity.
The "Voodoo" factor - the mysteriousness and complexity of computers - keeps
employers from developing effective sane strategies for dealing with employees,
and makes it possible for scumbags to keep their position in the status quo.
The field maturing would challenge the present status quo. Not everyone with a
job is evil of course, but I've witnessed large scale abuse more than once.
Its a large part of the reason that Motorola is bleeding right now, though it
could be argued that management created the problem.
> I am exploring is paralegalism. Now, here is a field which is young, about
> 30 years old, and already about half its membership is pushing for
> professional qualification. Another area I am studying is home inspection, a
> field only 25 years old and has had regulation and licensing (in some states)
> for some time, with expansion coming in other states soon. AZ is one of 2
> states requiring Home Inspection licensing, just in this last year. The
> national organization has been providing credentials for many years now.
> Even without EL&R, there are things we could be doing already. Like
> demanding that recruiters and HR people have at least 5 years, preferably 10
> years, working in the field doing actual work. We could demand that they
> keep job ads SHORT, avoiding a ramble of skills lists, kind of the same way
> they would like to see our resumes. And know how to sPeLl and use ReAl GoOd
> GraMMar. Or maybe even proofread copy before posting to a mailing list.
> Just like they have to sift through 400 resumes to find the one candidate, I
> have to read hundreds of job ads every day to find one job. Fair is fair,
> don't you think? This would be a major step in the right direction. And
> send those kiddies working for recruiters and temp agencies back to Burger
> King and Pizza Hut. Especially now, with so many qualified software people
> looking for work!
Ahhhh, but the recruiters are the shirfers (sp? can't find it on dict.org).
They make sense of the Voodoo for employers. That puts them in a very powerful
I ran into an old coworker of mine at a trade show. He was standing behind the
booth of a software company that shipped programming tasks over seas where they
were billed at $30/hour, $20-$25 of that going to the programmer. Looking
at elance.com, American independents are going for much cheapter than that - below
$10. When I asked him why they weren't selling American labor, he laughed and
explained that companies could get inexpensive American labor themselves, but
they need a shirfer, and they *want* to need a shirfer. The move to foreign
labor isn't about saving money on labor - its about getting a whole new
_class_ of recruiters to lead them through the jungles of farming out
all responsibility for programming projects. Companies don't trust programmers -
not even good ones - especially good ones - so they *have* to find shirfers
to trust that take care of that pesky trust thing. Recruiters for American
talent are hurting badly right now - companies are disguested with them and
blame them for the programmers failure (neglecting the possibility of failure
in management, of course - pride blinds).
I'd argue that someone just needs to write a good project management book that
management types can understand, but it was done years ago - The Mythical Man
Month. Management has absolutely no excuse.
> Ready for flaming, SIR!!!
I have some points to add where I feel that I understand the problem, but I
don't disagree. I think we agree on the same basic problem - companies need
to have a reliable way of finding and working with programming talent. I
favor certification in the sense you describe it - vender neutral. I also
favor another unpopular cause - unionization. Most unions are obnoxiously
self destructive, ignorant of the forces of world trade, and just plain
rotten, but the basic idea holds promise. IEEE is a good example of what
an organization representing people in technology can accomplish. They're
impartial; statements they make carry a lot of weight, representing the
programming populace (and electrical engineer populace of course) better
than perhaps any other organisation. They promote ongoing education.
They publish specifications for what college courses should cover.
The question of worker benefits is a lesser one, in my mind. However,
the Union angle has bearing on communication issues with reguard to
programmer/employer relationshiops. Things like Motorola should never be
allowed to happen. Having an impartial body explain in no uncertain terms
why workplace politics or structure inherently prevents work from being
done would benefit both management and programmers. Programmers get job
security and respect, management gets their product. There aren't workplace
safety issues like in other industries, but "workplace dynamics" has
proven to be a huge problem in IT.
> My career in computing is very sad. I have had to settle for working with
> utter morons and idiots. Worse, some of the supervisors I had were worse
> than that, some of them were outright liars, backstabbers, and ghouls. One
> supervisor I had caused me to get a case of shingles; she would not let me
> finish my doctor-ordered quarantine. And there was a pregnant lady working
> with us at the time. She and a certain SA continually changed the OS level
> of the Unix box I worked on so I could not complete my work (semaphore bug in
> the OS, ever heard of this? Ran into similar problem a few years later in
> another place).
My career as well. I had one good job in college, working for essentially
a business incubator company that was all tech people, who were very
knowledgable *and* had the social smarts to apply it. I never should have left
there and move to AZ - I've said that a thousand times. I kick myself every
More information about the Phoenix-pm