Back in 1995, I remember the conversations I was in about the “death of x86 assembly”. New programmers straight out of college did not learn assembly anymore. Back then we were noting how strong C was in the market. Today, it is the end of C itself. Most new programmers never learn to code in C anymore, and some of them never even learn C++. My husband has a hard time finding good C programmers to hire for example. It is all about .NET and Java these days.
While personally I am a proponent of .NET & Mono for desktop applications, I still prefer my heavy and CPU-demanding applications to be written in C++ with some assembly optimizations when needed (e.g. 3D Studio Max). And then, Sansa is just releasing an mp3/mp4 player that its UI is all written in Mono. While this is cool for the project, I just can’t stomach the fact that they used something as heavy as Mono (or .NET or Java or PyGTK for that matter) to do an embedded device. For me, when I hear the word “embedded device”, I can only accept assembly and C (and maybe some C++ if the compiler they used is good). But anything more than that, it is a waste of speed and RAM, which is something that I, the consumer, will have to pay for.
I mean, come on, if my husband had to develop their web browser in Mono or Java, they would have had ZERO customers right now, because the browser would need a lot of RAM and cpu speed which is something that does not fly in the cellphone industry (and no, Opera Mini is not a Java-based browser, it is a java-based client). Even on the desktop Java apps are slower to load and consume lots of RAM, and similarly pyGTK apps do too (and in fact the maintainers know of this issue but it’s nothing they can do, as they say).
Ah, where are the days where everything was optimized to the bone? The ’80s might have bad music to offer, but programming was really an art and meant full commitment.