My Stuff

2010 Conferences

OSGi DevCon @ JAX London

February 23 - Keynote titled OSGi in the Enterprise: Agility, Modularity, and Architecture’s Paradox

EclipseCon

March 22 - 25 - Tutorial on Modular Architecture

Über Conf

June 14 - 17 - Sessions titled Turtles and Architecture and Patterns of Modular Architecture

Catalyst

July 26 - 30 - Two sessions on rich mobile applications and one on agile development. Half day tutorial on software process improvement.

Tweets @ Twitter

Apple's profits for its latest quarter are $1 billion. That's $1 billion per week, by the way. http://t.co/wE6RglA5 1 week ago

If you know JavaScript and HTML, you can crete your own custom widgets in iBooks Author. That's pretty cool…#Apple 2 weeks ago

High School Textbooks also available. Major publishers are on board. Several volumes available today…#Apple 2 weeks ago

#Apple announces iBooks Author for OS X and iBooks 2. Using author, you can create your own interactive books for iBooks. 2 weeks ago

Nice #HTML5 site (html5rocks.com). Check out the Interactive Presentation & HTML5 vs. native comparison (http://t.co/UFTuafAE) via @mahemoff 2 weeks ago

LinkedIn Profile

The opinions expressed on this site are my own, and not necessarily those of my employer.

A Badge of Honor

Filed Under Development |  

Often times, I hear folks exclaim that they’ve been on “40 development projects over the past 10 years.” Or, “70 projects spanning a 20 year career.” They say this as if it’s some badge of honor. But I’m not so sure that it is.

Of course, there is value in widespread project exposure. Gaining experience with new technologies. Experiencing the dynamics of different teams. Understanding the challenges surrounding different organizational cultures. Each project is unique, bringing its own set of experiences, and these experiences are all incredibly valuable.

But when I see that someone has jumped from one project to another, it also leaves me wondering! Have they ever stuck around long enough on any single project to see their decisions through to the end? Have they ever had to live with the decisions they’ve made? An amazing compilation of knowledge is obtained by not only participating in the early stages of development, but also in maintaining the software system after it’s been released. To name just a few:

  • Dealing with the challenges of Phase 2, while also maintaining Phase 1.
  • Managing multiple branches of the software system. Merging those branches back together. Creating new branches.
  • A critical production issue arising about the same time you need to start heading out for that important customer demo.
  • Attempting to change a piece of code that hasn’t been touched in 10 months.
  • Watching the software system grow from nothing to a system that’s more than 500,000 lines of code. Keeping the build performant. Keeping the build working!
  • Being forced to live with seemingly meaningless early design decisions that haunt you over time.
  • Trying to upgrade versions of third party libraries while development is ongoing. Simply recognizing the right time to upgrade.

And there is so much more. Priorities tugging you in five different directions at one time. If you’ve had the luxury of living with a system (and the mistakes) you created, you’ll realize that there are very few, if any, decisions that shouldn’t be given conscious thought.

When an individual sticks with a project for a long time, they realize the importance of maintaining a clean design, a robust suite of unit tests, and how they package their software system. There is significant knowledge gained by sticking with a project for a long period of time. Perhaps the next time you hire a developer, it might be wise to ask them, “What’s the longest you’ve spent on any given project?” That may be more important than the number of projects they’ve been on.

Somewhere along the way, I picked up a small piece of advice that has helped serve as a valuable guide. There is a big difference between ten years of experience and one year of experience ten times. When you jump from project to project, never living with the decisions you’ve made, you have lost an opportunity to learn what works well and what does not.

Comments

3 Responses to “A Badge of Honor”

  1. Randy on March 16th, 2010 8:27 pm

    Welcome to my world :)

  2. kirk on March 16th, 2010 8:33 pm

    And your point is that you are the one left dealing with the mistakes of the “experts” who made those decisions! The other side of this story…

  3. Thomas COURANT on March 18th, 2010 11:01 am

    I totally agree with you.

    Unfortunately, to gain real experience as you described, you must be in enterprises and project with such possibility.

Leave a Reply