+ 123
Is Java losing ground to other languages?
I notice that Stanford is replacing Java with JavaScript in its Intro CS courses, also some coding competitions now offer Python as an option. Is Java losing ground? Is the complaint that Java is verbose valid?
227 Réponses
+ 205
JS is becoming increasingly popular and mighty, a good option for a full-stack dev.
Java, on the other hand, still got its "write once, run everywhere" as its main asset (I know, it is not that rosy, but in general it still works this way ;) Plus, there are tons of applications already built and developed in it. I would assume it is to stick around for at least a decade to come.
+ 119
@joe In my opinion JavaScript and Python are more beginner friendly but there are hard aspects of computer that we can't neglect. Programming is not just making Hello World.
Yes writing Hello World in Java is more daunting then Python and JavaScript, and may scare beginner. But one has to remember programming is not always easy.
Maybe Stanford did this to reduce number of students changing faculty but every programmer has to dive into programming languages like Java, C++ once.
+ 85
"Java is to Javascript as Ham is to Hamster." - Jeremy Keith.
The thing with languages is they all have something they're good at. Consider each language a kind of vehicle.
Ponder this; every day you walk a mile to work. Your shoes are low maintenance, cheap, and efficient enough. You have the option to purchase many other modes of transportation; bicycle, car, bus, rocket, jet pack. Each mode has their own advantages, as well as their disadvantages. They might get you to work faster, but introduce other areas of concern or costs. You have to find what works for your system, setup, situation.
That being said, find a language you enjoy learning. It's fairly easy to pick up another. Focus on the concepts and you'll be fine.
+ 52
Meanwhile they plan to add Java to intro CS courses over here, so I'd say the net change is balanced. We still see Java as the gold mine. :>
I've also heard that JS is a dying language, but that's not true either.
+ 51
"4 billion devices run on Java" - Oracle.
It's definitely not going away any time soon lol.
+ 36
Java is verbose and lacks features of many newer languages. C# and JavaScript are eating it's lunch at the moment. Oracle has not been good for the language. It's development has slowed. The main reason it's still popular is Android. If Android ever moves away from Java as it's main native language Java will die out. And recently you can code iOS apps AND Android apps with either C#/Xamarin or JavaScript/Ionic. As a beginner in 2017 I would skip Java, unless I'm planning to be a native Android app developer. For that you still want Java and your skills will be relevant for the next 10-15 years.
+ 34
some recent insights about the future of Java and JavaScript
https://www.e-merge.co.za/the-future-of-java-in-the-enterprise/
http://www.reperiohumancapital.com/news/future-java
https://www.davisnolan.com/java-vs-php-which-guarantees-a-bright-future/#post/0
https://code.tutsplus.com/tutorials/the-future-of-javascript-2016-and-beyond--cms-26305
https://dzone.com/articles/why-is-javascript-the-programming-language-of-the
+ 30
Thanks so much to sololearn developers
you are so great guys
+ 29
Java is on top right now, but it's only recently recovering from a pretty steep fall. It was dropping in popularity as a web backend language, and it's all but dead as a browser plug-in. But along comes Android and there's a sudden resurgence.
C and C++ are both strong, with C++ losing ground, but then we get to "the rest".
PHP and Perl both seem to be dying a well deserved death. Both are in a steady decline, and I hope to see them drop out of the top ten in the next year, maybe two. Neither is a language I would recommend anyone start with now.
Python is roughly flat. It's a good language. Or rather two of them: 2.x and 3.x. The release of 3.0 fractured the community, and a big part of what makes Python strong - is library support. So what could have been a great success story is not really gaining ground. I use Python for some machine learning coding (along with Java), but have stopped using it as my go to language for small tool development.
JavaScript has seen growth since 2012. In addition to its use on the web, JavaScript as a language with new versions being released yearly. The cool thing is that the new features aren't breaking compatibility. Python unfortunately had to because of poor decisions on string handling in 2.x. JavaScript is a language to watch.
C# is strong and pretty stable and has a strong community in general for Windows applications and cross platform mobile development.
I can't explain Visual Basic .Net resurgence. Maybe people maintaining old .Net apps are retiring?
Ruby has lost momentum because of a decline in the popularity of Rails, but also seems to be gaining recently. I favor Node over the long haul, but we'll see. Rails isn't dead, but Node scales more readily, and the pendulum is swinging back in the direction of performance mattering again.
Lua is the de facto standard scripting language for video games. Matlab and R are the standard languages for statistical analysis. Swift and Objective C are needed to develop iOS.
So, it depends on industry you're talking a
+ 25
@Andrew I would like to upvote your comment, but I think it's wrong to say that Android OS is written in Java. JVM in Android doesn't mean it's itself written in java. First, JVMs must be "implemented" for any new platform and basic foundation is probably written in C/C++/ASM to make OS/results as fast as it could be (oh, and Android is based on *nix, right?)
+ 23
Java is a compiled language, because you have to compile it in bytecode and threfore produces code that runs at speeds comparable to C/C++. (C is always the benchmark) Compiling takes time and is a nuisance when you want to code something fast and see the result. Java 9 will have a tool to allow scripts to run in oder to address this, but i doubt Java devs need it because they use sophisticated IDEs. In my opinion, Java will not go anywhere, just like Oracle SQl is here to stay despite being hated by developers and the reason is Economics! (JavaScript is hated even more than Java btw). If u're a start up u can use python and reduce costa, but The finance industry ia using Java because they need speed, scalability, multithreading and security. JavaScript on the other hand is still a browser's language and if none of the things mentioned above is important u can us js for backend. but if fyou want to develop a web-page go with JS, it would be an overkilled to make a personal web page with Java EE technologies
+ 23
Java and JavaScript are two different programming languages meant for different purposes and functionality. Java is an application programming language designed to write stand-alone Java programs and web applications running on the Internet. JavaScript is a client-side scripting language specifically designed to work with various web technologies, but on the client’s end.
+ 21
Python is exciting and has lots of new libraries etc. I don't see a major corporate titan like Oracle lining up behind Python....yet...
+ 20
ohh!! i have just started learning java. Anybody else ?? my plan is android app development.
+ 19
http://www.stanforddaily.com/2017/02/28/cs-department-updates-introductory-courses/
Extracted, hopefully faithfully:
"Adapting to industry shifts and student feedback...a pilot version of [CS intro course] will be taught in Javascript instead of Java. Eric Roberts...has been working on the transition [for 5 years saying: ...in 2002 Java had stabilized... and now Java's showing its age; Javascript has displaced it as the language of the web]"
Assuming a core business driver:
Universities are 'fresh worker' pools and (like it or not) follow major employer trends and tend to lag in core curricula (partly due to their own employment pool). Cutting-edge tends towards research and startups, and the valley still has a lot of giant, "core" corporations just doing their thing.
The class is capped at 100 promising students (30 each quarter) and is also offered next year. Though taught by TA's (teacher's assistants) the courses in this area have a reputation (it means: prepare to work) and key details are: 'pilot', 'promising students' and 'limited enrollment'.
Running tests is just good business, as is responsibly ensuring your 'test graduates' succeed and your newsworthy experiment doesn't "flash crash". This hints to me that Stanford has seen a potentially stable employment trend (not the same thing as it being "obvious to you") and wants to give it the best possible chance of proving itself "ready for core".
+ 18
@Burey those are helpful references
+ 18
@Anshuman Sahoo agree Oracle is going to continue putting their full weight behind the language and its users. Tashi has mentioned the imminent release of Java 9 which should mean exciting new capabilities.
+ 17
I searched for this in many places, and found out that it is still a corner stone in coding jobs
+ 17
@Isse agree
+ 16
Would I be wrong in stating that all of C#, JavaScript, Java, C++ are derived from C?
Anyways, Java is not going anywhere anytime soon. From the standpoint of web development yes, it is losing ground. But don't forget your Android phone OS is written in Java (afaik), 90% of apps installed on it - Java, all the smart appliances in your home/car/office -Java.