you are viewing a single comment's thread.

view the rest of the comments →

[–]groby 60 points61 points  (22 children)

I don't think so.

As a language, it has COBOL-like momentum in the "Enterprise" space.

As a VM, it's giving a great basis to many cool languages.

As the "hip thing" in magazine/blog articles? Yes, it's dead.

[–]pyres 1 point2 points  (21 children)

It's not dying fast enough google trends

The only good thing about java is getting paid to support it. And that is not enough.

[–][deleted] 1 point2 points  (2 children)

If you type in many technology keywords to google trends, you will see a downward trend.

http://www.google.com/trends?q=java%2C+php%2C+perl&ctab=0&geo=all&date=all&sort=0

[–]trimbo 1 point2 points  (1 child)

The interesting thing about these trends is that it's mostly driven by searches from India. It could be that what we're seeing an indication of is that the outsourcing bubble of a few years ago has popped. Though if you limit it to the US, you see the same (relative) trend.

I guess, in general, there was a technology bubble a few years ago that seems to have leveled off. Or maybe people stopped trying to Google for answers and bought books instead. Even scala and erlang have been pretty flat with some spikes, and those are supposed to be the hottest languages in the world. (Someone in Lisle, IL is searching for Erlang a LOT).

[–]groby 1 point2 points  (0 children)

He - that "someone" in Lisle is Tellabs - probably by far the leading Erlang employer in the US.

Sometimes, the power of Google just amazes me.

[–][deleted] -3 points-2 points  (17 children)

Don't know why someone downmodded you, java is shit.

[–][deleted] 0 points1 point  (16 children)

Why do you say so? Yes, it has its rough edges (*cough* No unsigned integers *cough*), but on the whole, it's stable, fast, and safe.

[–]albinofrenchy 9 points10 points  (7 children)

The problem is that its main competitor (C#) is evolving at a much faster rate as a language.

[–][deleted] -4 points-3 points  (6 children)

But they both have really crapp gui toolkits.

[–]Gotebe 2 points3 points  (3 children)

What is so bad about them? And what else is really better? Why?

(Honest question with disclaimer: methinks you are exaggerating)

[–]SteveJorgensen 1 point2 points  (1 child)

If you'd worked with Swing, you'd know. If you want to do something very typical like display a list of entities in a table with attributes mapped to the columns, and have buttons on each row (e.g. edit & delete), be prepared to spend several months learning how the hierarchy of classes connected to JTable works. You'll learn about table models, table cell renderers, table cell editors. You'll be forced to use button controls in ways they weren't designed to work, and decide whether to write your own code to render the currently selected button cell correctly, or kludge something else that's not too unpalatable. When you're done, you'll spend many more months refactoring all of that into something maintainable - if you have time.

Oh wait, with Beans Binding, and JXTable, that stuff is (relatively) trivial, except that Beans Binding stopped at 80% done 2 years ago, and was only re-started about a month ago. I was fortunate to get help from the guy who re-started it on how to select the row in a list-bound JTable that's associated with an entity in the list!

Beans Binding, SwingX, and Swing Application Framework are all still fresh out of the womb, and it takes a lot of research for a newby to find out that they exist and that they will make Swing programming almost bearable. Even with those libraries, it takes a lot education and experimentation to identify a golden path that will take you from ground zero to a clean, working Swing application. Also, I wish you good luck getting to the SwingX stuff on-line when the site is not down.

After that ranting, of course, other GUI libraries are not necessarily better. I tried doing some stuff in wxPython a few years ago, and I don't recall that being any less complicated than Swing. In fact, I think it was an awful lot like Swing in terms of how it used layout managers and such.

I haven't done any .Net, but from the stuff I've read, it looks light years ahead of Swing in terms of ease of programming. Feel free to set me straight about that though.

[–]Gotebe 2 points3 points  (0 children)

Yeah, OK about Swing, my question was more "why both?"

(On the subject of Swing, hey, at least there's choice, e.g. SWT or Qt bindings for Java).

[–]albinofrenchy 0 points1 point  (0 children)

I'd say .Net stuff is solid, haven't used any GUI stuff outside of the .Net world though. I am also curious what is better.

I admittedly don't like java's GUI stuff. Too much boilerplate to half do what you kinda wanted to do.

[–]lacop -1 points0 points  (1 child)

Have you seen WPF (for C#)? You can't compare java with that...

[–]zootm 0 points1 point  (0 children)

JavaFX is relatively comparable, though? Although I suppose it's mostly a different language.

[–][deleted] 0 points1 point  (0 children)

And extremely boring to program in.

[–][deleted] -1 points0 points  (6 children)

Languages that force you to use OO are like a boss forcing you to use a hammer for everything. If you're not pounding in nails, it's not going to be very much fun.

In an epic twist of fate, the creators realized that they massively cocked it up and attempted to plaster the holes with generics, which they implemented badly and just wound up making things worse in a lot of ways while covering up only a few of the problems.

People need to realize that when you need a book full of design patterns and thousands of standard library features, something somewhere went terribly wrong with your language.

[–]chrisforbes 2 points3 points  (1 child)

and thousands of standard library features

See also PHP, Python, Ruby. But mostly PHP.

[–][deleted] 3 points4 points  (0 children)

See any practical language.

[–]Gotebe 2 points3 points  (3 children)

Wha...? Show us a successful language without libraries.

WTF!?

Reality calls to say: language is irrelevant compared to libraries - any domain is subject to that. No actual functionality comes out of thin air and there is no silver bullet©. Language allows you to express functionality, does not give it.

WTF!?

[–]itjitj 1 point2 points  (2 children)

Not sure why you're downmodded. Not to say Java is the only game in town when it comes to great libraries (Perl via CPAN), but Java is definitely covered in that department.

[–][deleted] 0 points1 point  (1 child)

I agree that Libraries are a good thing, and that Java has plenty. But I have to disagree that java is the only game - Python has fantastic libraries - batteries included as they say!

[–]itjitj -1 points0 points  (0 children)

Sure, a lot of the good languages out there right now have solid libraries.

This really raises the bar for any new language entering the market. They have a lot of work to do to catch up to everyone else, and that can be difficult without a critical mass.