password
username
Sponsored by CakeMail, an email marketing software.
Newsletter preview

Tuesday, Oct 28, 2008

The Best Way to Start Designing Reports with BIRT

Take full advantage of Eclipse BIRT reporting technology with Actuate’s new Best Practice BIRT Report Design Package. Start with a thorough overview of BIRT in a 2 day training class and then get an expert consultant's help for 3 days in identifying the best practices that are specific to your project.

Get the details on BIRT Best Practices here.

Perspective

High Perf. Tuning for ActiveMQ/FUSE Message Broker



Visit the DZone Tech Library


A Developer's Perspective
Next section
Max Pool is a software engineer by day, and at night is the diligent blogger behind Codesqueeze here he gives ideas for creating better software teams and developers.

Why New Developers Should Consider Contracting
By Max Pool

A lot of young and talented developers are continually looking for new projects and problems to solve and gain experience with; however, there are very few single environments that provide the ability to diversify and grow. Most jobs consist of working on legacy code where there is very little architectural “wiggle room”. As a result, many developers feel the need to move to a different job or environment to get to the next level of learning.

While job hopping is one way to gain diversified experience, may I offer an alternative - contract work.

In hindsight, one of the fastest ways I matured as a software developer was through the experiences I had while working with a consulting company. Why is this? A few reasons:

Many New Projects (And A Few Old Ones)
Opportunity for a diversified workload is probably the biggest reason contract work is a great environment for learning. The opportunities for new projects and clients come fast and furious. In fact, in my experience I rarely was on a single project for more than 6 months (and even then, I was working on different client projects on the side).

The ability to start with a clean slate every 2-3 months is priceless. I always joke that the only code I am proud of I wrote less than 6 months ago. It’s for this exact reason, I got in the habit that I got to learn from every project mistake and continually get better.

Old projects exist as well (and this is OK) as it allows for developers to also learn how to maintain legacy systems. Brainstorming how to introduce unit tests into a Lotus Notes application can be a very daunting (but rewarding) task. Not every project gets a clean slate at the end, which is a great equalizer in terms of learning to write maintainable code.

Different Problem Domains
With different projects comes different problem domains. It is insanely fun to be building a restaurant’s blog, then to go to a meeting about blood pressure machines, and finish the day off with learning about retirement funds. Don’t get me wrong - it can be exhausting…but it is enlightening.

Probably one of the coolest domains I ever worked in was I had the opportunity to write an application that physically moved a HUGE dirt shovel for a coal mining facility. What an awesome domain! Physically coding with a hard hat on, in the middle of a strip mine, and my code is moving a 2000 ton machine around - can I get a hell ya?!? These opportunities do not present themselves often if you work for a company solely focused on one business domain.

Architectural Responsibilities
In most consulting shops, you are the lead developer, architect, and tester. Although being your own tester sucks, the trade off of being your architect provides unbelievable experience opportunities to implement the patterns and architectures you see fit.

Probably the hardest thing to gain is wisdom and insight of architecture. When to use them, when not to use them, when to use them but then break them. Different projects, different domains, and the responsibility to pull it all together provides the opportunity to gain this experience quicker than most job environments.

Learning To Deal With People
With consulting comes dealing with clients. Thankfully, I never had to deal with any assholes, but communicating with people is a skill that takes a lifetime to learn. If you do not learn how to talk to clients, you probably also don’t know how to talk to your boss, manager, or even spouse. Consulting forces you out of your dark corner, even if it is just in small doses.

Being a consultant is what you make of it. If you decide to be a hermit that never talks to clients and always decide to solve different problems with the same solution, you probably will not learn a lot. If you decide to sharpen your skills as a communicator while experimenting with different technologies, patterns, and architectures consulting might just be a good fit….

Until next time,
Max Pool

To read more of Max's work, visit his blog.

 

Free Cheat Sheet: Getting Started with MyEclipse

Downloaded over 10 million times, MyEclipse is the #1 commercial Eclipse-based IDE, with industry-leading support for Java and Web developers. You will find this free DZone cheat sheet useful as an introduction to MyEclipse, as well as developing valuable knowledge of the expansive feature set.

Get ahead of the competition - Download Now!
DZ Top Links

DZone Top Links
Next section
Back to top
most clicked this week from dzone.com

dzone

Most-clicked links this week


 
Popular at JL

Popular at Javalobby
Next section
Back to top
A recap of some of the most popular and active Javalobby.org discussions this week.

Do You Really Need Java 7?

It's a long wait for Java 7 and there's a lot of speculation about what we can expect once the final JSR is out. I took a look through the what's coming up to...

103 replies - 7544 views - 10/17/08 by James Sugrue in Articles

Five Reasons Software Developers Hate Software Architects

I remember it well.

0 replies - 4281 views - 10/14/08 by nerdguru in Articles

Trying Out Java 6u10 Applets

The other night I downloaded Java 6 Update 10 (JDK) and installed it on my Windows Vista laptop to test drive the new applets plugin. I found that some applets...

