Why some of the Java EE / J2EE projects are inefficient ...or at least suboptimal
- Architects are more skilled in PowerPoint, than popular Java IDEs (OpenOffice ist still rare in real world :-))
- It takes several DVDs, sometimes hours, even to install the basic infrastructure (like appserver and database)
- Some popular servers take several minutes to start and deploy - you have to repeat this procedure several times a day
- It takes longer to open a case (and reproduce a problem) for a bug of the appserver, than fix it by yourself (of course if you had the source :-))
- It is hard to find developer hardware, where the "enterprise" development tools run efficienlty - ...and because they were expensive, it is hard to get rid of them...
- The architects love layers and tiers - several mapping procedures are needed just to pass a persistent entity from the persistent layer to the presentation
- Everything is configurable, replaceable and mockable. The XML overhead is huge. The question is: When did you really needed to replace something in your passed projects?
- Either it is waterfallish, or agile with all buzzwords and strange rituals. Both sides could be extremely inefficent. It seems like sometimes it is hard to be just rationale...
- Developers are sometimes too extreme: either everything is overengineered with millions of patterns or best practices, or hacked down in "go to spaghetti" fashion
- "The thrill is gone..." many developers, architects and managers just lost they enthusiasm and passion. This is one of the main reasons, why many projects are just so inefficient...
- HA, Clustering, etc. is used even for "guestbook-like" applications. Complexity rules!
- Strange QA rules (like documenting obvious getters/setters) drive the development and maintenance costs
Just my observation hacked down in 2 minutes in Starbuck/Munich :-) What's your favorite? Do I missed something?
13. Architects and Developers love frameworks. Even the simplest CRUD application will require internet://**/*.jar instead of using Java SE and or Appserver provided API-s.
Posted by Laszlo Kishalmi on March 26, 2008 at 03:36 PM CET #
Laszlo - exactly - I just forgot it,
Posted by Adam Bien on March 26, 2008 at 07:54 PM CET #
As Chales Mingus said:
"Making the simple complicated is commonplace; making the complicated simple, awesomely simple, that's creativity.”
It's just a lack of creativity.
Posted by Diego on March 27, 2008 at 01:05 AM CET #
nice post - I would choose number 6...as my fav!
Posted by Apostolopoulos Paris on March 27, 2008 at 10:52 AM CET #
I'll pick number 7 as my favourite. I even wrote a long long rant about this new interface-itis mock-everything nonsense
Posted by Alexander on March 27, 2008 at 03:30 PM CET #
Number 8 as my favorite: "...or agile with all buzzwords and strange rituals."
LOL - it's true ! That part really made my day :-)
Posted by Michael on March 27, 2008 at 06:34 PM CET #
When CTOs start coding and think they have written the best piece of code, which in the end is just a re-invention of a wheel with lots of premature optimizations.
Posted by Faisal Feroz on March 27, 2008 at 06:47 PM CET #
People are married to the code they have written and never want it to be replaced by a better/effectient one.
Posted by Faisal Feroz on March 27, 2008 at 06:48 PM CET #
I totally agree with number 1 :D.
Posted by Hazem Ahmed Saleh on March 28, 2008 at 06:51 AM CET #
... and dammit Mr CEO, programming in Powerpoint is NOT programming!
Posted by Jim Karabatsos on March 28, 2008 at 08:24 AM CET #
Nice list adam
2. use a wiki, maven and stuff like this to reduce the setup-phase as much as possible - enough good tools exist but few use them :)
3. use jetty + eclipse + maven
14. "politically decision's" ;)
Posted by Andreas on March 28, 2008 at 11:55 AM CET #
Good humorous article Adam Bien.
Posted by prashant on April 04, 2008 at 01:10 PM CEST #
LOOOOOOOOOL.. Loved the post completely!
I loved 6 also I loved the one added by Laszlo they are too real
Posted by Eman Ali on June 17, 2008 at 11:04 AM CEST #
I have read a number of posts of yours, but this is the one that I like the most. So expecting some more ideas from your side. Thanks !
Posted by Canada Goose on September 08, 2010 at 06:52 AM CEST #
Wow, this is so like reality. People want a solution that skirts this space. Mental buffers man, and by buffers I mean cushions.
Posted by Grok on May 27, 2012 at 08:49 AM CEST #
13. Anything WebSphere
Posted by KC on May 28, 2012 at 11:33 AM CEST #
13. Ancient evil: Hideous Legacy System lurking beneath corrupted layers of code, immortal, watching, waiting for your mistake. In madness you dwell!
Posted by PK on May 29, 2012 at 12:10 PM CEST #
Nice post. Love to read this. Point 7 is one i agree most.
Posted by Aly on November 21, 2013 at 03:07 AM CET #