Tracy R Reed wrote:
This ties in with our study of SICP. I tend to agree with the author. I don't have a CS degree either but I am educating myself and I am more or less familiar with the concepts that are mentioned that a lot of CS grads don't have these days. I have seen several articles like these lately:

http://www.stsc.hill.af.mil/CrossTalk/2008/01/0801DewarSchonberg.html

http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html

I know they specifically point the finger at Java but I don't think they are really saying Java is the problem. It is the decisions of school administrators and their fear of losing all of their enrollment because programming is just too hard that is the problem. It seems like industry is starting to put some pressure back on the schools to stop the dumbing-down process and start making real software engineers (and we all know we use "engineer" in a rather loose sense here since engineering is science and programming still too much art) again.

Some of you may be aware that MIT has recently dumped SICP and Scheme (known as 6.001) as their intro to computer programming. I don't go to MIT so maybe I shouldn't care but it seems a shame that such a well received and respected program is being changed when none of the fundamentals of programming or the concepts being in the class have changed.

The Dewar piece is self-serving whining because they can't hire recent graduates cheaply. When I see a phrase like "As founders of a company that specializes in Ada programming tools for mission-critical systems, we find it harder to recruit qualified applicants who have the right foundational skills." what they mean is they are unwilling to pay what it takes to get someone to use an essentially dead language. When I got my Masters in Software Engineering, I had to take Ada as a prerequisite course. Where is Ada now?

The programmers of the future won't be using languages that have pointers. Look at Java, Python, Perl, TCL/TK (Hi Lan!), PHP, Javascript, Erlang, Haskell, Ruby, and many of the other new and experimental languages coming out. NONE of the new languages have pointers. There is a reason for this. Pointers result in bad code and wasted programming effort.

There will be niche programming efforts where something needs to be written in C (portable assembler). Maybe the virtual machines need to be written in C. But I would argue that if you want to educate the most programmers to produce useful code for least expense, don't waste their time teaching them C or C++ or even my favorite Pascal (actually, FreePascal, which is Pascal with objects).

They whine about floating point computations. Huh? That's for the hardware. If your hardware doesn't have a co-processor, then what are you doing trying to do floating point to begin with? If you really, truly need to do floating point in software, buy the damn library.

These professors have been around a few decades. The world has passed them by and they don't know it's time to retire.

Gus

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to