So Su Team : Web Development

The real cost of a small change

So Su Team : Web Development

On the website I am currently working on, there is a video on the homepage with an image overlaying it. The design shows that the video should be playing  with the image overlaying part of it. And that’s how it was built, as per the design. Of course the client didn’t want the image obscuring the video, so I was requested to move it behind. “It’s a 2 minute change” I was told, “Just change the z-index in the CSS file”.

Small requests like this happen all time , it’s not a rare occurrence. “Change the colour of this table”, “Move that link to the left”, “Hide that button because we don’t support that”…

So back to the z-index request. The issue is that it’s not just a “2 minute change”. Here’s what is actually involved in just changing the z-index (or any other “minor” change).

  • Replicate and verify the issue in the staging environment.
  • Replicate and verify the issue in your local development environment.
  • Perform the necessary fix (z-index change in my case).
  • Observe that the issue is fixed (in your favourite browser). [End of 2 minute fix]
  • Identify other areas using the this same line of CSS/code.
  • Perform regression tests to ensure they are still operating as normal.
  • Now verify the fix for the other major browsers (Chrome, Firefox, Safari, Internet Explorer 11).
  • Perform regression tests for the other major browsers.
  • Spin up a virtual machine running minor browsers (Internet Explorer 10, 9, 8, and 7 (if required)).
  • Check that the issue is fixed on these.
  • Perform regression tests on the areas identified earlier.
  • Push the fix into source control.
  • Deploy the code to the staging environment.
  • Verify the issue is fixed on the staging environment.
  • Get approval (if required)
  • Finally,  deploy to the live environment and verify the fix.

Yes, to change that single line of CSS and check that it worked, 2 minutes. But what about all the other stuff that needs to be done to ensure a consistent web experience for all visitors. What if the site has  a mobile version?

The next time you ask for a “quick fix”, just be aware of what is being cut out to make that fix quick.