The Source for Java Technology Collaboration
User: Password:



Brett McLaughlin

Brett McLaughlin's Blog

Ho Hum Java

Posted by bmclaugh on September 23, 2004 at 07:05 AM | Comments (26)

I was into Java before it even hit 1.0. Back then, it was a clumsy language, but cool in all sorts of ways that C++ and assembler weren't. Writing a networked game took a few hours, rather than three weeks of all-night coding. And even though it was slow (man, it was slow), it was new, and cool, and sexy...

Then there were the Java 1.2 days, when somehow a simple HashMap was the greatest thing on the planet. I don't remember why I was so excited about those things--but J2EE and servlets and (ack!) JSPs and all sorts of interesting things were happening. Still very cool to be a Java guy. Books sold like wildfire, and life was grand.

I even remember 1.3. Proxies... it revolutionized the JBoss world, even though they had their own custom implementation. And 1.3 was fast. Exciting times. J2EE was bloated, but interesting, servlets were still cool, and people were starting to realize that scriptlets in pages are not good things. Still, cool to be a Java guy.

1.4... geez, I barely remember it. Boring. And 1.5? Yeah, it's interesting, and cool, and has all sorts of new things. I get all that--heck, I wrote the first Tiger book. But these were language features. Despite my earlier interest in Collections and proxies, where are the amazing things like servlets? Yeah, I know--there are portlets, there are things like Eclipse... I get all that.

But there's just something sort of boring about the Java space right now. Don't get me wrong--it's still my language of choice. It's still what I go for when I need something done, and I still have something like 3 or 4 Java books for every one of my other programming language books. But... it's not sexy anymore. It's like that hot girl in high school you knew, and then ran into the other day at Kroger, and thought... "Wow. What happened? I mean, she's still good-looking, but not like I remember!" Probably a sort of poor analogy, but it's the best one I've got.

So what's the deal? I mean, there is still juice around Java. I think of things like Groovy, which are cool (although I'm not the biggest fan of another scripting language)--but that's not really Java. It's sort of ancillary, right? And portlets look sort of cool... but nothing like servlets. (I'm sure I'm going to get all sorts of comments about how this project or that project is indeed super-cool.)

But, it's just not exciting. I'm written two books this year, and only one about Java. And I'll probably write two or three next year, and I bet only one will about Java. It's just not as cool--just not as fun. Someone, please, for God's sake, bring back Java Joy ;-) Give me the equivalent of a Head First book (and what it did for publishing) in the technology space. I need something mind-blowing...

By the way... I think gaming and JOGL and the like may be the cool kids. But they're still like 6 to 12 months out for mainstream.

