Comments
yourfanat wrote: I am using another tool for Oracle developers - dbForge Studio for Oracle. This IDE has lots of usefull features, among them: oracle designer, code competion and formatter, query builder, debugger, profiler, erxport/import, reports and many others. The latest version supports Oracle 12C. More information here.
Cloud Computing
Conference & Expo
November 2-4, 2009 NYC
Register Today and SAVE !..

2008 West
DIAMOND SPONSOR:
Data Direct
SOA, WOA and Cloud Computing: The New Frontier for Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
GOLD SPONSORS:
Appsense
User Environment Management – The Third Layer of the Desktop
Cordys
Cloud Computing for Business Agility
EMC
CMIS: A Multi-Vendor Proposal for a Service-Based Content Management Interoperability Standard
Freedom OSS
Practical SOA” Max Yankelevich
Intel
Architecting an Enterprise Service Router (ESR) – A Cost-Effective Way to Scale SOA Across the Enterprise
Sensedia
Return on Assests: Bringing Visibility to your SOA Strategy
Symantec
Managing Hybrid Endpoint Environments
VMWare
Game-Changing Technology for Enterprise Clouds and Applications
Click For 2008 West
Event Webcasts

2008 West
PLATINUM SPONSORS:
Appcelerator
Get ‘Rich’ Quick: Rapid Prototyping for RIA with ZERO Server Code
Keynote Systems
Designing for and Managing Performance in the New Frontier of Rich Internet Applications
GOLD SPONSORS:
ICEsoft
How Can AJAX Improve Homeland Security?
Isomorphic
Beyond Widgets: What a RIA Platform Should Offer
Oracle
REAs: Rich Enterprise Applications
Click For 2008 Event Webcasts
In many cases, the end of the year gives you time to step back and take stock of the last 12 months. This is when many of us take a hard look at what worked and what did not, complete performance reviews, and formulate plans for the coming year. For me, it is all of those things plus a time when I u...
SYS-CON.TV
Top Reasons Why People Think Java Un-Cool - Debunked
Top Reasons Why People Think Java Un-Cool - Debunked

Paul Graham's Great Hackers essay has really touched a lot of people's nerves. The wires are choked with people giving their point of view.

Yet again, though, I have had to stop and think - what is it about Java that makes people brand it as the most un-cool language on earth? I have had friends look at me like I was a poor sod for "having to" develop in Java. So, let me list all the reasons I can think why people consider Java un-cool.

