Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Why is Java Considered Un-Cool?

CmdrTaco posted about 10 years ago | from the because-in-the-nineties-their-lawyers-were-jerks dept.

Java 1782

jg21 writes "After the Slashdot discussion on Paul Graham's 'Great Hackers' essay, it had to happen. Java developers have taken umbrage at Graham's assertion that "Of all the great programmers I can think of, I know of only one who would voluntarily program in Java. And of all the great programmers I can think of who don't work for Sun, on Java, I know of zero." Now in JDJ Sachin Hejip pinpoints the Top Reasons Why Java is Considered Un-Cool and to tries to debunk them. He levels some of the blame at the Java compiler for "too much chaperoning" and speculates that Java fails the geek test precisely because "it's such a language-for-the-masses." But isn't he missing the point? Enterprise-grade apps and "coolness" may be inapproriate bedfellows. Besides, does any language offer both?"

cancel ×


Sorry! There are no comments related to the filter you selected.

Firs post? (-1, Flamebait)

Anonymous Coward | about 10 years ago | (#10055155)

Java sucks

perhaps (-1, Troll)

Anonymous Coward | about 10 years ago | (#10055159)

could it maybe be because it SUCKS?? Not trolling, just frustrated because java pages lock up every damn computer in my office for about 5 minutes. Arg.

Maybe because it's slow ? (0, Troll)

thrill12 (711899) | about 10 years ago | (#10055162)

I notice everytime I use JAVA, it simply eats processing time, even though I am not currently running anything.
Heck, playing devil's advocate here, as I think JAVA as such has a very nice API.

Re:Maybe because it's slow ? (1, Insightful)

tedgyz (515156) | about 10 years ago | (#10055221)

Please, do we have to hear this comment every time Java comes up? It was cool to say that in the 1990's, but it's a little out of fashion now.

Re:Maybe because it's slow ? (0)

Anonymous Coward | about 10 years ago | (#10055251)

> Please, do we have to hear this comment every time Java comes up? It was cool
> to say that in the 1990's, but it's a little out of fashion now.

It's still true. Java interpreters/JIT compilers are written in C++, not Java, and there's a reason for this.

Well... (4, Insightful)

thrill12 (711899) | about 10 years ago | (#10055268)

..on the laptop I use for work (a Pentium-2 ...) it's just like that. Don't understand me wrong: I have programmed in JAVA, I liked it.
But as corporations nowadays still have little budget left for buying their employees decent PC's, JAVA still has this practical limitation.

Re:Maybe because it's slow ? (2, Insightful)

Nakkel (748351) | about 10 years ago | (#10055299)

I cant speak but for myself, but we use some Java applications at my work. Some work just fine while others literally grinds the computer to total halt. IANAP (I am not a programmer) but somehow I get the feeling that some Java applications are just badly programmed. Why else the variation in performance?

Re:Maybe because it's slow ? (4, Informative)

Anonymous Coward | about 10 years ago | (#10055231)

Java is slow when you are starting something up and the Java vm isn't started. When the vm is started, Java is outright fast. Many people fail to realize this is what's going on, but it's simply the way it works. The first time it's going to be very slow, every time after (until the vm is killed) it will be comparable to a C/C++ application in speed. When you're developing enterprise applications, that first time slowness doesn't outweigh the benefits of using Java.

This isn't to say Java is perfect for everything, but it is for some things.

Classloading, not VM startup is slow (2, Insightful)

Anonymous Coward | about 10 years ago | (#10055322)

VM startup is quite fast these days (tenths of a second on reasonable desktop hardware):

user% cat
public class hello {
public static void main(String[] args) {
System.out.println("hello, world!");
user% javac
user% time java -cp . hello
hello, world!
0.140u 0.020s 0:00.29 55.1% 0+0k 0+8io 0pf+0w

Classloading is slow as all get-out, and even moreso when you're suffering through the startup of a Swing application, since Sun saw fit to make every Swing class reference every other Swing class.

Re:Maybe because it's slow ? (0)

Anonymous Coward | about 10 years ago | (#10055232)

Pretty much every Java application I have ever used was sluggish and a memory hog. Sure, the application itself might be tiny - but when it has to load over a hundred megs of backend crap then it doesn't really matter...

I used to think that perhaps it was just the programmers who weren't leveraging Java correctly, but now I am of the mind that it is the platform. I'm just a lowly network engineer though and not a programmer, so I have no clue - but in my experience, Java stinks!

Re:Maybe because it's slow ? (0)

Anonymous Coward | about 10 years ago | (#10055245)

Maybe because Windows can no longer include the Java VM and people have to download it from Sun? I know plenty of people that have just given up on Java applications because getting and installing it from Sun is above their heads.

Why wouldn't you use a more portable, compiled, language that doesn't require a user to install anything?

Re:Maybe because it's slow ? (3, Interesting)

Ignorant Aardvark (632408) | about 10 years ago | (#10055282)

Java is slower because it's safer: automatic bounds checking on arrays, which helps to prevent buffer overflow attacks, etc. A program made in Java without an eye to security is going to be more secure than a program made in C without an eye to security. Also, for simple things, like programming web game applets, the speed difference doesn't matter much. I'm proud to say that my language of choice is Java.

Re:Maybe because it's slow ? (5, Funny)

xer.xes (4181) | about 10 years ago | (#10055287)

It's really time to dump your 386 and move on to at least a Pentium.

What is this responding to.. exactly? (4, Interesting)

Defiler (1693) | about 10 years ago | (#10055164)

I'm not sure the article author has actually read the Paul Graham essay that he is responding to.
He almost entirely fails to discuss any of the attributes that Graham assigns to languages that 'Great Hackers' like to use.
In particular, Graham claims that terser languages are more powerful [] , because studies have shown that coders churn out a pretty constant number of lines per day, regardless of the programming language. Java is anything but terse.
I could go on, particularly since the Sun JVM isn't open source, and Graham makes a point of claiming that Great Hackers prefer to use open source tools. I think frantic defensive articles regarding Java aren't helping anyone. The managers that choose Java don't read Paul Graham articles, and I doubt Paul Graham much cares what a Java-oriented business journal has to say about his articles. Please note that I am just relating the opinions that Graham has put on his website. I do not necessarily share his views.

Also Speed (2, Interesting)

mfh (56) | about 10 years ago | (#10055199)

> Java is anything but terse.

I had to use Java back in school and I won't touch it unless my superiors threaten the branding iron (again). Java loads too much overhead and it doesn't have the same responsiveness as C based apps, IMHO. I don't think Java is optimized enough, and it shows. All the cross-platform support comes at a price and that price is speed.

Re:What is this responding to.. exactly? (5, Funny)

skaffen42 (579313) | about 10 years ago | (#10055323)

Yeah. Java really sucks and is uncool. No open source programmer would ever use it.

Hell, could you ever imagine an orginization like Apache producing Java code. If that ever happens I'm giving up and moving to Jakarta [] .

Cool? (-1, Flamebait)

lurwas (518856) | about 10 years ago | (#10055167)

Since when are slashdot readers considered to be cool except in the slashdot community?

Re:Cool? (-1, Flamebait)

Anonymous Coward | about 10 years ago | (#10055184)

Since when are slashdot readers considered to be cool except in the slashdot community?

Since when were they considered cool even there?

Paul Graham? (2, Interesting)

LimpGuppy (161354) | about 10 years ago | (#10055172)

Here's a hint: Paul Graham's view of the development world is fairly myopic.

Re:Paul Graham? (1)

kfg (145172) | about 10 years ago | (#10055334)

And the Java developer's world view is over focused.

Both are flaws of vision.


Why is Java Considered Un-Cool? (4, Funny)

illtud (115152) | about 10 years ago | (#10055173)

...I'd love to tell you, but I'm trying to fix my $CLASSPATH

Re:Why is Java Considered Un-Cool? (2, Funny)

Frothy Walrus (534163) | about 10 years ago | (#10055219)

Try translating it into Hindi.

How about (5, Insightful)

antifoidulus (807088) | about 10 years ago | (#10055177)

people just concentrate on the best tool for the job instead of worrying about things like, "coolness".
These, "my programming language is better than the rest and here is a list why" arguments are BS. Every situation is different, every problem requires different tools/methodologies to solve. You wouldn't go into the carpentry business and claim your hammer is the best hammer for every single job would you? You would be laughed at and possibly hit in the head with said hammer. Same goes with programming languages.

Re:How about (2, Funny)

black mariah (654971) | about 10 years ago | (#10055217)

It goes hand-in-hand with the social ineptness of the typical geek. An inability to fit in with the majority of society gives way to a need to fit in with SOMEONE, SOMEWHERE, and the tools one uses are the most apparent thing. This doesn't apply only to geeks though. Think about the old woman with fifty cats, or the obsessive housewife that fills every room in her house with frickin' Beanie Babies despite not having any (or perhaps BECAUSE she doesn't have any) kids. Same thing, different level.

Re:How about (2, Funny)

Takeel (155086) | about 10 years ago | (#10055280)

You wouldn't go into the carpentry business and claim your hammer is the best hammer for every single job would you?

Sure I would! You wouldn't want an inferior hammer working on your carpentry, would you? That could result in costly downtime.

Re:How about (0)

Anonymous Coward | about 10 years ago | (#10055281)

> How about people just concentrate on the best tool for the job instead of
> worrying about things like, "coolness".

Clearly you aren't a mac owner! Not everyone wants a beige box on the corner of their room, even if it is cheaper and faster than the equivalent PC.

Re:How about (1)

antifoidulus (807088) | about 10 years ago | (#10055342)

Clearly you aren't a mac owner! Not everyone wants a beige box on the corner of their room, even if it is cheaper and faster than the equivalent PC.
Actually, within the past year I bought an iBook and a g5........
I bought them because of the functionality. I like the UI much better than the available Linux ui's(though OS X runs a bit slow on the iBook, thinking of loading linux on it), and I refuse to run windows. The little glowing apple on the iBook and the nice metallic casing on the g5 are just bonuses for me.

lame (0, Insightful)

Anonymous Coward | about 10 years ago | (#10055178)

This was a lame article, IMHO.
It had the sarcastic "Oh, it's too easy for you?" theme going. No, that's not
why I dislike Java.

Here's why:

o Java GUI is slower than native alternatives

o Java is not supported by all platforms, and is not supported by
WinXP by default.

o All the Java "binaries" I've tried relies on me having installed a
local interpreter.

o It's object oriented (*)

*) Hey, I said this is MY list. I dislike object oriented languages, m'kay?

Oh, and take a look at this page [] for some more GOOD arguments why Java sucks.

Re:lame (0, Troll)

rs79 (71822) | about 10 years ago | (#10055223)

Anything besides assembler is lame. C is tolerable. Java is a training language for children.

Re:lame (1)

l0rd (52169) | about 10 years ago | (#10055254)

Amen. The best thing (and imho only reason to use Java instead of C++) about a java app is that it can run on any platform. The wordt thing about a java ap p is that it can run on any platform.

The above makes the libraries and interfaces klunky and ugly. Also, it is not always a must that an application has to be able to run on many platforms. In this case it is far better to use tried & trusted C as it's quiker and gives you a better feeling coding in (My opinion).

Re:lame (2, Informative)

forgotten_my_nick (802929) | about 10 years ago | (#10055259)

>Java GUI is slower than native alternatives

Not really. Tried it recently? eclipse is a good example ( of fast java program.

>Java is not supported by all platforms

You can get a JVM for most if not all platforms. It also works on XP (don't confuse MS JVM as being a workable JVM, its years old).

>All the Java "binaries" I've tried relies on me having installed a local interpreter.

Actually you can get a program which will create an EXE for you, but then that defeats the purpose of Java doesn't it? Everyone moans about having to download the JVM, why don't people moan about the VBRUNxxx.dll and MSFC that you have to install to get EXE apps to run sometimes.

> Hey, I said this is MY list. I dislike object oriented languages,

Your basis of dislikes is hardly a good argument for what is wrong with Java.

Re:lame (3, Funny)

Cocoronixx (551128) | about 10 years ago | (#10055338)

Java GUI is slower than native alternatives

Not really. Tried it recently? eclipse is a good example ( of fast java program.

Apparently, one of you two is smoking crack. Take a guess on which one.

Re:lame (1)

Seahawk (70898) | about 10 years ago | (#10055302)

FFS people - how is this insightfull???

Look at the arguments in the supplied link!

Mod this as the flamebait it is, and dont bite! :)

a few reasons (2, Interesting)

becauseiamgod (559722) | about 10 years ago | (#10055182)

Firstly, most applications written in java run awfully slow which sends a lot of people to other languages. Secondly, virtual machines running byte code creates an extra step in compiling/rolling out programs which can stray away a lot of beginners. In general, not a lot of production software is written in Java, and a lot of people get into programming because they want to emulate something that already exists and make it better. C/C++ are languages of choice of the industry so they tend to go into them.

Also, i remember someone saying, saying java is good because it works on more platforms is like saying anal sex is good because it works on both sexes :-P

Re:a few reasons (0)

Anonymous Coward | about 10 years ago | (#10055241)

Wow. You know absolutely nothing about Java and how it is used in the real world. Yet you presume to talk about it as if you do, despite (1) Java isn't slow, and any lack of speed is more than made up by not having to hunt for obscure bugs that you get with C/C++ (2) Java is extremely popular in many industries, just not general desktop application development which is all you have experience with.

Re:a few reasons (1)

becauseiamgod (559722) | about 10 years ago | (#10055313)

where do people get off on not reading posts? I addressed why Java doesn't get a lot of beginners to go into it, and im sorry if most beginners don't fiddle with custom business software, and please don't assume about what others have experience in since I did not mention anything about my past history in coding. Also, if you are a good and careful C/C++ coder those 'obscure' bugs will be at a minimal level. Those that claim that java isn't slow obviously don't actually use software written in it. Sure you can make all the benchmarks you want, but when it comes down to it, it does feel much slower.

Re:a few reasons (1)

skaffen42 (579313) | about 10 years ago | (#10055250)

not a lot of production software is written in Java

So all those guys getting hired as Java programmers are doing what? Sitting around playing with themselves while the C programmer chained in the basement writes all the production code?

Somehow I don't think so...

I'd use it (2, Interesting)

immakiku (777365) | about 10 years ago | (#10055183)

I'd use Java for whenever I have a project that's a little bit higher than simple but doesn't require high performance. To me, it's very useful in the right situations.

Its just a tool (4, Informative)

hoofie (201045) | about 10 years ago | (#10055185)

Java is a tool - just like every other programming language.

People do/don't use Java for many reasons - the choice of a programming language in a commercial environment depends on many different factors.

I work in Java - I can't say it excites me but it does the job.

uncool vs ....? (1, Interesting)

Anonymous Coward | about 10 years ago | (#10055186)

How can Java be considered un-cool when you stack it side-by-side with such horrors as VB6? I'd much rather be forced to use a decent object-oriented language then a very poor .... I don't even know what to call the abomination that is VB6

Re:uncool vs ....? (1)

Ignorant Aardvark (632408) | about 10 years ago | (#10055333)

Amen to that! VB6 versus Java is no contest. Hell, the next generation of computer science majors is being taught Java (that's what the AP test uses), so it's the wave of the future, whether you like it or not.

Simple (1)

SpanishInquisition (127269) | about 10 years ago | (#10055188)

I like my Java un-cool too, I mean cold coffee is undrinkable.

Wait (4, Insightful)

Lord Grey (463613) | about 10 years ago | (#10055189)

The title of the article is "Top Reasons Why People Think Java Un-Cool - Debunked" (emphasis mine). I did RTFA, and I saw no debunking. Just a list of reasons why people might not like Java.

This is news?

COBOL (5, Insightful)

sql*kitten (1359) | about 10 years ago | (#10055191)

Java is the new COBOL. No, I mean that quite seriously. COBOL means "COmmon Business Oriented Language". Java is the language of choice for modern day corporate application development. In the corporate world - which probably accounts for more actual lines of code than anything else - applications fall into two categories, forms (inputting data into databases) and reports (getting data out of databases). The corporate world wants legions of cheap, interchangeable programmers to work on these applications. Kids are taught Java at college or learn it themselves. The language makes it very easy for one person to work on another person's code, and it makes it quite painless to document your work as you go. That's the reason "hackers" don't like Java - they've just transferred their traditional dislike of COBOL to it.

Re:COBOL (4, Funny)

Marlor (643698) | about 10 years ago | (#10055249)

Java is the new COBOL. No, I mean that quite seriously.

Well, considering what COBOL programmers are earning these days, Java might be a valuable skill in the future.

Re:COBOL (1, Interesting)

krog (25663) | about 10 years ago | (#10055275)

The language makes it very easy for one person to work on another person's code, and it makes it quite painless to document your work as you go.

Yes, because everything you do is broken into baby steps. If you look at Java code and you can't figure out what it is doing, you have no business programming.

Personally I don't like holding a program's hand as I write it. That is the #1 reason I think Java is uncool.

Re:COBOL (1)

halowolf (692775) | about 10 years ago | (#10055309)

You may wan't to add "background batch processing" to your list, like the business app i'm writing at the moment to process member bonus payments. In Java of course ;)

But more seriously, I fall into the right tool for the right job programmer category. Java isn't the be all and end all of programming languages and it has properties that I dislike. But there are some very good tools available now to overcome some of those disadvantages. I find these types of articles quite pointless as they only seem to be used to fan the flames of lanuguage elitism/fanboyism that incite arguments that really don't mean anything at all in the end.

Re:COBOL (2, Interesting)

TopShelf (92521) | about 10 years ago | (#10055328)

I read articles like this and just get depressed. I actually long for the days when I worked on COBOL! The last couple years I've had to work with RPG [] *sob*. For many companies, it's not about the latest & greatest, but rather the cheapest that still gets the job done...

Re:COBOL (0)

Anonymous Coward | about 10 years ago | (#10055341)

That's the reason "hackers" don't like Java - they've just transferred their traditional dislike of COBOL to it.

You're right, but I don't think that they've transferred all their dislike of COBOL. Personally, I mildly dislike Java, but the mere sight of a COBOL listing makes me want to puke my guts out.

Making an interface (1, Interesting)

ynnaD (700908) | about 10 years ago | (#10055195)

I had to take java as part of my degree and from what I saw, making any halfway decent GUI involved giving your soul to satan. Maybe it's better now, but the mere act of creating and making a usable button involved more steps than lazy programmers like me are willing to follow.

Too verbose (4, Insightful)

random_culchie (759439) | about 10 years ago | (#10055196)

Some of the things in java are terribly verbose. especially when going to design GUIs.
Using the language you just "feel" as if there should be an easier way.
I'm no fan of microsofts products but I think C# is an excellent language to program in. It addresses alot of Java's shortcomings and it is a joy to program in.

That website is uncool (1)

forgotten_my_nick (802929) | about 10 years ago | (#10055198)

I try to read it (I guess it is being hammered by /.) and the stupid webpage reloads itself.

Language for the masses? (1, Interesting)

Anonymous Coward | about 10 years ago | (#10055201)

Java is exactly the opposite of a language for the masses. Overcomplicated APIs, quirky virtual machines... doing serious development using java requires a huge amount of resources in hardware and education. It looks more like it was designed to provide job security for Sun.

Not responding (4, Funny)

gr8_phk (621180) | about 10 years ago | (#10055202)

The site must use a lot of Java code.

Java's uncool image (2, Interesting)

PhysicsGenius (565228) | about 10 years ago | (#10055204)

Java started out seeming cool because it was the Write Once, Run Anywhere language. And it was Somehow Internet Related back when that was cool.

After a while, though, people started noticing that Java is slow as mole asses. And it's a huge memory hog. But worst, I think, was when it started to dawn on programmers who actually think that Write Once, Run Anywhere doesn't have anything to do with the language you write in. It has to do with thinking portably.

It's very easy to write a non-portable app in Java. You have to make sure you use architecture and OS independent functions and algorithms if you want to be portable. And if you are going to do that, why not just choose any language you want (that has a compiler for the target OS)? Like C, which is fast? Or a scripting language, which is easy?

And of course finally, Java is uncool because it is a buzzword that non-programmers use.

Re:Java's uncool image (1)

HermanAB (661181) | about 10 years ago | (#10055317)

Write once, debug everywhere, has been touted as a feature of every programming language as far as I can remember - all the way from Cobol, C, Pascal etc. to Java and C#...

Probably the most portable language is Fortran, since nobody ever writes a GUI in Fortran.

The Horror!!! (2)

Meostro (788797) | about 10 years ago | (#10055206)

Does it bother anyone else that this page has 65 ads on it? It frickin' hurts to read, it's almost as bad as [] !

Also it bugs me that this guy has to rant and rave about Java, but he can only come up with eight "uncool reasons" to debunk. C'mon man, the standard Top Ten list has TEN items.

Re:The Horror!!! (0)

Anonymous Coward | about 10 years ago | (#10055267)

Does it bother anyone else that this page has 65 ads on it?

then block [] those adverts [] and complain no more, if a website has more advertising than content treat it like the spam it is.

Re:The Horror!!! (1)

foobsr (693224) | about 10 years ago | (#10055325)

... it's almost as bad as!

In cases like this a warning would be fine.


IMHO (1, Troll)

AviLazar (741826) | about 10 years ago | (#10055210)

Java is uncool because it just eats up my cpu. I run a java program (PcGen) and the thing is insane in its resource use. I am also constantly crashing it. The fact that it can port from one OS to another - big whoop if it does it SLOWLY!
But the API's are nice (I am the eLearning industry and we utilize SUN LMS)

Why, Python, of course. (1, Insightful)

Russ Nelson (33911) | about 10 years ago | (#10055212)

Python is an enterprise-grade programming language because its code is so readable. Sure, you can write a perl program faster, but six months later you won't be able to read it.

What's not to love about Java? (5, Funny)

wayward_son (146338) | about 10 years ago | (#10055214)

It's got the simplicity of C++.
The freedom from corporate interference of Visual Basic.
The speed of an interpreted language.

And you wouldn't believe how efficiently it uses RAM and CPU power.

I don't see why everyone doesn't use Java!

Re:What's not to love about Java? (0)

Anonymous Coward | about 10 years ago | (#10055272)

freedom from corporate interference? remind me again, who invented/creates Java?

Java is bloated (1, Redundant)

cperciva (102828) | about 10 years ago | (#10055218)

Recent benchmarks have demonstrated that, once running, a well-coded Java program is about as fast as a well-coded C program.

However, the "once running" issue is a big problem. Java startup time is slow, simply by virtue of the time it takes to load everything off of disk. And, unless you're running a server -- which most people aren't -- the startup time is by far the most important performance criterion in determining subjective performance.

Give me back my <20kB executables, and I'll consider using Java.

Slow (1)

lukewarmfusion (726141) | about 10 years ago | (#10055220)

When I was in school, I did some Java programming. It was great for teaching programming for many of the reasons it's considered "uncool." For real programming, though, I find that the compiled programs run unbelievably slow. For a time I thought that it was my fault - that I didn't know enough to make my programs run any faster. But I've noticed it with pretty much every Java program I've used, including ones written by Sun's Java developers.

It's too big of a drawback.

Enterprise-Grade (1)

A55M0NKEY (554964) | about 10 years ago | (#10055224)


Is that like "Downers and organ meat destined for ALPO cans"?

who cares what he says? (0, Flamebait)

bwy (726112) | about 10 years ago | (#10055227)

A quote like those from Paul Graham and others really don't need a response. He's obviously detached from the real world and has no concept of the hundreds of trade-offs that are required in the real world to build successful systems.

People like this usually last about 5 minutes in a real organization because they either 1. start slobbering uncontrollably on the table or 2. piss managers and business folks off with their horrible geek attitudes.

Who cares? (5, Insightful)

Anonymous Coward | about 10 years ago | (#10055235)

Who cares if it's cool or not? From my point of view, it pays the bills.

From my employer's point of view, it makes me more productive than (most) other languages would, since I spend less time worrying about crap like header files, pointers, memory leaks, and so on.

So everyone wins. "Cool" stopped being important when I turned 18.

No unsigned ints! (1)

Zo0ok (209803) | about 10 years ago | (#10055236)

Lack of unsigned integer types makes java really uncool!

As I write this I feel I somehow must have got this completely wrong...

Who the hell is Paul Graham, anyway? (0)

Anonymous Coward | about 10 years ago | (#10055242)

Who the hell is Paul Graham, anyway?

Paul Graham isn't Cool, Duh. (4, Interesting)

freality (324306) | about 10 years ago | (#10055244)

See how easy it is to assert that something isn't cool?

When I read Graham's article, I was disappointed. It had that air of someone being passed by, by a lot of fun. Saying Java isn't cool is like saying Scheme or ML isn't cool. It's just a personal preference, and when you express it, you run the risk of sounding anal and/or ignorant. His older articles were better considered.

Here's my utterly ignorant statement of the day: No matter how many ultra-cool hackers I know tell me that Lisp and Scheme and ML are cool, I never have fun using them. They force my brain into such an unpleasant state of nerdliness that the only thing I can program in them is a mathematical proof or some sort of logical system.. in short, I'm forced to become a boring CS professor using them.

Don't bother debunking reasons why Java isn't cool. The only path to cool is the acceptance of luserdom. Only when you have nothing to lose will you dare to do something audacious.

Look at punks. The only time they're cool is when most of society considers them fringe lunatics with no social graces. And then the rock happens again. It's when they're "cool" that the music invevitably begins to suck.

Being called uncool is a blessing in disguise. Thanks Paul.

People are afraid of Interpreters being too slow (1)

Neomar (773009) | about 10 years ago | (#10055246)

This was the main concern among fellow students when I learned coding in Java some 6 years ago. But nowadays the execution speed matters rarely in a world of mutliple Ghz's. Maybe the shitty look of the Java GUI's like awt ( is this still in use?) and Swing might be a factor for uncoolness. Most people set cool == looks cool.
I personally like coding in Java since its syntax resemblences C++ and it's semantics is resemblences to smalltalk.
The only thing I miss in Java, and this is why I prefer C or C++, is that there are no pointers or any other means to play with memory directly butsince it's an interpreter there was no reason to implement it anyway, so i am pretty fine with it.
just my 0.02$

Java pays!!! (4, Interesting)

KrisCowboy (776288) | about 10 years ago | (#10055248)

During the recruitment week in our university, one of the companies that visited was CA(Computer Associates). CA guys gave an options. The students can chose either one of C, C++ and Java for their exam. Well, 80% of the guys went for C, because it's their `first language'. Rest of them went for C++ and only 1 student out of 120+ students opted for Java. To cut a short story shorter, he got selected after a technical and HR interviews which were cakewalks compared to other guys' interviews. Well, if a language's gonna pay me 25,000 bucks(Indian Rupee) a month, I'd be more than happy to go for it. Cool or not.

Uncool to me (2, Interesting)

infinite9 (319274) | about 10 years ago | (#10055257)

Want to know why it's uncool to me? This may be flaimbait, but it's the truth. A disproportionate number of Indians favor this language and environment. This makes it nearly impossible for me to take these contracts since it tends to drive down rates. Same thing for oracle related work.

Re:Uncool to me (1)

forgotten_my_nick (802929) | about 10 years ago | (#10055316)

They go where the work is. Plently of Indian workers programming in .NET and other languages. Your just not tendering for them.

...And the link is Slashdotted already. (1)

abkaiser (744418) | about 10 years ago | (#10055260)

I like Java. There, I've said it. It's easy and good for non-complex functions. When you start getting more complex, other tools have their uses. But for quick and dirty (or just simple) work, Java succeeds as an easy-to-implement solution. I think you can justify a tool that's a "language for the masses": Sometimes you just really need a good hammer.

Hello, my name is 744418 and I'm a Java user.

promise (0, Flamebait)

gnudutch (235983) | about 10 years ago | (#10055263)

Java broke a promise a long time ago.

That promise was "write once run anywhere". How is that possible when sun breaks java into several "editions"? When vendors take those and "extend and enhance"?

Java, javascript, jscript, ecmascript, jboss... The list goes on and on.

Straight C with makefiles is more portable now than java. We can program hp calcs with c right? Where's java?

Also their marketing department is high on crack. Java 1.2 = java2? Next up, Java5 ?! WTF!!!

Pick your tools (1)

Hans1732 (804854) | about 10 years ago | (#10055266)

What it really comes down to goes soemthign like this: programming languages are just tools to be used as a means to an end, not the end in themselves. Java is great if I want to write a highly dynamic and modular system (dynamic state modelling), but I would shudder at the though of using it to perform high performance reading (such as for MD5 or SHA* hashing). It all hinges on what you need to do. Don't use a sledgehammer to do finished carpentry.

Use What Works (2, Insightful)

grunt107 (739510) | about 10 years ago | (#10055269)

There are Java pundits, and LAMP lovers. Not to mention .Net-sters.

The real issue is use what works, regardless of 'cool' (hell, COBOL was probably cool once and is still used in some places).

As the story points out, Java is not used for low-level (device) programming. And Assembler is rarely used for data movement (ETL).

I say, for QuADs (Quick And Dirties), use a slower coding language that allows for quick development. For Enterprise-level Web/XML apps use something like Java or .Net (MONO). For low-level use C++/C/Asm.

Or try Bison...

Re:Use What Works (1)

Monofilament (512421) | about 10 years ago | (#10055310)

Totally agree, just to add to what grunt107 said here, just to make clear what i believe he means.

Use what works best for your application, and what you wanna do with it!!!

who gives a shit about paul graham? (1, Insightful)

flacco (324089) | about 10 years ago | (#10055277)

he's a rich guy (wrote yahoo stores or something) who has never even *used* java.

i've read several of his articles, and none of them strike me as particlarly insightful. most are more of the "hey, i have this quirky idea, which i think is cool but is actually rather mediocre, and i have a lot of leisure time on my hands, so i'm going to flatter myself by dwelling on my quirky, mediocre idea in public" variety.

Would you put your carrer in (0)

Anonymous Coward | about 10 years ago | (#10055279)

Another pripritoery solution? I wouldn't put my life at risk to another company dictating my carrer (which my life kind of depends upon). Yeah yeah we can here about MS blah blah. But I would rather stick to on open solution language - even perl would be a better choice due to it's open nature.

Holy CRAP (0)

Anonymous Coward | about 10 years ago | (#10055324)

Another pripritoery solution? What the FUCK is THAT word? Learn to SPELL!!!

Another reason..... (1)

Ghengis (73865) | about 10 years ago | (#10055286)

Apparently it's easier to use than the English language.
From the article:
How cool is to be the jock with the second fastest race-car in the block? and Top Reasons Why People Think Java Un-Cool - Debunked.
It never ceases to amaze me that people can learn the grammar of a programming language, but not the grammar of a spoken language. To be fair, English DOES have alot of "exceptions" to its rules, but come on. The above are basic grammar mistakes which any editor worth his salt should pick up.

It's the pedigree (0)

Anonymous Coward | about 10 years ago | (#10055289)

Wasn't Java originally designed to run on toasters and other forms of embedded devices? I could never take a language seriously that was designed to enable my refridgerator to talk to my waffle iron.

Why is Java UnCool? (5, Insightful)

DesScorp (410532) | about 10 years ago | (#10055291)

Most developers I know basically slam it for it's reputation for being slow, and frankly, because it's not C, the geek Gold Standard. Perl has the same difficulty and has it's own cultish crowd (Perl users are the Greatful Dead fans of computer science). Python is somewhat trendy as well.

But Java....Java was designed to be easily learned, and to especially be used in web-based apps. To Unix geeks, that makes it kind of the Visual Basic for the Slashdot crowd. Not something to brag on.

Fact is, it's a great language, and it's still growing. A friend of mine is a professional Java developer (mostly server side stuff), and he's one of the brighter bulbs in the lamp. He loves it, and still thinks Java's potential is largely untapped. Whereas we know what C can and can't do, Java is still growing. He thinks it'll be used (and used effectively) for things we can't even imagine yet.

Enterprise grade and Cool (4, Interesting)

DG (989) | about 10 years ago | (#10055293)

Enterprise-grade apps and "coolness" may be inapproriate bedfellows. Besides, does any language offer both?


No, seriously - properly written perl is both "enterprise grade" and as cool as hell.

Of all the languages I've ever worked in, nothing let me build systems as easily, as robustly, and as QUICKLY as perl did.

Remember the Daimler - Chrysler merger? Perl was the glue that unified the HR systems and LDAP directories. As far as I know, it still does. Our LDAP - LDAP replicator tool (written in Perl) was a damn sight more reliable than the native replicators, plus it would do schema translation, plus it had a smaller footprint.

Somehwere along the way, perl seems to have picked up a bad reputation for being illegible and obscure - and certainly one has the freedom to write the cliched "line noise" programs if one wishes. But perl done right can not only be legible, it can be beautiful.


The real problem with Java is. (1)

JollyFinn (267972) | about 10 years ago | (#10055295)

Swing programming in Java is Pane in the ass.

Bad Progammers == Bad Experiences (1)

ckotchey (184135) | about 10 years ago | (#10055297)

In my experience, being on the user-side of Java applications, it's not so much the quality of the language itself, but of the (apparently) poor programmers they must have developing these Java applicatiosn I have to use (typically internal-use-only tools within my place-of-business). Bad/non-intuitive user interfaces, illogical layouts, slow performance, and if I had a nickel for each time I got some sort of incompatibility problem based on what Java VM my browser is configured to use (or WHICH browser I'm using)!!!!

More missing features... (1)

Zo0ok (209803) | about 10 years ago | (#10055300)

Java lacks structs (I hate to get an extra .classfile for each inner class), gotos and enums. Those are cool features.

However C# is even less cool since you cant fall-through inside a switch (without the use of goto).

Oh come on (5, Insightful)

Phaid (938) | about 10 years ago | (#10055303)

It's just not that hard to understand this. For good or ill, programming has always been an ego-driven profession. You hear stories of punch cards and marathon hacking sessions, and how cool it was that some guy arranged all of his code so that memory accesses were precisely in alignment with the rotation of the memory drum. You do not hear about how cool the fact that someone's applet can't crash because of automated bounds checking and lack of explicit pointers.

Java is seen as uncool precisely because it protects you from your own mistakes -- it's an attempt to make programming approachable to the masses, and the fact that it's forgiving makes it look like programming with training wheels. And just like the 50 year old MBA will never fit in with the Harley crowd, Java programming will never be seen as cool as "real" hackers' languages like C.

Type System (2, Insightful)

BarryNorton (778694) | about 10 years ago | (#10055304)

Says the article:
Java is a strongly typed language therefore you have to tell the compiler exactly what you intend to use. And if you make a mistake in the way you use it, the compiler has the guts to tell you that you were wrong. Too much chaperoning?
The problem with most Java code is that there was (for nearly a decade, despite this being a well-established feature of type systems) no parametric polymorphism, therefore using the containers collection meant throwing away the typing information and casting... and, no, the compiler doesn't tell you when you're wrong, not even the static type checker does, the dynamic type checking fails at run time! That's not cool!

I think the guy needs to learn something about modern programming languages before sitting down to write...

Ha! (1, Funny)

Fizzl (209397) | about 10 years ago | (#10055306)

For once I can say "Java sucks!" and be on-topic.

For all you moderators: "Neener! Neener!"

As a programmer, I'll tell you why (0)

Anonymous Cow4rd (761685) | about 10 years ago | (#10055307)

No, I didn't RTFA (why waste time on Java crap).

- Java is slow. Yes, it's faster than it used to be but it's still slower than other languages.

- Continuing the previous thought. Other high-level (scripting) languages offer an ease of use that Java doesn't have but Java tries to be one of these languages. It fails. And it's not fast enough to be a low level language. Where does that leave Java? Suck-land is where.

- Java has always had all kinds of miniature bugs deep inside it. These are not big enough to get Sun to do anything about them but are like a thorn in your foot. Witness how long it took Sun to add poll/select support.

- Extreme object-orientedness is extremely annoying. You have to instantiate all sorts of tiny little useless classes to get anything done. Massive overhead and tedious.

- It requires too much crap to be installed. Going from a blank system to something that can run non-trivial Java apps requires too much crap to be done. There are settings, tiny little packages, and all sorts of stuff and crap that must be done (try to get end-users to do all that! pffft, they won't use your app).

- The GUI sucks. Sure, SWT is a step in the right direction, but it's too late and the API sucks.

- It's not open enough. Sun took an Apple-like stance on not allowing outsiders control and Java has suffered for it. It's too late to be fixed, it should have been open from the start.

- On the server people say Java is good, but they're really only talking about all the API's that are available. Nothing special there and nothing that can't be done better in another, better language (either scripting like Perl/Pythong or fast like C/C++).

- Java doesn't offer anything new. Byte-code never took off.

And there's more stuff I don't care to spend more time writing about.

Java was stillborn.

If *Java* is uncool.... (4, Funny)

revscat (35618) | about 10 years ago | (#10055318)

... where does that put C#? In the basement with the red Swingline?

I-Robot and Java (1)

auburnate (755235) | about 10 years ago | (#10055319)

The company I-Robot [] uses Java to interface a Linux box running Red Hat to all the sensors, cameras, and motors on their research line of robots. I spent four months trying to get the darn thing to work, CLASSPATHS and all to no avail. What a friggin nightmare. My master's thesis was going to be on that robot and now Auburn University is just building a robot from the ground up. Life's like that ...

command-line arguments (1)

benasselstine (764316) | about 10 years ago | (#10055320)

From Sun's Java TM tutorial: "Purity Tip: Programs that use command-line arguments are not 100% Pure Java because some systems, like the Mac OS, don't normally have a command line or command-line arguments."

Command-line arguments are cool damnit! Any language that doesn't encourage them is uncool.

PHP...PHP offers both.... (0, Troll)

haplo21112 (184264) | about 10 years ago | (#10055327)

Java sucks hard, everytime I have tried to use it, it's been more trouble than its worth. I know I know PHP and Java are not actually in the same category. However, the problem with Java is its damn slow, its not nearly as cross platform compatible as it would have you believe, its libs are a f***ing mess to say the least. There are other problems but I don't wish to details the laundry list.

Why Java is popular (2, Insightful)

Scarblac (122480) | about 10 years ago | (#10055332)

Java is used a lot these days. There are three main reasons, in my view, why it became so popular:

  • In the beginning, there was an amazing amount of marketing and hype.
  • After that phase, it continued to be popular because by that time there was a large amount of libraries, both free and commercial.
  • As a language, it's not that hard to learn, and it gives some protections that C++ doesn't have.

So if you look at it purely as a language, it's just not that cool. You don't see amazing Java hacks. It's not great, it's just not bad. Add to that a few really irritating things (that are being addressed) like constant casting and having to check every exception all the time... Why would it be considered "cool"?

Enterprise-grade Java? (1)

adb (31105) | about 10 years ago | (#10055337)

What mythical implementation is that? A common online chess applet can crash most of the JVMs I've tried it with. When I see "jsp" in a URL, I twitch uncontrollably. "Slow" and "flaky" are good words, but they don't nearly convey the necessary intensity.

I write software in decent high-level languages like Ruby and Perl all the time. It's not bug-free, but it never crashes the goddamn interpreter and if it's slow it's because I wrote it wrong.
Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>