Does Java still have a place in client-side development?

I tried dusting off my Java skills last night — intent on diving into the HME software development kit and creating the next great multimedia delivery system. But in the process, see I quickly realized something: I don’t know jack about Java anymore.

And I couldn’t care less.

Truth is, ailment with my focus on Flash development over the past three years, read I’ve forgotten just about everything I ever knew about Java. And somehow, I never even noticed it. (Hell, it took Tivo to remind me it was still out there.)

There was a time when anyone expecting to do great things in Web application development was expected to know — or at least, to learn — Java. It promised to be, after all, a truly portable, platform-independent, programming environment that offered security, robust features and an interpreted, easy-to-comprehend, object-oriented language structure. It could even be run within a browser thanks to a ubiquitous plug-in.

In other words, it promised the Web everything that Macromedia Flash delivered.

I know Java is still used extensively for application development and system programming, but in truth, it seems to have disappeared from this Web of ours of late. Could Flash actually have become the quiet Java killer?

For Web-based client applications, the debate these days seems to focus on Flash vs. Ajax… I haven’t heard anybody seriously suggesting Java as an option in years.

Or have I just missed something? Your thoughts/opinions/rants/rages are, as always, welcome.


6 thoughts on “Does Java still have a place in client-side development?”

  1. If java have had the smallest preloader way to go, a nice visual editor with timeline and such, maintaining the proffesional programmer interface, and not that big vm size, then java would have been the way.

    Gees … i have jbuilder the latest version here and it runs like crap on xp 2200+ with 1 gb ram … trully crap.

  2. *laugh* Strangely enough most of these thoughts were going through my mind not too long ago. At one point I decided Java was undoubtedly the song of the sirens, luring programmers to their deaths in the murky code below.

    Like you, in 2002 Java exceeded my pain threshold and I vowed to switch any of my client-side web programming over to Flash. I have never looked back; nor have I ever regretted it. I’m going to be honest with you-this is not to say that there haven’t been times Flash has had me gnashing my teeth or I haven’t sat around and sporadically suspected I had gotten better performance out of my Apple II. I’m simply saying its better than any alternative (including Java). In fact its far, far better.

    This would probably come as a surprise to many programmers. But anyone who has tried to deploy serious web applications written in Java and had to put up with the endless browser problems, JVM conflicts, general plugin instability and other headaches will understand when I say that Flash comes closer to fulfilling Java’s promise of ‘write once, run anywhere’ than Java ever did. Perhaps it was easier because Flash is far less ambitious-but maybe this was the correct tact-to start off small and get it right instead of aiming for the stars and missing by an astronomical unit.

    Despite all this, by a weird coincidence I also dusted off some old Java code I had lying around and started playing with it the other night(there must be something in the air) – haven’t reached the point of “what am I doing” yet like you have, but I’m pretty sure that will occur in time.

  3. Java’s “portability” is one of the biggest myths in programming. It takes five times as long to move a Java program from one platform to the next as it does to use Perl, Ruby or… yes, (shudder), even Flash.

    After a dozen or so years in the real world, Java is still more a buzzword than an actual programming tool.

  4. Main reason I’ve seen – why download a 16 meg plugin for 300k of content? Java is great for applications running on the server or the desktop. Doesn’t seem like it would even be the tool for the job as far as creating RIAs at this point.

  5. But at least the huge overhead of the Java runtime (aka VM) often leads to the convenient lockup of most browsers today. Hmmph.

    To be honest, though, I’m not real impressed with its record in standalone apps, either. Anyone out there really a fan of Java at all these days?

  6. Java’s strengths on the desktop are:
    o Swing — a large, standardized UI library that comes with the VM and looks the same on most platforms
    o Java and Javax — large, standardized utility libraries that come with VM and work the same on most platforms
    o a large, standardized VM that works the same on most platforms

    I would never use Java for a Linux application — OCaml comes to mind as a desktop Linux language I use a lot. And for applications whose sole target is my own PC, I usually stitch together some hodge-podge of Perl, bash, and Linux utilities. But if I’m writing an application in Linux for Windows users to run, in my opinion, Java has no equal.

    Also, weighing in on the Web side, Macromedia Studio doesn’t run on Linux, so I can’t really comment on it, but I do think that Java is better than AJAX for a few specialized cases — for example, a Finite State Machine applet, or the well-known Sodaplay. This sort of special case is characterized by 1) heavy interactivity to the point where nothing can be known before the user starts playing around, 2) a need for graphics and simple animations generated on-the-fly from user input, and 3) a need for non-trivial logic. However, based on my few experiences with flash, for these to apply to Flash, we would need to replace condition (2) with “a need for something in a third-party Java library that you don’t want to do yourself.”

    There’s my two cents.

Leave a Reply

Your email address will not be published. Required fields are marked *