I’m a coder at heart.
Writing code hasn’t been my primary job for years now, but I always come back to it for hobby and passion projects. At its best, coding feels like giving myself super powers.
But, building things with code gets complex fast.
New tools are released all the time to simplify the process of building software. Still, the net amount of complexity needed to build and maintain something meaningful keeps going up.
Because of this, I started getting interested in the concept of “no-code” automation. It helped me accomplish small tasks quickly without the “yak shaving” I often get lost in for hours and hours on software projects.
Over time, I’ve learned how to do more complex things with these tools, with most of the setup and maintenance taken care of for me. The end result is customized to my needs in ways I couldn’t get products off the shelf to do, and costs next to nothing to run.
I believe no-code tools will empower huge chunks of people in a similar way that spreadsheets did.
They will reduce the need for many expensive niche products and custom software development projects.
This trend could free up so much time for developers to focus on the endless things that require their specialized talents.
Even though I can write "real" code from scratch, I’ve found that using no-code tools saves me tons of time on most things I work on. It's almost always the tool I pick up first if the point is to solve a problem without needing to optimize for performance or 100% precision.
This is probably a bad example of what you should use no-code tools to build. The internet is bursting with free options for small mailing lists that do the job well. But, I think this gives a good window into the types of things that are possible.
When I decided to set up a mailing list for this site, I thought through the main things I wanted:
I wanted a very cheap or free option to manage a small mailing list that kept people’s information private.
I also wanted to make it easier to send customized messages to people on the list when I wanted to.
I also wanted a hobby project. 😀
If you want a mailing list, you’ll need a reliable place to store it. Something as simple as google sheets will work, but I am a huge fan of Airtable. For anything that might need something that’s more like a database than a spreadsheet, give it a look. I’m not ruling out doing more complex things in the future with the mailing list, so it’s a good fit.
I created an Airtable base and got to work on adding some fields. I included one for the SHA-256 encrypted hash of emails on the list to use for everything except actually sending email. I also added one for a unique unsubscribe link using that hash.
I ended up with something pretty straightforward but that won’t limit me if I want to do more with it in the future.
There are multiple ways built into my website’s framework to submit form responses, but none with the fit and finish of Typeform. Typeform has a free option, and I’m happy to give them exposure in exchange, it’s a good product.
Typeform doesn’t allow for integrating with Airtable on their free plan. Even if it did, I wanted the extra step where I generate an encrypted hash of the email address. But, they do support sending data via “webhook”.
A webhook is a way to send and receive bundles of data between different systems when an event happens, like a form submission. If you’ve ever heard of web APIs, this is a simple version of those.
It helps if you’ve got some basic understanding of how programming works to use it. But, you don’t need to be a professional software engineer or even anything close to it to follow its logical flows. Even "intro to programming" material might be overkill to get this stuff if you wrap your head around following visual flows of data.
On to how it works:
When someone opts in, Typeform sends their response to Integromat via a webhook.
When that data is received it kicks off an Integromat “scenario” which:
When the opt out webhook receives data, the opt out scenario:
I’m not big enough to have CCPA or the like apply to my tiny list, but I’m happy to delete anyone’s information completely who asks me to.
When I want to send out a message to the list, I have another Integromat scenario that takes out a lot of the grunt work.
When I hit my bookmark for a new post, the new draft scenario:
My list is still small enough that I send a personal note out to pretty much everyone, so no sends are fully automated. That could change if enough people sign up. 😉
I then do a lot of copy pasting that makes a good target for future improvements.
No-code tools are great, and you can accomplish a surprising amount with them.
It can be the right choice in many situations even over writing “real” code.
Save the full coding production for projects that truly need the specialized skills of professional developers4. Everyone involved will be happier.
If “learning to code” seems like too much, see what you can get done with no-code tools. If you can learn some of the concepts, you might find your own super power. If you are good at spreadsheets, I bet you can become good at this.
If you already know how to code, give it a shot. You'll find a useful set of easy to pick up tools to complement the heavy duty ones you already know how to use.
Build something and email me about it, I would love to know what you come up with.
I could probably make it work across the board with no actual code. But, because I’m a coder at heart my website is too complex to make it easy to completely use no-code tools for this particular case.↩
You can see pretty much all of the code itself in the screenshot at the top of this post.↩
I'm not a monster.↩
And make sure they have appropriate help from designers and / or product folks too as the situation requires.↩