A couple of months ago (June, to be precise) was my 10th year anniversary of doing Java programming. In that time, I’ve worked with several technologies, seen a couple of interesting projects and worked for different companies in different sectors, both as a consultant and as an employee. I thought I should share a couple of thoughts I’ve had after all these years.
First of all, it’s amazing how much Java has advanced in that time. I think Java is probably one of the few languages who actually has evolved without becoming a completely different language, while still maintaining backwards compatibility. This is why I love Java. I get to learn new stuff every day (after 10 years, I’m still learning) and yet I can rummage among my old backups, open up a very old project and it will still run unchanged. Sure, libraries come and libraries go, but the core is still there, ready for your programs.
Working in different industries has also been interesting for me. When you’re in the IT sector, you usually try to do more bleeding-edge stuff, look after the new, not yet released technology that you think it will change the world. Contrast this with working in the retail sector, where the priorities are to keep the business running, which usually means that changes are more slow to come, and stability is a very important thing. If your program crashes in the IT sector, you just release it as "beta". If your program crashes in the retail sector, your company can lose millions. Yet in both sectors (and others I’ve worked on, like banking and such) Java is used daily. Millions upon millions of transactions per second are managed by Java code, while the next generation electronic gadget is being tested against the latest Java ME standards. I think very few languages are as pervasive as Java.
Would I still be coding Java after another 10 years? I don’t see why not. I really enjoy doing it, and I’ve been fortunate so far in that I haven’t had to "move on" to a different position in order to advance myself professionally. I also think Java will continue to evolve for a long time, and I’ll keep learning new stuff after another 10 years (at least).
ruby is the new java. java is the new cobol. Maybe it’s time you start learning ruby, this is what I am doing… getting ready for the "next language". the fact that both Microsoft and Sun are investing in the language really shows that this language is the future.
I don’t think Ruby is the new Java and I don’t think Java is the new Cobol. I would personally not advise anybody to follow the latest fad just to follow the latest fad. Java suits me fine, and above all, it suits my projects fine.
Besides, Microsoft and Sun both have their share of failures on their résumé (besides their successes of course), so there is no reason to follow their steps without thinking for yourself.
Didn’t know that M$ is investing in Ruby. Could be a reason not to use it. 😉
So as evaluations went I have chosen Java for future use (for last 10 years I was first of all using Visual Basic).
So I would say, Java – even from the current view – is still a very good choice.