Java has considerably fewer surprises and prefers not to add complexity to the language for rarely used features thereby resulting in a language where you cannot really make your friends go ga-ga at amazingly brief programming constructs. You need to write something substantial [like Gosling's Huckster] for them be to impressed with your programming abilities and not your language knowledge. This is probably the biggest reason Java is un-cool. It's too easy (although programming or software development remains as tough as ever). Java was always touted as the language that the "average" IT programmer can use. It's such a language-for-the-masses that yet again, it fails the "geek" test. And if you use Java, so do you.

Java has been considered slow for ages. The earlier allegations (1995) were true. However, with the recent advancements in the JVMs from Sun and IBM, Java runs pretty close to C/C++. Check this benchmark. Contrary to this, there are other benchmarks that prove that Java is slower. All considered, it would be fair to say that Java cannot be considered "slow" anymore, yet its stuck with the label.
How cool is to be the jock with the second fastest race-car in the block?

Swing disasters continue to give Java a bad name. Swing is a brilliant, although hard to learn, API. But the vast majority of Swing applications are so bad that they give Swing and therefore Java a bad name.

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?

Java has a vast library that is available to all Java developers without any ambiguity. Thus, if you wrote yet another Map you would not be considered a data structures guru by Java programmers but a guy who hasn't heard of java.util.*.

Java did not have a good IDE that compared with MS Visual Studio. I think this one was true. I am not so sure it is any more with IntelliJ. The absence of good tools probably pushed away a lot of good programmers.

Java is popular. Anything that is popular has lost its elite status and therefore is not cool.

Java is an application programming platform. You cannot do cool things like device drivers and games, etc (until recently - but Java gaming is coming in a big way).
 

About Sachin Hejip
Sachin Hejip, an architect with Sonic Software, is currently part of Sonic's ESB tooling intiative where he is leading a team of engineers develop Eclipse plug-ins to take Sonic ESB development to the next level. A recipient of Pramati's highest award for technical excellence, the Pramati Fellowship, he has been a core member of the Pramati engineering team where he led the Web Server intiative and has been a key member of the Pramati Studio R&D team. He has a keen interest in development tools and was the architect of the IDE's parser framework, which formed the base of his implementation of the code completion and Java/J2EE Refactoring tool set. He has designed and developed Pramati's paradigm of J2EE development called "Express Development" including the server-agnostic deployment framework.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 7

Java is cool, but I'm tired of having to learn 5 different ways of doing one thing. Not only playing a guessing game of possible solutions, but once picking a solution, books tell you to wrap the solution up in a facade, adding more complexity to your application.

That's not to say that patterns are patterns, in any language, but with .Net you are left with the confidence of a strong single leader, Microsoft. Sun and Java, on the other hand, is led by commitee. Smart people are tossing API's out there left and right that are nothing more than ideas-- J2EE for example. Again, I'm left with picking a vendor/solution.

With Microsoft, things are pretty much set in stone via the tools they provide. This is how .Net handles MVC, this is how .Net handles Database access, this is how .Net cooks a turkey.

I would feel more confident know that our implementation was written on a single standard versus constantly wondering if we made the right solution of persistent frameworks a month after finishing a project.

I think (as Wittgenstein too :-) that the "languages defines your mindset". This applies to programming languages as well.

However, judging is the language tool or not is sort of meaningless, because "underneath" it is still, well a bitcode.
So from this stand point any computer language is a tool. Mixing the tools (languages) to produce bitcode is perfectly fine and it happens all the time, especially in "big" projects :-)

cheers,

serge

I think Ivan's comments (14 September 2004) are not correct. (Or maybe irrelavent?)

"Why so many people think, that programming languages are tools? Programming languages are aptly named *languages*: they form your way of thinking."

If your choice of language forms your way of thinking, perhaps you aren't working from the abstract solution first...

And, while it is true that "When you are solving a software problem in a medium to big project, you most often cannot change the languge in the middle of the project."--there are a lot of other things you can't change, too. However, in Java projects, sometimes it is necessary to solve a problem with another language/tool, such as C, and invoke it with native interface. Or, even more common, one also programs in SQL, XML, XSLT, Javascript, etc. all within the same project...many languages...many tools, the right tool for the right job.

Why so many people think, that programming languages are tools? Programming languages are aptly named *languages*: they form your way of thinking.

When you are solving a software problem in a medium to big project, you most often cannot change the languge in the middle of the project. You have to solve it *in* Java or *in* C# or whatever language the project is written in.

Tools are not like that. You start to search for the best tool to solve the problem, and not thinking to yourself "should I hammer it from the front or from the back side?" Nor you try to build the whole building with a jigsaw.

So, programming languages are more unlike tools in your toolbox.

Please excuse the rants on my last post. Paul's essay touched a nerve.

It doesn't matter if Java is cool or not. It doesn't matter what tools you use as long as you are still creating something wonderful. Mr Graham should know this if he considers himself an authority on hackers. If he doesn't, its his loss.

I would really like to see Paul's resume.

It sounds to me like he has no experience in the real world working on anything other then small simple problems. That's not great programming, thats hobbyist coding.

He seems to have had a very cushy and narrowly focused set of projects and problems that he has dealt with. In that scenario...SOME of what he said is valid. The Disney land he describes could work. But what about the real world with real complex problems to solve? With his beliefs I find it almost impossible to believe he has had any real part in solving a serious software problem. Oddly, his views remind me of my own back in the early 80's. I was a hobbyist programmer considered a wizard among my peers, with an ideal of the perfect working environment. However, I was working on small finite (and now that I know better, simple problems)...then I turned 12 and started expanding my thinking to large complex problems, beyond the academic level...Paul seems stuck in that academic, hobbyist view. I know he has worked on spam filters and an intenet mall. Both hardly qualify as difficult to solve. A talented hobbyist programmer in grade school could devise the same solutions he did even after programming for only a few months. Now he is moving into language design...using the same old tools and views. The difference? He sold the mall and did a presentation on the spam filter. However, maybe this will be a complex enough problem to cause him to expand his thinking. It was when I wrote my first language that I had that epiphany...reality set in...there really are some REAL problems to solve once an application approaches infinite complexity. Problems beyond things like writing the fastest sort in the least amount of lines. That is what truly sperates the mice from the men...the hackers from the hacks. Anyone can build a model airplane and feel good about themselves...now build a jet fighter.

