Why is Java Considered Un-Cool?
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?"
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.
Slashdot: stuff for news, nerds that matter, matter for news, stuff that nerd
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)
I mod down so you can mod up. Your welcome.
Anything besides assembler is lame. C is tolerable. Java is a training language for children.
Need Mercedes parts ?
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.
Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
I'm not a programmer, but frankly I see no reason I'd want to install it on my system. To me, it's just another bulky piece of exploitable software, and thus, I have it disabled in IE and on a leash, so to speak, in firefox.
I'v also been asked on occasion to install the java runtimes so I can run java applications. After installing them, watching them use up a good 5 or 10 meg of memory, and seeing the applications run slow as hell, I decided to uninstall them and avoid java altogether.
Candy-Coated Knowledge
Java is the greatest programming language. I can fortran, C, perl, ruby, shell, and other language my sh*t, but when it comes to getting the diggity rolling -- making suped up thingies that whizbang me to money, god damn, go java. C++ is so mo-th-er -f-ing haard compared to java. I got so much time, cause I write java, that I can write these nifty posts! Anyway, have fun hacking in your C and C++, loser. I don't mean to knock these other languages, because I know them too, but Java is the soup to nuts bestest.
[where BSDs != BSoDs]
If you're writing code that must not possibly be contaminated by the GPL, and if you're writing that code for a Linux platform, then I guess you use either of the Intel or Metrowerks [Motorola] compilers [& their respective libraries].
But if you're writing for one of the BSDs [e.g. FreeBSD], what compiler [& libraries] do you use? Obviously you can't touch the GCC with a ten foot pole.
sorry sir, I dont buy it, Java is the slowest of them all.
Here is a simple 'hello world' benchmark. Which language can
generate 'hello world' to stdout the fastest way. Java ends up
being second last and with highest memory usage
http://dada.perl.it/shootout/hello.html
How is the test done?
a batch file / shell script is created that calls your program
an x amount of times. The total time taken is then devided by X
to get the average time needed to display 'Hello World'.
Java apologists will say that the problem is with the JVM because
everytime you want to run a program you get the JVM baggage, but
will ignore the fact that other interpreted / emulated / VM like
languages are atleast THREE times as fast (ie: vbscript / jscript
/ python / perl).
--
/apz, if java can not even simply start fast, how can it be speedy?
If you think:is equal to:then you need to go back to school. It just so happens that 3.00 is NOT equal to 3 in binary. However, the two are equivalent (sorry for the complex math term) and can be converted to check for equality.
Additionally, I don't need dweebs telling me what profession to be in.
Perhaps if you were a bit more of a dweeb yourself, you'd know "simple" things like binary number encoding. This stuff isn't a secret. Many documents exist that explain encodings.
Another thing that's explained in even the simplest of school books, is the necessity of "abstract data types". The theory behind ADTs is that situations may occur that are unknown to the compiler writer. For example, let's say I write fixed-point math code instead of floating point math. In that situation, it is imperative that I be able to test for equality in a different fashion from FP numbers. Java's equals() method exists to support situations such as this.
Javascript + Nintendo DSi = DSiCade
I used to use PICO all the time, but once I found NANO, I use it exclusively. Emacs, VI, and JEdit blow GOATS! But that's only console editing. If I'm in a gui, I fire up WINE to run NOTEPAD.EXE -- AWESOME!
"They have never had to write an e-commerce system that ties together multiple enterprise datasources, call into SOAP/CORBA etc services on another box, etc" Neither have many of the Java proponents. Many of the "enterprise systems" aren't very different of the "usual systems". Many of the wannabe Java enterprise programmers, could use other stuff that's much easier. Java is funny. The level of reuse in Java is in the library, have you noticed? You grab a library off the net, learn how it works, and decide if it's good enough to use. And that's it. You never even think in writing such a library, 'cause you "don't want to reinvent the wheel", though your program might just be reinventing the wheel. In Java you have at least 10 libraries for every task. Now go review them or discuss them with your peers. Problem is, your peers are engaged in writing their programs and are already evaluating other libraries that they wish *you* could help them with. And there it goes. And then, all the Java developers start applying the populatiry filter to their available libraries. If it's not popular, they won't even take a look at it, as they are used to mainstream stuff. You rock! Go for it.