The IBM Rational Application Developer for Linux trial download enables developers with diverse technical backgrounds, and even those unfamiliar with Java, to quickly build rich, data-driven applications.Features, benifits and support includes: Eclipse 3.0 Integration, UML Visual Editor, Tomcat Jakarta, Ant scripting, EJB universal test client, Integration with Rational ClearCase, Struts support, JSP and servlet wizards, JSF Component Layout, Swing GUI Construction, SWT GUI Construction, Visual portlet development, Portlet templates, SQLJ support, SQL query builder, Support for DB2, Informix, IBM Cloudscape, Microsoft SQL Server, Oracle9i and Sybase and Web services and SOA development tools.
That’s a recipe for success: having people who are unfamiliar with the language write programs in it. I really never understood the “draw pretty diagrams instead of writing code” approach to programming.
So you’re against any tools that allow you to visualize your application or just against Rational.
I never really understood those that think that text-based development is the pinacle of programming.
Probably not, but he is against this:
and even those unfamiliar with Java, to quickly build rich, data-driven applications.
As am I. Have you ever worked on a project with anyone whose only experience with a language has been with the drag-and-drop style of development? Nothing wrong with using a productive tool if you know the environment/language, but marketing it like this will lead to legions of point-and-click “programmers” that have no idea how to build quality software. How would one debug a language they are unfamilar with? But I guess that really doesn’t matter anymore since product quality isn’t something most organizations really consider in practice.
Nobody in their right mind thinks that drag-and-drop solves anything.
One of the smartest people I’ve ever come across in my IT world was a hardware engineer from Massachusetts. He wrote microcode and designed hardware for the most part. We were in a joint project with his company, and him and some other people from the company came down for a few days to see what was up. Now we are a C++ shop and I was in charge of writing a configuration and little management server for these devices (time-date stamp devices for brokers).
He was like, “WTF are you writing this crap in C++ for”. He proceeded to open up his laptop and bring up Visual Basic. He did a little gui, added a little code and was done with a sample app.
The moral of the story is let the computer automate things that the computer should be automating. It’s like in the movie War Games. Let the computers do things that computers are good at, but don’t take the humans out of the loop.
Wow! a little sample app in VB? Wow!
You’ve missed the point of Rayiner’s initial post and my response to you. Read the following until you get it:
and even those unfamiliar with Java, to quickly build rich, data-driven applications.
This isn’t about you or your *brilliant* friend writing little VB apps. This isn’t about using VB, Delphi, C++ Builder, or IBM Rational Application Developer. This is about people using tools to generate code that they don’t understand and will most likely not be able to debug, optimize, evolve, or maintain.
What part of Nothing wrong with using a productive tool if you know the environment/language don’t you understand.
BTW, there is an enormous difference between writing little sample apps and Rich applications
Rational Rose is not a tool to make fun of, if this even has a subset of its features than it’s worth a look.
you guys have obviously never had to prototype a REAL project before, have you?
I have to agree with Tim, abstracting the user too far away from the underlying system will create a new generation of very poorly written, macro-style code that will never become optimised as this part of the software engineering process will be overlooked by all by the most dedicated of programmers. Sure, it’s not for everyone but getting into the nitty-gritty in notepad/emacs really rings my bell.
http://www.xolinc.com/blog/index.php?id=35
good on IBM for Rational though, it looks good for what it is. Just not my cup of tea.
And you obviously haven’t read the comments you’ve replied to. Nobody’s said anything bad about Rational Rose.
That’s a recipe for success: having people who are unfamiliar with the language write programs in it. I really never understood the “draw pretty diagrams instead of writing code” approach to programming.
Its like saying I have never understood the drawing board approch to car design, why not just go out in the workshop and make the car.
Diagrams are faster to read. Once you have finished a class library you don’t need to see how it is implemented to use it. Just the available methods.
Diagrams are faster to draw, this makes it possible to get an overview of the system before all code is actually written.
Diagrams makes it easier to communicate with a skilled customer, that perhaps doesn’t know the programming language you are using.
Interesting, there is the debate between the hardcore of both areas. Does anyone here actually realise the biggest point of failure of any project is crappy planing and design? Its all very well having religious debates over which text editor is better or which programming paradigm is superior, but at the end of the day, it doesn’t really matter; syntax is syntax, anyone can pick up a language – what is more important is ensuring that the ground work is laid in regards to the design and planning of the system.
If the system is poorly planned, it doesn’t matter how many wizz bang applications or “l33t” programmers you have on board, each advocating that their language is superior to all others, the deciding factor will be how well the system was designed. If the system is designed poorly, then ultimately the resulting product will be a poor piece of coding.
> notepad/emacs
I don’t think the slash is very appropriate here…
Writing code is a craft. Programmers are craftsmen. Skilled craftsmen use the best tools that works for them and just do the job.
Now for the craftsmen to know what is required from them, there has to be a design. This is the job of the systemengineer and the systemdesigner to communicate. Diagrams just happends to be very good at that.