Building Stuff Without Building Stuff
I’ve always been a tinkerer, a hacker, and an inventor of cobbled-together things that “Just Work”. Throughout my life, I have learned to code, build databases, provision servers, root mobile devices, and whatever else was required to get things done. These days, technology has advanced to the point where it’s possible to make complex and beautiful things without getting your hands dirty at all.
There are two similar terms running around the internet recently: low code and no code. These terms refer to the ability to build applications or services without writing much, or any code. This article is not about the low/no-code movement. While that movement is super interesting in its own right, I am going to talk about tools a little higher up the stack where I build processes and tools but stop short of building an app.
I am always trying out new services to see how they work and if they should have a place in my busy life. Most tools I discard because while the intentions of the developers may be good, there are just too many rough edges on most applications I demo. Two notable exceptions to that are Zapier and Airtable. I find both those services to be exceptional at what they do. So much that I’m dedicating an entire article to some simple, but very useful integrations I built to make my life easier. Let’s start with Airtable.
Databases
I don’t think many people have direct experience with databases. Although probably close to 100% of applications and services use databases internally, I think end-users generally don’t use databases directly at all, or they think they do when they open up a spreadsheet. Spreadsheets are not databases, although both can do calculations on data. The real power of a database is the ability to breakdown, retrieve, and analyze the data in it. Spreadsheets have developed hackey add on functionality over the years to make them more database-like, but most people who cross that line and try a proper database have a big “wow” moment and never go back to the spreadsheet.
Airtable DBaaS (Database as a Service)
I made up the DBaaS bit, but that’s what Airtable essentially is. It is a powerful, but very polished cloud-based database service. Airtable fools you at first because the default view for a new database table is a grid view which resembles the ol’ Excel spreadsheet. But, it’s not and does not work like a spreadsheet.
The first thing I did with Airtable was a replacement project. I had grown tired of all the “todo” apps on the market, but I definitely need one. I subscribe to the Getting Things Done (GTD) framework to keep my life organized and although many todo apps support GTD, they bolt other stuff onto it that makes it unwieldy or, even worse, cause distractions for me. A good example of unneeded and distracting functionality are time notifications. If something needs to happen at a specific time, then it is not a todo item; it is a calendar item, therefore alerts have no business being in a todo app.
Because I wasn’t able to find anything that did exactly what I wanted, I built one in Airtable.
This image isn’t actually my todo database. There’s far too much personal information in mine to make a decent screenshot from, but this shot shows many of the features that I use. I use dates and priorities to help sort what is important on any given day. I also heavily use grouping and sorting to create useful views. I have a work view and a personal view, and other views for groups I belong to. I also have views for completed items so I can go back and see when a task was completed rather than simply deleting it outright.
The Airtable Universe
Where did I get this example todo list that shows all these features, you ask? From one of the most amazing things about Airtable: the Airtable Universe.
The Airtable Universe is a community repository of databases that people and companies have created as a springboard to help Airtable users get started. There are hundreds, perhaps thousands of databases in the Universe that can be copied into your Airtable account with a single click. To be honest, I have not used any of the Universe databases yet, but I am sure I will at some point. So far, my use of Airtable has been to migrate many existing apps and documents. The structure of these databases was already set making it easier to start from scratch.
Mobility
I don’t particularly need all my databases in my pocket, but certainly, it is essential to be able to access my todo list at any moment. The Airtable mobile app allows that.
The app only supports a subset of Airtable features. The most notable feature missing is the grouping feature but I understand why. Grouping is a visual tool to help us see meaning more clearly; “these people have paid their dues, these people have not” type of thing. That type of analysis necessarily takes up a lot of screen space; space that is not easily available on mobile devices so it’s been omitted entirely. However, viewing and updating records works perfectly which is most of what I need on the road. The fancy views and printed reports can wait until I am on my laptop.
Getting data into Airtable
I’ve been using databases for a long time. One of the recurring pain points with moving an existing set of data to a database is the data entry. Databases shine at analyzing data, but you have to get that data in there in the first place. Airtable allows the import of a CSV which is a useful option. Let’s face it, a lot of us have spreadsheets kicking around that have grown into these Frankenstein monsters stumbling around our hard drives. Import that sucker into Airtable and you’ll instantly be able to sort and discover that data in new and novel ways.
Another great way to get data into Airtable is to let something else do it. For my day to day entries, I let Zapier do some of my data entry.
A note on Airtable security
I work in infosec and the first question I always ask of any service pertains to security. Almost everyone uses TLS (HTTPS) these days, but that’s not sufficient in itself. HTTPS secures data during transit which is important, but it is not the whole enchilada. So, I investigated and I was happy with what I found about Airtable’s security model.
Airtable uses HTTPS (as mentioned). It also supports non-SMS 2FA to help secure your login and – I was surprised and happy to see this one – Airtable encrypts my data at rest and also within its backups.
Nice.
Zapier AaaS (Automation as a Service)
I sincerely hope AaaS doesn’t become an actual term because..well…how would you pronounce it, exactly?
Zapier’s reason for living is to connect disparate apps together so they can exchange data. This integration is done through the use of “Zaps” in Zapier parlance. Want to record every Twitter mention in a Google sheet? Want to send an SMS message when someone updates a Trello card? Want to…whatever, you get my point. The folks at Zapier spend all their time integrating services so they can talk to each other.
I use Zapier in two small, but useful ways.
Google calendar –> Airtable todo base
Despite my assertion that tasks with times on them are not “todo” items, I do want to see my calendar items for the day in my todo list, just not with times and alerts going off.
I created a calendar in my Google account named Airtable. When I put a new item into that calendar, Zapier notices and it sends that item to my todo list in Airtable. But that is not all there is to it. It would be very easy for me to forget that new todo item because it is not yet filed into a category that I sort or group on. So there’s a step two…
When that new item is added to my todo list, it goes into an Airtable view I have called “New” which is where items that have not been categorized yet go. Think of it as the “Stuff” list from the GTD methodology. I manually look through all my todos every day (again, as part of the GTD methodology) so I will eventually see/remember it and categorize it, but I want more. So, I have a second Zap that runs on that view in Airtable.
When a new item is added to that view, Zapier notices and sends me an SMS message reminding me that there is a new todo item to be categorized. This means I have two Zaps running just to get stuff from Google calendar into Airtable, but who cares. It is all automated and I never think about it anyhow. Also worth noting is that I am a free Zapier user, but if I subscribed, I would gain access to multi-step Zaps and then these two Zaps could be a single multi-step Zap.
Email tag –> Airtable correspondence log base
I am the secretary for a community organization and one of my many duties is to maintain a log of all correspondence that comes in or goes out of our group. I have an Airtable base for this, but again – it’s all about getting the data into it. Because the vast majority of our correspondence comes in via email, this screams to be Zapped, so I did.
Interesting to note is that I can’t use Gmail for this. While Zapier does have some GMail integrations, it can’t do this particular one. No problem, I moved my secretary account to Zoho where Zapier can work its magic.
Nothing initially happens when an email arrives. I did this on purpose because I don’t necessarily want every email that comes into that inbox to be part of the correspondence log – there are lots of internal emails that don’t qualify for the log. To gain control over which emails end up in the correspondence log, I configured my Zap to only grab emails that have a certain tag on them.
Part of my daily routine is to review that email inbox and if there are any emails that should form part of the correspondence log, I tag them. Zapier notices that and inserts them into my correspondence log in Airtable.
Go forth and automate!
There are probably literally a million things you can do with Zapier. I’ve just scratched the surface with the few things that really do make my life easier. Zapier gives you 5 zaps and 100 executions per month on the free plan which is enough for me. If you need more, it’s time to pay and I would do that if I hit a limit because Zapier is so incredibly useful. I hope this article gives you some ideas to play with and make your life a little easier, too.
my shorter content on the fediverse: https://the.mayhem.academy/@jdw