views:

797

answers:

6

If you could choose between becoming an expert in Microsoft or Java, which one would you choose and on what grounds? Does one of the two have a better future? Will you earn more in one of the two? Is one of the two better and faster in developing solutions? Do they both have the same possibilities in Cloud Computing? And do you have experience in both domains?

Thx

Look, what's wrong with some of you people? My question was not what technology is the best. Neither was my question if knowing only for example C#.NET or Java makes you a good developer. Off course not, a good developer knows about design patterns, OOP, technologies, architecture, ... I know a lot of things from both worlds, but I notice that you cannot become an export in .NET driven solutions and Java driven solutions (maybe you can, I cannot). At a certain point in time you need to focus on one of them and even focus on a specific part in them. So that was more the question, in what direction are the most challenging projects, is there somebody that has a window to the future, are there people out there that can objectively compare both, are there statistics, ...? Up julder mulle.

+3  A: 

Ideally, to be a fully rounded developer you will learn both.

Otherwise - to answer your question - it depends where you want to work. Some parts of the world the majority of the development is in Java, other parts its Microsoft.

And of course remember Java vs Microsoft is a false dichotomy, there are many other technology stacks out there.

However, a good developer should be able to easily pick up almost any language.

DanSingerman
And a bunch of other things too :)
Jon Skeet
A: 

If your good at one you should be able to do either.

Andrew Clark
+3  A: 

I'm pretty sure that computing consists in more than 'Microsoft' and 'Java'.

Edouard A.
But there is a distinctive split in the mainstream there.
Tom Hawtin - tackline
A: 

I like both and it has help me understand concepts much better. Also knowing both helps you work better with others as well lets you have more resouces. i.e. examples people put on the net might not come the flavor you want to write it but if you can understand it then you can easily convert it. As Andrew mention you should be able to do both c# and java kinda go hand and hand from my experience.

OneSmartGuy
+2  A: 

I assume you are comparing .Net languages, i.e. C# to Java. At minimum you should explore both and be able to understand the differences between the two. You should easily be able to switch amongst the two. As for becoming an expert and a career, from a business perspective, follow the money - pick the one where the money and jobs will be. Or if you prefer one over the other choose the one you like developing with.

As an aside, I would recommend to be open minded to other programming languages/tools/etc and pick others to learn. This will not only make you a better developer but also keep you skills sharpen when the next fad language starts being used.

aurealus
You choose C# if you [want to] work for a Microsoft shop; Java for a non-Microsoft shop. Quite straightforward.
Tom Hawtin - tackline
@Tom - Does anyone really want to work at a Microsoft shop??? I'm a Java, Linux, Python, and open source guy myself.
aurealus
+3  A: 

Learning .NET and Java does not "round out" a developer's skills at all. A fundamentally different platform (for example, an unmanaged environment like good ol' C), or a completely different language paradigm (such as a functional language), provide a lot more breadth and give a healthy change of perspective even when working on your primary platform.

That said, some languages are going to offer more opportunities in your area, or preferred type of coding. Do you want to work in IT for a big company, or developing a software product at a startup? Do you like UI, or systems programming? Do you have a family or other commitments that make you adverse to risk, or can you afford to live on the edge a little? This question is quite subjective.

erickson