Chapter 30. Automating Client Updates as a Freelance Developer

If you have limited freelancing experience, it may surprise you to discover that a significant portion of a developer's day is spent detailing the work performed for that day. In this chapter, I'm going to walk through automating client updates so that you can be as efficient as possible.

Importance of daily updates

Before diving into how we can automate updates to clients, let's discuss what a proper update is and what it entails. An update is a message sent to a client, usually every day or at least every day that you're working on the client's project. The days are long gone where clients would hire a freelancer and the developer would disappear for a few months until they brought back a finished product.

Nowadays, clients want to have a transparent view of the work performed. This is especially true if a client is paying you on an hourly basis. This makes sense because if you hired someone and paid them for their time, wouldn't you want to know how the time was spent?

Regular and explicit updates are also an important way that you can distinguish yourself from offshore development teams. Over the years I've worked with development teams across the world. And the number one issue I constantly had with them was finding out what they did each day. So, if you can give a transparent view into the work that you perform for a client, it can give you an edge over cheaper, offshore freelancers.

An example of client update

So, what does a good daily update look like? Here is one I took from a real-world client update:

  • Integrated CSS fix for the location widget
  • Continued working on bug fix for the well on the right side of the page
  • Updated CSS for the locations widget on the city pages
  • Integrated the checker for posts on the city-specific show pages
  • Updated sign up buttons
  • Temporarily hide sponsor text
  • Implemented changes to the contact us text
  • Implemented custom sub division with master division annotation for the forms
  • Updated the edit label on the post show view

Notice how these updates are practical and informative. None of the items are too technical, since overly technical updates would simply confuse clients.

Automating client updates

So, we've established that client updates are important and we know what a good client update looks like. However, if we have to type these updates in from scratch every day for multiple clients, it would tally up to quite a bit of time. I'm not a fan of wasting time and I doubt you are either, which poses a dilemma:

  1. We need to create a detailed updates of all the work we do each day.
  2. But we don't want to waste time writing reports (and isn't our hatred of writing boring reports what made us want to become freelancers in the first place?!).

Whenever I come across a situation like this, I try to see if there is any way that I can automate a boring task. Thankfully there is.

Version control to the rescue

In the beginning, I was writing out all the daily updates manually. However, if I wrote them at the end of the day, I had to go back through all my GitHub commit messages to reference the work that I did.

After going through this process for a while, it dawned on me that if I simply added a little more detail to my GitHub updates, I could simply copy and paste them each day and I wouldn't have to write them from scratch again.

This process ended up saving me a considerable amount of time each day because for best practice reasons, I had already been writing GitHub commit messages for each new feature I implemented. So, now I can remove the duplicate work I had been doing.

Here is a screenshot of a GitHub project where I used the technique of leveraging commit messages for automating client updates:

Version control to the rescue
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.220.160.216