B
B
Bezdelnik2015-07-01 22:54:30
Java
Bezdelnik, 2015-07-01 22:54:30

Java or .NET - a choice with a perspective (not a holivar)?

Good day to all. I will try to ask as little as possible a holivar question (although the moderators can still take it for a holivar).
I started learning programming while learning with Ruby 1.9 as an example (because I found more or less suitable video tutorials explaining the basics).
I want to switch to literature + choose my further direction: .NET or Java?
That is, in the end (for 5-7 years) to become a good programmer and make some kind of mob. applications or server-side development (that is, in theory and practice to be able to do both), but on these platforms (.NET or Java).
It is important that in a year or two I could find a job at least as a semi-junior, I would not get much less than juniors from another platform (let's say that it would not be such that Java / .NET programmers get 200+$ more than . NET/Java programmers) and what would be in demand.
All analytical posts on Habré and discussions on the Internet date back to 2012-early 2014. The question arose due to the reasons for choosing a further path (I mastered the very basics like data types, loops and arrays (I didn’t master either OOP, or stacks / dictionaries, etc.)) and due to Microsoft’s development towards cross-platform (after all, in the year of my study any technology (up to the junior level) .NET can already become cross-platform and slowly shift Java towards supporting old projects and Android (and that is, solutions like Xamarin).
Thanks everyone for the replies.
And yes, if it's important, I use Mac OS X, but I can easily use a virtual machine or my brother's computer (with windows) for studying.

Answer the question

In order to leave comments, you need to log in

6 answer(s)
M
M1Anderson, 2015-07-01
@M1Anderson

It is important that in a year or two I could find a job at least as a semi-junior, I would not receive much less than juniors from another platform

At the junior level, in any technology, prices are approximately the same. But vacancies for java juniors, personally, I meet more often.
Per year? :) No, he can not. And in 10 years, she will not remove her, unless Scala is capable of this. And on android it will remain, most likely.
I will not be original and advise you to try both, and then choose what sunk into your soul. There are no other options. You can become the best by working for pleasure, and not counting on some prospects, especially since these two monsters have approximately equal.

D
DVamp1r3, 2015-07-01
@DVamp1r3

There are more vacancies for .NET in the CIS. And for Java, if they exist, then as a rule it is EE with a certain number of related technologies (Hybernate, etc.) and 3+ work experience. Today, .NET jobs are easier to find. And the development tools are the most convenient. In terms of salary, the same positions have approximately the same amounts. The languages ​​are similar, but C# is developing faster, Java is more conservative in this regard (which is good from a certain point of view).
Abroad, the situation for vacancies may be different, but among orders, .NET again flashes more often. One gets the impression that Java is either Android (but at high salaries they require a lot of other things), or deep, deep commerce.

O
Oleg Gamega, 2015-07-01
@gadfi

Both .NET and Java are pretty enterprise things, they don’t like haste in this business ─ sooner than in 5/10 years, no one will put .NET on Linux (I’m not talking about enthusiasts) to collect bugs of a new technology on their own skin when it can cost millions no one wants dead raccoons.
In terms of employment, they are approximately equal, and the technologies themselves are similar
Learn what you like more, if you want mobile then java

B
beduin01, 2015-07-02
@beduin01

.NET is more promising. The release of vNext, if it does not kill Java in the server market, will seriously affect its popularity.

S
strannik_k, 2015-07-07
@strannik_k

Learn data structures, algorithms, OOP. Useful, at least for interviews. Well, the selected technology stack.
Why Java or .NET?
If you are going to go to the enterprise, then look at the requirements for a junior there now. On average, they require a couple of years of experience for a junior position and knowledge of a dozen technologies in this stack. And in each office the stack is different. Of course, you can get a job in some weak company at first, but the salaries will be lower and the growth rate will be slower.
If you are not a very gifted person, then it is better to look for work in younger areas: IOS, Android, Node.js. Salaries there are not worse, but the requirements are lower. I also advise you to choose a highly specialized direction, for example, not all together (databases + server part, IOS, Android), but only the development of the server part, either IOS or Android. Going where one developer should be able to write for both IOS and Android is not worth it, because. and there are more requirements for the same salary, and then it will be more difficult to change jobs (you will know 2 directions at an average level, instead of one, but at a good one).
I recommend to read:
1. megamozg.ru/post/10348 (about error 3)
2. megamozg.ru/company/dataart/blog/17084 , megamozg.ru/company/dataart/blog/15904, habrahabr.ru/company/dataart/blog/234003 - to compare the complexity of finding employment in the same company in different directions.

B
bromzh, 2015-07-08
@bromzh

Java is more promising:

  • The language is developing, albeit not so fast, but with the preservation of backward compatibility
  • The language is cross-platform and open source. Yes, .net was also opened, but so far only partially
  • There are already a huge number of different solutions: many servers, many frameworks. All of them are time-tested and plow faster than Sharps. There are few solutions for .net, servers are deployed only under Windows so far, there are only a few frameworks
  • From these points it follows that the enterprise will continue to choose java, not .net
  • Under the JVM there are cool things like Scala, Kotlin, Groovy
  • Android - has a good perspective. Now you can slap it on any cheap Chinese shirpotrap, which can not be said about the Windows Phone.
  • For the desktop, there is a cool JavaFX, which also runs everywhere. Solutions for .net are just now beginning to become truly cross-platform.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question