Another, more blatant reason why I believe his exposure to the real world is very limited is because, he basically states in his writing that he can't see the value of OOP beyond a few finite uses. How could someone take an architect seriously if they didn't understand the value of arches for structure? Hire a road worker who refuses to use a jack-hammer, because a pick axe can do the same thing? Paul Graham strikes me as that type. Stuck in his ways, religious about his views, a zealot mascarading as a mentor.

Bottom line, I belive Paul Graham has gotten himself confused with a great programmer. He is a hobbyist with a limited view. His essay describes the ficional world that he would likeh to work in. There is some value in that, because hey, all of us programmers would probably like to live in that world at least part time. But in the real world with real problems, the real programmers are happy exercising their brains on interesting problems. He mentions something to that effect and that is about the only part of this essay that I can take seriously.

As for the stuff about Java programmers being dumb. There is a few possiblities here;
A) He has limited mental capabilities and like a racist, is forced to generalize based on his limited view and knowledge (who am I kidding, he has zealot written all over him)
B) He is trying to piss off a many people to draw attention to himself and his books/essays
C) He is trying to draw favor from Python and Lisp programmers
D) He travels in small circles with other unworldy programmers
E) He is mentally deficient himself and simply can't understand OO and therefore lashes out like a baby getting frustrated because they can't operate a toy
F) All of the above

Personally, I feel F is probably the most correct answer.

Bottom line, ignore Paul Graham and his 'Great Hackers' essay. His view is from inside a box, perhaps one day he will expand his horizons and step out of it. Then maybe he can put his writing skills to some good use.

Even I feel this a pointless discussion. With my experience what I feel is, no language is similar. Each one is strong on its own areas and there are applications where one can perform to the most and others not. So comparing a language with another language is completely pointless.

Java is verbose, pushed by totally uncool corporate goons, and not open source. Duh. However, Graham's criticisms, while funny, are almost completely wrong. There are lots of good hackers using Java, and all you need to do to see this is look at the open source Java community. There is a willingness among them to admit that some problems are actually complex and are not best solved by writing three lines of code (often in a bizarre newly-invented syntax). I find this acknowledgement somewhat lacking among many Perl programmers who I meet.

Java is a ver cool simply from the aspect that it brought a new paradigm to the forefront.

The lofty ambition of being able to write once and run anywhere was achieved with the exception of little quirks here and there. The defragmentation of the JVM from the published standards killed the WORA process - that is not the fault of Java but of the JVM writers.

The simple fact that it can cause such an uproar from those both for and against the language/platform is a tribute to how cool it really is.

Remember, it is just a tool, not for everyone or every situation, but like any tool, when used properly it will do the job in a most satisfactory way.

Good computing everyone.....

I taught Java to undergraduate business students last year and was surprised to learn the extent to which C# was perceived as being easier to learn. I think the ease of finding, downloading, and installing the JVM and an IDE along with the learning curve associated with the IDE were the main culprits. Microsoft had made all of the above very easy for the university and students whereas the Java side required a good deal more effort on the part of the teacher and the students.

For Java to be a "cool" technology beyond the world of computer specialists, a lot more will have to be done to flatten out the learning curves of both the language and a free IDE. Do you realize how much you have to master just to be able to write even a console oriented Hello World program?

Until an application of at least minimal complexity can be implemented easily by a novice, the rest of the world is not likely to get excited about Java. Progress is being made but we are still far from an environment the average business undergrad can easily grasp let alone master.

look at the long list of comments . java has maximum number of followers and is think it has beaten c++/c/c# .

Is Java a little un-cool? Sure. So what.

