JAVA Expert Andy Longshaw
|This week, Stephen Ibaraki, I.S.P.,
has an exclusive interview with Andy Longshaw, one
of the authors of SAMS Teach Yourself J2EE in 21
Days with EJB, JSP, Servlets, JNDI, JDBC, and XML.
Andy is an internationally known consultant, writer,
educator, design and architecture guru specializing
in J2EE, XML, .NET, Web-based technologies and
The other authors include: Martin Bond, Dan Haywood,
Debbie Law, and Peter Roxburgh. Each of the authors
is an international expert in application
development, deployment, consulting, training, and
technical writing. We were able to catch up with
them at Content Masters Ltd., a technical authoring
company in the UK specializing in the production of
training and educational materials —
Q: Your combined accomplishments are staggering.
Thank you for agreeing to this interview.
A: You are most welcome.
Q: I reviewed your most informative and useful book.
What led you to write this masterful work?
A: J2EE is a large subject - both broad and deep. It
can be quite daunting for beginners to know where to
start. Having "grown up" with J2EE over the years
you don't really notice this yourself for a time
until you become aware of a knowledge gap. I
normally see this at conferences when I'm giving
sessions on subjects such as J2EE Patterns and some
of the people I talk to are really keen to learn but
their understanding is quite patchy in some basic
areas of J2EE.
Q: What ten or more tips can you provide from the
book and about developing in the Java space?
A: They are:
- Gain at least enough understanding about
each of the parts of J2EE that you could give an
"elevator pitch" (60 second lowdown) on it.
- Keep looking for patterns and best practices
in books and email lists or newsgroups.
- Start getting a grounding in the essentials
of Web Services (SOAP, WSDL, etc.).
- Be clear on what the different types of EJB
give you and use each appropriately.
- Don't use Entity EJBs "just because they are
there" or they'll look good on your CV.
- Don't use EJBs at all if you don't need
- Find a good IDE and get it to generate as
much code as possible. Writing from scratch is
fun when you are learning but painful when
- Choose your application server with care.
The money you save on buying it could be lost on
days of struggling with a cheaper one. However,
cost is not the only indicator of quality -
check out the newsgroups to see what people say
- Get a broad education - if you get a chance
to look at other platforms (such as .NET) then
try to do so with an open mind.
- Find the right sweet spot for J2EE in your
organization. J2EE is aimed at commercial
applications (N-tier, web-oriented, etc.), so
don't try to use it to solve every problem.
Q: How would you contrast enterprise development in
Java versus .NET and is there a winner? What do you
see for the future of both development environments?
A: The biodiversity of the Java world in terms of
IDEs and application servers means that there is
healthy competition but it does fragment things
somewhat. In the .NET world, the use of Visual
Studio .NET (by most developers ) and the single
.NET framework does make it easier to exchange
information and code.
I don't see a "winner" since both environments have
their pros and cons. Also, when the "brave new
world" of Web Services arrives, it will be less
relevant which platform they are running on. Just
don't hold your breath…
Q: Can you describe your work at Content Masters and
where you see this company evolving in the short and
A: Content Master provides a stream of varied and
interesting writing work - from complete books down
to individual whitepapers. It provides me with a
useful outlet for knowledge that I have built up. As
Content Master uses a mixture of fulltime and
associate writers, there are very few topics that we
cannot find an experienced author to write on.
Q: Describe future book titles and articles can we
expect from you?
A: I tend to be quite eclectic in my output. I am
currently writing a book on .NET development and an
article on Web Services for Pearson's informit.com.
Q: Can you describe some of the projects that you
have worked on and what tips you can pass on?
A: I think that the best tip from all project work
is "don't trust the marketing, try the tools". A bit
of technical architecture work up front can save a
lot of tears later.
Q: What are ten or more traps or pitfalls that
developers should be wary of and avoid?
A: I'd probably refer you back to the previous
Q: Can you share your leading career tips for those
thinking of getting into the computing field?
A: They are:
- Get a good grounding in OO fundamentals
- Learn UML
- Learn one of the curly-bracket languages
such as Java or C# - it will stand you in good
- Learn XML
- Have at least a passing acquaintance with
- Read as much as you can on design and
- Remember that you are writing systems for
real people to use
- Don't be afraid to say "I don't understand"
Q: What are the hottest topics that all IT
professionals must know to be successful in the
short term and long term?
A: UML, XML, Web Service principles
Q: What would be your recommended top ten references
for the serious developer?
A: They are:
- J2EE Patterns (Crupi, Alur, Malks)
- Java Server Programming J2EE 1.3 edition
- UML Distilled (Martin Fowler)
- Refactoring (Martin Fowler)
- Extreme Programming Explained (Kent Beck)
- Design Patterns (Gamma et al.)
http://www.google.com - rarely fails me,
especially Google groups
Q: If you were doing this interview, what four
questions would you ask of someone in your position
and what would be your answers?
A: Probably some of the above.
Q: It’s a blank slate, what added comments would you
like to give to enterprise corporations and
A: Take time to think up-front, but think by writing
code and trying things rather than writing copious
documents. Also, find a good modeling tool.
Q: Thank you for sharing your valuable insights with
us today and we look forward to reading your books,
A: You're welcome