Tech Alliant - Your technology ally

  • blogs
  • events
  • forums
  • training
  • contact us
Home › Blogs › John Hoffler's blog

User login

What is OpenID?
  • Log in using OpenID
  • Cancel OpenID login
  • Create new account
  • Request new password

Navigation

  • Popular content

Search

Who's online

There are currently 0 users and 1 guest online.

Last viewed

  • The 2010 Science and Engineering Apprentice Program (SEAP) online application is NOW open! 30 sec ago
  • #NotIntendedToBeAFactualStatement and Why so Many Projects Fail 2 hours ago
  • The Hot IT Skills of 2011 2 hours ago
more

Tag John Hoffler's blog

Feed Icon
Google
Delicious
Yahoo!
NetworkedBlogs
Furl
Simplify

Who's new

  • Marlon R. Rigaud
  • autocarrera
  • GeorgeSzynal
  • daemnant
  • lannsaby

Hammers and Screws - Know when you shouldn't use a technology

John Hoffler's picture

John Hoffler — Thu, 12/10/2009 - 9:41pm

I once interviewed for what I suppose you could call the chief architect position at a small firm (about 1,500 employees) that wrote logistics software. Their flagship product was based on Enterprise Java Beans (EJB) version 2.1 and they were looking for someone to lead them through the migration to EJB 3.0. At the time I was the team lead for the Java half of a internal resource management application.

Part of the interview process involved an in-depth technical discussion of EJBs with a panel of their existing architects. We discussed the underpinnings of EJB 3.0 persistence, its performance and code maintenance benefits relative to EJB 2.1, and the probable level of effort involved in migrating from EJB 2.1 to EJB 3.0. Suddenly, one of the architects asked why I was not using EJBs in my current application, given my obvious  respect for the technology. I then launched into a 30-minute explanation of situations that do not lend themselves to the use of EJB persistence. Because these were Java nerds I went into excruciating detail about EJB entity relations, the actual SQL queries executed to build result sets, and the interaction between an EJB-based application and a CICS application that updates the same database. Altogether, I presented a half dozen application-specific design issues that either nullified the advantages of using EJBs or exposed a disadvantage of EJBs.

I presume my answer was satisfactory (if perhaps long-winded), because they made me an offer the next day. The recruiter that presented me to the company claimed she had worked with them for nearly a decade and had never seen them turn around an offer so quickly. I mention that because (1) why not take the opportunity to brag a little and (2) the fact that they got so excited about the candidate who told them when not to use a particular technology is relevant to my point. Far too many technologists have an allegience to a particular technology and begin looking for possible situations to use the technology instead of looking for the right technology for a given situation. As they say, when you're holding a hammer everything looks like a nail. Fix this natural human tendency by putting down all your tools before evaluating the situation. Once you determine whether you're really looking at a nail or a screw you can pick the appropriate tool from your toolbox. Don't recommend  VMware when Linux on zSeries is a better fit. Don't use Linux on zSeries when a Java fabric on Intel would work better.

  • EJB
  • J2EE
  • Java
  • John Hoffler's blog
  • Add new comment
  • Share/Save

"It's the way we have always done it...."

Anonymous — Wed, 05/12/2010 - 9:53am

Your comments are appropriate in many areas. I have have worked in shops that want to us AJAX, EJB, PHP... the list goes on and on, just because it is a new hot technology at the time. I have worked in shops that used SOAP Services because SOA was the new thing. The fact that 98% of the SOAP envelopes were empty and 99% of the Web Services were accessed by internal systems never even came up as an overhead issue.

Now I find myself in the exact opposite position. I am working on software that has Model 1 JSP's, Outdated frameworks to handle situations that could be better handled by filters, and hand coded SQL layers that use least common denomiator SQL so that it can be database platform independent. When questioning why we are not using newer technologies like Hibernate/JPA, SOA, Common Rules Engines, Content managers, etc, I get the we have always done it this way argument. Just because the hammer was used priviously, does not mean that it is still appropriate now. Architecture should always keep its pulse on the new technologies, but finding today between yesterday and tomorrow is not always easy.

  • reply

Preconceived notions...

Anonymous — Fri, 12/11/2009 - 9:47am

I appreciate your commentary ... it is always a good idea to set aside preconceived notions and look at situations with a fresh set of eyes...

peace, Wayne

  • reply

"when you're holding a

Anonymous — Fri, 12/11/2009 - 1:37am

"when you're holding a hammer, everything looks like a nail. " ;-)

I'm going to borrow this.

  • reply

I don't even remember when I first heard it!

John Hoffler — Tue, 12/15/2009 - 11:09am

Thanks, Karma. It's one of those sayings that's stuck with me since childhood.

John Hoffler
Founder, Tech Alliant
http://www.techalliant.com/blogs/john-hoffler

  • reply

Log in to skip CAPTCHA

This site uses CAPTCHA as a challenge-response test within web forms to determine whether the user is human, you won't have to answer any CAPTCHA challenges when you're logged in.

Today's top pages

  • The Hot IT Skills of 2011 (13)
  • The 2010 Science and Engineering Apprentice Program (SEAP) online application is NOW open! (3)
  • #NotIntendedToBeAFactualStatement and Why so Many Projects Fail (2)
more

Recent blog posts

  • Embracing Diversity in the Information Age
  • #NotIntendedToBeAFactualStatement and Why so Many Projects Fail
  • The Hot IT Skills of 2011
  • Setting up a Xen Server
  • A quick look at Liferay Portal Server
  • Have you checked your electric bill?
  • Old School Virtualization
  • OK, You're finally an Architect........Now what?
  • Hammers and Screws - Know when you shouldn't use a technology
  • Virtualization: The Importance of a Story to Tell
more

Monthly archive

  • November 2009 (7)
  • December 2009 (8)
  • January 2010 (1)
  • March 2010 (1)
  • May 2010 (1)
  • June 2010 (1)
  • October 2010 (1)
  • January 2011 (2)
  • April 2011 (1)
  • February 2012 (1)

Recent comments

  • Liferay 6.x jQuery update
    1 year 15 weeks ago
  • Good stuff!!
    1 year 16 weeks ago
  • No story, no plot, no characters
    1 year 31 weeks ago
  • "It's the way we have always done it...."
    2 years 1 week ago
  • Yes, let's partner up
    2 years 21 weeks ago
  • Link Network Instruments Virtualization Study
    2 years 22 weeks ago
  • what a great opportunity!
    2 years 22 weeks ago
  • I don't even remember when I first heard it!
    2 years 22 weeks ago
  • Preconceived notions...
    2 years 22 weeks ago
  • "when you're holding a
    2 years 22 weeks ago

All Comments, © and ™ belong to their respective owners/posters
Other content © Copyright 2012 Tech Alliant Corporation, All Rights Reserved

  • blogs
  • events
  • forums
  • training
  • contact us