2007 Java Predictions 284
jg21 writes "Java Developer's Journal has published the results of its end-of-year poll of various Internet technology players, from its own internal editors to industry high-ups like the founder of Apress, Gary Cornell, and including too the thoughts of professor Tony Wasserman of Carnegie Mellon West. Participants were asked to foretell what they saw happening in 2007. Among the predictions — Cornell: 'The open-sourcing of Java will have no effect whatsoever on Java's slow decline in favor of dynamic languages (Ruby, Python) and C#'; Wasserman: 'The use of the GPL 2 for open-sourcing Java will inhibit the completion and acceptance of the GPL 3 proposal'; and Rails creator David Heinemeier Hansson: 'The stigma of being a Web programmer still using Windows will increase.'"
Java's dead! (Score:5, Insightful)
No one uses Java anymore, it's all flash these days.
Ever used Eclipse? (Score:2, Redundant)
Re:Ever used Eclipse? (Score:4, Insightful)
The parent makes a living programming J2EE. He might even use Eclipse.
I think for many folks Java is used to write software that does not see the front of a web page.
In fact I have not used Java on the client side since about '98. But I write far more Java now than I did back then. I hope that the work Ethan Nicholas [java.net] is doing to will help, but frankly Flash works fine for many web pages. And as long as I don't have to write the Flash code I'm fine with that. Is it still programming via dialog box? Can I use svn with my Flash code these days? I also hear AJAX is popular and effective for client side work. Anyway, Java is not likely to die anytime soon.
Re:Ever used Eclipse? (Score:2)
Re:Ever used Eclipse? (Score:3, Insightful)
Re:Ever used Eclipse? (Score:2)
Re:Ever used Eclipse? (Score:5, Informative)
Re:Ever used Eclipse? (Score:2)
The latest versions of java combined with newer hardware run swing apps quite nicely and responsively. I can write apps with netbeans using swing very quickly and its sweet.
Re:Ever used Eclipse? (Score:4, Insightful)
Other things are better for the front end these days. No big deal.
Front ends change a lot. Business rules tend to be stable. Do you really want to redevelop all your business rule every 3 to 5 years? With java, you write it once and for the foreseeable future don't have to rewrite it. But java is a bit heavy for fast moving stuff.
Re:Ever used Eclipse? (Score:3, Informative)
And with one fell swoop, you've thoroughly discredited your opinion. FYI, "Debug..." is under the "Run" menu. Double-click the gutters on the left side of the code to set breakpoints. Eclipse even handles debugging multi-threaded apps quite sanely.
I love Eclipse for Java development. There's nothing more satisfying than right-clicking an annoying identifier and renaming it globally within your project. (If keyboards make you giddy, use SHIFT-ALT-R.) Make vi do that. And no, global search-and-replace doesn't count - it ignores context and your code may not compile afterward.
Re:Java's dead! (Score:5, Funny)
Apparently Cornell doesn't realize C#/.Net is just Microsoft's implementation of a p-machine and framework, the same as Java. With such insightful educators, it is no wonder some of the newer computer science students don't have an adequate background in abstraction and conceptualization of systems.
BTW, Java is far from "dead" or even a coma (Score:5, Informative)
Out of all the interviews I did this year, only one shop wanted .Net services, and they wanted VB, not C#. Half a dozen shops about the same size were sticking with Java. Half a dozen shops several times the size were also sticking with Java.
I think it's a lot easier to add unsigned types to Java than it is to switch to a new framework.
What about operator overloading? (Score:2)
Re:Java's dead! (Score:3, Informative)
What makes you think Cornell doesn't realize that? Did you think the quoted statement called C# a dynamic language? It didn't.
Re:Java's dead! (Score:2, Insightful)
What makes you think that realising that stands in the way of it becoming more popular?
Re:Java's dead! (Score:2)
angel'o'sphere
Re:Java's dead! (Score:2)
Java has never completely negated a prior version of the language yet (as the move from vb6 to
There is no promise from Microsoft that when they introduce C& that they will drop support for C# and instantly make it a dead language and leave all the C# programmers holding the bag.
Shh! (Score:3, Funny)
Yup, Gnutella, Azureus and Eclipse users (amongst others) running these programs on Linux, Windows, MacOS X, etc will be scratching their head wondering what voodoo their programs are coded in (it has to be voodoo if Java is dead).
Ah well, people living in their ivory tower will always assume the alteratives are dead.
Re:Shh! (Score:3, Informative)
I use Visual Studio 2005 (C#) and Eclipse (Java/Perl) at work. Eclipse will generally eat up about 80 Mb of memory when I have the main projects open. Visual Studio, on the other hand, will eat up 100+ Mb easily - and it page faults like a mofo, trying to do disk writes every time you switch your focus. 2003 wasn't quite as bad in terms of page faults, but it still ate up over 100 Mb of memory easy, and thats without any dynamic compilation (C#).
Re:Java's dead! (Score:2)
Are there any other languages that could actually replace C? Sure, there are plenty of high level languages that are better for most application development, but is there anything (practical) you can build an operating system out of, short of machine or assembly? (honest question, I really have no idea)
Re:Java's dead! (Score:4, Interesting)
C is unmatched in its ease of use from other languages and in the consistency of compiler support. That will ensure that it stays at the center of the programming universe. A library written in C can be used from virtually any other language in the world, on almost every system in the world, so a library developed in C will always have twenty times the users that an equivalent library in another language would. This is the real key to C's success, not anything else. Well, that and the fact that C is a simple language that is very easy to learn.
What do you need to write an operating system? First, access to the hardware. This seems like a deep and mysterious power, but whether a language can do this only depends on whether the language implementer decided it was a good idea -- you can hack a compiler for *any* language to emit the right sequence of instructions to access hardware controllers, handle interrupts, and control the processor. It doesn't take much linguistic support.
Actually, that isn't the way it's normally done anyway. That stuff is handled at the lowest levels by assembly code. The HLL part of the OS just has to interact with the assembly code efficiently. That means two things: the ability to define and manipulate binary data formats in memory, and the ability to call code written in assembly.
You'd also want the language to function without a large run-time system, to minimize the amount of assembly bootstrapping necessary to start up. You probably also want a language in which it is simple to write efficient code, unless you have more system resources than you know what to do with.
So that's all you need to write an OS:
Practically speaking, I can't imagine doing it without an imperative language with a clear linguistic separation between stack allocation and heap allocation. That's probably just my mental limitations, but let's allow it anyway. You still have a very large number of languages left, though most of them have been choked off by the success of C. Off the top of my head, Ada and C++ are well-established languages that meet all the requirements I just stated.
An argument is often made that an OS must be implemented in a language that *lacks* certain features, because those features shouldn't be used in kernel code. I really don't understand that. What's even more mystifying is that the argument comes from C programmers. A C programmer will chew your ear off talking about how languages shouldn't protect programmers from their own mistakes, programmers need the full power of the computer, if a guy can't handle pointers then he shouldn't be programming in the first place, blah blah blah, but if you mention C++, his scrotum shrivels up and suddenly he's afraid that this big bad language will force him to write bad code.
The idea that someone might have the intelligence and discipline to design and implement part of an operating system, but will willy-nilly inject terrible features into that operating system merely because the language supports it, seems utterly bizarre to me. Surely everyone who has programmed in C or C++ has had to follow project coding guidelines. Of all the coding mistakes you can make, accidentally using a forbidden language feature seems like a pretty easy one to avoid.
Another frequently cited problem with using languages other than C is compiler support. I don't know if you meant to include such issues in your question or not, and I really don't have the knowledge to comment about compiler sup
Re:Java's dead! (Score:3, Interesting)
And I don't know about moving from one VM to another, but on the Sun VM you can move across OSes without issue. In fact, with more recent Java releases any VM that meets their spec tends to be extremely good about running valid code. (There are certainly a few pitfalls that some programmers fall into, especially regarding threads, where their code makes assumptions about a particular VM's implementation that can lead to problems.)
Re:Java's dead! (Score:4, Informative)
I've never been a fan of the language. Performance is terrible, Neither is the performance terribel nor ever was it. I think at its slowest time Java was roughly 10 times slower than C, and in general only 5 times slower
We develop on linux and Mac Os X and our customers usually develop on linux and Windows, the software is usually deployed on Sun machines, either SPARC big iron or I86x blades. We never had any portability issue.
angel'o'sphere
Re:Java's dead! (Score:5, Interesting)
I've never been a fan of the language. Performance is terrible, and moving an app from one VM to another often causes serious problems. The cross platform claims have consistently been exaggerated.
I work for a large .com that serves up tens of millions of hits per day, and we are a Java shop.
You don't know what you're talking about.
re: cross-plaform compatibility. I do my development on OS X, but most of our developers use Windows. Our dev and staging environments are Linux, and our production boxes are Solaris, although we've recently introduced Linux into that mix as well.
There have been several times where I have taken a jar file built on my machine, and deployed it to other developer's machines or our staging environment with absolutely no problems. The same jar runs on every OS we deploy to.
Nor has performance ever been a problem. VM technology has seen amazing improvements over the past ten years, and is now such that for most non-trivial applications it is more performant than the compiled C/C++/Obj C equivalent. The success that Java has seen would not have been so tremendous if this were not true.
Re:Java's dead! (Score:5, Interesting)
1. Rendering double-byte character sets on AIX and Solaris crashed the JVM for various combinations of language (ja and ko were notoriously fragile), JVM, and OS level.
2. Code that spawned processes worked correctly in Windows, AIX 4.3.3, and Linux, but failed under AIX 5L and Solaris.
3. Solaris would throw an erroneous OutOfMemoryError when lots of EJBs were loaded, but it worked fine under AIX 4.3.3, AIX 5L, Linux, and Windows.
Our project was a relatively simple and classic J2EE webapp with a few EJBs for adminstration, some JDBC for large dataset handling, and JSPs for the frontend. It had an "InstallShield Multi-Platform"(tm) Java-based installer. We generally found JVM errors at the rate of once a month. Most could be worked around, but a few had to be documented to the user, and some (such as running the installer in a particular double-byte character set) could not be solved at all given the existing necessary workarounds for other JVM bugs.
Perhaps the JVMs have improved in reliability and work now as you say they do. I moved away from Java after that project and I doubt I'll ever switch back now.
Re:Java's dead! (Score:2)
Yet unsurprisingly, you're unable to substantiate your own claims with even so much as an anecdote, let alone a verifiable one or anything that could demonstrate an actual pattern.
Boston Globe (Score:5, Funny)
I Just. Don't. Get. It. (Score:5, Insightful)
But there are a thousand other types of projects for which other environments might excel.
One of my current projects is a desktop app that does real-time signal processing on a live microphone feed, and produces a full-screen GUI with output of the signal that updates at 30+ FPS. Between the signal processing and graphics, it needs to do some hundreds of megaflops, effective - interpreted languages are a couple of orders of magnitude slower doing raw math. Java is pushing the low end of speed for this app.
At the same time, we want the benefit of a multiplatform release, because the project is for the education and music professional markets - there are an awful lot of macs among our target market, and our competitors are PC-only. Java has actually come through on the write-once-run-anywhere promise for us, straight down to the live audio input. We're just 2 developers - how much longer would it have taken us to have to port C++ between different platforms' APIs? Way too long. And we can't even consider platform-specific environments like C# or ObjectiveC/Cocoa.
Use the right tool for the right job. There are times when Ruby's the right tool - and times when it ain't. There are plenty of niches still where nothing else can remotely fill Java's shoes.
C++ MP Toolkits (Score:2)
I don't object about using Java in your project, it's a sensible decision in a team with only two programmers.
However to say that there are no alternatives is very short sighted. It's better to say that there are alternatives but you have choosen the best one for your programming team.
Also keep in mind that creating a C++ object in the stack is 25 times faster than creating a Java object (even with the server VM) according to my benchmarks. So a sightly bigger team using C++ would possibly make software that outperforms yours and uses smaller amounts of memory, if somebody would like to invest in that team.
However, I do agree with your point, Web-only applications are dumbing down this industry.
David Heinemeier is a troll (Score:5, Funny)
I guess we can say the same about those snobby pre-teen emo kids using the Mac.
Re:David Heinemeier is a troll (Score:2)
Re:David Heinemeier is a troll (Score:3, Insightful)
Oh please, use what's right for your environment. And frankly in the web space what's on the back end shouldn't matter one bit, it all pumps out HTML/XHTML/RSS/whatever. Unless of course he's saying that Ruby just sucks on Windows; in which case whose fault is that really?
Umm...what stigma? (Score:5, Insightful)
Attaching a stigma to certain platforms or technologies for certain jobs is just stupid and childish. Are we going to start lambasting publishers that don't use Macs next, or Linux users that do accounting on their machines? Bizarre...
That quote was out of context (Score:4, Insightful)
Re:I disagree (Score:2)
It's cheaper. (Score:2, Insightful)
Re:It's cheaper. (Score:2)
But please, go on justifying your use of an inferior hardware platform still relying on the 25+ year old BIOS.
Re:I disagree (Score:2)
Re:I disagree (Score:2)
How much would it cost them to hire another you?
Re:OSX is for fags (Score:3, Funny)
Java and Eclipse run on Windows (Score:2)
As you say, use the right tool for the job. If you have a Linux, AIX, Windows, Solaris, or other box, the odds are it runs Java and Eclipse.
My own pet project work has moved from platform to platform for a decade or so, shifting from Borland JBuilder to Sun's tools and eventually Eclipse. Java 1.0-1.5 have always been true to the concept of platform neutrality.
GPLv2 is not a detractor. If Oracle can mandate that the web users have to be counted and the number of web sessions limited, then clearly the GPLv2 demands to release source apply to any web-deployed application as well. Only users WITHIN an organization are allowed to access GPLv2 based application enhancements without publishing those changes back to the community.
Re:Umm...what stigma? (Score:2, Interesting)
A serious question - when is using SQL server the right tool for any job? Or was it because that's what the client wanted/knew?
Re:Umm...what stigma? (Score:5, Insightful)
In most cases, SQL Server is right becasue a company has in-house SQL Server Admins and deploying another database platform is a waste on company resources. That would entail another complete platform and maintenance/admin skillset. In many cases companies don't want this, which makes perfect sense as there's no point having a disparate bunch of technologies that you need to manage. If I was ever deploying a
Personally speaking, I've never had any issus with any SQL Server versions in either performance, scaling or security. A well installed, maintained and managed setup will work really well and be considerably cheaper than alternatives such as Oracle. While MySQL may be cheaper, it's not as fully featured as SQL Server. Off the top of my head, I reckon I've dealt with around 40 or 50 SQL Server setups since version 6.5 and I don't have a bad word to say about them - never had an intrusion, never had database corruption, havce ported databases between machines with no problems, run them on VMware etc. etc. It's certainly one of Microsoft's better technology platforms and though many people would like me to, I can't really fault it. Same goes for MySQL - I like it and I use it where necessary and relevant, i.e. conversely, I'd tend to roll out MySQL in a Linux-house if I were developing PHP on Apache for instance. As I said earlier, you find technologies fit together through experience.
Although as with anything out there, chances are someone's had some really bad experiences with it and couldn't recommend it though personal experiences, YMMV.
Hope that answers your question though.
Re:Umm...what stigma? (Score:2)
I get most of your points (and reluctantly agree), but not sure whether the performance part is legitimate - it seems unlikely that the marshaling interface is going to have any significant impact.
Re:Umm...what stigma? (Score:2)
Aside from that SQL server promotes vendor lock (so does
If you don't mind getting your chain yanked by your vendor once in a while by all means use it.
Re:Umm...what stigma? (Score:2)
Am I missing something here, I was unaware that there was a stigma attached to being a web programmer using Windows.
I think the stigma comes from - "I clicked on Front Page, created a web page - now I am a senior web developer. What is Apache, an Indian?"
I am sorry, I deal with web developers where I work, xNIX and Microsoft. I just finished an argument with a Microsoft web developer of why DNS could not change the port numbers in a URL. I get this all the time. Some of these developers are dumb as nails.
I don't get the same lack of intelligence from the xNIX/Apache group.
It isn't to say there are not Microsoft web developers out there that are not sharp as a tack, but by average --- there is a clear difference.
Re:Umm...what stigma? (Score:2)
You so need one of these [f5.com]. I've been able to pull miracles using Big-IPs (mainly fixing the mistakes of our Windows-loving web developers and product teams). If you've got it fronting all of your services, you can even change the port numbers in your URLs...
Re:Umm...what stigma? (Score:3, Insightful)
it isn't to say there are not Linux web developers out there that are not sharp as a tack, but by average --- there is a clear difference.
Re:Umm...what stigma? (Score:2)
Re:Umm...what stigma? (Score:2)
Development is one aspect and maintance is another. Its true MS has nice development tools and I hate to say it but IE on Windows is required to see what the site looks like since its what everyone uses. MS has an unfair advantage in that all the development tools for MSDN are paid for already so why use anything non microsoft?
Re:Umm...what stigma? (Score:2)
And yet it still happens. The windows geek attack a stigma to linux users are being unwashed communist hippies and the linux users attach a stigma to windows geeks are brainless button pushers and screen painters.
That's reality and I certainly don't see it going away any time soon.
Like it or not there is a certain amount of l33tness in having a job where you can use a mac and cool platforms like ROR. It goes double or triple if you are using emacs and lisp/smalltalk/haskell/erlang.
That's just the way things are.
The Best Predictions From The Article.... (Score:5, Funny)
Award-Winning Author & Senior Analyst, Burton Group
1. Jonathan Schwartz open-sources Sun Microsystems.
In a move that will surprise everyone Sun Microsystems will announce that it will open source its entire company. Sales, marketing, finance, and even operations will be open to the community for anyone to contribute.
2. Apple computer announces the iPod Uno.
The size of a match stick with no screen or controls, the iPod Uno plays one song in a constant loop. Despite its limited capabilities, the tiny device becomes an instant hit and a cultural icon.
3. In what is heralded as the seminal article on the subject, Tim Berners-Lee mentions "IT2"
Overnight the term morphs into "IT 2.0," spawning thousands of blog entries and press articles, a dozen books, five conferences, and millions of dollars in venture capital. It turns out that the original article, incomprehensible to most readers, was actually another attempt to explain the Semantic Web and the IT2 reference was just a typo.
4. Microsoft will create the first CMO (Chief Marketing Officer) position.
The new CMO will immediately change his own title to Chief Command & Control of Packaging Officer (C3PO) and then announce that Vista will be delayed and renamed Microsoft Virtualization Application Program Operating system Reloaded (Microsoft VAPOR).
Wrong Tim! (Score:2)
I don't think TBL would be so buzzwordy. Tim O'Reilly on the other hand...
Uno (Score:2)
Crystal Ball time... (Score:5, Interesting)
The open-sourcing of Java will have no effect whatsoever on Java's slow decline in favor of dynamic languages (Ruby, Python) and C#.
That depends on what market we are talking about. Open sourcing Java will make a MASSIVE difference in terms of Java's appeal to the open source development community. Whether this translates to more Java software or not I don't know, but there are already some very good programs in Java that are open source (Jedit http://jedit.sourceforge.net/ [sourceforge.net], Jabref http://jabref.sourceforge.net/ [sourceforge.net] and JaxoDraw http://jaxodraw.sourceforge.net/ [sourceforge.net] come readily to mind). Seamless integration with Linux distributions has the potential to make it a much more popular language, and may also result in usability improvements to the environment itself.
Other languages will grow of course, but I would personally be surprised if Java fades too much except perhaps as the "new toy". There is a LOT of Java code out there, and it is doing important work.
The use of the GPL 2 for open-sourcing Java will inhibit the completion and acceptance of the GPL 3 proposal.
I don't understand this. GPL3 will go forward as it is going forward now, with much discussion - I can't imagine any issues Java would raise that aren't already being raised. Anybody with more knowledge of the process and Java know what he's saying here?
Now, just to get into the swing of things, my predictions:
a) Every major Linux distribution will deploy Sun's JRE as a core system component soon after a full open source release is made. Allow six months to replace any pieces that could not be released due to copyright/license issues. The Sun JDK will also see large scale integration.
b) Open source software written in Java that already exists will get a boost in interest and visibility, as it is no longer using a language that is non-free.
c) Graphics performance and native appearance of widgets will be a major focus of interest and effort, possibly resulting in Java applications becoming better integrated visually with the desktop. This may actually cost Java a bit in terms of name recognition, as end users will see less visual evidence of the difference between Java and other languages (I know, I know - that's not what makes Java different, but it's what can be SEEN that counts.)
d) As Linux distributions integrate and include Java by default, it will increase the appeal of both Java and Linux on the server side.
And one that I would like to see proven wrong:
e) No major OEM computer maker will add the Sun JRE as a default part of their desktop, despite it being released as GPL.
Re:Crystal Ball time... (Score:2)
No, it will merely turn the unacceptable into the unpalatable.
d) As Linux distributions integrate and include Java by default, it will increase the appeal of both Java and Linux on the server side.
Yes, that is likely to happen: Linux distributions will ship with more Java server-side stuff. Nevertheless, PHP-based server apps are still going to be predominant because they're easier to develop and lower footprint.
Re:Crystal Ball time... (Score:2)
I don't see this making a big difference. Most of the open-source Java software I've seen is aimed at accomplishing a particular task in Java, so the people who would consider using it have already bought in to Java itself. I'm thinking mostly of web development frameworks like Hibernate [hibernate.org], Struts [slashdot.org], and Webwork [opensymphony.com]. The people using them have already made the decision to do server-side Java; the fact that it's now open-source is nice but not really that big a deal. Maybe I'm biased because I mostly do server-side Java development, and everyone I know who writes that sort of software already uses plenty of open-source libraries.
Re:Crystal Ball time... (Score:2)
Re:Crystal Ball time... (Score:2)
I assume you mean that nobody will add it merely because it is now GPL; there are already major OEM computer makers shipping the JRE by default.
Re:Those programs are good, but unusable. (Score:2)
"jEdit offers some really nice features, but until its performance is improved 30 fold, it just won't be a suitable replacement for other graphical text editors."
Java's JRE is big enough that it puts a damper on any program starting up very quickly. So I wouldn't use jedit (or any other Java program) for quick-startup tasks. I'd sooner bring it up once, use it to edit lots of files for a long time, keep it around even if not using it, just so it's there again if I need it.
Sort of like emacs. So jedit is more likely to replace emacs than vi
s/jedit/your favorite Java app/g;
Re:Those programs are good, but unusable. (Score:2)
Give me a break. Even Eclipse doesn't take that long, on my 2GHz laptop.
Trollpost (Score:5, Insightful)
My own predictions (Score:5, Insightful)
Java as Open Source will help in creating smaller versions - perhaps very lightweight browser-plugins - optimized for particular use (media, number crunching, etc.). These browser plugins will help revive Java as a thin-client/web2.0 (3.0?) player in browser-based apps, possibly even making some small inroads against Flash. The 'apollo' project from Adobe may put the kibosh on this, but the increased-eyeballs angle will likely prevent a complete obliteration from happening to desktop Java.
Java will become even faster. Although this has happened in 2006, with the release of Java 6, the full impact will be a refitting of the niche Java apps out there to work specifically with Java 6 and the speed improvements there. This will give some Java some good PR points and case studies with the 'Java is slow' crowd (which I'm definately a member of [fosterburgess.com]).
(As I think one of the panelists in the article said) - there will be a greater acceptance of dynamic languages (ruby/php/python/etc) in Java shops, as Java6's support for dynamic languages (JSR 223 I think [jcp.org]) will help increase productivity for Java devs willing to think outside their javaBox.
Re:My own predictions (Score:3, Interesting)
Java is for many practical purposes an operating system. What mobile java needs is a packaging system like Debian's or BSD's.
If there were a packaging system, then your (non-trivial) mobile application could reach many more devices. J2ME only exists as a number of proprietary implementations with incompatible libraries, and hard to obtain unless it is bundled with your device. They all pass compliance tests, but the bare minimum API is so bare that they all add some set of additional J2SE features. Use those features and your application is no longer portable.
Re:My own predictions (Score:2)
I wonder if Jedit and Eclipse will see a speed gain with a javac recompile?
JAVA and GLP v3 (Score:4, Insightful)
Re:JAVA and GLP v3 (Score:2)
Well, some people expected "either version 2 or (at your option) any later version". That would have been more desirable, from the standpoint of everyone except Sun (and perhaps even Sun, if others follow with their own "GPLv2 only" licensing schemes---cf. what happened with the BSD advertising clause), but this will do for now.
Re:JAVA and GLP v3 (Score:2)
According to the FSF's website, they are planning to release it next spring. I remember some SUN guy talking about it, and they say they like the GPL3, but they want to open source their stuff now.
stigma (Score:5, Funny)
The stigma of a well paid job. Ah, how will I ever show my face in civilized society again.
Re:stigma (Score:2)
C/C++ is the pussy language. (Score:2)
So nyah
Heh... Java's got it's place, but... (Score:3, Interesting)
The GC will always cut in at the worst possible times, impacting your ability to respond to data, etc. YOU try collecting 30 Gbytes of uncompressed
data daily with it sometime. We did use Java for front-ends to process the feeds coming from the trading markets at one of my previous jobs, but
the stuff that aggregated it and sent it to the trading engine and preserved it on disk was all PURE C++ code. The Java stuff couldn't cut it.
I certainly wouldn't use it to control anything like a nuclear reactor or a fly-by-wire system, let alone the task I mentioned.
Java's good for normal business apps, user interfaces where performance isn't absolutely critical, and the like. Something
like C/C++, Pascal, Ada, or even Forth would be a better choice in areas like those.
Re:Heh... Java's got it's place, but... (Score:2)
Re:Heh... Java's got it's place, but... (Score:2, Informative)
Try using the parallel collector on a multi-CPU machine. Much less impact on the running application. You should also spend some time learning how to tune the VM and GC parameters if that's your problem.
YOU try collecting 30 Gbytes of uncompressed data daily with it sometime.
I'm not quite at 30 gigs a day, but the systems I work on will reach that within a year or so. We don't expect that it will be a problem.
Re:C/C++ is the pussy language. (Score:2)
Great quote. Since learning MATLAB years ago, I have probably saved days of my own time. In my opinion, even though it's slow, it's one of the most amazing languages every written.
Good money after bad. (Score:2)
The stigma of a well paid job. Ah, how will I ever show my face in civilized society again?
Money spent on software licenses is money that won't go into your pocket. Bill Gates is happy that he's still on your company's payroll, despite the trouble you have getting work done with his junk.
I love predictions (Score:2)
It's like horoscope. There's always people wanting to hear what's going to happen in the future. It doesn't really matters what they say - we just want to be told what we want to hear. We love being lied. Some people wants to hear that nobody will be using java the next year, others C#, etc.
I think they're right (Score:2)
Overall, open sourcing Java was necessary for Sun to remain relevant at all; it will stabilize Java for a little longer, but unless Sun is willing to make some radical changes to the Java platform--including a massive cleanup and pruning of the libraries--Java is past its peak.
Re:I think they're right (Score:4, Insightful)
Re:I think they're right (Score:2)
Sun opensourcing Solaris made sod all difference because we already had a viable open source operating system which ran on commodity platforms. Linux. Linux has what some management people call the first mover advantage. Solaris would have to be an order of magnitude better than Linux to displace it and it is not. Open sourcing Solaris was too little, too late. Hate it or love it, Linux is the one with the most apps, drivers, not to mention easier to get and well known of the two.
You are belittling the community. Yet I believe Sun is open sourcing Java precisely because the open source alternatives were, for a change, getting close to being Java 5.0 compatible. See the implementation status of GNU Classpath [kaffe.org] and Apache Harmony [kaffe.org] if you do not take my word for it. The fact is, the community has the resources to not only make one reimplementation of Java, but several concurrently.
Re:I think they're right (Score:2)
merging with only one, the combined effort will result. It's GPLed after all.
Re:I think they're right (Score:2)
It would have been a total disaster. One of the primary reasons for the success of Java is compatibility.
Overall, open sourcing Java was necessary for Sun to remain relevant at all; it will stabilize Java for a little longer, but unless Sun is willing to make some radical changes to the Java platform--including a massive cleanup and pruning of the libraries--Java is past its peak.
You have to be kidding. It is hard to imagine a set of statements so disconnected from IT reality.
First, you may want to take a look at recent server sales - Sun now sells more servers than Dell. Would you call Dell irrelevant or in decline?
Secondly of all, Java use is still growing - it has recently ranked above C++ on sourceforge. Java is not declining in the face of dynamic languages - in fact, one of the most exciting new implementations of a dynamic language - JRuby - is based on Java! The future is dynamic languages and Java together.
Secondly, the JRE is still relatively small. How long does a 15MB download take these days? A couple of minutes on broadband. Have you ever heard an end user of the JRE complain 'because there are too many libraries'? I haven't.
Re:I think they're right (Score:2)
Wha might be a good thing for you (how so, btw?) would be a nightmare for me and my customers.
angel'o'sphere
Re:I think they're right (Score:2)
Would you care to point out some stuff to clean up, and show a migration path for old software to teh new cleaned up Java as well, please?
Java has an excellent way in dealing with its libraries, just don't use any depricated stuff in developing new apps. I can't understand that anyone is caring about obsolet stuff in libraries and demands a clean up. The C-library probably got not cleaned up since 30 years, so why bother about Java?
angel'o'sphere
No Agreement (Score:2, Insightful)
AJAX is dying. AJAX will grow. AJAX has no future. AJAX has a future.
JAVA is irrelevent. JAVA will grow.
Apple is irrelevent. Apple is irrelevent...oh, they agreed.
Anyway, anyone who takes these kind of articles seriously are wasting their time. Our shop does IIS, ASP.NET, SQL2005, Ruby-on-Rails, MySQL, VB.NET, C#, C++, Borland, MS, and Linux OSS flavors. In other words, we have the tools and the skills to do what is necessary to get the job done, the way our CUSTOMER needs it to be done. No tech prima-dona BS of telling the customer that we won't give them what they want. If the customer doesn't have implementation requirements, then we determine what they need, suggest and then build on their approval.
My prediction for 2007 (Score:2)
lame (Score:2)
I can certainly understand the appeal of ruby or python to write clear code. But the author then pulls a C# out of nowhere and places it in the same bag! Does he even know C# the language is almost an exact copy of Java the language plus a few Delphi touches?
Java is doing better than ever IMHO. (Score:4, Informative)
I don't know why anyone would want to work with C#. I never run into showstopper bugs in third party libraries with Java because I have the source and can trace into the libraries, find the bugs, report them to the developers and then find an intelligent workaround while a $35 call to MS tech support will tell me to reinstall my whole system and upgrade to the latest versions.
Re:Java is doing better than ever IMHO. (Score:4, Insightful)
C# is a dynamic language???? (Score:2)
Re:C# is a dynamic language???? (Score:2)
In other words, he's not saying that C# is dynamic, he's saying that Java is losing ground to C# and dynamic languages. (Never mind that there appears to be no proof of that, and that it's not my experience, for what that's worth...)
'Javas slow decline in favor of...' oh please (Score:4, Informative)
An environment is only as useful as the tools that are available for it. And it only takes a quick glance around the net to realize how HUGE the Java community is.
Still not convinced? Lets take a look at Hotjobs. This is a pure keyword lookup, doing a little tuning to make sure we're not finding jeweler entries for 'ruby' :
And just for giggles, lets throw some more searches:
So, in support of the claim that Java is in 'slow decline', we have... java as the most requested programming language in the job market today.
Re:'Javas slow decline in favor of...' oh please (Score:4, Interesting)
Re:'Javas slow decline in favor of...' oh please (Score:3, Interesting)
Currently, in my area, Java -junior- programmers get snatched right up. You don't hire junior programmers in a declining industry, you hire senior programmers (because by the time the juniors become senior, the environment will be history). There has been an increasing amount of projects in Java, especialy since Java 1.5, since that was quite the milestone. Same with the last few J2EE versions.
On top of that, now in the latest specs, EJB 3.0 is actualy useful (and doesn't have to be systematicaly replaced by third party frameworks).
Now, on top of all this, more and more schools are using Java as a teaching tool. Which means all these people that come out of school, will be wanting to use their skills. Thus more demand, more support, more projects.
In the hardcore enterprise world, the only thing that can match this is
The one exception to this is the high end R&D stuff, which tends to use Python/C++ or something along that line (I beleive thats what Google use for a lot of things?), but thats a different market altogether.
Language vs runtime (Score:2)
However, the Java VM is probably the best crafted runtime interpreter & JIT compiler in existence.
Java has, in some cases, the performance of C++ or at least half the performance of it, while Ruby is (AFAIR) 18 times slower than C. Python is better, but is not in Java territory.
Lisp is better than Java for big complex apps, and can have very good performance (in some cases better than C), but then, we are lacking a free multiplatform open implementation (that doesn't make all your code GPL), and that kills Lisp in the marketplace (and has for a decade).
All that accounts in part for the results you present.
Personally, I just hope... (Score:2)
Right about now, you are moving your mouse toward the "Mod this fruitcake down" button, but don't misunderstand me. I have high hopes for the language. I have been saying for a number of years that Sun had been letting a hot property fall into disrepair while MS played catch up and eventually lapped Java with it's own
Since all my home computers use Linux exclusively, I'd love to see some real competition to mono as a platform. An open sourced Java could be it.
Oh, for those still looking to mod me down for speaking poorly of "the precious", you should know you are living in a bubble. Talk to the average corporate developer. The vast vast vast majority of them will say the same thing. "Java? Oh that's that ugly gui stuff, right? Yeah, I don't like Java apps." I've fought the battle long enough to know. Without some fresh blood and a new outlook in the Java camp, it will continue to be further marginalized in favor of
Seriously, how many java apps have made it into Gnome core? How many are even discussed in terms of their value to the end user? Now ask that about mono apps? Tomboy. Beagle. F-Spot. Muine. These apps are making waves. Where are the equivalent Java apps? Eclipse? An IDE isn't exactly the sort of thing to get the end user salivating. A couple of more obscure file sharing tools? Nothing that has the publics attention. Hell, even us open source guys have written Java off.
So for 2007 what do I wish for from Java? A fresh perspective. A renewed interest in delivering the sort of platform and apps that mono and
Tom Caudron
http://tom.digitalelite.com/ [digitalelite.com]
Cornell = incompetent? (Score:2, Insightful)
In 2007, apples still won't be oranges.
Mark well my words and tremble (Score:2)
Repent now!
Oh, um ... sorry that was for 1883. I have seen the past! Repent earlier!
Re:It is official; Netcraft now confirms: (Score:4, Informative)
Occurances of the word Java
3043
Occurances of the word Ruby
30
Reports of death seriously exaggerated
Re:My Prediction For 2007: JDJ Continues To Suck (Score:2)
I started getting it for free in the late nineties, and was grandfathered in even when they started charging for it. I let my free subscription lapse long ago.