“Sun’s resistance and IBM’s insistence to open sourcing Java underscores an ever-present gulf between the two companies when it comes to ending a four-year slump in growth that has haunted the Java developer community.” Read the analysis at ZDNet.
“Sun’s resistance and IBM’s insistence to open sourcing Java underscores an ever-present gulf between the two companies when it comes to ending a four-year slump in growth that has haunted the Java developer community.” Read the analysis at ZDNet.
Thank you for putting up my article link. I came across this just surfing the net and thought it was interesting.
I have followed java almost since its beginning and have been somewhat suprised at the total mismanagement of its development that has come from sun. After reading the article myself I came to the conclusion that sun simply has no idea whatsoever what they are doing with java and refuses to listen to the developer community about what is needed within java.
Instead they are taking a page from microsoft itself and simply trying to make a buck off it which I personally dont think they will ever do.
Im not a huge fan of microsoft but I have to admit c# is fairly decent and doesnt suffer from the problems that java has. Also with various projects its becoming quite cross platform although I which the linux community would come up with better toolsets for its use. If the linux community or any company for that matter could come up with a really developer friendly toolset then I think linux would gain serious desktop marketshare over microsoft. I mean visual studio.net has a lot to offer. If there could be something like that for linux and even macosx then that would be darn cool!
Anyway thanks again!
Open sourcing Java would win a lot of brownie points with open source supporters, and that’s all. I honestly believe that given the scattered patchwork of Linux distributions (how many distros do we need, really?) many versions of Java would crop up the same way, each just incompatible enough to make it not work on <<insert OS name here>> Linux/BSD/etc., or make apps not compatible across those forks.
As a business application developer who primarily uses Java, the platform definitely needs a shot in the arm. It’s becoming harder to justify why I need it for most applications I write. I have deadlines to meet, and sometimes the complexity of enterprise Java gets in the way.
Sure, it’s nice that I can run JBoss on my PowerBook and deploy a completed application to a Solaris box, no changes necessary. I can do that with other languages as well.
For most tasks, there are a plethora of tools that work just as well, if not better. Whenever I need to write a utility, I reach for Python. When I need an interactive webapp, it’s PHP or Perl.
Some huge sites run PHP, some Perl, some Python. It’s not that Java isn’t suited to the task, it’s that I feel Java makes a lot of things complex when it doesn’t need to.
The only way a 10 million strong developer base will exist is to make the developer’s life easier. Period. Give me a tool that simplifies and enhances my work. Allow me do to more with the resources I have. I’ll buy it, and so will a ton of other people. I’ll make my organization take notice and consider it seriously. I’ll evangelize it to fellow developers looking for similar solutions.
Why do you think VB continues to be used? While there is a LOT of poor VB code out there, you can’t deny the fact that it made developers out of people because it made complex things easy to deal with and get apps written quickly.
Sun and IBM: make our lives easier. I like Java and will continue to use it some form. The reality of the situation is that you must empower developers more than you already have; win their hearts and you’ll have the world. It doesn’t matter if you sell it, give it away, license it. Make it happen for us and we’ll make it happen for you.
java has a lot of potential….i hope sun gets their act together…….i think they have just being teribly preocupied with project looking glass
Like not adapting well. Look at the Linux kernel as a perfect model of open source. It’s fast in development, powerful, etc. It’s everything Java is not. Even better it’s not forking, hopefully the same could be done with Java (not that it will…now)
The other major thing the goes beyond “brownie points” is control. In the OSS world everything is about control. If Linux developers knew that Java was fully open sourced they would probably trust it a little more. Having something as fundamental as a developing environment in control by a company hardly makes it the environment of choice for OSS developers.
I realized I implied Java was not powerful. This isn’t true. I just trying to compare the development process of Java and the Linux Kernel and how much better the Kernel one seems to be.
Imagine how much better Java could be.
Actually I used to think the way you do. I recently began the switch from windows to linux and started going through distro hell and thought man this is trully annoying.
Then I realized that the problem wasnt with linux and the amount of distributions the problem was with my having gotten so used to having such a totally inflexible system at my beckon call.
The trully great thing about linux IS how many distributions there are. You have total flexibility in finding the distro that is just right for your needs. And while some people bash such things as Lindows for people too “windows like” they miss the point that thats exactly what Lindows is supposed to be.
I mean you have everywhere from Lindows with its total ease of use to Gentoo and its total focus on techies and the need to compile your own kernel.
That being said the major problem I find as a developer is the lack of cohesion in the apis. With windows you need to learn one with linux there are two, three, four. I mean it gets a little annoying. And for each one theres a different tool.
As I mentioned Im getting into c# more but I dont run gnome so I cant run monodevelop and the c# to qt bindings are a dead project. So where does that leave me??? No where. Im stuck having to still use windows for many things. And while wine is quite cool and they have made some C# wine bindings and I totally disagreed with the review of it from yesterday as it does what its designed to do quite well, its getting old wine, isnt really an api and programs are stuck in windows 2000 mode with it.
My biggest gripe personally with java is that the jvm is a bloated mess as is their api system and the gui api is simply vile. Pure java guis look like they are from ten years ago with their stolid bland looks. This needs to be corrected.
One big problem I had with sun when they were marketing java is that they claimed it could do everything which sounded very much like marketing speak from microsoft. When parts of java turned out to not really be that great and people complained sun made 0 effort to fix it.
It is true that if the problems with java could be fixed it could become a very serious tool again.
Personally while I dont expect one langauge to do everything and do it well it gets tiresome having to deal with 5 langauges to do different things. Some do one think ok but are terrible at other things.
Hi
check dot.kde.org
Jess
IBM wants sun to loose one of the most profitable and valuable IP that sun has? Just because IBM is fighting a lawsuit against SCO and as gathered many supporters of Linux users dosent mean they can screw sun over. If they settled with SCO SCO would have never done all this stuff. Shame on you IBM! for your dirty business tactics! shame on you!
Hi
“If they settled with SCO SCO would have never done all this stuff. Shame on you IBM! for your dirty business tactics! shame on you!”
SCO will claim something and IBM has to settle with SCO. how about me claiming your property. settle with me. eh?
Jess
ok I’ll settle with you 😉
(I could have left the settlement part out of my comment, but yeah we all make mistakes)
ok I’ll settle with you 😉
(I could have left the settlement part out of my comment, but yeah we all make mistakes)
“If the linux community or any company for that matter could come up with a really developer friendly toolset then I think linux would gain serious desktop marketshare over microsoft. I mean visual studio.net has a lot to offer. If there could be something like that for linux and even macosx then that would be darn cool!”
Already done it’s called Xcode ( http://www.apple.com/macosx/features/xcode/ ) I’ve found it to be more developer friendly than any Linux IDE or Microsofts Visual Studio 6 or .NET. I find generally I’m much more productive on Xcode than Visual Studio .NET.
As for Java, i’m trying to get into it more with Java Swing and I agree that it has a lot of potential, but Sun is failing to live up to it’s potential. I think one thing that gets people is that there isn’t any visual editor like Interface Builder for Mac OS X or Qt Designer or Visual Studio that makes it easy to design interfaces in Java and then exand on the basic code it creates and quickly develop java applications. Maybe there is something like that, but many Java developers aren’t exposed to tools like that.
I think IBM’s solution is a good one, opening up Java would be an excellent solution, however Sun does have some good worries. What they need to do is have some gold standard or some test that makes sure whatever you develop is java standards compliant and if you fork java and make something that isn’t compatible then you can’t legally call it java. I just see so much potential for Java if the right steps are taken.
java can take the wrong steps in any organization, open or not. I think Java is improving greatly and is gaining marketshare on the serverside but it isnt doing so well on the desktop side because there is an interface war going on with a buncha other providers but sun perfers one solid standard which i dont perfer but they made it.. you can do anything with java anyway its pretty cool
Check out this Sun memo:
http://www.internalmemos.com/memos/memodetails.php?memo_id=1321
Anyone who has programmed for 10 minutes in Java in VB will know that Java has 2 huge problems:
1. You have to be a genius to get started with Java. Really, Sun should put a big warning saying “Ordinary mortals need not apply”. Even a Hello World in Java requires superflous mucking about with objects. “print ‘Hello World’ ” shold be enough.
2. When you compare the work of the Java genius with the VB hacker, the VB stuff works and is so much faster that no-one will even use the Java app, let alone pay for it.
Speed does matter if you want to code an app that makes money. And I don’t see many people doing that with Java on the desktop. Also Java apps are ugly but people will use ugly apps if they work well.
Example to illustrate point:
Load Eclipse and then load Visual Studio .Net VS.Net loads faster even after Eclipse has taken 40 MB of RAM. Overall result? People pay $150 for VS.Net even though Eclipse is free.
Speed does matter if you’re not focused on innovation. The article even mentions that speed was a problem in the 90s for Java. It’s short sighted to think that you should abandon something like Java because of speed especially with something like Moore’s law holding true.
Microsoft isn’t a Corporate Member of the http://en.wikipedia.org/wiki/Free_Standards_Group#Work_Groups>Fr… , the group responsible for the Linux Standards Base. LSB is based on Posix. Maybe there needs to be an Operating Systems Standards Base which is not based on Posix but remains compatible with Linux.
I look forward to the day that the phrase “cross platform compatibility” vanishes simply because it’ll be a given.
– Power is Oracle’s JDeveloper IDE.
A Professional company building a Professional product, on Linux, Windows and Solaris.
– Java vs. VB.
If you can’t spend 20 minutes reading the doc then yes, Java is too hard for you. Maybe you should consider that mgmt position at RadioShack.
– Problem with Microsoft is that they make everything idiot proof, so that idiots can run it. IIS is a perfect example, compared to Apache.
Apache has all it’s config files in XML format, and a 1/2 mile of doc to explain how to use it.
IIS has almost no visible config info, except some dialog boxes.
Screw something up in IIS and you get to REINSTALL everything on a new IIS instance. Or, you can try a little know MS utility to read the undocumented IIS metadata. Screw something up in Apache, and you can READ the doc and fix it.
– This is just more IBM being Stupid. Let’s Not build a common from to take Market share from Microsoft. Let’s tear each other apart and destroy Sun and IBM at the same time. Just like they did with Unix.
IBM mgmt is Dumber then Microsoft’s.
The Sun memo is 2003. The Java problem is CURRENT not something from the 1990s.
I’m not sure if you’ve ever programmed but Moore’s Law can’t save you if your code is a mess. Java is slow because its badly coded. .Net and Mono have no special gifts – other than a willingness to dispose of slow badly written code.
“Speed does matter if you’re not focused on innovation.” – not sure what you mean by that. Java offers no innovation. Python delivered all Java promised years ago. What kind of innovation offers slower performance and more expensive code? Users want things to work faster – anything slower needs to offer spectacular benefits in order to be accepted. And remember, if you can’t get people to pay you to code it, then you need to find a new day job to pay for your hobby.
Again, the idiots speak on OSNews.
If your java app is slow.
Read the doc, learn about the Hotspot JVM, read the parameter list, you can now get your app to compile completely at load time.
Java does appear to be slow, at start up.
Why? Java checks the .jar file and .class files, an integrety check that these files haven’t been Hacked. It’s part of Java’s Security Model.
Again, Advanced Computer Science you don’t get from Microsoft or Python unless your running JPython.
> Look at the Linux kernel as a perfect model of open source. It’s fast in development, powerful, etc. It’s everything Java is not. Even better it’s not forking, hopefully the same could be done with Java (not that it will…now)
The only reason Linux kernel didn’t fork is because Linus Torvalds is controlling what goes into the kernel and what doesn’t. That is exactly the way JCP controls what goes into Java.
Java is a decade old, folks, and it still ain’t fixed. Remember back in the day when Java was supposed to be an easier, safer version of C++? Or when the client-side applet was the primary reason to use it? But then we discovered the design compromises, glitches, and outright bugs: lousy performance, a terrible GUI design (which Swing only patched but did not cure), and an API set that has grown more labyrinthine and baroque with every passing year.
Java has turned into an over-engineered systems-geek playground. More accurately, J2EE has turned Java into a monster. As a language and a platform, Java is fine — but Sun cannot seem to back off from the thicket of APIs that cover Java like moss.
It took me most of six months to get coversant with J2EE to the point that I felt comfortable enough to attempt to architect a system around it. (Only to find that simple servlets and JSPs solved the problem just as well, with far less complexity.) If it weren’t for the Apache group’s heroic efforts (especially <a href=”http://ws.apache.org/axis/“>Axis, a really good SOAP implementation), I would have abandoned Java long ago — in many ways it’s not even a good replacement for C++/CORBA solutions.
I have no love for Microsoft, but if you look at the .NET platform and the C# language with an unbiased eye, you’ll see the promise of Java fulfilled. What took me six months to figure out in Java I was able to accomplish in C# .NET in two weeks.
If Sun is going to save Java, they need to give up on the horrific J2EE API entirely. Focusing on “web services” is a good start, but here they’ll simply be playing catch-up to Microsoft — they need to make Java simpler and more streamlined. In short, they need to turn Java back into what it was supposed to be a decade ago.
Hi
“The only reason Linux kernel didn’t fork is because Linus Torvalds is controlling what goes into the kernel and what doesn’t. That is exactly the way JCP controls what goes into Java.”
linus doesnt control linux and he cannot. he controls only his own tree. gpl allows a fork and linus encourages it. jcp != linus control
sun has a java trademark. any fork of java wouldnt be called java anymore and sun has control testing for making sure what is calling java would be compatible.
there are already many java like forks out there in sf.net. they arent relevant to many people and will never be. sun controls the trademark and doesnt require proprietary license over the jvm to do it. sun is worried about profit not control
regards
Jess
Howdy
Java i must say is the most straight forward language i`ve seen so far, no fancy magic symbols, no pointers, automating memory handling, threading etc etc.
Sure you can probably get alot of these things for other languages but they all seem more or less tacked on to the language in question, Java does have this to a small degree aswell but on the whole the whole language just works without thinking about it!
The library APIs on the other hand are in need of dire culling, legacy stuff should be bundled together and killed off ASAP ex.having Enumeration and Iterator (basically the same thing) in the Collection APIs is just plain silly.
Have a look a NIO, this is one way Sun could start fixing the language simply create NCollections etc and update all the existing packages straight into the new generation one, simple, quick and no mess.
The next thing is documentation ..i mean it`s nice to have a tutorial to show you how to make things work but if it includes deprecated APIs then re-write it! it ain`t rocket science you know ;p
Then again it maybe easier just to create 3.0 and start with a clean slate.
Any language with Pointers and the ability to escape “Managed Code” means those C programmers will still write insecure undebuggable garbage.
Writing C# in name only.
C# is the Hacker’s 1st choice.
> It took me most of six months to get coversant with J2EE to the point that I felt comfortable enough to attempt to architect a system around it. (Only to find that simple servlets and JSPs solved the problem just as well, with far less complexity.)
Why did you adopt J2EE? Did you see any case studies to ensure you even needed it? And it takes you 6 months to figure out that you were wrong? This is a prime example of not RTFMing.
I hate to think the mess ‘corporate developers’ leave behind.
“I honestly believe that given the scattered patchwork of Linux distributions many versions of Java would crop up the same way, each just incompatible enough to make it not work on <<insert OS name here>> Linux/BSD/etc., or make apps not compatible across those forks. ”
If this hasn’t happened with python, perl, or ruby, why do you think it would happen with java?
Java had some great glory years. The O’Reilly and Sun Press books rolling out to bookstores by the van full. Giddy development communities. Big promises.
But Sun just could never fix the simple issues, and instead they just kept piling more and more and more on top of Java until it wasn’t even clear one could become a Java guru anymore – at best you could occupy a small corner of the realm (J2EE, Swing, Servelets etc).
At this point, Java is dying but it isn’t unifying the development community either. Ho hum code chop shops will continue to let mediocore programmers lean on the Java crutch, and elsewhere, top coders will continue to stick to C or Perl or Python.
I don’t see anything about Java 1.5 to attract 7 million more programmers. Generics are nice but Sun once again hasn’t cleaned up the APIs and fixed performance and I don’t expect generics to solve any of that.
Meanwhile Microsoft is pushing a solution that oddly enough seems to work. Python coders continue to smile more than they frown, and C coders as usual end up doing most of the coding we really care about.
“The Sun memo is 2003. The Java problem is CURRENT not something from the 1990s.”
From the article:
“Despite a trifecta of opposing forces that involved … performance problems associated with runtime environments on 1990’s-class systems.”
“I’m not sure if you’ve ever programmed” I don’t claim to be the best but yes, I wrote a search engine based on zipcodes/latitude/longitude in C# and have some Java experience though not as much as .Net.
“Java offers no innovation.”
That’s a pretty broad generalization?
“Users want things to work faster – anything slower needs to offer spectacular benefits in order to be accepted.”
I’m not so sure my non techie buddies would jump at the chance to use a command line interface to configure their printer or network driver. Plug and play isn’t fast. Big kernels aren’t fast, they simply work.
I suggest that maybe you should have a look at Eclipse 3.0 Milestone 8, which has had a boot load more features added. Remember the old saying, “don’t count your eggs before they hatch”, this is the same situation here. It is always easy to be swayed by the marketing hype of Microsoft, but when crunch time, only a few can actually stand VS.NET IDE for extended periods of time.
I would think off hand as ZD Net as an MS magazine, but I have not read it in forever so I’m not sure. Just going by the past.
Java is great for regular programming because it is cross-platform and you can do client-server communication programs to disparate system easily. The gui is hard to learn; especially on your own. They really need a low cost gui IDE, which NetBeans finally is (easy and free). I like it! and Eclipse is good, except no gui ide really.
If Novell is going with Qt/KDE; If they do not waste time pursuing .NET compatability with MONO, and put more time into Java, then this could be FUD.
my opinions.
If it was easier to use and faster.
But the thing is, it is easier. Heck, when I was doing some study at university, VB was painful when compared to Java and C++. The people who have problems with Java are those who don’t think like programmers, so there for, shouldn’t programme in the first place. Some people have it, some people don’t.
I’m not saying that is right or wrong, just pointing out the fact that some people are better tuned to something better than others. For example, I can’t stand supporting users over the telephone, yet, a person who may be crap at programming would do the job of technical support over the telephone better than I. Its about employing the right person for the right job. The sooner employers realise this, the sooner problems will actually get solved rather than it being relegated to an unqualified person who balls up the job and is blamed by the boss for something he/she was uncapable of doing from day one.
Im not a huge fan of microsoft but I have to admit c# is fairly decent and doesnt suffer from the problems that java has.
C# is such a faithful imitation of Java that it suffered from some of the same architectural security flaws that Java did. I wouldn’t give Microsoft much credit for re-inventing the wheel.
For most tasks, there are a plethora of tools that work just as well, if not better. Whenever I need to write a utility, I reach for Python. When I need an interactive webapp, it’s PHP or Perl.
This is a sensible approach. People should evaluate technologies based upon their needs and the problems they intend to address. I think it’s a bit unrealistic for Sun to expect to get all of the developers in the world to use one language, especially when there are so many tools that are quite appropriate for one problem while not applicable to another.
Look at the Linux kernel as a perfect model of open source. It’s fast in development, powerful, etc. It’s everything Java is not.
That’s actually not a great example. Consider that Linux is a re-implementation of a UNIX-like operating system, and that Java is a completely innovative platform. Nothing like Java had ever been released before, whereas Linux is just one of many UNIX-like Operating Systems. The fact that people still debate whether or not Linux is ready for the desktop, enterprise, datacenter, whatever is indicative of the fact that it has yet to reach the point where it is accepted as a peer to other commercial platforms. Java, on the other hand, is deployed in many enterprise situations, and as the article noted, nearly ubiquitously to mobile devices. The fact that RedHat has to spend a significant amount of manpower just patching Linux to run in an enterprise environment illustrates how Open Source may not always benefit companies attempting to leverage open-source technologies.
I actually don’t have anything against Linux, personally, and am running it right now. However, I disagree with the statement that Linux is everything Java isn’t. It’s a non sequitur, and is as rediculous as claiming that VMWare is everything that the Open Boot PROM is not.
One big problem I had with sun when they were marketing java is that they claimed it could do everything which sounded very much like marketing speak from microsoft.
So, your expectation is that Sun isn’t going to market their products in the same fashion that any other company would? Marketing hype is a fact of life. Whether the technology is Java, Windows 98, or Linux on POWER4, it’s still hype. I think it’s somewhat naive to assume that the sales and marketing division of any company is going to give you a balanced and unbiased appraisal of their technology.
The trully great thing about linux IS how many distributions there are. You have total flexibility in finding the distro that is just right for your needs. And while some people bash such things as Lindows for people too “windows like” they miss the point that thats exactly what Lindows is supposed to be.
(snip)
Personally while I dont expect one langauge to do everything and do it well it gets tiresome having to deal with 5 langauges to do different things. Some do one think ok but are terrible at other things.
I find this to be a contradictory argument. Variety in Linux distributions is alright, but not in programming languages? One moment you bash people for complaining about there being x many Linux distributions, and the next you complain about there being too many choices for programming languages. You previously stated that your own inflexible preconceptions lead you to initially be frustrated with the variety of Linux distributions. I would suspect that similar preconceptions apply here.
1. You have to be a genius to get started with Java.
I’m not exactly sure how this became accepted as fact. The CS faculty where I went to University taught Java in the introductory programming course. For someone who has never programmed before, many of the concepts really aren’t that difficult to learn and apply. I know plenty of people who passed the class and certainly wouldn’t qualify as a genius. (Myself included)