One of the first tasks to create a new automation, system, or tool, is to decide what data you need to be working with.
Sometimes, this is an obvious choice, like if you’re starting a marketing automation and just need the email and first name of a potential customer.
Other times, it can be really confusing, like if you want to create say an automated tool to help writers determine their story structure, as we are.
NEW PROJECT ALERT! A couple of weeks ago, I asked our readers to give me feedback on a new tool to build for writers, and today, I’m announcing the results: we’re going to create a drag-and-drop (hopefully) story structure builder. I’ll share my progress here as I build it so you can follow along and maybe even build something new yourself! As I got started with this project, the first step I took was to decide what data I was going to need for the automation, and so…
In this article, we’ll talk about why you should decide the data your app will be working with first, how to determine your automation data, and how to structure it. I’ll also be sharing the data we’ll be using for this new project, and I’d love your feedback on it!
Here’s a sneak peak on the automation from a data standpoint in this Google Sheet. What do you think? Let me know if you have any feedback in the comments.
What is Automation Data?
Data, in an automation, is just a fancy way of saying “information related to the things you’re automating,” but since automation requires standardization (so we can do the same things again and again x 1,000), it needs to be structured in just the right way so it can be passed through an automation.
Think about an automation like a factory line, but instead of car parts or ice cream bars or hammers, we’re working with pieces of information.
For example, a user’s name is data. A story title is data. An ID number is data. Even your eye color could be data (for the DMV for example!).
Apps organize this data in databases, which are like fancy spreadsheets, but a lot of automation builders will use Airtable, a CRM, or even Google Sheets. Finally, we use automation tools, code, or APIs to change the data or move it around.
Why Decide the Data You’re Going to Use Before You Start Working on the Project?
But why focus on data first? Why not just get started designing the automation?
Well, you can definitely do that, and for simple automations that can definitely work.
The problem is with more complex automations, or even tools with many many steps, you need to at least have a good sense of what data you’ll be automating and how to structure it before you get started. Sometimes, adding a new set of data can force you to completely rebuild an automation, and so ideally you’d have as much clarity around your data set beforehand as possible.
Most of the time, you can still add things after you start building, but a little planning will save you time later.
How to Decide the Data You’ll Need for Your Automation
The purpose of your automation will determine the data you’re going to need for your automation, but you also want to organize that data in the most efficient way possible.
Data is organized into tables, or data sets. That’s because you don’t necessarily want all your data in one ginormous table. After all, different types of data need to be treated differently. For example, you don’t want user data in the same table as a public facing blog post. But, you also don’t want so many tables that you never know where you’re supposed to look!
So here are some guidelines I’m thinking about as I come up with my data sets (Note: I don’t have great reasons for these, except building lots of automations. If you know something I don’t, share in the comments!):
- Organize data into the fewest number of tables or data sets as possible. Try to minimize and organize your data into the fewest number of tables. You can always add more fields to a table, but merging and referencing multiple tables across an automation is a pain.
- Always include the following fields: record ID (whether it’s the user ID, story ID, whatever it is), created by (the user who creates it), created date, and modified date. You may need them and even if you don’t, they’re likely generated automatically and could come in handy.
- Think about standardization. Does a field always need to be a date? Or a number? Or the url of an image? Or something else? Make sure the field is handling the same kind of data across the entire automation.
- You can also add linked data! Linking data between tables is good! Don’t miss out on the chance to reference data from other tables as it makes sense.
What else? What do you think about as your decide what data to include in your automation?
My Data Structure for this Writer Tool Project
For our new story structure tool, we’re going to need a variety of information around the writer working on their story but also their story itself. I’m using my book, The Write Structure, to figure out the specific pieces of information we need to use. You can check out the Google Sheet here to see how it’s looking, or take a look at the lists below:
- Users
- User ID
- First Name
- Last Name
- Profile Picture
- Stories (Linking to their stories as a list)
- Created Date
- Modified Date
- Stories
- Story ID
- Title
- Cover Image
- Premise
- Story Form (User will be able to choose the options from a dropdown: Short Story, Novel, Epic/Series, Feature Film, Sitcom/Serial Episode)
- Plot Types (User will be able to choose the options from a dropdown: Action, Adventure, Horror, Mystery, Thriller, Love, Performance, Coming of Age, Temptation)
- Characters (Linking to characters)
- Scenes (Linking to scenes)
- Creator (User) (Link to User)
- Created Date
- Modified Date
- Scenes
- Story (Linking to stories)
- Act
- Scene #
- Scene Event
- Characters (Linking to characters)
- Plot Points (Linking to plot points)
- Plot (Link from Stories)
- Value Shift
- Creator (User) (Link to User)
- Created Date
- Modified Date
- Plot Points
- Story
- Scene
- Plot Point Event
- Plot Point Type (User will be able to choose the options from a dropdown: Exposition, Inciting Incident, Progressive Complication, Dilemma, Climax, Denouement)
- Creator (User)
- Created Date
- Modified Date
- Characters
- Story (List of stories)
- Character Name
- Character Role (User will be able to choose the options from a dropdown: Protagonist/Viewpoint Character, Antagonist, Sidekick, Love Interest, Side Character)
- Character Description
- Scenes (List of scenes)
- Creator (User)
- Created Date
- Modified Date
Keep in mind that most of these things will be things the user fills out. So that means we’ll need lots of forms! (And maybe a good AI that can automate and infer at least some of the process, because otherwise that’ll be a lot!)
How does it look though? Anything you’d add or take out? Let me know in the comments!
The First Step to Building Your Automation
Most of software is just fancy spreadsheets, and while I’m not a software developer (I’m just an automation designer), in my limited experience I’ve found this where so much of the work is done for the systems we build.
So if you want to build an automation, start here, with the data you’ll need.
Once you do that, everything else will feel a lot simpler.
What guidelines do you have when you think about data for automations? How do you decide what to include and how to structure it? Let me know in the comments!