40 replies - 4096 views - 10/20/08 by Ryan de Laplante in News

Seven Forms of Business Process Management With JBoss jBPM

This article will explain Business Process Management (BPM) in terms of 7 distinct use cases for JBoss jBPM. By giving more insight in those use cases, you'll...

0 replies - 3979 views - 10/21/08 by Tom Baeyens in Articles

NetBeans vs. Eclipse RCP: Plugin Mechanism Comparison

NetBeans and Eclipse approaches extension points and extensions differently. Let us see what these differences are.Please note, that this article is meant for...

22 replies - 3875 views - 10/14/08 by marton_sigmond in Articles

Pivot 1.0: Here it is!

The Pivot development team is happy to announce the release of Pivot 1.0. Pivot is an open-source framework for building high-quality, cross-platform...

8 replies - 3610 views - 10/15/08 by Greg Brown in News

When Good Annotations Go Bad

At one time not too long ago, I wasn't a big fan of annotations. But then I let my guard down and even started liking them. But now I'm starting to wonder if...

18 replies - 2899 views - 10/22/08 by Craig Walls in Articles

White Papers & Announcements

Product Announcements
Next section
Back to top
Product and service announcements for Java developers.

Marathon Java GUI Test Tool - 2.0 Release

We are happy to announce 2.0 stream of releases for Marathon. Marathon is a GUI test tool that allows you to play and record scripts against a Java Swing UI...

4 replies - 957 views - 10/21/08 by Dakshinamurthy Karra in Announcements

Apache Wicket 1.3.5 Fixes Lots of Bugs

The Apache Wicket team is proud to announce the availability of the fifth maintenance release: Apache Wicket 1.3.5. A lot of bugs have been squashed and...

0 replies - 938 views - 10/23/08 by Martijn Dashorst in Announcements

JBoss AOP 2.0.0.GA Released

JBoss AOP 2.0.0.GA has been released. It can be downloaded from here, the full release notes can be found here, and the updated documentation can be found here.

0 replies - 882 views - 10/23/08 by Kabir Khan in Announcements

Pivot Starter Kit Launched

To help developers get up and running with Pivot more quickly, we've posted a Pivot "starter kit" at pivot-toolkit.org. This zip file contains...

0 replies - 655 views - 10/21/08 by Greg Brown in Announcements

Oxygen XML Editor and Author 10.0

New in version 10.0:

0 replies - 600 views - 10/26/08 by SyncRo Soft in Announcements

ICEsoft Collaborate with ILOG to Enhance Ajax Web Application Development

ICEsoft Technologies today announced a technical integration with ILOG®. The joint efforts will enable developers to use ILOG’s Java-based...

0 replies - 593 views - 10/20/08 by fnasser in Announcements

Obba: A Java Object Handler for OpenOffice.

Obba provides a bridge from spreadsheets to Java classes.Version 1.6 of the Add-In is now available for OpenOffice 3.0. It implements the same Java object...

0 replies - 464 views - 10/26/08 by fries in Announcements

Getting Started with MyEclipse Refcard Available - Download Now

MyEclipse is the most comprehensive Java EE / J2EE IDE for the open source Eclipse platform.Downloaded over 10 million times, MyEclipse...

0 replies - 429 views - 10/26/08 by Jill Tomich in Announcements

MVEL 2.0 Final Released

Greatly improved over 1.2 MVEL is a powerful expression language for Java-based applications. It provides a plethora of features and is suited for everything...

0 replies - 409 views - 10/24/08 by Mike Brock in Announcements

Webinar: An Introduction of ZK Ajax Framework.

This webinar introduces the advantages of ZK framework and why distinguishes ZK from other Ajax frameworks. Moreover, it includes a short tutorial about...

0 replies - 312 views - 10/26/08 by robbiecheng in Announcements

Tabula Framework: REST Server and REST Editor (Alpha version 0.50.00)

Tabula is a Java Web Framework, comprised of several subprojects, such as a server and GUI tools. Right now there is an early alpha version of the server and...

0 replies - 273 views - 10/27/08 by Gomes in Announcements

Your Account

Your Account
Next section
Back to top
Manage your account info for this and other Javalobby publications.

Manage your Javalobby membership details

Click on the following links to:

Contact Info
Next section
Back to top
Here's how to reach us, we love to hear from you.

Email us
Send news items to editor@javalobby.org
Send questions, complaints, or suggestions to feedback@javalobby.org
Send advertising inquiries to advertise@javalobby.org
 
  Call us
  Our number is (919) 678-0300. We'd love to hear from you!
Legal
Back to top
The fine print we'd rather avoid completely.
  Feel free to redistribute this newsletter in part or in full to your friends.
 
Javalobby News is a service mark of DZone, Inc.
Copyright © 2001-2008 DZone, Inc.

Thank you for your continued support of Javalobby and DZone. Click here if you prefer not to receive the Javalobby weekly newsletters.
DZone, Inc. - 1251 NW Maynard Rd. - Ste. 300, Cary, NC 27513 - (919) 678-0300