tags:

views:

961

answers:

10

These days it seems to be all about .NET. I want to start getting into "enterprisey" development and I thought Java would be a good route to go. But looking at job sites there seems to be 2-3x more .NET jobs as there are Java.

Do you think investing my time into .NET would be better than going after Java? Is Java losing ground to .NET? Especially with the rate of change with C#, with all of those nifty features it seems like Java is the old geezer in the room.

I'm not a Windows user, which is probably my biggest problem with .NET. But if the market is leaning towards .NET then I'll follow.

I already know a bit of Java and C#, I'm not really asking about opinions on the language. This question is more about what technology would be best for a career programmer.

+3  A: 

There's still plenty of Java web development around, IMO - but it's always nice to have variety. Personally, if I didn't have either yet, I'd learn .NET as in my view you get a nicer platform and a nicer language - minus good portability :( (Mono is great, but it doesn't provide the same level of portability as Java.)

If you're a good programmer in either platform, you shouldn't find it hard to get work.

Jon Skeet
+1  A: 

"I'm not a Windows user, which is probably my biggest problem with .NET. But if the market is leaning towards .NET then I'll follow."

its saying things like that, which causes the market to lean that way :P

i think they're both in demand, depending on the project requirements, clients existing infrustructure and employees knowledge will also influence which platform gets chosen for development. for a career programmer, learn both. adds to your versatility. I started in my current role as a php developer, havent touched it yet, have been expected to learn .net and have barely touched that, now deal with google search appliances. changes all the time, i would say, dont get stuck in one, get stuck in the all...

:)

Neil
A: 

Not getting stuck with one technology is ONE advice. It makes sense. But it can also be positive to become an expert on a single technology. There is already way too much in the .NET framework for a single person to master it all. And lots of variety.

What's especially nice in .NET I feel is Microsoft's apparent dedication to making your skills in one area of the framework be portable to all other areas. Like with WPF and Silverlight - almost the same thing.

Not really an answer to your questions, just wanted to balance the comments.. But I do lean towards .NET.

Torbjørn
+1  A: 

Just be Jack of All, Master of ONE :)

Answer to your question: Yes, Java is still relevant for web programming.

Salman Kasbati
+2  A: 

C#'s habit of picking up bits from zillions of other languages, including functional and dynamic languages, means that C# programmers can more easily keep abreast of some of the variety out there, rather than just being stuck in the world of imperative-OO.

I think this is a great benefit for the programmers' careers, even if its debatable whether they offer an improvement to the language itself. I would go with C#.

That being said, there's still plenty of Java work out there and it may be interesting to you if you are attracted to Linux and Mac and the world of portability.

cbp
+10  A: 

In the Enterprise world Java is still alive and kicking, you just can't see it because of the .Net earthquake. Give it a couple of years. The job market will stabilize again, and Java won't go anywhere.

C# is good too, cool and nice and ever changing but the Java toolset for web development is huge while C# is playing catch-up.

Bogdan
+11  A: 

Possibly it depends on where you're geographically located. I've scanned northern Europe, and Sweden in particular, and from my point of view there seems to be many more job offers for Java developers than for .NET developers.

Java, as a platform, also has an interesting future with new languages like Groovy, JRuby and Scala.

Ciryon
A: 

Yes Java is still relevant. You cannot go wrong learning either Java or .NET platform as both have a very wide user base and there will be jobs for both in the foreseeable future.

I would suggest familiarity with both but spend the effort to become expert in one.

Vincent Ramdhanie
A: 

Leverage your self as a java to .NET migration expert, and develop the skills to back it up. If the wind ever starts to blow back to java, you'll need to tweak your resume, but your skill-set will remain relevant.

A: 

Java has it's place, as almost every other programming language does. More than 80% of enterprise applications are running either Java or .NET.

It's also the best solution if you want to have cross-platform application.

denim