Ada Does Not Make The Engineer Of Tomorrow

tiistaina, tammikuuta 08, 2008

I read Computer Science Education: Where Are the Software Engineers of Tomorrow?and had a hard time not chuckling through the document. Its main issue is that Java is a bad first programming language to learn and that developers aren’t as good as they used to be as a result. They argue that C, C++, Lisp and Ada are better places to start. Ada is the one that made me blink until I realized that these guys founded AdaCore, an IDE for Ada.
I agree that learning C and C++ is valuable for pretty much every software developer. A subset will find Lisp useful too. And I am sure that a few guys out there will marvel at the perfection of Ada, which continues to be a huge commercial success. If you want to earn a living and be able to choose from a wide pool of employers, then you are better off learning Java, C++ and C#.
I strongly believe that C and C++ are fun languages. You can write device drivers, kernels, video games, embedded software and high performance software. You can also allocate all available memory, exceed the boundaries of a memory allocation, point your pointers at the completely wrong thing and fault the operating system. You can write very powerful and complex applications that fully take advantage of the target platform. Its a lot of fun, challenging and I like it a lot.
Java is my language of choice. I am a web application developer. I have a lot of job opportunities and I work on interesting things too. Java provides a good framework for building an application on one platform and deploying it to another while providing a rich set of services that let me do my job quickly.
Small software companies generally cannot afford to teach recent graduates a new language. You have to know the language well enough to start producing usable code within a few days of starting. Some languages are worth the exercise and others just take up a portion of your life that you hope to forget.
Here are a few survey results of programming language use in the corporate world. They are in no particular order of which is more valuable than another.
These surveys say that employers still look for both high and low level language skills, but especially for the Windows and web development arenas. Languages, like Ada, while interesting may not help you get a job in one of those hot start-ups that can make so many people wealthy. Being strong in multiple languages and carrying the wisdom and the choices of those languages with you is hugely valuable, just be sure that one of them can get you a job when you graduate.

You Might Also Like