Re: Interesting article by Joel Spolsky: The Perils of JavaSchools



And it's the same half-baked point that has been made for millennia, when those who consider themselves as members of an intellectual elite get worried that their inferiors are achieving much the same things as they can, without having bothered with the elaborate membership initiations. "They must be stopped", they wail. "How can the sacred work be left in the hands of ignorami?".

I think the problem isn't that people are looking for an intellectual elite (though some might), it's that they are looking for people who have an understanding of the whole picture. While a given feature may be useful for 90% of programming projects, how will you know when you have hit the 10% that you need another tool for, unless you know about such tools and where they are used?


If you don't understand how program proofs work, how will you even know that you need to prove something?

If you don't understand how the underlying machine works, how will you be able to do anything but be at the mercy of tech support when something unexpected happens?

If you don't understand tail recursion, how will you know that you need it, or, having it, know that it changes the question of whether or not to use a recursive procedure?

The problem is that training someone for the basics is not enough. In order to be truly successful, you need to know about the advanced stuff, too, even if it is only to know when a solution requires someone else to help.


Misses the point again.
The ability to think recursively is an important skill for a programmer
and indeed problem solvers at large.

Yes, it's very useful. And you can learn it from Java, or Basic for that matter.

But the fact is your average Java programmer can't parse an abritarily
nested regular expression and can't grok XSLT because they ain't used
to thinking recursively. Why. Because they work in languages that lets
them work around having to.

When they need to learn it, they will. Hopefully employers will choose to hire staff capable of doing or learning to do what they need, whether that includes the above things or not.

Which is exactly why Java is a bad language to use for teaching. It _doesn't_ teach them the skills they need to handle new situations.


Though if their teachers haven't taught them the basics, I would blame them rather than the language.

Except that Java doesn't have the expressibility to do so.

Jon
----
Learn to program using Linux assembly language
http://www.cafeshops.com/bartlettpublish.8640017
.



Relevant Pages