Sun and Eclipse Squabble
gbjbaanb writes "CNET news is reporting on a potential spat between Sun and Eclipse: 'Sun Microsystems has sent a letter to members of Eclipse, urging the increasingly influential open-source project to unify rather than fragment the Java-based development tool market.' Although Sun's letter says it wants interoperability, and a 'broad base' for java tools, it then insists Eclipse should push to be a 'unifying force for Java technology'. Competing tools is a good thing, but it sounds like Sun just wants everything to work its way."
.. those who set and standards decide for users what they want and pull the strings.
Opensource is the opposite of this. I would be pissed too if I were Sun. How can we sell Forte for $2000 and give java away for free to sell more copies of forte?
It goes agaisnt their business model and Java is the only thing keeping them afloat since their hardware sales are losing to wintel/lintel.
http://saveie6.com/
...Slashdot is days late on the scoop. The Java community has already figured out that this is business as usual between Sun and IBM.
Javascript + Nintendo DSi = DSiCade
Sun has a free IDE and IBM has a over-priced version of Eclipse as well, so that argument cancels itself out.
Swing and AWT are horrible festering pieces of crap
Maybe not that bad, but not good. We use swing across the board at our company and I can't tell you how hideous each window is. And they look different on every machine. A layout that looks good on my system has buttons cramped in the corner on somebody else's.
And everything runs slow as hell.
Not saying that doing the stuff in C++ would be any easier, but Java's GUI packages are all sorts of shady.
I've tried the 2 of them and they both are pretty decent IMHO. The big difference, and I mean big, is how responsive each are on a fairly moderate system. After starting forte, I can go have a coffee and a smoke and maybe even take a quick nap...at which point forte should be running when I get back and I can then get to work.
Eclipse on the other hand is really fast. When I first tried it I couldn't believe that it was a Java program. It even looks good, rather than that ancient, dull look that most Java apps have.
Since then, I've upgraded to a P4 with 1G ram and they both run pretty good (although Eclipse is still much faster). I do like both of them but Sun and IBM and anyone else interested in furthering Java should collaborate on 1 killer IDE that puts any MS tools to shame, and allows lazy programmers (like me!) to be more productive in less time :) As Eclipse appears superior to forte and probably has the largest installed base (don't know how it compares to Jbuilder) Sun would probably get a lot more respect from developers.
-Pat
...but this is no better. We always give M$ a hard time about everything, but let's not forget that any company found in the same position can act just as badly. It's hard being on top and not step into the same tracks.
First, I dont' think it's realistic to cripple a UI's features for crosscompatibility. Second, looks do count or most people wouldn't switch from Swing's nasty ass metal look.
As opposed to SWT's nasty ass Windows 2000 look.
The people who use IDEA typically have the money to counteract Swing's slow ass performance (this is a good assumption of someone that drops a couple grand for an IDE). On the other hand, most people like me, do not have the money for a nice rig that costs $3000.
This is complete bullshit. IntelliJ IDEA runs fine on a PII-333 laptop with 256Mb of RAM, whereas Eclipse runs like complete shit on the same box. Since I don't have $3000 for the new laptop with specs high enough to run Eclipse, I won't be buying up in order to use it any time soon.
And no, JEdit is not fast enough. That's like saying Netbeans is fast enough. Neither can handle Eclipse's cool coding features on a crappy computer,
Well you're right there, at least, JEdit and NetBeans both stink.
Karma: It's all a bunch of tree-huggin' hippy crap!
Excuse me? You must be confusing the IBM JVM with the Blackdown JVM from blackdown.org, which is a specialised port of the Sun JVM to Linux.
Faster than a decent implementation can be produced? You're really exaggerating now:
Java has gone from 1.0 (Januari 1995) to 1.4.2 (June 2003, which was 9 months later than 1.4.1, September 2002) to 1.5 (alpha available now, not sure when scheduled for release, I thought the end of this year).
At this moment I can choose between installing Sun 1.4.2, blackdown 1.4.1 and ibm 1.4.1 I on my gentoo box. Then there are also JVMs like JRockit, which is also at 1.4.2.
The are also no major API changes between the point releases (1.4.1 for example added support for Webstart, 1.4.2 added WinXP and GTK look and feel), the rest are only bugfixes.
If only I could come up with a good sig
He makes statements he can't back up and relies on opinions rather than facts. Newer versions of Netbeans are much better than Eclipse and older versions had many advantages. Swing has much better performance than SWT in the right hands and is widely considered one of the best API's for GUI programming.
I think your response is a bit misleading. C# is a regurgitation of Sun Java & Borland Delphi while
Anders Hejlsberg being part of Delphi's history is even more obvious that he regurgitated everything from his work at Borland. And don't get me wrong i'm not against creating something new from something old or use existing ideas as this happens in everyday society(perhaps innovation is the proper terminology) but to say freshly-designed is totally fabricated.
Hear no truth, see no truth, speak the truth...
Swing is a fine API and is reasonably stable now (it no longer changes dramatically between releases). However, SWT is blazing fast. I mean wow fast! People think that Java is slow because of swing. Well try SWT and see the minerals my man.... Native GTK on the go! Native Windows widgets. Native Motif (ahahaha) widgets (if you really want to). It is the future.
But makes just a write once, compile everywhere platform rather than write once, deploy everywhere. I guess devs. think it is good enough.
As far as the eclipse platform is concerned. It is the only thing to tempt me away from Emacs, it even includes proper Emacs keybindings!!!!
Sun has been eclipsed.
Speaking from professional experience, one needs only include an swt.jar and set of binary libraries in your distribution for the platforms which you are targeting. You can explicitly specify the swt library to be part of your libraries when you start up the VM for your java application, and then you're done.
The pain attached to using SWT is all but irrelevant considering the advantages of having the platform native widget set at your disposal through a homogenous API. If you love MDI then you won't enjoy working with SWT, otherwise there's really no reason not to develop with it. It looks alot better than Swing or AWT.
"Give away the stone, let the oceans take and transmutate this cold and faded anchor." - Maynard James Keenan
No, that's not the problem. The problem is that the IDE's use different project files etc. So these are incompatible. Furthermore, IBM is using their own SWT implementation, which is AWT/Swing done right with more support from the base operating system. This is more or less incompatible with Swing, the sun way to doing GUI's.
> You have to dispose of everything explicitly (al la C++) which completely goes against Javas garbage collection paradigm.
GC was not made to clean up (native) resource allocations, but only to reclaim memory. You should bear that in mind.
Not sure I'm with you on pass by value, it's already done with RMI/Serializable Objects for instance.
Big +1 on generics, I can't wait until 1.5! Also, Java 1.5 attributes will make themselves useful in some situations, but they are already here in several open source libraries.
I'd take C# as an option in a real solution (read: billable) only in two scenarios: 1. I have a MS only client (I do!) or 2. The open source community gets a lot more excited about it.
To elaborate, the fact that Java has such a rich open source landscape eclipses C#'s marginal feature wins. There has been a compiler supporting generics for quite a while now. Attributes and real AOP have several open source projects implementing them in different ways. These types of things are on the fringes of the java open source community.
There are so many mature java open source projects that provide real benefits to a programming team that I am about to be absolutely unfair by naming some. The C# community is a long way away from boasting these achievements.
As many programmers will protest, my list above is far from representative; also, it shows my Apache and Codehaus bias. My point is exactly that; not only is the list far from representative, most or all of the components I mentioned have competitors! The advantage this bestows on java over .NET is significant.
I do not mean to argue that java is the only language that enjoys these advantages; I hear CPAN is a boon to perl hackers, and I have the impression that there is a lot going on in the open source python world. My utter lack of experience with C/C++ prevents me from commenting on the similarity of that situation, but the existence of glibc suggests some open source activity.
In summary: .NET is young, and suffers from a lack of a thriving open source community.
SWT is a set of graphical tools that allow you to code once, but run on any OS
That's not strictly true. The GUI widgits in SWT are provided by a shared library compiled for the local platform and linked to Java code with JNI.
This means you need a shared library compiled and tested for your platform. To see what platforms are currently supported and the status of those platforms, check out the port status section of the eclipse homepage.
My impression of SWT is it's more feature rich than AWT, faster and nicer looking than Swing, but the downside is it won't necessarily run on any platform that supports Java.
A layout that looks good on my system has buttons cramped in the corner on somebody else's.
Sounds like you're not using layout managers correctly (or to put it differently, to their full potential).
I've been using Eclipse a little bit recently, but I have to correct a few things:
1) NetBeans is not bad, I was using that (only for debugging) before. It's also free. SunStudio is the for-pay version. I would say Eclipse has more mindshare for now. I'm not sure it's better than Idea though.
2) Bugs. Well, I've only been using it for a few days but I found these problems - eclipse refusing to startup for some reason, giving me a message to look at a log file. That's happened once to me running 3.x, and once at work to someone who had eclipse crash in the middle of something and now it wont start with the same error. In my case I had to reinstall Eclipse (or at least that solved the problem). Also, have you tried calling a method like "private int makeTable( short val1, long val2, short val3 )" with a call like "makeTable( 0, 0, 0 )"? I had to explicitly cast all of the zeros to the correct type to stop Eclipse from flagging the call as an error.
SWT. Yes, now it's cross platform (it only just was released for the Mac). Swing is probably around a few more places still though...
That said I'm not sure why Sun should care at all.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
It should be noted that eclipse.exe is just a launcher for the various JARs in the plugins folder. All it does is display a splash screen and start the JVM loading up the necessary classes.
Random is the New Order.
Consider this: Java on *any* platform also needs some sort of native library for GUI access. It just turns out that they happen to bundle this with the JRE. In fact, if Sun was willing to ship Java without AWT (as it's commonly used in an server environment), they could probably port it to more platforms. Right now, SWT supports the vast majority of the machines currently running Java (Windows/Linux/Solaris/AIX/OS X), but even more "fringe" platforms like QNX.
And it does it pretty well. This is what AWT should have been. The fact that it actually uses the underlying environment effectively means they don't have to update their look and feel every time one of their platforms releases a new UI. As a result, applications look like other native apps, including "themes" and such.