How much time out of your day does IBM waste?
I’m not a huge fan of IBM and rightly so, I spend most of my day dealing with nuances of WebSphere Application Server (WAS) and Rational Application Developer (RAD) all because some suit drank some Kool-Aid provided by an IBM sales rep who has never in their life used the products. I’ll tell you right now…the support that you may think you are getting is not worth all of the headaches you will have dealing with WAS and RAD. On any given day, I can almost guarantee that it will break down like this.
- 1 hour sporadic time waiting for WAS to deploy after I make a change. On a heavy day, this can be two hours.
- 30 min – 1 hour waiting for RAD to respond during a garbage collection cycle. You’ll know this is happening because RAD will lock up until it finishes.
- Some days in a month, I am trying to figure out some classpath issue that is specific to WAS. Many standard J2EE application setups, choke in WAS due to WAS trying to favor it’s own IBM classpath. This can range for a couple hours to a couple days.
- 30 minutes a day looking for some setting in RAD that is hidden in 5 different places
- Often I spent a couple hours looking for some issue that turns out to be an IBM specific problem. A good example is that WAS wasn’t allowing my servlet filters to fire in an app so I had to set a property in WAS console to fix it and another time I had to patch WAS because the idgits at IBM decided to make it, by default, look for Web Service annotations and try to create a Web Service and they didn’t put in a way to turn it off. Hours and hours of work here.
- I spend a lot of time looking for settings in WAS Admin console that are easy to find in JBoss or Tomcat.
The sad thing is that RAD is nothing but Eclipse, weighted down with IBM plugins and I love Eclipse. The latest release, Helios, is one of the nicest IDEs that you can use and it is totally free. It does everything RAD can do and it leaves a lighter foot print, unlike RAD that is the software equivalent to a Yeti (Abominable Snow Beast, Bumble if you prefer Yukon Cornelius’ slang).
No one ever calculates the lost productivity when the consider IBM products and really no one looks at the amount of money spent either. There are plenty of open source solutions that are faster, easier to configure and support is a Google away. My preference is to use Tomcat. Since every sane developer pretty much uses Spring anyway, Tomcat is the perfect choice and it is easy to support and maintain. JBoss is another great choice if you must have more J2EE container features, but again, by using Spring, they are mostly unnecessary.
I wrote this little tidbit after two days of trying to figure out why RAD keeps wrecking a classpath that is in a project that I am checking out, resulting in failure to run a project. I’d go into details, but you’d just ignore it anyway, a lot like most folks who know what they are doing ignore IBM…
Chime on in and let me know how you feel about RAD and WAS. I’d love to hear about how much time out of your day IBM is wasting…go ahead and take a few jabs at Oracle too if you’d like, I don’t mind.
“every sane developer pretty much uses Spring anyway, Tomcat is the perfect choice” – exactly!
The best app server is a server that implements Servlets-2.5 specification and leaves all other aspects to what's in your WEB-INF/lib. That's my conclusion after years with OAS and WebSphere. Tomcat + Spring + Hibernate + Ehcache + Terracotta + Velocity is much better/faster/reliable than all that commercial “kool-aids”
regards
Grzegorz Grzybek
I've got a couple…
Shared libraries, why do the full classpaths get copied over to every component referencing the library? Heap use is massive just as if you had included every jar you needed in each component anyway. JBoss and even WebLogic don't have this problem.
Don't even *think* about using process server for anything but a one-off. You'll spend less time writing a new business application server from scratch than you would building a framework on top of it.
And I completely agree on the ruining a perfectly good IDE (Eclipse) point.
Just don't use it, then. Bundle a jetty instance (or something even lighter) with each web app and add your own main method so you can run them with java -jar mywebapp.war. You probably have an apache instance (or the ibm apache version) in front anyway, so you only need to change the modproxy-setup.
We were there. We made the switch. We still celebrate the day we made that decision.
Yeah RAD… the most unproductive IDE ever… however sometimes you need to debug some WAS specific issues and that's a nightmare.
Every time you redeploy God kills a kitten!
You should raise some PMRs. Remember to get the last two weeks of logs, upgrade to the latest patches, make sure that they agree to support your current configuration of websphere, and be prepared to spend weeks/months waiting for them to fumble out the solution you actually provided to them in the original PMR analysis.
That's assuming that the bug is actually reproducible given the what-the-hell-is-websphere-doing-today randomness.
Hi! Don't know would help you.. but what if you had a JRebel license? I can provide you one.
Thank you my friends for the suggestions of just getting away from IBM, but Corporate mandates we must use it for now… This is the part about somebody drinking some Kool-aid I was mentioning. If I could go to something else, I would gladly… Keep the experiences coming though. I still want to hear how many people out there suffer with IBM products…
I'd like to add ClearCase to RAD and WAS. You're very very very lucky if you don't have to make your version control on that piece of sh**. It take about 1 minute PER FILE PER OPERATION. And if something goes wrong YOU have to find out what was commited and what was not.
1) Get a decent machine. 1 hour garbage collecting ?!?
2) Make changes in debugging mode (no need to redeploy) or even use JRebel (no need to redeploy).
3) Use something different (even if that means changing jobs), something that _you_ like.
I happened to like WAS and RAD and never had any problems with it, and I now use JBoss – where documentation and support imho s***s compared to IBM's.
I used RAD. RAD sucks and kills productivity. On average I wasted 1 – 2 hours a day with RAD/WAS issues. It seems that almost any enterprise IDE kills productivity. Probably it is a requirement to be adopted by enterprises.
If you want to take the time wasted guesswork out of the equation, there is a plugin called Lack of Progress Bar that will record all of the time spent waiting for things like rebuilds, redeploys, republishes, validators, version control activity, etc.
http://lopb.org/
Here's a quote from the LOPB website regarding one reason you might want to use it:
Produce ‘hard numbers’ as supporting evidence to convince managers or other non-developers that investments in better/faster development tools and infrastructure have led or will lead to positive ROI in terms of time saved.
http://www.dreckstool.de/hitlist.do
RAD is #4 worst tool in german speaking world.
How does this match with IBM's management principles?
Citing from here: http://www-03.ibm.com/ibm/history/documents/pdf/management.pdf
“Respect for the individual, the best customer service and superior accomplishement of all tasks”
oh well…
This is precisely why we made MyEclipse Blue Edition.
http://www.myeclipseide.com/blue.php
I've been using RAD/RSA and WAS for 4 years and though I had hard times with them and actually use Eclipse when I don't need RAD's plugins easying work with WAS (for it's more recent and doesn't pay memory/CPU for the unused IBM plugins), my experience isn't that bad as yours. As a developer – our admin might disagree – I find the WAS Admin Console rather nice, Tomcat/JBoss have nothing comparable.
I believe any big software has its issues, enterprise features bring with them heavy load. If possible, I prefer to use simpler tools for the development (e.g. Eclipse, Maven, Jetty) but appreciate what WAS offers when running in the production.
If you want to know what a really terrible tool is like – though you already might know this – try Lotus Notes
As long as the customer will pay for any delay of delivery – e.a. due to a longer development and deployment cycle, so why should they change their “tool-politics”, it isnt neccassary, quite the contrary, its generate jobs, employment, money and that is what in this times counts.
Who cares of the issues any developers, your waiting time would be paid. So what….
It is not my opinion, but its fact in the practice, isnt it?
So, the customer is the key to change any approach, so, customers, use your power
You think you have no choice but you do. Leave that place.
Rad is a nightmare so we ditched it for eclipse maven/tomcat in development and WAS for Test Accep and PRD. Eclipse with maven spring tomcat also gives some headache but that is minor compared to RAD.
As for an Appserver I must say that Websphere has some strong points. I like the jython deploys, and on the whole WAS has improved a lot over the different versions.
I second you over your statement that corporates are not making the wisest choices for products. Man we have the most fancy and expensive ssh client available but everybody in the firm uses putty.
I agree with Tom. Just leave the place. Management will follow you when you demonstrate higher productivity and lower license costs. It will probably be necessary to do it on the side as a skunk-works operation, and management will also take the credit for “their team” making such improvements afterwards, but in the end your life will be better.
You don't have to work with RAD to write apps that can run on WAS. Example: IntelliJ's support for debugging etc on WAS is excellent (although you have to pay for a license). RAD adds a lot of extra “IBM” descriptors, jar's etc.
Make your app run on JBoss (or something lighter) and then just deploy on WAS when you need to ensure that it works on WAS.
Many of us do it like that.
Try Grails (http://www.grails.org) and STS (http://www.springsource.com/developer/sts) . Removes most of the pain from J2EE web app development.
maybe you just need a faster computer.
Here is my 5 cents. I have more than 4 years of experience dealing with WAS and IBM and you know what i am gonna say? It's perfect! Yep! I love it very much! Are there any issues with this software? Yep, there are. Plenty of them! But! Nothing is perfect! Despite it seems very unproductive in development it's actually the best AS in PRD i've ever seen! It's stable and very well documented, easy to expand and clustering! It's not cheap, I agree. But in Enterprise sometimes is better to pay more once, instead of pay much much more in future. So, you might decide to use Tomcat+maven+whatever for development but THIS IS nightmare, believe me! I'm now using IntelliJ IDEA+maven, due to the corporate policy and for reducing money for development. This is really painful! And deployment is sucks in this case, because if you use RAD deployment is much much easier in development, when you use built-in WAS test environment for development. So, there is my point – IBM has their own philosophy of how thing should be done, and IBM has it's right, because it's a corporation existed for one age on the market! I'm not an IBM evangelist in any case, this is my own opinion.
I just made a minor change to the deployment descriptor for one of my EJB modules within my EAR and I have wasted over three hours getting past all of the RAD “Productivity Enhancing” pains in the @#*!
First it suddenly found compiler errors that weren't there last time I compiled the same java sources that didn't change. Then the deploy step takes forever because it is doing some kind of clearcase refresh on every one of our multitude of projects. Then the deploy step fails on an RMIC error. Stop, Repeat, Stop, Clean deploy directories, Prepare for Deployment, Start server, Repeat, Stop, Clean deploy directories, shutdown, reboot, repeat, …
Eventually some magic cache must get cleaned out in the damn RAD and it works.
Another 3 hours of IBM “Productivity Enhancement” that I won't get back!
IntelliJ IDEA was sooooo much better. It actually improved my productivity. Imagine that?
I'm using wAS/RAD for more than 7 years! (RAD, was named WSAD in the past).
It's good products, heavy, slow, not perfect, but these guys were here since the begining, with really good implementation and impressive marketing demos of poor J2EE specs (1.2, 1.3, 1.4).
This reflects my personal opinion:
Editors like IBM try to sell very lucrative packages: “J2EE containers + proprietary IDE + support”, applying the same marcketing method that works perfectly for other lucrative packages: “Mainframe+CICS+RACF+DB2+MQ+support”.
Managers and CIO believes that “It's IBM! tell me ho is the millenium IT leader?!!”.
Architects thought conceptualy, they want to apply models and hate to have to discuss about tools choices with obtuse managers. Developers… who talks about developers?!
It's the situation since the first J2EE version in 1999/2000.
I prefer to think that things are going to change. Many reasons for that: demystified integration models (many revealed pitfalls), experienced architects and developers, better JEE specs and better Containers/IDE alternatives. Now IBM guys are not the only leaders!
Your IDE or container stuks? Through it away and choose another one, this should not affect your application. It affects? So It's your code that you have to through away! Buy a book and learn good practices and stop moaning about… tools!
I'm using WAS/RAD for more than 7 years! (RAD, was named WSAD in the past).
It's good products, heavy, slow, not perfect, but these guys were here since the begining, with really good implementation and impressive marketing demos of poor J2EE specs (1.2, 1.3, 1.4).
This reflects my personal opinion:
Editors like IBM try to sell very lucrative packages: “J2EE containers + proprietary IDE + support”, applying the same marcketing method that works perfectly for other lucrative packages: “Mainframe+CICS+RACF+DB2+MQ+support”.
Managers and CIO believes that “It's IBM! tell me ho is the millenium IT leader?!!”.
Architects thought conceptualy, they want to apply models and hate to have to discuss about tools choices with obtuse managers. Developers… who talks about developers?!
It's the situation since the first J2EE version in 1999/2000.
I prefer to think that things are going to change. Many reasons for that: demystified integration models (many revealed pitfalls), experienced architects and developers, better JEE specs and better Containers/IDE alternatives. Now IBM guys are not the only leaders!
Your IDE or container stuks? Through it away and choose another one, this should not affect your application. It affects? So It's your code that you have to through away! Buy a book and learn good practices and stop moaning about… tools!