paint-brush
Learning English with Zapier and Algoliaby@algolia
107 reads

Learning English with Zapier and Algolia

by AlgoliaApril 6th, 2023
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

March 11th is National No Code Day in the United States. To celebrate this day, we challenged English teach Alita Leite de Silva to build something cool. She used Algolia’s API-first search tools and the Zapier automation platform. Here she explains how to build your own no-code app.
featured image - Learning English with Zapier and Algolia
Algolia HackerNoon profile picture

National No Code Day falls on March 11th in the United States to encourage more people to build things online without code. To celebrate this day, we challenged English teacher Alita Leite de Silva (who is not a developer) to build something cool using Algolia’s API-first search tools and the Zapier automation platform. Here’s Alita to explain what she built.


Apps are everywhere! There are apps for banking, organizing, or even just sending reminders to water your plants. They’re so common that small businesses like mine are even making their own apps now to send recurring emails or SMS messages to their clients — after all, it’s an effortless and effective way to stay in touch with customers and to continue to generate new business.


It takes very little skill. Take it from me; I’m not tech-savvy at all! As an English teacher, I spend a lot of time sending out homework emails, which hardly anyone actually opens… 😒 Oh, the beauty of teaching. Anyways, I thought that maybe I could automate this process and send out a recurring email to my students with a new English expression for them to practice each week, all without wasting time sending these emails myself.


Then, we could have a simple, searchable page with all of the English expressions that go out in these emails, for the students to look through as a reference. The problem is, I don’t have one ounce of developing skill within me other than knowing how to turn computers on and off; use the programs I need for teaching like Google Sheets, Docs, and Slides; and I can send out emails and download homework files.


I still don’t really even know what code is. But I went off on this journey anyways, and as it turns out, it’s way easier than it seems! And if I can do it, you can too! In its simplest form, it goes like this:

Configure a no-code platform like Zapier

  1. Find a tool to walk through this whole process without needing to write any code. I found Zapier to be super helpful here. If you’d like to follow along, you’ll need to sign up for an account and create a new Zap.
  2. Select a “trigger”, which is basically the app that will initiate the whole process. I chose Schedule by Zapier, since I want my “Expression of the week” email sent out on a weekly basis.

  1. Now we need to find a tool to store our information, one that works with Zapier. For this, I chose Algolia. A friend over there recently showed me that they’re building an Algolia/Zapier connector, and he gave me access to an early version of it. If you want to mess around with it too, you can get access here.
  2. After that, you’ll need to choose an “action” in Zapier, which is the app that stores your message and sends it out when it gets triggered. If you clicked the link above and walked through the process, you should be able to choose Algolia here.


Add your Algolia data source

Next, we’ll need to build our data. Algolia will let us fill our database with a JSON file, a format that I hadn’t heard of before. Here’s how it works:


  1. First, find a place to write your file. A great option is Microsoft Notepad. Don’t use anything with formatting options like Word or Google Docs.
  2. The whole file will be encased in square brackets. [ is the beginning of the file and ] is the end.
  3. Inside the square brackets, we’re going to list several objects, each of which represents one of the English expressions that the students will receive. Objects start and end with curly braces: {}. You’ll need a comma in between every object.
  4. Be sure to make the JSON organized and well-spaced so you can read it and add to it easily later.
  5. Each line inside an object will be a label (in quotes), a colon, and then the value of that label for that object in quotes. My developer friend says it’s custom to make the label start with a lowercase letter, and replace all spaces by capitalizing the first letter of the next words. So a label could be expressionOfTheWeek, but not Expression Of The Week. You’ll also need a comma in between every line inside an object, so all but the last line inside an object will end in a comma. JSON to describe a person might look something like this:
{
    "firstName": "Jane",
    "lastName": "Doe"
}
  1. In my case, I want Algolia and Zapier to know which information to send to my students on which day, so I have a daylabel on all of the objects in the JSON file, and their values are the dates I want those expressions sent out on. For testing purposes, it’s best to have one object sent out on the day that you’re making your App. Let me show you what my JSON looked like:
    Write your file on a simple App like Notepad. Rename it to be a .json file.
  2. Save this as a .json file. The app you’re using to write it might make you save it as .txt first, but you can rename it later in the screen with all your computer files too. Make sure the Type of the file says “JSON file”.
  3. Go back to Algolia. Once you sign up for an account, it’ll walk you through the process of creating an application and an index. Once it asks you to upload data, just give it the JSON file we made.
  4. In the Algolia index, I had to add day as an attribute for faceting, which basically means I’ll be able to send Algolia an instruction to filter all of the search results to just the ones for the day I choose. This is under Configuration > Facets > attributesForFaceting.
  5. Back in Zapier, under the Choose Account dropdown of the Algolia connector app, we can give it our Algolia credentials. At this point, you can put in all your credentials.
  6. Now that our JSON file is done and in the right place, have Zapier run a test search in Algolia. If you have a result available for today, Zapier should pull it in and recognize the labels we set up in our JSON file earlier.
  7. Next, you just need to set up your email information. Under “Body”, you can write the email message and insert information from Algolia by clicking on “Run Search in Algolia” in the dropdown that shows up when you start typing. Set the Algolia tags the way they would appear in a sentence like in the screenshot below. What we write in the Body box will be exactly as it shows up in the email, so make sure you get your punctuation and grammar on point 🙂

Putting it all together

And we’re done! Now test it out by sending it to yourself to see how it looks in our inbox! Mine looked like this:

Zapier will send these SMS or emails out however often you’d like (with a Zapier subscription since we’re using more than the free tier features).


Algolia’s main use is that once you have your index set up, they provide all the necessary tools to let your users (or your app, however it works) search through that data. There’s an option under the UI Demos tab in the index to actually make a prototype of a page where you could search through the information in the index, and that page is good enough for me to send to my students so they can automatically see all of the expressions and search through them without having to go through their emails. It’s a clean, simple display:

Isn’t it crazy that I was able to do this with such little experience? It just goes to show that the few hours I put into this (even though that’s probably a little longer than most professional developers would take) were well worth it. After all, technology is constantly advancing, and time is becoming more and more valuable, so learning how to get started with automation is extremely valuable. Thanks to the folks at Algolia for giving me some pointers so that going forward, I could focus on giving my clients high-quality services instead of manually sending out repetitive emails. I’m looking forward to seeing my students make that extra push to use everyday English expressions at work with confidence, all thanks to automation like this.


So if you’re a non-developer like me, don’t be scared of tools like Algolia just because they’re built to be coder-friendly. You can still automate your business and spend your time on the more important things with just a small time investment by using low-code organizational tools like Zapier. That power is all at our (non-coding) fingertips! So why not give it a try! If you need any help, the folks at Algolia will be just as happy to point you in the right direction as they were with me 😉


Also published here.