I love doing server side Java. Is Java my favorite language? No. That would probably be Common Lisp. The thing is, for most of the work that I do, Java has several advantages:
Great free platform support for web presentation, SOAP, XML-RPC, asynchronous messaging (JMS), etc.
There are many skilled Java programmers: when I build a system for a customer, I can feel confident that maintenance will not be a problem.
Common Lisp has advantages also (extremely fast compiled code, small runtime overhead, rich standard library, very terse language) for some types of development (I use Lisp for working on algorithms, natural language processing, and other problems where I am breaking new ground - Lisp is great for experimental programming).

Practically, every big and most medium-sized java programs I''ve seen, use code generation. For example, GUI builders, persistence frameworks, etc.

Code generators have the following problems:
* They are hard to write. You will make a code generator only if the only alternative is to "generate" the code manually.
* They don''t work well with other code generators: you cannot have a persistent GUI class for example. (I know, it''s a silly example, you''d want to make only the model persistent, etc. but the argument is still valid, I''m just to lazy to come up with better example :)).
* Code generators don''t work well with the IDE. The IDE will know only about the generated code, and not about the *source*. This is partly because IDEs in Java have code generators on their own (sometimes called "wizards").

So, why does Java needs code generators that badly? Because it lacks expressive power. You don''t have simple things like functional arguments. One have to pack the function in a class, which implements a certain interface to do it. Consider this code:

public interface Mappable {
int function(int arg);
}

public class Twice {
int function(int arg) { return 2 * arg; }
}

