Sun Opens Modeling Tools
twofish writes "According to the Register, Sun is set to open source a few modeling tools, including their UML modeler, XML infrastructure and visual editing tools, and BPEL tools. The software, part of the planned Java Studio Enterprise 9.0, will made available for download as part of Sun's NetBeans Enterprise Pack." From the article: "By open sourcing its UML tools Sun is continuing its push against the rival Eclipse open source tools framework. The Eclipse Foundation has pushed UML and model-driven architectures for some time via the Eclipse Tools Project. The project encompasses an open source implementation of UML, called UML2, and a modeling framework and code-generation facility to build tools and applications that use a structured data model - called the Eclipse Modeling Framework (EMF)."
EMF? You're unbelievable!
There are 2 kinds of people in this world. Those that can keep their train of thought,
I see there are some XML tools included in this offering. I haven't been able to find out if there is a decent XML Schema editor included. I would really like to get a free XML Schema editor that is as good as XMLSpy.
Read Epic the first RPG novel.
For the benefit of the grouchy mod that didn't find this funny, EMF were a UK band who had a chart-topping hit - "Unbelievable".
Made me laugh anyway - sorry, no mod points today.
Very intriguing.
As a starving non-pro, my exposure to UML has been the MS Visio implementation.
Visio is a great tool, up until you'd like to do something with the UML that wasn't intended by the authors, like writing a custom report against the model. Then you get that sad "I am baked" feeling.
A robust, open tool would be welcome.
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
Sadly there is no visual component to this. It's simply the framework. I'm still using Argo. http://argouml.tigris.org/
www.bannination.com Two things float to the top he
Well I've used UML on every large project I've worked on since about 1999 and its been absolutely invaluable. Obviously its not the only way of communicating design but it is
a) Understood by most systems designers
b) Under by pretty much every developer I work with
c) Specific enough to be able to communicate fairly complex designs with, generic enough that it lends itself well to things (like distributed asynchronous messaging based systems) that it wasn't designed for.
Beats the hell out of re-inventing the wheel...
As an aside twofish - nice tunes...
I am quite surprised that sun is spending so much money on software while its core copetency is in hardware. they paid tons for Forte, Netbeans, Seebeyond, Staroffice and has a huge software group. Other than Java and Solaris-10, not many people pay for any of the Sun software. Oracle, IBM, Microsoft have huge enterprise customer base from where they get majority of the revenue and use this to provide free developer tools and other free goodies, but what does Sun have? I guess, a way for Sun to achieve profitability would be to get rid off all software teams except Solaris, Java and focus on their hardware business. They should at AMD for some guidance. It stuck to its core business and today it is Intel whose stock price is very low while AMD is close to historically high.
UML use is quite common in the java/j2ee world, though there's like two dozen methodologies that are no better or worse. One problem with UML (that the committee is working on) is it doesn't model parallel or multithreaded processes too well, and a realistic multi-tier architecture probably needs some of that in the model. It's also funny how the disciples think, how can you possibly have a large project without UML (or java/j2ee for that matter). One good thing (or awful thing) about the large UML tools out there is that they do let non-technical people such as business analysts participate in the design process
Eclipse may have a lot of momentum, but I still think Netbeans is a better tool. I haven't really used either extensively, but from what I've seen, I like Netbeans a lot more. There's room for more than 1 IDE in the world, just like there's room for Gnome and KDE. Remember, MS Office has a lot of momentum too, but that doens't mean Sun should abandon star/open office.
Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
The advances in the Java IDE space over the last four years have been fantastic. Whether you are a fan of Netbeans, Eclipse, another IDE, or even if you don't use Java, this competition should be a nice reminder of how a working market produces innovative products at a nice pace. (AMD vs. Intel is another example.)
... only one manufacturer for OS-X.
It is a sad reminder of Microsoft's (criminal) monopoly, and the governments unwillingness to intervene, that for the vast majority of consumers, there has been very little of this "competitive energy" in the Operating System space. Sure, they can buy an Apple, but even there
I'm running a nice 3-d enhanced desktop (Xgl) in Linux, but I see Windows users have another six months, minimum, to see anything comperable.
Imagine what the tech world would be like if the Operating System market was as competitive as NetBeans vs. Eclipse.
These are developer tools. Their sourcecode is open. Their consumers are developers.
Where's the adapter code that plugs each development platform's modules into the other's framework? This is the best case for open software discarding arbitrary vendor boundaries I've ever heard.
--
make install -not war
A tool, only in the derogatory sense of the word
Eclipse is not what you may think it is. Eclipse is the community front-end for the expensive IBM WSAD environment. Most of the places I've worked that use Eclipse do so because they see it as an alternative to the WSAD tools, and they're using WebSphere as the eventual platform; which is truly irrelevant if the software is written corectly.
NetBeans is much more like it looks. Formerly it was the community front-end for Sun's expensive Forte environment, but Sun has since abandoned that for truly the community-driven IDE, backing it with every visit to the JDK download page. And it works just fine with all of the Java application/servlet environments, whether Sun released them or not.
NetBeans is also pure Java, written on Swing, while Eclipse uses its proprietary SWT, which uses native calls to get its GUI work done. You can take the same archive of NetBeans to any J2SE-enabled desktop and it'll work. Not so with Eclipse. Because of this, it's easier to adopt new releases and plug-ins in NetBeans than it is for Eclipse. Many of the third-party add-ons for Eclipse assume or require Windows, and therefore don't work on LINUX, Solaris, Mac, or any of the other envornments. Not so with NetBeans; the plug-ins are also Java, so they work everywhere NetBeans does.
I was a long-time advocate of NetBeans before Eclipse came in to dominate the workplace. Eclipse does win some robustness categories, and its rapid-development bits are a little better (auto-complete/suggest kicks over NetBeans), but both are modular and extendable, and NetBeans has usually come with the tools needed to get the job done before Eclipse has (early GUI editor, and built-in Tomcat, Ant, JUnit...).
And, yes, I do most of my development in Eclipse, but I check out each release of NetBeans, and even try to continue to evangelize it.
Try not to be one who thinks that everyone should just join the "leader" as it often stifles competition, advances, and options. Someday Eclipse will catch up and have a GUI editor, BEPL and UML GUI tools, and some of the other flexibilites that NetBeans 5.5 has now.
End the FUD
Thank you Sun!
pssst... I have a secret for you... companies that do things purely out of altruism don't exist for long. Of course Sun is doing Java to benefit Sun. Otherwise the shareholds sure would be pissed!
Why do some people think that companies trying to make money is a dirty little secret? Its the whole point!
Jeremy
I don't have a problem with a company making money off of a product. I have a problem with a company actively subverting other people's altruism in order to maintain a stranglehold on profit. Don't confuse me with an open-source-only hippie, but at the same time the Eclipse people deserve better than Sun trying to flush them out just to keep Java on a tight leash.
I was always under the impression that UML's biggest purpose is not the design of a project, but rather so programmers can more easily communicate concepts of a project's architecture to the dummies at the same company who don't know anything about programming or design. Marketers, for example.
Correct me if I'm wrong, but I've certainly had no need to use UML in any of my projects.
Slashdot requires you to wait longer between hitting 'reply' and submitting a comment.
It'll be a cold day in hell before Sun releases the source code to any software that people actually use.
You mean like source to the jdk, j2ee, and various reference implementations?
Yeah, because *nobody* is using Java. Brr!.
So where's my Sun Model Hotties Calendar?
What if the Hokey Pokey really is what it's all about?
It'll be a cold day in hell before Sun releases the source code to any software that people actually use.
You have got to be joking. Apart from the fact that anyone can download the source code for Java, they have open sourced huge amounts. Solaris is very widely used, especially in commercial environments. NetBeans is a very widely used Java IDE, and there is, of course Open Office.
There are many more upgrade paths from the Eclipse IDE than WSAD. But buying the for-pay IDE atop Eclipse isn't actually the point. Look at the technology underneath Eclipse: dynamic extensible plug-ins and OSGi service bundles. It is a platform where one tool can easily extend and integrate with others.
Yes, you can take the same NetBeans jar file and run the installer on Linux and Windows with equal ease. So what? I can download the correct Eclipse SDK for either of those platforms just like you'd have to download the correct Java SDK. What I get in return in a far more reponsive GUI with the native platform look and feel. NetBeans has made great strides in this department, but it hasn't caught up to Eclipse yet.
Eclipse as an open source platform (not simply an IDE) has far more vendor weight and more potential than NetBeans, as a platform, does.
No.
Eclipse has enough quirks and bugs to justify having Netbeans around. Just have the Netbeans lot decide to support other languages better than Eclipse and integrate jEdit and Netbeans is on top again. I'm currently doing PHP stuff with Eclipse and while it's nice for free it certainly isn't the bar for OSS IDEs. There is plenty of room for Netbeans and I don't see the 'momentum' you're talking about taking any effect on real-world usability of eclipse. They even still don't have a devent FTP connectivity.
We suffer more in our imagination than in reality. - Seneca
Eclipse is doing another microsft: success on looks and marketing. Netbeans beats eclipse on functionality. Eclipse is nothing more than an advanced editor that provides code completion, integrated debugging and looks good. For any serious JAVA work , e.g., J2EE, J2ME work eclipse is useless. Getting code completion in JSP, and debugging J2EE apps to work is a pain in eclipse. Eclipse lacks the support for template applications that make it so easy to start the work. For all serious JAVA functionality eclipse depends on plugins. And well-supported plugins are rare. Netbeans provides tightly integrated support for J2EE and J2ME along with the option of extending the IDE using plugins.
Eclipse is not what you may think it is. Eclipse is the community front-end for the expensive IBM WSAD environment.
I find your definition odd. Eclipse is an IDE for Java development. My team and I use it to develop server applications, JBoss services, and SWT - based GUIs. At a previous job, I worked with people who were using it as a C++ development environment. I actually had to google for "WSAD" to even know what you were even talking about.
There are 0x40000000 types of people: those who understand 32-bit IEEE 754 floating point, and those who don't.
Sorry, they run only on an abacus. Thankfully, UML is 2-D, because the 3-D acceleration routines cause carpal tunnel syndrome after abour four hours of modeling. In 2-D, well trained abacus operators can run at least 12 hours, covering a good work day.
I moved to Netbeans from Eclipse. Eclipse *was* the best IDE in existence, bar none. I personally find that since NB4.1, Netbeans is a better IDE - at least for the work I do. I find it much easier to work with.
The fact is that NB has a good chunk of the IDE space and has been trending up recently. It's far from out of the picture.
It's also where innovation has been happening recently - Matisse, the UML and BIPL tools. Eclipse has been positively stagnant by comparison.
NetBeans is also pure Java, written on Swing, while Eclipse uses its proprietary SWT, which uses native calls to get its GUI work done.
This is a *good* thing, and one of the main reasons I used Eclipse instead of NetBeans for my last Java product.
First, calling SWT proprietary is disingenuous; it's still open source, no? Or am I just horribly misinformed?
If anything, it's Swing and Java itself that's proprietary.
Anyway, I'm a big fan of native widgets. It's somewhat superficial, but one of the big reasons I don't use OpenOffice when I'm booted to Windows is because it doesn't feel/look "right", and that's almost entirely due to the non-native widgets.
The NetBeans tools may be great, but NetBeans' time has passed. Eclipse now has very strong momentum.
The statistics of IDE use disagree with you. Both Eclipse and NetBeans have very strong momentum. NetBeans use has been increasing dramatically recently. The reason? NetBeans has so much included in the base system, such as J2EE development and GUI designers. With NetBeans 4, powerful refactoring facilities were added (at last!), and with NetBeans 5 there is now one of the best GUI designers (Matisse) ever released.
It is important for the future health of Java development that there should be a choice of quality IDEs. If there is just one, then it can have excessive influence. A recent example of this was Eclipse's late support for Java 1.5. Many developers held back on the use of Java 1.5 because Eclipse did not support it.
Eclipse is the most widely used Java IDE, but NetBeans (and others, such as IntelliJ) are very widely used as well.
There has always been need for a great open source UML modeling tool, hopefully people will start designing 'more' with tools like this readily available. Other tools experience:
Thank you Sun for helping the developer community.
NetBeans is also pure Java, written on Swing, while Eclipse uses its proprietary SWT, which uses native calls to get its GUI work done.
So does Swing - this is how the underlying AWT API works.
Ding Ding - Wrong, but thanks for playing!
g uage
Unified Modelling language is used by Analysts, Architects and QA to ensure that an application will support the user or business processes that are required for the organization. It is best if it is used from the Requirements gathering stage onwards.
Use Cases are used to determine Actors (Objects) and Actions (methods) and to identify business rules and requrements which may need to be enforced programmatically. The use cases will result in specifications, which go to the developers, and Diagrams, which can be shown to the users and stakeholders to illustrate exactly what the system being designed will do.
If your software development efforts have NOT been user-facing, or have not needed to fulfill some business or operational function you may not have been exposed to UML where it is the most used and useful.
Check Wikipedia for more: http://en.wikipedia.org/wiki/Unified_Modeling_Lan
Cheers
I'm not talking IDE use, I'm talking open source tools platform. While I personally prefer the Eclipse IDE to the NetBeans IDE, having actually coded for each as a platform, I can offer an opinion from experience: the Eclipse programming model makes just makes it easier to get things done. Most vendors seem to agree, which is why, with the exception of Sun, all the major Java vendors are Eclipse Foundation members (including my employer--naturally my opinions are my own).
Compare NetBeans on this footing and you'll see the difference.
I'm not talking IDE use, I'm talking open source tools platform. While I personally prefer the Eclipse IDE to the NetBeans IDE, having actually coded for each as a platform, I can offer an opinion from experience: the Eclipse programming model makes just makes it easier to get things done. Most vendors seem to agree, which is why, with the exception of Sun, all the major Java vendors are Eclipse Foundation members (including my employer--naturally my opinions are my own).
Compare NetBeans on this footing and you'll see the difference.
You are right - and a large part of Eclipse's success has been as a tools platform. Fortunately, NetBeans is catching up in this area, with new tools and APIs for plug-in developers.
However, I still think that what matters in the end is the user experience, not so much that of the tool developer. This is why recent versions of NetBeans have been so successful, and why its share of the Java IDE market is growing.
Way better than NetBeans Editor
No, it really isn't. NetBeans Matisse GUI editor is recognised as being one of the best ever developed.
Cause we really wanted what Microsoft had 2 years ago to have been released at that time... *shudder*
I realized why the the hell would I program anything in Java if the premier IDE for it, written in java, was such a dog. I stopped going after that.
Eclipse should not take that long to start up on any reasonably configured modern machine. If it takes more than 20-30 seconds, something is seriously wrong.
But there is another point - IDEs are among the most complex applications - they include plug-in tools, application servers, debuggers and so on. Such tools can be 'dogs' no matter what language they are written in, and to dismiss Java because of this is naive. Simple Java applications can be small and fast. On my laptop, the full-featured programmers editor JEdit - a pure Java app - starts up in a few seconds.
I believe the GP meant "release the source" as in set it free. That's different from making it available to look at but not touch and not redistribute. Mustang is certainly not free (as in free) or open source.
"Oppression and harassment is a small price to pay to live in the land of the free." -- Montgomery Burns.
I just don't understand where the anymosity comes from. It's not like sun is out there doing violence to the OSS community or anything.
No, I was thinking more along the lines of razor blades where the handle is given away for almost nothing. Since Sun now a software company, maybe they should give the hardware away. Seems like every time I come across an older SPARC system, someone is giving them away.
You aren't getting it then. Eclipse is the framework that IBM is building thier premiere office interactivity client Lotus Notes on. It is the framework: Lotus Notes will be an Eclipse plugin exported as an executable (on every platform x,y,z that eclipse runs on) that will run as a native application.
Eclipse is more than an IDE. In fact, I am pretty sure that the IDE is just another plugin that runs inside the framework to allow you to edit java code. Eclipse is an application framework that makes developing applications (I mean complete end to end applications) much easier; and these are not WebSphere applications: they are native executables.
I'm an outsider here as I don't like Java at all but Sun has forthrightly stated, at least in the software developement publications that I read that this is no way, shape, or form their intent. They (now) openly acknowledge that Eclipse seems to be the framework/IDE of choice of the Java community (at least you people have a by God real community, too!) but they intend to provide the NetBeans IDE as an alternative to those that like it (and I know of more than a few top name developers that I read that like it).
FWIW, I take them at their word. Y'all have a nice day.
"[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
Just my $0.02
"[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go
After all these years, Sun still does not have a programming language that includes function composition, tail call optimization, type deduction, referential transparency, logical types, operator overloading & specification, compile-time/meta programming etc.
Great! Now go back to your memory-leaking, buffer overrrun-vulnerable C++ and oh-so-modern CORBA tools.
Apart from OpenOffice, NetBeans, NFS, OpenSolaris big chunks of most Linux distributions (last time anyone counted RedHat contained more source attributed to by Sun than any other entity except FSF), cubic spline, etc etc etc etc.
If you how to target WebSphere in an efficient manner without using RAD 6 (successor to WSAD), could you elaborate?
My company has 'standardized' on WebSphere, but my team mates and I would love to use something other than IBM's development tools.
Unfortunately, using another container (Tomcat, Jetty) with Eclipse/NetBeans for development has proven problematic at deployment time due to WebSphere quirks.
I read
Wow. I'd love to see you try and get the sales people on my team to read your predicate calculus user requirements. Talk about living in different worlds...
GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
There's no such thing as a small and fast Java application. Unless you happen to be talking about hello world, and ignore the size of the JVM/class libraries.
The JVM is tiny, and Java typically only loads the individual classes it needs as it needs them. This means you can ignore the size of the class libraries. Java is the language of choice for mobile devices because it can be so small.
As for Jedit... I'd say 5 seconds... and that's for a *fucking* text editor.
On the same machine the Kate KDE text editor takes longer to start up. In other words, Java app start-up time is indistinguishable from any other program.
Java is a dog. There's no shortage of empiracle evidence to show it.
Show us some then.
NetBeans is also pure Java, written on Swing, while Eclipse uses its proprietary SWT, which uses native calls to get its GUI work done.
It's funny how this stupidity continues to get thrown around by Netbeans fanboys. Because we all know that Java-Swing actually uses no native code *rolls-eyes*. I guess that just continues the "fine" McNealy/Sun tradition of saying that "Java is the platform, and the OS is irrelevant". Oh, and nice how SWT is suddenly "proprietary".
Sun must really be getting nervous about Eclipse being a true universal tools platform - while Netbeans...well it does Java OK, if you can stand looking at Swing for more than 5 minutes.
You aren't getting it then.
What's this "it" that I don't get? I was simply saying that Eclipse is an IDE for Java development. I was responding to someone who seemed to think it was primarily a "gateway drug" to WSAD. None of the developers I've worked with see it this way.
Eclipse is an application framework that makes developing applications (I mean complete end to end applications) much easier.
Indeed. We use the Eclipse framework for our GUI applications. Like you said, not WSAD applications. But when a developer tells me he's using Eclipse, 99% of the time they mean the IDE.
There are 0x40000000 types of people: those who understand 32-bit IEEE 754 floating point, and those who don't.
Since J2SE1.5, sorry J2SE 5.0, the OS look and feel has been part of the runtime. Yes, the Java runtime does do native calls behind our backs, but that's what the VM is supposed to do. No, I don't want to use layers that limit where I can deploy my software. Perhaps you have the luxury (or would it be drawback?) to develop and deploy on the same OS with the same tools, but some of us have to actually write transportable code; develop on Windows or LINUX, deploy on Solaris, or whatever. Start mixing the real Java tools with the bits and pieces provided by others, especially when they aren't "pure" Java, and you're looking for trouble. Eclipse is dandy. As I said, I use it almost daily. NetBeans is a fine platform, too, and shouldn't be discounted out-of-hand just because one is more familiar than the other. And using either one, or something different, shouldn't affect the code developed within their confines. And I don't speak for Sun, nor do I have any particular information on their "nervousness"; these reflections are mine alone, shared for your entertainment. Finally, to address some of the other comments; both NetBeans and Eclipse are "platforms" not strictly IDEs. As most commonly downloaded (I would imagine--I have no statistics--I'm basing this purely on the packages offered at their respective download web pages) they are Java IDEs. Both can be integrated with C compilers. Both have plug-ins for PERL and PHP and other stuff. Both are easy to extend, and both have solid foundations. Plusses and minuses both. Fewer minuses for Eclipse, sure. Not as many as some would think for NetBeans.
End the FUD
All my work at this level is with SMB's or, in the past, the military and government agencies. SMB's won't have a clue what you are doing anyway, usually, so moot point. The military, or at least the people I worked for, loved the technique as I could prove mathematical correctness. Lives depended on my work. The government agencies would be problematic today as they like UML/UML2, but in the past they liked mathematical correctness as well since all that work was in the medical field and again lives depended on my work.
Someday, I'll have to learn these beasts. I do have the books and tools (Rational Rose, etc.), but UML/UML2 still allows you to dig yourself into logical and mathematical traps if you aren't careful. Actually in pretty much the same way that standard flow-charting does which is why I invented my structured flow-charting technique. Still, it's the tool of the day which probably explains why I haven't taken on any projects of late [save my enterprise beta work and network security].
"[I]t is a wise man who admits the limits of his knowledge or skill, and that pretending either causes harm." --Terry Go