Skip to main content

Which Java specialization would you recommend to a new Java programmer?

Java EE
38% (229 votes)
Other enterprise Java frameworks
13% (79 votes)
JavaFX Script
5% (30 votes)
Other desktop Java frameworks
7% (44 votes)
Java ME
3% (21 votes)
JavaFX Mobile
3% (18 votes)
JVM scripting languages
5% (31 votes)
Something else (please comment)
2% (10 votes)
Don't specialize
24% (147 votes)
Total votes: 609



Get a solid understanding of Java, then the Servlet API, then Spring. Once you have those three, you have a pretty solid foundation for the majority of Java development I've seen and dealt with. A bit of Hibernate / JPA in there wouldn't hurt either.

java iphone development.

oh wait...

Professional or Personal ?

On a professional level I'd advised EE everytime - it's the most common requirement listed (at least here in the UK) next to Java for applicants.

On a personal level, I'd say don't specialise, enjoy instead. JavaFX looks cool, scripting is cool. Find something you like and do that.

don't specialise (too soon)

The main problem with Java programmers (and many people in many industries to be honest) is that they are overly specialised. They're essentially one-trick horses that can't do anything but that one thing.

Professionally this will eventually lead to a dead end when (not if, when) your chosen technology is no longer "popular". You end up doing eternal maintenance on ever older code bases until those are finally replaced with other products created using tools you never saw, making you a dinosaur and ending your career.

Generalise, don't specialise. Of if you specialise, do so without loosing sight of the larger environment.

don't specialise (too soon)

Yes, but also do be a jack of all trades, master of none. Learn what you know really well, and diversify at the same time.

don't specialise (too soon)

As you can probably tell, I meant to say DON'T be a jack of all trades, master of none.

don't specialise (too soon)

in fact, you shouldn't turn yourself into a "Java programmer". Be a programmer who just happens to be most at home using Java but can use (or at least learn to use) almost anything out there when and as needed, and isn't so shortsighted as to choose Java automatically for everything without first analysing if some other solution might be superior.