I am a rock-climber and I’m also a web developer. It’s normal to assume these two things have nothing in common but that just isn’t true. As a web developer, each project begins with a starting point, the goal and everything else in-between. 3 steps to consider.
The same can be said for rock-climbing. I begin at my starting point, which is usually where I’m standing. I look up at my goal and then everything else in-between, a variety of calculated steps eventually gets me to the top.
This is the exact, simple formula I use each and every time I am met with a web migration project because simple it is not. Web migration projects are at the very least, a headache; a superb challenge not for the faint of heart and almost certainly underestimated by the client.
“Just move everything over to (insert platform). It shouldn’t take that long.” They may say.
Often before the client even finishes that sentence, a tenuous plan of action has already taken shape in your mind; a list of next steps that won’t be entirely clear until you dive all the way in. However, it only takes one site migration to know that they never go as planned. They are always full of surprises and they often take longer than anticipated even in the best of times.
So how can we, as developers, survive the lofty goals of our clients without totally losing it?
Again, I think back to my strategy as a rock-climber. Because if it can help me maneuver safely up the side of a cliff without flipping out, then it certainly can help me manage the unavoidable stress caused when running a website migration.
- Study Before Planning - How well do you know the CMS you are migrating a site from? How well do you know the CMS you are migrating a site to? If there are any potential gaps in your knowledge base, you will do yourself a huge service to add an amount of time for learning more about each CMS by way of tutorials and articles. It may take a few hours of your time but could potentially save you more time in the long run.
With climbing, it’s the same. I look up at the climb, study all the holds I can see from my vantage point and determine if that climb requires a level of climbing knowledge I may not have mastered just yet. Once I’m well versed on the climb, then I begin formulating my plan of action.
Make a Plan - We all have our own processes for project management so I won’t go into detail about that here. The important thing to know is that you should at the very least have some sort of roadmap to follow with a deliverable date to push against. As you become more confident as a developer, it’s easier to just jump in and get started but in your arrogance, many small details can be left out using this approach. Making a plan of action will help you stay focused and acutely aware if the project scope or delivery date must be adjusted.
Know that "Something" Could Go Wrong - This is one of my main strategies here; knowing that something always goes wrong. To be prepared for the worst means you have a few plan-b’s in your pocket to help you get out of the proverbial pickle that is sure to arise. When you assume you are so experienced as a web developer that nothing could go wrong, then you’ll be caught by surprise and left scrambling for solutions or life-lines at the last minute. To expect the worst and have a few “if-then” next steps determined for yourself is to create a safety net you’ll be glad you prepared for.
For example, “If the calendar is not exportable, then I rebuild manually.” or “If blog posts are not exportable, then I will contract Joe Schmoe to rebuild the blog manually.”
Do you see where I am going here? Plan safety nets for yourself to prevent mental stress and burnout along the way. Just like in climbing, plan an extra anchor mid-climb to attach to so you can take a break. Or ask your friend to spot you on the hardest crux of the climb.
The most important thing to takeaway from this article is that you can take much of the stress out of a website migration project by proper preparation, planning, and setting up life-lines for when the “S!#t hits the fan” as they say. Part of the big picture strategy you should implement as a web developer is how to optimize your energy so that you can best use your web development skills to get the project done, on time, and at the quality your clients will appreciate and come back for on future projects.