Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Future of Java

 
sriram sankar
Ranch Hand
Posts: 43
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
How long do you guys think java will survive? 5 years, 10 years ???
 
Vikas Kapoor
Ranch Hand
Posts: 1374
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
till earth survive
 
Paul Clapham
Sheriff
Pie
Posts: 20966
31
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
COBOL is still around after 50 years. Why shouldn't Java last that long?
 
sriram sankar
Ranch Hand
Posts: 43
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Just got a question by looking at similar object oriented languages like c#(clone of java), ruby,scala etc...
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
As others have said, Cobol and Fortran are still alive in some senses.

I believe, this is personal opinion, and I could be wrong, that Java has seen its peak of popularity.

In practice, hardly anyone writes Java anymore. What they write are programs in Java that use a huge ecosystem of libraries. Learning the library APIs is far more difficult than learning Java itself. Java can be completely described in a very thin book. There are many shelf feet (meters, etc.) of books on using Swing, AWT, Enterprise Beans, Hibernate, etc.

Java is showing its age. The way they graphed on generics is ugly, the concept of generics is wonderful, but the syntax is ugly and confusing. A newer language can include them from the start and be a lot nice.

A more fundamental problem is that Java's support for multi-processor multi-threading is primative. Sure, it works, and Henry wrote a wonderful book on it. But doing proper threading in Java puts the work on the developer. Its tedious and error prone.

There are quad core processors selling for under $100 retail. In the near future, serious machines will have 32 or 64 processors. Using them effectively means using all of the processors, which means making threading dirt simple for average programmers.

 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 34185
340
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Pat Farrell wrote:In practice, hardly anyone writes Java anymore. What they write are programs in Java that use a huge ecosystem of libraries.

How is using libraries worse than writing them yourself because what you need isn't available?

I think if you are writing a program in Java using Java idioms you are writing Java. Higher level Java sure. But that is a good thing in my mind.
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Jeanne Boyarsky wrote:How is using libraries worse than writing them yourself because what you need isn't available?

That is not what I said, or what I meant.

What people do today is write a little bit of Java code to glue together big libraries, frameworks, etc.

The Java part of it is really not all that important. You could replace the Java with some other language and not see much if any difference.

I have not seen any library or framework that can address the hard task of making a program scalable in a multi-processor world.
 
sriram sankar
Ranch Hand
Posts: 43
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In our company there are couple of projects we use ruby, looking at the simplicity of the language makes those ruby developers look more efficient .
Of course this is good for small projects, i haven't seen a big robust application using ruby.
 
Deepak Bala
Bartender
Posts: 6663
5
Firefox Browser Linux MyEclipse IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Java can be completely described in a very thin book


I really doubt it can be described in a small book. However I would agree that in relative comparison to books on java frameworks, the java book would look thin, if that is what you meant.

I have not seen any library or framework that can address the hard task of making a program scalable in a multi-processor world.


A library / framework within java itself or outside of it ?
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Deepak Bala wrote:I really doubt it can be described in a small book. However I would agree that in relative comparison to books on java frameworks, the java book would look thin, if that is what you meant.


Get a copy of the original O"Reilly Java in a nutshell, its tiny.
There were not a lot of libraries back then. The language itself has not changed much (other than generics) but the libraries have expanded to be too big to document.
Deepak Bala wrote:A library / framework within java itself or outside of it ?


The problem is that no library can make algorithms be parallel. So to get real scaling for multiple core machines, you need a new approach, which is something that Scala does.

As long as you are writing "for (x : y) ..." then it is inherently sequential, and you waste all the multiple cores.
 
Muse Ran
Ranch Hand
Posts: 317
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
java will die tomorrow

PS-Tomorrow...
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Muse Ran wrote:java will die tomorrow

I believe it will die out, just as Pascal, Bliss and ADA have. When will it die? I have no clue, but I expect that it has peaked.

We all die, as death and taxes are inevitable.
 
Ankit Garg
Sheriff
Posts: 9519
22
Android Google Web Toolkit Hibernate IntelliJ IDE Java Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
java ankit.CrystalBall "when will java die"

java.lang.IllegalArgumentException in CrystalBall.class at line 225: not in your lifetime, don't worry
Caused by: java.future.NotKnownException
    at com.ankit.CrystalBall.findAnswer (Unknown Value)
    at uncertain.unpredictable.Life (BigBang Source)
    at live.life.to.Fullest (True)
    at earn.money.buy.Hummer (Goal)
    at tv.show.Friends (Rock!!)
The program exited abruptly...

(Truly meaningless isn't it )
 
Hong Anderson
Ranch Hand
Posts: 1936
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I agree that in very near future, it will come to an era of many cores processors, all of the languages that cannot utilize many cores easily will be less popular.

Or will there be NewJava language that correct all wrongs and makes multi-core programming easier?
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ankit Garg wrote:java ankit.CrystalBall "when will java die"

java.lang.IllegalArgumentException in CrystalBall.class at line 225: not in your lifetime, don't worry
Caused by: java.future.NotKnownException
    at com.ankit.CrystalBall.findAnswer (Unknown Value)
    at uncertain.unpredictable.Life (BigBang Source)
    at live.life.to.Fullest (True)
    at earn.money.buy.Hummer (Goal)
    at tv.show.Friends (Rock!!)
The program exited abruptly...

(Truly meaningless isn't it )


Did you inherit this from MagicEightBall?
 
Vamsi Mohan
Ranch Hand
Posts: 80
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hope, you are scared by seeing new technologies like Ruby, Rails, .... But as per my expectation, JAVA having good and stable future. The tools/frameworks like hibernate, iBatis, Spring ... soon are designed and developed on JAVA only. But you need to keep on learning the new tools and frameworks, if you are working with JAVA. Even, SUN is implementing new technologies day-by-day.

You can understand, If you observe the blue prints of Sun.
 
Pat Farrell
Rancher
Posts: 4678
7
Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Kengkaj Sathianpantarit wrote:Or will there be NewJava language that correct all wrongs and makes multi-core programming easier?


A wise man once said that its hard to make predictions, especially about the future.

There will be a NewJava, one could claim that Java is NewSmalltalk. Or perhaps new C++.

But one of the problems of Java is that when it was written, they had to compete for mindshare with C, so rather than making everything an object, as Smalltalk did, they kludged in int/byte/float. Which was a winning strategy in the late 1990s.

So if NewJava has to keep too much of old Java for compatibility and ease of retraining engineers, then it may not be able to make the jump.

For decades, I've been using OO languages and RDBMS packages. Its a bad fit, and we should have given up on it long ago. But everyone still uses SQL, and puts up with assorted kludges. The OO dbms packages have never gotten any traction.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic