When I talk to clients, I often find them struggling with how to tackle large projects successfully. My advice is always the same: DON´T! Or, more constructively: break large projects into a series of smaller projects. Why that’s a good idea makes sense to most, but how to do it in a smart way is slightly more complicated (note to self: write a separate post on how-to strategies).
Two days ago I took on a new project myself. I’ve wanted to update and redesign my website for a while to make it a better platform for sharing new types of content and information about my services. With limited time on my hands between client work, family, basketball, and running, it could easily have turned into a death march of a project before I would have been able to release the entire site.
Luckily, I had a moment of “brilliance”, if you ask me, when I decided to practice what I preach and turn the project into a series of smaller projects. I often quote Reid Hoffman (Co-founder of LinkedIn) for saying, “If you are not embarrassed by the first version of your product, you’ve launched too late”, and if Reid can bear a little embarrassment, so can I.
If you are not embarrassed by the first version of your product, you’ve launched too late
– Reid Hoffman (Co-founder of LinkedIn)
I started by building a backlog (the picture) of features and content I wanted on the site. Next, I prioritized my MVP (Minimal Viable Product) and some candidates for the next releases. My idea is to work in evening-long sprints to make sure I deliver to production continuously.
I defined my first thin slice of the new site (my MVP) as consisting of:
- Selecting, buying, and installing a new WordPress theme
- Designing and setting up a new front page with the latest blog posts, an overview of my services, a short explanation of my why (purpose), and my contact information
- Doing a quick check to make sure existing content still worked
After three days of primarily evening work, I just pushed the go-live button on the site. It’s far from perfect and it would probably take you less than a minute to find spelling errors, misaligned borders, excessive spacing, inconsistent use of colors, etc. The main thing is that it’s live, it works, and you can now provide me some feedback on the new design (please) — another core principle in Agile development.
Slicing a large project into smaller valuable and releasable projects is often a lot more complicated than in my website example above. It is, however, well worth doing for a number of reasons, including reduction in complexity and risk, transparency in progress, and much faster feedback.
Skeptics will argue that you need to think solutions through before diving in. This is true to some extent, but we often spend way too long trying to figure the unpredictable out. An example from my website was choosing the right template. I did a quick scan of candidates and settled on one fairly quickly and bought it. Unfortunately, it did not do the job and I had to buy a second one. It cost me an extra $49, but it saved me countless hours going through perfect demo sites and marketing documentation trying to make sure I bought the right template the first time.
Finally, I also want to touch on why I spend some time playing around with the banner/info slider at the top of the front page (the green post-it in the picture of my Scrum board). It wasn’t part of the MVP, but I love taking and playing with photos and I also think it adds value. A developer being passionate about building a specific feature, that is not justifiable from a pure business value perspective, is a very realistic real-life scenario. Before you (or the Product Owner) dismiss it and stick strictly to business-value-driven prioritization, consider what impact it has on motivation versus the cost of building it. It might actually be a better business case than you thought.
Below is a prioritized snapshot of my current candidates for future releases. As with any good backlog, it’s a living document and I’ll make no promises I’ll ever move all the items to done.
- Event calendar (speaking, conferences and courses)
- Elaboration of services, including mentoring program
- ‘Agile leadership principles’ page or post
- Twitter feed on front page (go to http://twitter.com/meolesen for now)
- A list of recent and current speaking topics
- Page/post on the strength of Ugilic and 21Leadership in combination
- Cases/clients (need to ask permission)
- Update about me (in progress)
- Menu links to all existing pages (in progress)
- Updated footer with a list of recent posts and comments (done as of this writing)
- Grid with Instagram pictures (this was already on the blog page)
- Updated testimonials
- List of inspiration videos and books
- Tools and slides (go to http://slideshare.net/meolesen for now) for download
- Downloadable CV
- Updated blog banner
Click here to check out the new design – and please use the comments to let me know what you think.