Identifying and Planning an Automation

Identifying areas of your personal or work life that could benefit from being automated isn't always straight forward, but once you find the key to understanding what can be automated you'll start seeing opportunities everywhere you look. Let's look at a personal example that I use every day:

The main lights in my apartment are powered by smart bulbs or smart plugs, these automatically turn on 15 minutes before sunset, right before the apartment gets too dark - especially in the winter when I may be deep in work focus and not realise that it's gotten dark outside! Even better? When I enable the "sleep focus" on my iPhone, it'll turn these lights off again so I don't even need to think about them. I can't recall ever manually turning on/off the lamp in my hallway!

While the example above may not seem like a big deal - turning on a light requires practically no effort, it does help me ensure that my apartment is never in the dark when I'm home! Let's look at a more work related example:

We like to keep track of the rating of our extension on the Chrome Web Store - we like to hear customer feedback so this is important to us. An Axiom.ai automation will run at 9pm every night that will scrape the rating from the Chrome Web Store, log this in a Google Sheet and send me an email notifying me of what it's collected so we can compare this to the previous day.

Let's take a deeper look into how to identify some opportunities for automation.

# Identifying automation opportunities

Learning how to identify automation opportunities can be a powerful tool to have in your toolbelt and once you figure it out you'll start noticing them everywhere! There are a few questions that you can ask yourself about a task to determine if it's automatable:

  • Is this task repetitive?
  • Is this task consistent? Does it follow a standard pattern?
  • Does this task need oversight, or can it run unattended?

If the answer to those questions is yes, then you might be able to automate the task.

# Repetitive

If a task is repetitive, it's likely something that can be automated. Circling back to the example above regarding the Chrome Web Store - it does not require much effort to go and check the current rating of the extension, however, this may be something that we need to actively remember to check, so having this data automatically be available to us makes more sense. Think about any task that you do on a daily basis, or weekly, and how it could be automated.

Previously we have seen clients who require the downloading of a report at the end of a day, every day, or a client who, impressively, automated a tax submission.

# Consistent

Automations like consistency. Adding any inconsistency into your automations will complicate the automation and make it less maintainable. If you already have a task that is repetitive, think about the steps that you take to get there - do they always follow the same steps? The same order of steps? If so, then you may have a case for automation!

# Oversight

There are a lot of tasks that don't require much oversight, such as downloading a report at the end of a day, or a simple form submission. A lot of automations, especially if running on an automation platform, do not require you to be present - some will just run in the background, or even better, run in the cloud! You may only need the output of an automation and do not need to oversee every step of the process, especially if it's a long process.

Worth pointing out at this point that in most cases you may be able to be hands-off with an automation but should include error handling within your automation. For example, if your automation accesses a resource that requires authentication you may need to add in error handling in the event of your authentication session being ended, or if the platform that you are automating updates a step or moves an element that you require.

# Planning your automations

Planning your automations before building them is key to it's success, this does take some work and isn't always the most exciting but is highly recommended to ensure that you achieve your goal.

# Listing the steps

The simplest first step to building an automation is to list the steps that you would take if you were to complete the task manually, listed in a numbered list, such as:

  1. Go to the page
  2. Click the "login" button
  3. Enter username
  4. Enter password

And so on. This seems like common sense, but sometimes our brain goes into autopilot when we are performing a repetitive task and we don't consider all the steps even if we perform them.

It's important to note that these steps may not directly relate to how you would perform them within an automation, but it's still good to understand what you are aiming for for each step. For example:

Let's say you want to go through a list of social media accounts that an account follows, visit the profile and extract information. As a human we would click into the first profile, extract the information, navigate back to the list and click the next item and so on. As an automation, we will actually want to extract a list of the URLs to the profiles, then loop through this list of URLs, visit the profile and extract the information. They're similar methods, however, the automation is unlikely to have the context on the next list item that a human would have when performing the task.

# Planning your tooling

Depending on the complexity of your automation and the platform you are using to run your automation, if you are using a platform, there is a solid chance that you may need to introduce additional tooling to help you out. These tools may range from temporary storage to store data during the automation execution, permanent storage to store the data that you have extracted, or other tools such as AI to help you create content.

In the social media example above, there are two sets of data: the list of URLs and the data that we have extracted. The list of URLs can be temporarily stored in memory and used straight away to loop through or, this could be stored - let's say in a Google Sheet - in the event the automation run fails at any point, this would allow you to pick up where you left off. The data that was extracted will need to be stored once the execution has finished to ensure that you can make use of the data.

# Creating your automation

There are many methods that you can use to build out an automation:

  • Using an automation building service, such as Zapier, Axiom.ai, Make, or Power Automate, to build your automation using built in components.
  • Build your solution from scratch using an existing library such as Puppeteer, Playwright or Selenium, and hosting this yourself.
  • Build your own solution and run this on a hosted service (coming soon (opens new window) to Axiom.ai!)

# Wrapping up

Learning to find opportunities for automation is contagious - once you learn how to spot the opportunities you will continue to notice tasks around you that can be automated. Once you've identified an opportunity for automation, then you can start thinking about how you can go about automating before finally building the automation out.

We'd love to hear what you build, even if it's not with Axiom.ai, feel free to share it in our community (opens new window)

Karl Jones

Karl Jones

Karl is a Technical Writer with Axiom.ai with a Computer Science background and 10+ years of customer support experience. In his spare time he enjoys continuing his technical education, reading, gaming, and working on development side projects.

Contents

    Install the Chrome Extension

    Two hours of free runtime, no credit card required