What Dublin Java Developers think you should be learning ...

by Paul Browne

Yesterday, 16 Java developers from Dublin met online to discuss What technologies should I be learning in the next 12 months? The results of the Virtual Java Meetup are here.If you couldn't be bothered reading the entire thing , here's the summary:



  • Web services are going to be big, but only if they can be simple.

  • EJB 3 and Netbeans are both worth taking a look at again, they are now much better than the previous versions that gave them a bad name.

  • Middleware (e.g. workflow and Rules Engines) are interesting in a corporate environment, but there is a high barrier to entry.

  • Struts , and to a lesser extent JSF , will continue to be dominant Java Web frameworks, despite not being the best technical choice.

  • A lot of companies are still using Java 1.4, but may make the leap to Java 6 (Mustang).

  • Service Orientated Architecuture (SOA) is a nice idea, but not so many projects have been implemented using it.

  • IDE's (Netbeans / Eclipse / JDeveloper) can deliver a lot of value, but only if backed up by lower level tools (e.g. Ant and Maven).

  • More for the next 24 months , keep an eye on Apache Service Mix.


What do you think? Did we miss anything?


13 Comments

Nicolás Dijkstra
2006-07-26 05:38:45
I think you missed lightweight containers such as Spring that have many of the features included in EJB 3 but in a les heavyweight environment.
Uri Boness
2006-07-26 05:50:26
AspectJ, Scripting Languages, and GWT
jilles
2006-07-26 10:04:28
Sounds like it might have been written last year. You should have done your homework by now (with respect to self study) :-).


In my opinion ejb 3.0 is immature technology. Barely standardized & most application servers are not quite ready to roll out compliant versions yet. It probably doesn't hurt to read up on some of the stuff that's there.


Your first comment regarding web services is spot on. Interpret it as: don't waste your time with the current generation of technology since work is on its way to fix the long list of problems. Maybe next year?


Struts and jsf. No experience with that, seems old news by now. Don't waste your time with yesterdays hype.


Java 1.4 companies are unlikely to upgrade to 1.6 any time soon. They just might move to 1.5 over the next year (don't hold your breath though).


SOAs, see above.


IDEs: eclipse is dominating the landscape here. Netbeans has been making a nice come back but remains an outsider. And with all major application server vendors betting on eclipse this won't change any time soon. Maven is nothing more than a toy. It's relevance can't be illustrated better than by the total lack of support in it in eclipse (or any mainstream IDE for that matter) and the many unedited template project pages on apache.org. Personally, I've discarded it as an overengineered piece of shit that does not solve any problem I have. Ant is nice but seems to be a dead project (no major release in two or three years). That is too bad because it is a really solid piece of technology that is now widely used across the industry.


Apache service mix. Apache seems to have become a dumping ground for dead projects. This is particularly true for many of the web service projects. Check their subversion repository if you don't believe me. Many of these projects just sit there with 0 commits for months or even longer.
Axis 1 & 2 (and dependent projects) seem to be the exceptions. Axis2 is very immature though (wasted my time with that for a week before deciding to roll back to 1.3).

ryan
2006-07-26 15:33:20
Here is my list of up and comings to work on:


- OCaml
- Erlang
- Python


Ok its shorter than yours. But Java is the past and present not the future.

Paul Browne
2006-07-27 02:15:52
Thanks to everybody for their comments.


In fairness, the discussion was more 'what technologies should I learn to get / keep my job', although some of 'cool things to look at' also came up.

Springer Veritas
2006-07-27 08:07:55
Spring seems to be the choice of half the J2EE corporate ads in Monster.com


I bet Spring will get bigger in the following 6 months, since it is open source, companies will "embrace and extend" it to get into the bandwagon.


Besides Spring is getting more and more functionality, so it is hard to think it will loose steam. The barriers of entry (subjects that must be studied, price = $0) are rather low when compared to other J2EE alternatives: WAS, WebLogic, OC4J, etc.

Nicolas Aimeric
2006-07-27 08:16:41
Ant is nice but seems to be a dead project (no major release in two or three years).


"June 2, 2005 - Ant 1.6.5 Available" taken from: http://ant.apache.org/


That is too bad because it is a really solid piece of technology that is now widely used across the industry.


Does *stability* ring any bells?

Randy
2006-07-27 18:27:00
Groovy!
Randy
2006-07-27 18:29:06
Oh, and I agree that GWT is pretty interesting.


Far more so than JSF, imo.

Stephen Lum
2006-07-28 02:54:07
>In fairness, the discussion was more 'what technologies should I >learn to get / keep my job', although some of 'cool things to look >at' also came up.


Sorry Paul -- IMHO the other posts were right...the OReilly title said 'should I be learning in the next 12 months.' I think that if a developer had learn some of what you mentioned above to keep their job, then your discussion group should be about what I need to do to catch up! Unless it's OReilly's mistake w/ the title of course...


As for what I think:
If you are doing Web / J2EE apps you need to learn in the next 12 months if you don't already:
- Spring
- Javacript + Ajax.


Actually if you are in Webapps w/ any technology, you should be learning Javascript + Ajax.


Webservices and a SOA are a joke; why do you need such a heavyweight solution to send an XML file across the wire? Reminds me of EJB's when they first came out. Webservices has its place; but what the community isn't told is that it should be one of your last options as it is probably SLOWEST, least performant solution.


If you are in Java Desktop you should be learning the RCPs. I wrote about integrating Eclipse RCP with Spring Remoting; but Netbeans RCP is better. I'm very interested to see how the Swing Framework works out from the JCP http://jcp.org/en/jsr/detail?id=296; if it's any good, hopefully it's initial version would do what Struts did for the J2EE world. By the way...it's about time Sun! I'm wary of a Petstore architecture on the client though.

Charles Oliver Nutter
2006-07-28 23:48:05
JRuby :) Come on, you know you love how Ruby looks and feels. Wouldn't it be a beautiful thing to code Ruby on the JVM *AND* gain all the remarkable Ruby apps and libraries at the same time?
Apollo
2006-07-31 11:31:50

Spring


The reason is the way its growing,functionality offered with ease of use makes it number 1 on "to learn list" if you do not know it already.
Ulf
2006-08-15 01:50:12
I would say that SOA is expanding very much currently several of our clients requests it and we are starting projects here and there where SOA is the key word.
There are also several interesting things in the newer techonology where data is exposed to all as services. So no matter what you need you just requests a service. Look eventual at ALDSP.
Further there are lots of our clients that whants portal techonlogy.