Ekinoderm writes in "Who did Kill the Software Engineer? (opens in new tab)" that schools today are ruining software engineering by teaching people Java. He references Joel Spolsky's rant on the same (opens in new tab).
I agree completely, except neither went far enough!
Java is just the replacement for Pascal, a pedagogical language designed because it was more fun and understandable than FORTRAN.
So was BASIC, and APL. Heck, C is really just PDP-11 assembler code for people who can’t allocate stack variables by hand. Come on, it's just subtraction!
Oh, and don’t get me started about how RATFOR screwed people up my making them not compute the gotos in their IF statements.
However, I have to sneer at their examples in Scheme. Scheme! That's also part of the problem. Scheme is a dumbed-down version of MACLISP for people who can't handle a real LISP, for Pete's sake! They should be doing their work in that, if not MDL or LISP 1.5.
The world has already gone to hell in a handbasket because of this continued coddling of the next generation of software engineers.
Engineers need to learn how to twist transistors together to make flip-flops and make adders out of discrete components before they should go write computer programs. So-called high-level languages have been ruining the competitiveness of America since the mid 1950s!
Let's face it, when Jim Backus started on FORTRAN, that was compounding on the mistakes that Grace Hopper started with AUTOCODER, which made it so that you could use so-called "opcodes" in your machine language instead of typing in the binary, and worse, far worse to have macros. Macros make people fat and lazy.
Transfats and sugar only make it worse. They stereotype of programmers being fat and unkempt is a product of macros, transfats and sugar over time.
Since I now realize that it's actually all the Commodore's fault, I'm going to throw away my nanosecond (opens in new tab). Her use of tools that help people understand has ruined computer science. I also promise never to write another line of COBOL.