...
public List map(Mappable fun, List args) {
List res = new ArrayList();
for (Iterator it = args.iterator(); it.hasNext(); ) {
res.append(new Integer(fun.function((Integer) it.next).intValue());
}
return res;
}

(I''ve probably made some mistakes. Haven''t written in Java for several months, now).

In Lisp one would say:
(mapcar #''(lambda (x) (* 2 x)) ''(1 2 3))

and the result will be:
-> (2 4 6)

Consider the amount of Java code written, and the fact that it only works for int fn(int). If I want to map a function of String, I''d have to write another interface and another map function!

Another thing is, that Java is too discriminating: it has objects, and that''s it. Everything is an object, they say, but this is not true. Sometimes you can do a much better job with other programming styles, e.g. functional programming, logical programint, etc. Again, Java will work against you, if you try.

That''s why I don''t like Java. I don''t care if it''s cool or not. What I care is, that writing code in it is more like wrestling.

Ultimately, end users of application software care about one thing:

- From where I am, I tell it to do what I want and it _just works_.

This goes for acquisition, installation, invoking a program, accessing a web site, running a program, or making it go away. Post it up on your wall. Whatever you have been told, after all the supervisors, managers, marketers, salesmen, pundits, and other superfluous personnel are out of breath, and there''s just you and your user left standing, this is all that really matters.

So what makes it "just work"? How does Java fare?

* The existence of machines that ship without a JVM and the requisite base libraries give it a poor score for install.

* The slow load time on application startup definitely hurts.

* The programming model prevents most memory leaks, a major cause of the kind of C/C++ program failures that cause users to follow the unnatural dictum "save often".

* The programming model checks storage overruns, thus turning what would otherwise be an opportunity for viruses into a catastrophic program failure. The user''s system doesn''t get trashed by some lowlife and problems tend to get fixed sooner rather than later.

* The exception support makes it more feasible to write programs where most problems won''t cause the program to keel over, taking everything in memory with it, or that cause the data to become suspect or unsaveable. However, the compiler should manage the propagation of exception closures. Throws clauses should be something the developer can use as an assertion at library boundaries rather than something the developer must do everywhere.

* The best code in your program is almost certainly the code you didn''t write. The larger the portion of the code that executes in your program that was a part of libraries or produced by wizards and GUI generators the better. Why? These elements generally get the tar pounded out of them before you ever see them. A software developer''s primary task should be to figure out how to deliver the function with as little programming as possible. (Metric = function points per kilobyte of hand-written source.)

* So what does this mean for Java? The core libraries are generally pretty good, but I find the Swing library requires a fair amount of hand-written support code even for fairly pedestrian operations.

* IDEs also play a major role here. The Java world has lagged a bit behind Microsoft''s Visual Studio line in its supply of wizards and GUI generators to avoid programming. Having said that, I generally find Java GUIs more capable than comparable Windows GUIs. (I think its because you had to put in the work anyway, so you might as well do it well.)

* For the code you are forced to write, you want the compiler to catch as many _real_ programming errors as possible. You want your unit tests to catch the rest. Zero-initialized memory is good for this since it makes uninitialized variable behavior deterministic.

Most of the error-detection benefits of static typing are probably achieved by techniques (like test-first development) that you''re already using. However, static typing, inheritance, and reflection together make it possible to build better wizards - i.e. more code you don''t write - and better isolate generated code from hand-written code.

So, while I have serious reservations about the installation and startup environment, with a decent IDE, Java seems like a good language for not writing code and avoiding common C/C++ crash-and-burn scenarios. Unfortunately for Java, from my own experience, it seems like you can do a better job of not writing code in C# or VB under Visual Studio. :-)

To debunk the question of whether Java is un-cool, you need a handle on what cool is. The popular view is that cool is one of those Zen-like notions that ceases to be cool once you define it. Taking a decidedly un-cool approach, I typed in "what is cool?" in Google. It came back with a dozen or so definitions it found on the web. I think this one nails it:

"A term which is used entirely too often on the Internet."

Is Java un-cool? With millions of developers, it''s easy to make the case that it''s popular. With the collective experiences from the Java community, it''s not difficult to argue that it is a great language for improving productivity and maintainability. Java **was** cool when it came out in 1995. Does that make it cool now? I think not.


Feedback Pages:


Your Feedback
jhook wrote: Java is cool, but I'm tired of having to learn 5 different ways of doing one thing. Not only playing a guessing game of possible solutions, but once picking a solution, books tell you to wrap the solution up in a facade, adding more complexity to your application. That's not to say that patterns are patterns, in any language, but with .Net you are left with the confidence of a strong single leader, Microsoft. Sun and Java, on the other hand, is led by commitee. Smart people are tossing API's out there left and right that are nothing more than ideas-- J2EE for example. Again, I'm left with picking a vendor/solution. With Microsoft, things are pretty much set in stone via the tools they provide. This is how .Net handles MVC, this is how .Net handles Database access, this is how .Net cooks a turkey. I would feel more confident know that our implementation was written on a single st...
Serguei Bakhteiarov wrote: I think (as Wittgenstein too :-) that the "languages defines your mindset". This applies to programming languages as well. However, judging is the language tool or not is sort of meaningless, because "underneath" it is still, well a bitcode. So from this stand point any computer language is a tool. Mixing the tools (languages) to produce bitcode is perfectly fine and it happens all the time, especially in "big" projects :-) cheers, serge
tim wrote: I think Ivan's comments (14 September 2004) are not correct. (Or maybe irrelavent?) "Why so many people think, that programming languages are tools? Programming languages are aptly named *languages*: they form your way of thinking." If your choice of language forms your way of thinking, perhaps you aren't working from the abstract solution first... And, while it is true that "When you are solving a software problem in a medium to big project, you most often cannot change the languge in the middle of the project."--there are a lot of other things you can't change, too. However, in Java projects, sometimes it is necessary to solve a problem with another language/tool, such as C, and invoke it with native interface. Or, even more common, one also programs in SQL, XML, XSLT, Javascript, etc. all within the same project...many languages...many tools, the right tool for the right...
Ivan wrote: Why so many people think, that programming languages are tools? Programming languages are aptly named *languages*: they form your way of thinking. When you are solving a software problem in a medium to big project, you most often cannot change the languge in the middle of the project. You have to solve it *in* Java or *in* C# or whatever language the project is written in. Tools are not like that. You start to search for the best tool to solve the problem, and not thinking to yourself "should I hammer it from the front or from the back side?" Nor you try to build the whole building with a jigsaw. So, programming languages are more unlike tools in your toolbox.
Darren wrote: Please excuse the rants on my last post. Paul's essay touched a nerve. It doesn't matter if Java is cool or not. It doesn't matter what tools you use as long as you are still creating something wonderful. Mr Graham should know this if he considers himself an authority on hackers. If he doesn't, its his loss.
Darren Pye wrote: I would really like to see Paul's resume. It sounds to me like he has no experience in the real world working on anything other then small simple problems. That's not great programming, thats hobbyist coding. He seems to have had a very cushy and narrowly focused set of projects and problems that he has dealt with. In that scenario...SOME of what he said is valid. The Disney land he describes could work. But what about the real world with real complex problems to solve? With his beliefs I find it almost impossible to believe he has had any real part in solving a serious software problem. Oddly, his views remind me of my own back in the early 80's. I was a hobbyist programmer considered a wizard among my peers, with an ideal of the perfect working environment. However, I was working on small finite (and now that I know better, simple problems)...then I turned 12 and starte...
Rajitha wrote: Even I feel this a pointless discussion. With my experience what I feel is, no language is similar. Each one is strong on its own areas and there are applications where one can perform to the most and others not. So comparing a language with another language is completely pointless.
perrin wrote: Java is verbose, pushed by totally uncool corporate goons, and not open source. Duh. However, Graham's criticisms, while funny, are almost completely wrong. There are lots of good hackers using Java, and all you need to do to see this is look at the open source Java community. There is a willingness among them to admit that some problems are actually complex and are not best solved by writing three lines of code (often in a bizarre newly-invented syntax). I find this acknowledgement somewhat lacking among many Perl programmers who I meet.
Tom wrote: Java is a ver cool simply from the aspect that it brought a new paradigm to the forefront. The lofty ambition of being able to write once and run anywhere was achieved with the exception of little quirks here and there. The defragmentation of the JVM from the published standards killed the WORA process - that is not the fault of Java but of the JVM writers. The simple fact that it can cause such an uproar from those both for and against the language/platform is a tribute to how cool it really is. Remember, it is just a tool, not for everyone or every situation, but like any tool, when used properly it will do the job in a most satisfactory way. Good computing everyone.....
Gregg Saffell wrote: I taught Java to undergraduate business students last year and was surprised to learn the extent to which C# was perceived as being easier to learn. I think the ease of finding, downloading, and installing the JVM and an IDE along with the learning curve associated with the IDE were the main culprits. Microsoft had made all of the above very easy for the university and students whereas the Java side required a good deal more effort on the part of the teacher and the students. For Java to be a "cool" technology beyond the world of computer specialists, a lot more will have to be done to flatten out the learning curves of both the language and a free IDE. Do you realize how much you have to master just to be able to write even a console oriented Hello World program? Until an application of at least minimal complexity can be implemented easily by a novice, the rest of the world is no...
Kripal Singh wrote: look at the long list of comments . java has maximum number of followers and is think it has beaten c++/c/c# .
Mark Watson wrote: Is Java a little un-cool? Sure. So what. I love doing server side Java. Is Java my favorite language? No. That would probably be Common Lisp. The thing is, for most of the work that I do, Java has several advantages: Great free platform support for web presentation, SOAP, XML-RPC, asynchronous messaging (JMS), etc. There are many skilled Java programmers: when I build a system for a customer, I can feel confident that maintenance will not be a problem. Common Lisp has advantages also (extremely fast compiled code, small runtime overhead, rich standard library, very terse language) for some types of development (I use Lisp for working on algorithms, natural language processing, and other problems where I am breaking new ground - Lisp is great for experimental programming).
Ivan wrote: Practically, every big and most medium-sized java programs I''ve seen, use code generation. For example, GUI builders, persistence frameworks, etc. Code generators have the following problems: * They are hard to write. You will make a code generator only if the only alternative is to "generate" the code manually. * They don''t work well with other code generators: you cannot have a persistent GUI class for example. (I know, it''s a silly example, you''d want to make only the model persistent, etc. but the argument is still valid, I''m just to lazy to come up with better example :)). * Code generators don''t work well with the IDE. The IDE will know only about the generated code, and not about the *source*. This is partly because IDEs in Java have code generators on their own (sometimes called "wizards"). So, why does Java needs code generators that badly? Because it l...
Ralph Mack wrote: Ultimately, end users of application software care about one thing: - From where I am, I tell it to do what I want and it _just works_. This goes for acquisition, installation, invoking a program, accessing a web site, running a program, or making it go away. Post it up on your wall. Whatever you have been told, after all the supervisors, managers, marketers, salesmen, pundits, and other superfluous personnel are out of breath, and there''s just you and your user left standing, this is all that really matters. So what makes it "just work"? How does Java fare? * The existence of machines that ship without a JVM and the requisite base libraries give it a poor score for install. * The slow load time on application startup definitely hurts. * The programming model prevents most memory leaks, a major cause of the kind of C/C++ program failures that cause users to follow th...
Matt wrote: To debunk the question of whether Java is un-cool, you need a handle on what cool is. The popular view is that cool is one of those Zen-like notions that ceases to be cool once you define it. Taking a decidedly un-cool approach, I typed in "what is cool?" in Google. It came back with a dozen or so definitions it found on the web. I think this one nails it: "A term which is used entirely too often on the Internet." Is Java un-cool? With millions of developers, it''s easy to make the case that it''s popular. With the collective experiences from the Java community, it''s not difficult to argue that it is a great language for improving productivity and maintainability. Java **was** cool when it came out in 1995. Does that make it cool now? I think not.
Mike Monagle wrote: If Java was cool, this web site would be run on Java and not Cold Fusion.
tim d wrote: I read Graham''s stuff...seems kind of silly, wasn''t sure if it was a joke or serious stuff. Who cares about what HACKERs want/like? What about SOFTWARE ENGINEERS? I work on a huge application that would be impossible in Python but Java makes it possibly--and with less bugs than C++ would give us, by far. I was a C++ developer for YEARS and now after 2 1/2 years of JAVA, I hope I don''t ever have to go back...Java isn''t COOL--it''s BETTER. (Of course, there are some things we still have to do with C/C++...but we''ll live with those.)
jay_sdk wrote: I actually really like Java, cool or uncool. I write shell scripts for common tasks/utilities on Unix, use Perl where it gets a little more complicated or I need something that takes input, modifies it and puts it somewhere else. Started Java in ''97 when it was mostly used for silly applets. But most of my job consists of web-applications. With the WORA I can write it on a workstation/desktop whether on Win2K laptop, or Linux workstation, or whatever, and still deploy without problems to any target application server on pretty much any platform. I can see benefits in EJBs if you''re going to deploy against load-balanced massive systems of say 100+ servers, but just using servlets, JSPs and JavaBeans I can drop it all in a single WAR and deploy as many times by ftp-ing it to the server. In TomCat that''s enough, for those commercial ones I may have to register it once in an admin...
David Bueche wrote: People need to spend less time worrying about looking "cool" and more time getting the job done--regardless of which language they use. Regardless of how "cool" you look today and which language you use today, you WILL be using something different in a handful of years, whether a different language or a shovel.
craig wrote: coolness != good language coolness is about doing things like: - low level memory manipulation; because only a cool programmer would ever even know why you would want to do this. - Write really tight, very fast algorithms. I agree that java is faster to write code in, but coolness is related to having complete control over your computer or being the latest trend. Assembler / C / C++ are still cool because the allow this. .NET is cool because it is the new kid on the block. Business efficiency is a totally different question than coolness. Java was cool in the 90s because it made the web come alive, worked well with internet technologies, etc. Other languages appear to be catching up, and java has reached the masses. There is nothing unique about java that continues to make it cool; productive and useful yes, but productive no.
SOA World Latest Stories
Lori MacVittie is a subject matter expert on emerging technology responsible for outbound evangelism across F5's entire product suite. MacVittie has extensive development and technical architecture experience in both high-tech and enterprise organizations, in addition to network and sy...
When building large, cloud-based applications that operate at a high scale, it’s important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. “Fly two mistakes ...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand usin...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portabil...
Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is founda...
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously not possible for high-throughput insurance, banking, and case-based applications. In his session at 18th Cloud Expo, John Newton, CTO, Founder an...
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON Featured Whitepapers
Most Read This Week
ADS BY GOOGLE