Java a fad? Nope. But it sort of feels like it right now. And--really--who wants to be the last kid on the block still playing hula hoop?


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Coolness
    Could it be that people concerned with "coolness" as a programming tool attribute merely have short attention spans? Perhaps Programmers' ADD (Attention Deficit Disorder) is a new occupational hazard. I see the same preoccupation with the latest gee-whizzery among friends who are "weekend handymen" but not with the reliable professional I hire to do work on my house. He just wants the right tool for the job. And that is all a programming language is... a tool to do the job. It is the results that count... that is where the "coolness factor" should properly reside.

    Posted by: sourcerer on September 23, 2004 at 09:33 AM

  • Mature?
    Well, maybe this means Java has become mature?

    Posted by: edwin on September 23, 2004 at 12:36 PM

  • I find 1.5 more exciting than 1.3 was

    I remember the Big Yawn when 1.3 shipped, whereas I have been looking forward to effective generics for a long time. Admittedly, a lot of the coolness of the language has moved to the libraries, like junit, JSTL, xom, Tapestry, and the like, but that is as it should be. Java-the-language should not be that exciting, as excitement implies breaking change, and that is expensive. I would rather such changes live at the library scope, as then we get to decide as developers when to move to a new version.

    Posted by: scottellsworth on September 23, 2004 at 01:55 PM

  • maturity is stability
    While the massive changes of the early days may have been good for authors and publishers they're not what make a language a great tool.

    Stability does that and Java has (from about 1.3 onwards) established that which makes it now a viable tool for the largest corporates to use for more than trivial and research projects.

    In part because of that I think that Tiger will be slow to gain acceptance in the larger field of users and that for a long time companies will keep using 1.4 (or even 1.3 still) exclusively, maybe moving to Tiger only when their chosen tools and libraries go out of support in versions which do not demand Tiger to work.

    For me I like stability for another reason as well: I now have money again to buy things other than Java books :)

    Posted by: jwenting on September 24, 2004 at 05:29 AM

  • Cool, why?
    when I started coding in fortran, basic and C, I didn't care about how cool they were. What was really cool was how well I could learn to use them to get my job done. This is something I can't achieve with Java due to the great amount of new specification, tools, libs and language features I can't even read about (if I want to save some time to get my job done). I'm getting sick, reading more and more articles on this topic. Computer science fading to computer fashion?

    Posted by: aatoma on September 24, 2004 at 05:45 AM

  • Make it cooler.
    I am with you; Java was a very sexy place to be...when it was new. I think the problem is it’s always sexy to be "The new kid on the block."

    What I would like to see is more Java in places that you might not have considered it. Imbedded devices, cell phone, credit cards, toys, games, etc. Yes, that exists now, but it seems there is some barrier from keeping it from being sexy.

    Also, I think writing JMF code could be a sexy thing. Maybe once the USA does something about the bandwidth-to-home problem, there will be a natural progression to sexy JMF applications.

    Simon Ritter wrote an article (
    Link ) that sounded like it was cool and could be sexy (the technology).

    As I am rambling... I just realized... Writing crummy business applications 50-hours-a-week, I have no time to write sexy cool code... Can Sun give me a techie vacation :-)

    --Bill

    Posted by: wrfink on September 24, 2004 at 06:44 AM

  • I Understand
    I got involved in Java programming around Java 1.2 I enjoyed getting back to OO programming (coming from VB). It was all new, fun, and exciting. Over the past year or so, programming in Java has lost its "shine." I think people are expressing this opinion more because it doesn't seem like Java is on the cutting edge any more. As Java programmers, we're not treading new ground or "revolutionizing the industry." I think those of us feeling ho hum are looking for the next big challenge.

    Posted by: haled on September 24, 2004 at 07:08 AM

  • Coolness
    i agree. i think the biggest fault in our community is sometimes losing sight of what it's all about. it's not about programming. it's about the end product. there are still tons of problems and inefficiencies with the way we build business software. java is as poised as any language (more so, imho) to address these issues. forget cool; i'm absolutely fascinated with the stuff that pawson and matthews have done with nakedobjects. don't look for coolness in the minutae of the latest J2SE release or the myriad of specs on the JCP. you're not going to find anything sexy there. :-)

    Posted by: eitan on September 24, 2004 at 08:42 AM

  • Perhaps only 10% of Java's coolness has been discovered yet
    I find it interesting how this 'Java has lost it coolness' theme has come up over the past few month. From my perspective it is not that Java has lost it coolness, it is that Java developers have only been letting their imaginations roam within a limited 'box'.

    If one knows how to look, there are vast, exciting worlds for Java to conquer out there but the Java community does not see them for a variety of reasons.

    An example of one very large, exciting and lucrative world that is ripe for Java to conquer is the embedded systems space. For years now the Java community has projected that billions of embedded devices will soon be entering the Internet and yet almost no discussion on how to actually enable this has occurred on the main Java sites like java.net, theserverside.com and javalobby.org.

    Here is my thinking of why this is so:

    An example of a world to conquer that the Java community does not see


    So, the exciting worlds for Java to conquer are definitely out there and each day I marvel at how the coolness of Java (the coolness that we have only discovered perhaps 10% of) enables me to do this.

    From my point of view, most of the coolness of Java is still ahead of us, still waiting to be discovered... Members of the Java community simply have to start breaking down the barriers that are limiting their imaginations in order to start seeing this.

    Ted Kosan

    Posted by: tkosan on September 24, 2004 at 09:04 AM

  • Perhaps only 10% of Java's coolness has been discovered yet
    I don't know if Java has lost it's coolness or not but lately it seems as though it's been a major effort to get anything done in Java. Perhaps it's because it has just gotten to big and to complicated. But you are right about the Java community missing the boat on small devices. Instead of fighting Java to code a PDA (Pocket PC) I've been using C# and the .NET Compact Framework. This has put the fire back in my belly for development. But I still use HTTP to communicate with Servlets on the backend. Servlets are still the cool.

    Posted by: kcarlon on September 24, 2004 at 09:36 AM

  • Isn't this the wrong question?
    It strikes me as really odd to talk about whether a language is "cool." Things written in a language may be cool, or uncool, but a language is just a means towards doing a job. After all, you could have written Firefox in PDP-10 assembly lalnguage, which would be cool in a retro sort of way, but not very bright.

    Unfortunately, people have really had a will to believe all the FUD about Java. Write once run anywhere doesn't work? Really? I've got a fairly large codebase for an amateur developer, and guess what: I write it once, and it does run anywhere: Linux, OS X, Solaris, Windows. (This doesn't mean "write once, don't test, run anywhere", but 99 percent of the time--and I mean it--when I test my code on another platform, it JUST WORKS.) I've got Gosling's blogreader, freemind, xmImind, and other Java apps running on all my platforms here. That's really cool, much more cool than "gee, I have a new language I can develop in."

    What's most cool about the Java environment largely hasn't been tried--I agree with the guy who said "only 10% of what's cool has been tried". Jini, for example: Jini and Jxta are a real peak at 21st century computing. The ability to write components that assemble themselves on the fly; we're partway there with things like Spring, but the trend can be taken a lot further. (And it was hinted back in the days of 1.0: remember Content Handlers?) And has it occurred to anyone just how easy it is to design a protocol in Java? Just send a serialized object down the wire.

    Ultimately, the language doesn't matter. Being productive matters. Java has largely been stuck on the back end, and that's a boring (though lucrative) place to be. It's a place where productivity counts. But it's up to us to invent the interesting, cool part.

    Posted by: mikel on September 24, 2004 at 10:11 AM

  • More on the same
    Sorry, I'm going to reply to myself... should have finished some thoughts that I didn't finish.

    So, just as people are willing to believe FUD about portability, they're even more willing to believe FUD about coolness--except that with coolness, what people are saying makes its own truth. Coolness is a matter of perception.

    But coolness really the wrong question. Take Perl. Is it cool? I've said many times that Perl is a great language for solving the sorts of problems we had in the 80s. But that doesn't make it cool. I've also said that Perl is a language I would have liked in high school, when I really enjoyed writing overly terse impenetrable code: the best possible program was written on one line, and had huge consequences. Is that cool? You bet, and it still is. Is that smart? I don't think so.

    What's really cool is doing important, good stuff, not writing in this programming language or that. Java is really great for writing large, networked systems, with really clear code that many people can understand and contribute to. So, the right question isn't "is Java cool", but "are you writing cool software?"

    Posted by: mikel on September 24, 2004 at 01:44 PM

  • Java has never been cool.
    Since when is computer programming "cool?"

    Is it trendy to be a computer nerd, now?

    Posted by: wbkw on September 24, 2004 at 03:54 PM

  • Why Java?
    I think this sort of questions arise with Java whereas I don't remember community discussing coolness of C or C++ mainly because Java has a flavor of a software product in addition to the language. Sun had to do something to make it "open", if you will and that gave rise to JSR's and then we know how it has progressed. The success of JSR's comes with a pinch of salt and geeks may feel that we are adding features to Java which are not making it necessarily cool.
    IMO it is a great language with features needed to write a program, which in turn could have attributes like cool. It is the product not the tool :)

    Posted by: kedar_tech on September 24, 2004 at 05:33 PM

  • Would you rather be "cool" than happy?
    One of the great American ideas is the pursuit of happiness. Not coolness.

    When I get work done that is important to me, I am happy. As long as Java helps me get there, I am a happy Java user.

    If a better tool comes along, I'll jump ship. But so far the "cool crowd" hasn't exactly delivered. I hear C is cool. P-u-l-e-e-z. Have you tried to write a web app, a database app, or a GUI in C? I hear Perl and PHP are cool. Ok, except for that cliff that you can't get past when you have to do something scalable.

    We all know what makes us unhappy in Java. Repetitive coding. Lousy dev tools. Funny how the "cool" languages don't address those issues at all. The ones who deliver here are the decidedly un-cool C# and VB.NET.

    What will chain us all to Java for a good long time is the API that we all love to grouse about. Which "cool" language gives us database access, XML, GUIs, graphics, web services, security, internationalization, multithreading, and all that?

    Cheers,

    Cay

    Posted by: cayhorstmann on September 24, 2004 at 10:19 PM

  • Cool does matter!
    I would have to agree with the writer who questions whether Java ever was or ever will be cool in a trendy pop-culture way. However I would have to disagree with most the readers who believe that it does not matter if Java is perceived as a cool language or not. In the technology domain coolness directly relates to how much positive publicity a product receives. I have seen a significant decrease in articles and books being written about Java. This lack of publicity may have little affect on those of us who are already sold on Java, but has huge effect on non-technical managers who actually decide on what type of developers to spend their money on.

    Posted by: cehlen on September 25, 2004 at 07:50 PM

  • Perhaps only 10% of Java's coolness has been discovered yet
    An example of new kinds of coolness in Japan,
    Keitai + J2ME + GPS = Location based services = Pretty damn cool.

    Posted by: sveltema on September 26, 2004 at 05:48 PM

  • Perhaps only 10% of Java's coolness has been discovered yet
    I'm in. I've spent the last 18 months of my life breaking out of the box. When I get there I'll let you know. One of the biggest deficiencies in Java at the moment is Desktop Applications. Improving desktop application development will definitely increase the Java coolness factor in my book.

    Oh, there is one project that in my mind blows away all others in the Java world for coolness factor, and that is Project Looking Glass (Well, at least that cool demo I saw on Sun's website). We need to take stuff like that to the next level.

    Posted by: aschiffman on September 26, 2004 at 11:32 PM

  • working in a not-so-call programming language
    Thanks for pointing this out. I decided to join the Y programming guys in order to find out the coolest (in fact I am looking for the sexiest) programming language.

    programming a cool language or programming to be cool

    Posted by: the_mindstorm on September 27, 2004 at 04:43 AM

  • Look and Feel
    The truth is programmers need to start focusing on look and feel - and build the applications that not only function well but look good. It's a shame that people are so fooled by image, but that's just how it works. I build all my applications with http://www.jgoodies.com/index.html
    It adds the their size, but so what. In the end people really don't care, as long as it's pretty. It's the end users need presentation , not the programmers. I often hear, "That's java!?"

    Posted by: ed_mooney on September 27, 2004 at 08:42 AM

  • Cool ??
    Writing code to numerically solve a large system of partial differential equations..... In anything but Fortran very uncool because it will just take longer to solve the problem and those problems often require speed.

    Developing an Enterprise solution that has to work across multiple server side platforms and interface to many different client side platforms .... you assess the problem domain and use the best tools for the job and often that choice comes down to the "cool" factor i.e. what tools is going make this task as fast and as painless as possible. Cool developers tools make tasks as painless as possible BUT still produce a quality product.

    Java has a lot tools available for this and so does Microsoft. BUT I can't run the same server side application developed using the "cool" Microsoft tools on a Mac or *nix box and I can do that with Java and that is cool.


    Java is still cool it just need to be noted that its has a competitor in .NET and lord knows VB programmers are hard to budge from their entrenched ways.

    So how does this sound for a step towards a new cool ....

    Java adopts the CLI ?

    Posted by: mjwok on September 27, 2004 at 09:35 AM

  • Java... .Net... RAD... IDE... It's not just about which is cool or which is better. It's no longer about which has what and which doesn't. Look at the direction: XML, SOAP/XMLP, web services... there's focus on standardization. Aspects, instruments, service oriented architecture... there's focus on the environment. It's no longer about the language... it's about what you can do. And how fast you can do it...

    Posted by: e_mendz on September 28, 2004 at 03:19 AM

  • Whats going to be really cool -I'd say down right COLD is when all theses 'cool' software jobs get outsourced to India.

    Posted by: aleximbastari on September 29, 2004 at 01:21 PM

  • Programming Languanges are never cool. It's really what you do with it, that is cool.

    Posted by: swapnonil on October 20, 2004 at 10:16 PM

  • "Cool"? I'm just a grunt programmer, and Java is just a programming language, a tool. Who cares if it's "cool" this week? I like Java, but I get really tired of the endless hyperactivity surrounding the language, with the constant announcement of new APIs, new tools, yet another database persistence layer or whatever. The Java world seems to spend all its time trying to invent a slightly different hammer, when we should be building cathedrals.

    Posted by: cmhw on October 29, 2004 at 08:53 AM

  • First of all, I don't personally believe that 'coolness' has anything to do with the language and has everything to do with the programmer. Some of the 'coolest' developments in computer science were done in languages which are now considered very 'uncool'.
    Secondly, programmers have gotten lazy (not to say that a lazy programmer is a Bad Thing - laziness contributes to some of the best programming out there) because programming has gotten so easy. We're constantly designing new, easier languages with more features which separate programmers from programming to such an extent that practically anyone can learn programming. This is causing programming to become less and less of an 'elite' occupation with every passing year. Hence, outsourcing. We're victims of our own ingenuity. When programming was done primarily in assembly and C, there was probably next to zero outsourcing going on. Now, with Java and Visual Studio and dynamic scripting languages, programming has gotten so easy that any halfway decent school can mass produce adequate programmers with ease. Which means that in order to get the best jobs, a programmer has to work harder to be better at what he or she does.
    Third, I don't think that Java is running out of steam. The .NET/Mono phenomenon is great, but IMHO, Java is still the best way to develop cross platform desktop applications. In order to get the kind of market penetration enjoyed by Java, .NET is going to have to seriously step up its game. When I can take a .NET application and install it on both Windows and Mac, then I'll take .NET seriously as a contender. Until then, I just feel that Java has a better grip on true cross-platform application development.
    Finally, there are still interesting things going on in Java. Java's performance and thread handling are better than ever. Also, I would suggest keeping an eye on Groovy. I've played with it and I have to say, it has some very serious potential. A scripting language with Java syntax which compiles to Java bytecode...I'd say that's pretty damn cool. Remember the days of the C and Perl one-two punch? What about Visual Basic and VBScript? Well, Java + Groovy could turn out to be a pretty potent combination.

    Posted by: cdicelico on March 30, 2006 at 07:15 AM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds