I’ve got an email stating that AOL finally abandoned the ugly Java applet that was used in the ICQ2Go , the Web version of hugely popular (about 30M users) instant messaging system. The person who sent me this email also wrote, “IMO this was the last popular Java applet. Now the king is dead.”
I don’t think so.
It became a trend to criticize Java for slow starting VM, overly complex syntax, ugly-looking UI, installation problems, lots of boilerplate code and more. Some people just pronounce Java dead.
Not so fast. There is no money for the funeral.
While lots of new applications will be created by polyglot programmers, there is a huge base of Java-based production code that millions of businesses and individuals rely on.
ICQ2Go is an excellent example of a popular consumer facing application. Let’s read a couple of fresh messages from its users’ forum:
“Where has the bloody Java based ICQ2Go gone? That’s the only one I can use in my work! Heeeeelp !!!”
“Bring back Java ICQ2GO! This buggy Flash ICQ with a stupid design and without proper encoding support is a total rubbish!”
Of course, AOL will fix the bugs at some point, but experience of the ICQ2Go users will be repeated across all applications that will move from Java to Flash-based runtime. Don’t be in a hurry while migrating from Java to Flex/Flash. Take your time. Plan carefully and test thoroughly.
Now let’s talk about success of Adobe Flex. Who do you think would know about Flex if there were no millions of rock-solid enterprise Java applications? Just a small group of enthusiasts creating cool little gadgets for fun.
“Have you seen that cool little video player number 237?”
“ Have you seen that new photo album written in Flex? No, the one that was published this week?”
“I’ve seen it, but mine written in pure ActionScript without using Flex framework is five times smaller”.
It’s because of the enterprise server-side Java very demanding Wall Street, telecommunications, manufacturing applications started to use Flex. It’s because of its fast communication protocols Flex is considered for lots of commercial Java-based business applications. No offence, PHP, Ruby, .Net, Python,SOAP and Coldfusion folks.
Flex has entered the enterprise world, and if you are just considering using it for your next business application, attend this one day technical event called Enterprise Flex Symposium and meet other practitioners who’ve done it already.
Ironically, it’s Sun Microsystems who introduced rich Internet applications back in 1995. But now, after spending more than a decade in the RIA coma, they are doing baby steps into the world of RIA with JavaFX. Even though Sun’s moving slow, the need for RIA offering has already positive effect on Java – the new JVM to play JavaFX becomes a lot smaller (Java Kernel) and it will be browser independent (kill the browser, but JVM will keep running).
Today, there is only one API for creating production grade front end for RIA talking to Java. It’s called Adobe Flex. In 2010, JavaFX may become another alternative. But meanwhile, please stop bashing Java. Do not forget that many of these new popular programming languages exist because there is a J2EE application they need to connect to. Do not forget that Java puts bread on the tables of many people (including mine) around the world. Do not spit in the well you drink from.