The Myopic Web Developer

John Reeve | July 1st, 2008 | ,

The Myopic Web Developer

Photo by Jim Simonson

A common characteristic of most web developers is that we have tunnel vision when working our craft. Our ability to focus and accomplish narrowly defined tasks with speed and intensity is one of our greatest strengths. When working with a larger team, however, our reluctance to step outside the zone can hinder project development and management. Web developers can be a difficult lot.

I’ve experienced this from both sides — I’ve been a web developer for the last 15 years and managing projects for the last three. And I’ve had countless conversations with Pelago’s project manager about improving my work habits to make his job easier. Here are some suggestions, based on my experiences, on how us web developers can work in a more holistic manner.

1. The Domino Effect

Web developers work on a diverse array of projects, enough that we think of ourselves as web mercenaries. Got a conflict in some poorly developed region of your web site? Send us in and we’ll fix it. But if we aren’t familar with the site our one fix will break things elsewhere. This is where global search (or my favorite ‘grep -r’) is your best ally. Run a quick search of the code to make sure the Javascript function or CSS class you modified is still being utilized correctly throughout the site. A few extra minutes spent verifying your code in this way, while the changes are still fresh in your mind, spares you the headache of having to return later to patch up any residual mess.

2. Fill in the Blanks

Web developers excel in tackling tasks, especially when the specifics of each task are detailed and straightforward. Project managers, on the other hand, won’t always provide you with all the information you need to complete the task. Even the most articulate project manager will sometimes task a web developer with executing a vision based on only a few notes. Our initial response is to send the task back and ask for more detail. We do this because starting a fuzzy task requires a non-linear kind of creative energy. We like the linear, the well-defined spec. A strong web developer will learn to improvise in this scenario and complete the first iteration of the task to the best of her ability. Even if she gets it wrong, she is still 90% further along then having done nothing. Project managers love web developers who can tap into the spatial realm of relationship, project history, and intuition to get things done.

3. Cross Train

There are many areas covered by the definition of web development. Our web development team has individuals who are gurus in one or two areas of expertise — CSS, HTML, Javascript, database design, regular expressions, data structures, design patterns, query optimization, systems administration etc — that as a team there is nothing we can’t conquer. But what happens on thursday at 5pm when your AJAX-intense web site slips a cog and your XML expert is off the grid? Web developers need to branch out and familarize themselves with other areas of development, especially if the project requires multiple areas of expertise. We have been able to divert a number of potential crisis’ simply by knowing how to restart a database server. The Agile Development methodology uses pair programming to accomplish this, and is a good place to start.

4. Quality vs. Quantity

Web developers are task-oriented by nature. We love whittling down our task list. But sometimes we rush through the tasks too quickly and our code suffers. Or we’ll assume something is fixed and working properly without verifying it ourselves before handing it back to a project manager (or even worse, a client). Focusing on the quality of our work means we won’t complete as many tasks as we are used to in one day, but it also means fewer tasks will be returned to us in need of repair. We can actually save time in the long run by focusing on the quality of our code. Clients will appreciate the effort, too. For example, 90% of SEO can be done when building the web site simply by being thorough with the use of alt tags, title tags, meta tags, and semantic HTML. Yet, we’ve handled many web sites built by web developers who have neglected all of these.

5. Update Your Perspective

My chair is visibly worn on the left corner of the seat cushion and there is a trail starting to appear from the front door to my desk (well, there would be if the floors weren’t coated with polyurethane). I have made it a point to get up more and do small things, things entirely unrelated to web development, like washing the dishes left in the sink from lunch, or water the plants. Freeing up our focus from our day-to-day workflow affords our brain a moment to rest and reload. Taking the time to do things from another perspective ultimately gives us a deeper appreciation for what happens outside our zone. When we increase our awareness of how our web development efforts affect the whole of a project we are all the better for it.

One Response to “The Myopic Web Developer”

  1. Jacob says:

    Thanks for this. Very well written and a ton of help!

Leave a Reply

Intervals Blog

A collection of useful tips, tales and opinions based on decades of collective experience designing and developing web sites and web-based applications.

What is Intervals?

Intervals is online time, task and project management software built by and for web designers, developers and creatives.
Learn more…

John Reeve
Author Profile
John Reeve

John is a co-founder, web designer and developer at Pelago. His blog posts are inspired by everyday encounters with designers, developers, creatives and small businesses in general. John is an avid reader and road cyclist.
» More about John
» Read posts by John

Jennifer Payne
Author Profile
Jennifer Payne

Jennifer is the Director of Quality and Efficiency at Pelago. Her blog posts are based largely on her experience working with teams to improve harmony and productivity. Jennifer is a cat person.
» More about Jennifer
» Read posts by Jennifer

Michael Payne
Author Profile
Michael Payne

Michael is a co-founder and product architect at Pelago. His contributions stem from experiences managing the development process behind web sites and web-based applications such as Intervals. Michael drives a 1990 Volkswagen Carat with a rebuilt 2.4 liter engine from GoWesty.
» More about Michael
» Read posts by Michael
Videos, tips & tricks