nny
M̮͈̣̙̰̝̃̿̎̍ͬa͉̭̥͓ț̘ͯ̈́t̬̻͖̰̞͎ͤ̇ ̈̚J̹͎̿̾ȏ̞̫͈y̭̺ͭc̦̹̟̦̭̫͊̿ͩeͥ̌̾̓ͨ
http://www.music-piracy.com/?p=477
Wrote this after launching into this rant for the second time while griping on irc with friends.
I think there are many issues in the software "engineering" industry.
First, the barrier of entry is too low. Any kid can get a PHP book and become a "developer" and companies actually hire these people, probably because they can pay them below average. You don't see "Bridge-building for dummies" or "Design a power system in 24h" books around. It seems the software industry doesn't have enough self-respect to avoid this.
Also, our current development practices are very archaic. Engineers work a lot with simulation, but in software the tools for what would be the equivalent of simulation (automated testing) are too basic, and everything is still very ad-hoc and manual. And that's the good side, because in many environments "testing" means simply to run it for some inputs and see the results.
There's actually a lot of interesting work in advanced type systems and formal verification of software that could be very helpful if it ever escapes academia and makes into some semi-popular language. But then we live in a worse-is-better world where the most used languages are fucking Java (a bureocrat's dream) and PHP (nobody's dream), so I don't actually have a lot of hope that things will get better any time soon.
Also, our current development practices are very archaic. Engineers work a lot with simulation, but in software the tools for what would be the equivalent of simulation (automated testing) are too basic, and everything is still very ad-hoc and manual.
yep!
well-said, andre. you too, nny.
nny
M̮͈̣̙̰̝̃̿̎̍ͬa͉̭̥͓ț̘ͯ̈́t̬̻͖̰̞͎ͤ̇ ̈̚J̹͎̿̾ȏ̞̫͈y̭̺ͭc̦̹̟̦̭̫͊̿ͩeͥ̌̾̓ͨ
andre there's a reason i compared developers to contractors. some are talented and heavily credentialed people with a reputation for skill. some of hired hands for the day and possibly completely unreliable. but buildings still get built.
the whole point is to use everyone effectively. not to raise the bar. you can't raise the bar. there's too much work and too few skilled people. what you need to do is distribute the load while retaining the quality of the work being done.
This is a great talk by Alan Kay that is somewhat related to this subject:
http://www.tele-task.de/de/archive/video/flash/14029/