Live data from Hacker News

If Java Is Dying, It Sure Looks Awfully Healthy

drdobbs.com

301–310 of 327 posts

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#301
post #242
post #90

Earlier quoted context omitted.

Popular in terms of use, yes, but liked? I don't know, I doubt it. Android and iOS essentially force you to use Java or Objective-C respectively. I don't hate Java, but I don't like it either. It lacks quality of life features that other, similar languages have had for years. I can't stand writing code in it if I don't have to (and don't get me started on Objective-C...) From what I hear from others and read on a wee…

Java is a commonly used language, but not very popular according to a Hacker News poll from 2012: https://i.imgur.com/toGKy21.jpg In fact, it's likability percentage is worse than PHP! I think the issue may stem from the fact that given a choice, few people use Java in their own projects but have no choice at work.

when it comes to large, complex, distributed, long-living projects, java is the best choice. sure, I can build a quick prototype using python, php, node, ruby, its hard to rely on them when the project becomes large, distributed, complex etc.

IMHO its the only language that allows to create great server side programes, awesome desktop GUI applications, mobile applications or embedded applications. All in one language.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#302
post #258
post #115

Earlier quoted context omitted.

I have been using IDEs since the mid-90's, that is my feeling every time I see anyone coding as if UNIX System V was the latest version available.

I don't use IDEs, but it seems that there are only 2 or 3 that really work: Visual Studio for C/C++, and Eclipse/Intellij for Java. Do you use one of those?

I have used all of these during my professional life so far,

Almost all Basic, C, C++ and Pascal IDEs from Borland for MS-DOS and Windows

The initial releases of Delphi IDE

Visual Studio, only after 32 bit support, not earlier

The first releases of C++ Builder

KDevelop

Anjunta

Eclipse

Netbeans

Smalltalk environments

Lisp environments

Native Oberon environment

And a few more not worth remembering.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#303
Java isn't new anymore. It wasn't really groundbreaking even when it was new in 1995:

  * Object-orientation: Simula-67 mid 1960's, CLU 1974, Smalltalk 1980
  * Garbage collected memory: In Lisp since 1959 !!
  * JVM: UCSD Pascal had a similar idea in 1974.
  * Syntax: Java's was a basic evolution of the Algol-68 -> C -> C++ chain
  * Performance: in 1995 Java was too slow and too big
  * Write once, Run everywhere: other than assembly language, all languages strove for this.
Nothing in the language was that special. Most of it's features weren't new, but it went on to be one of the most important programming languages because the engineers at Sun had put together a good, solid, language on a good, solid, implementation. They had a vision, largely realized now, of a language to support professional software developers. It is now very fast, the size of it's run-time doesn't seem so significant in 2013, it's current garbage-collector is state-of-the-art, and it's eco-system of libraries and frameworks is now unsurpassed.

Java may have already peaked. This doesn't change the fact that it has been so important and that experiences with it will shape the future of software engineering. I was impressed with Rob Pike's talk on the Go language: "Language Design in the Service of Software Engineering" [1]. It seems to me that Java's success was driven by largely pragmatic thinking and that the designers of Go are now attempting a similar path to success.

Public service announcement: Don't squabble. If you program in C, be happy, your language is the very best for embedded systems and kernel development. If you program in C++, be happy, your language is the very best for developing programs that deal with complex data structures and must run as fast as possible while using memory efficiently. If you program in Objective-C, be happy, your language is the very best for IOS and Mac OS X programming. If you program in C#, be happy, your language is the very best for developing Microsoft .NET applications. If you program in Python, be happy, your language is the very best for rapid prototyping and exploring big-data. If you program in JavaScript, be happy, your language is the very best for client side web programming. If you programming in Haskell, be happy, your language is the very best for exploring reliable software through detailed specification of types. If you program in Ruby, be happy, your language is the very best for putting together Rails apps (and yay, it's getting faster). If you program in Lisp, be happy, your language is the very best for getting the most out of Emacs. If you program in Visual Basic...be happy, there are better languages you can learn.

[1] http://talks.golang.org/2012/splash.article

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#304

Earlier quoted context omitted.

Now you're just adding more axioms :)

You mean that "static typing allow better tools"? That's a fact ;) It allows IDEs to do smarter autocomplete, better refactorings, more static error checks, etc.

Did you know that Eclipse had its roots in VisualAge, a Smalltalk IDE?

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#305
post #90

Earlier quoted context omitted.

Popular in terms of use, yes, but liked? I don't know, I doubt it. Android and iOS essentially force you to use Java or Objective-C respectively. I don't hate Java, but I don't like it either. It lacks quality of life features that other, similar languages have had for years. I can't stand writing code in it if I don't have to (and don't get me started on Objective-C...) From what I hear from others and read on a wee…

"Android and iOS essentially force you to use Java or Objective-C respectively" But the combination of iOS and Android gently pushes you in the Mono/F#/C# direction. Come to the light side!

Hehe, I'm a systems guy, don't write much code which targets either. I try to stay up to date though.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#306
post #301
post #242

Earlier quoted context omitted.

Java is a commonly used language, but not very popular according to a Hacker News poll from 2012: https://i.imgur.com/toGKy21.jpg In fact, it's likability percentage is worse than PHP! I think the issue may stem from the fact that given a choice, few people use Java in their own projects but have no choice at work.

when it comes to large, complex, distributed, long-living projects, java is the best choice. sure, I can build a quick prototype using python, php, node, ruby, its hard to rely on them when the project becomes large, distributed, complex etc. IMHO its the only language that allows to create great server side programes, awesome desktop GUI applications, mobile applications or embedded applications. All in one language…

I'll agree there of course; as an ecosystem it's hard to match due to the availability of libraries and ease of platform swapping. My original comment was targeted purely at the language syntax and semantics. Like I said, there are many reasons to use Java, but I'd rather use something else given the choice

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#307

Earlier quoted context omitted.

Could you substantiate your statement please. I find that he is in a good position to do so because C++ evolved based on feedback from people using it and he was responsible for the first version(s).

Sure. Nowadays the consensus is that C++ introduced more problems into the industry than it solved. Moreover it keeps introducing more and more problems with each new revision. In this light his statement is merely an attack upon his critics e.g. "Haters gonna hate..." while ignoring the possibility that criticism of "his" programming language is well founded. Sure people bitch about every language sometimes. Hell I…

I'm a systems guy and I love C for its simplicity. There certain problem domains which C++ is better suited for, but everything being equal, I'll chose C every time for its simplicity (don't give me the whole "shoot your foot off" argument. I know, but this is not much of an issue for experienced and competent C devs)

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#308

Java may not be dying, but it does take off early on Fridays for golf. Java is not dying the same way Cobol was not dying 10 years ago. It has a lot of legs left but nobody is 'hoping' to use it, they are told to do so. Java is and always has been almost completely a corporate tool. Again, like Cobol, so the 'cool kids' are not going to give it much love. It's too slow to execute to compete with C++, its too slow to…

Comparing Java to Cobol is ridiculous. I'm in the cool kids category and I like Java. If you don't want to / can't use C#, there's simply no alternative for bigger projects. Groovy - slower, much worse toolability Scala - less readable, slower, slow compilation, worse toolability, too complex.

> there's simply no alternative for bigger projects

I absolutely, completely don't understand where is this coming from. There are so many languages that there has to be a choice.

It of course depends on a given project, but I'd think that it's bigger projects which are more flexible in choosing the technology. I mean, if you have heaps of cash and many developers, than having to write three or ten additional libraries shouldn't matter. And then suddenly OCaml and Haskell are starting to look nice. Ask Jane Street.

In the projects I was involved in we had different set of constraints - we needed to ship something quickly, with small team and limited financial support. In such case how much more performant the Java would be, how much better tooling it has and so on was irrelevant and sheer speed of development in Python, Ruby or Racket was a win.

I get a feeling that this sentiment that "there is no alternative" for Java comes from people who are being forced to use Java at work (even for things it's not suited for) and who want to console themselves. It's something like "ok, I use Java as a templating language, but that's how it has to be". Well, I think it's not.

On the other hand, if you know what you want is Java - go for it. It's always the same old "best tool for the job". Just don't artificially narrow the choice of tools.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#309
post #167

Earlier quoted context omitted.

are these the same thought leaders that ditched ruby for scala or node or clojure? ill be coding with libgdx and pushing to html5 and android while the thought leaders decide their next move.

You don't become a thought leader by being stuck in the past. You have to evolve and move on, and need to realize that there is zero benefit in tool religion. Java is so big today because at one point for all the marketing money by Sun and C++ incompetence among programmers, it had a field day. I remember an architect who made Java compulsory in a program because as he was tired of C++, he just couldn't get it and ne…

Java is big today because its static typing with a focus on performance led to the some of the best free tooling in the industry married to some of the strongest performance metrics. Religion its not.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#310
post #230

Earlier quoted context omitted.

You seriously don't know what you're talking about. Virtually all serious software that uses complex concurrent data structures is written in Java nowadays, because the JDK is pretty much the only runtime that supports state-of-the-art, envelope-pushing, concurrency. Here's my previous discussion with haberman on the subject: https://news.ycombinator.com/item?id=6505853

http://learnyousomeerlang.com/

Erlang is awesome, but only offers high-level concurrency constructs (actually, just a couple), it does not support low level ones (CAS). You can't write, say, a good concurrent hash-map in Erlang. Or in Haskell, for that matter.
Post reply on HN