• How to build a tool like Zapier using Lambda, SQS & DynamoDB

    Introduction

    Zapier is a no-code workflow automation tool that can be used to integrate apps and make them work together. I have been using Zapier for a bunch of my side projects and it was been pretty useful to hook up services like Stripe with Gmail. However, I recently started hitting their free tier limits and started exploring the possibility of building a simple Zapier alternative, mostly for fun.

    The requirements that I came up with :

    • Completely serverless: I don’t want to manage any infrastructure
    • (almost) Free: It should cost close to $0 for my use-case which I will talk about below.
    • Multi-step workflows: Currently, Zapier’s free tier only lets you perform one action for a particular trigger. I wanted the ability to perform multiple actions (for e.g. send an email and a slack message) for a particular trigger.
    • Webhooks support: I’m a big fan of Zapier’s webhooks functionality and want to replicate that.
    • Polling-based workflows: Ability to poll an API endpoint and take action if there is new data available

    Read on →

  • How to use AWS Lambda & S3 to build scalable & reliable serverless applications

    Introduction

    AWS Lambda can be used to process event notifications from Amazon S3. S3 can send an event to a Lambda unction when an object is created or deleted. This event-driven architecture can be used to build a scalable & reliable serverless applications.

    In this article, we will look at how to build a simple application to create thumbnails of images stored in S3 using AWS Lambda.

    Read on →

  • How to create AWS billing alerts using Lambda, Cost Explorer & SES

    twitter-image

    Introduction

    Amazon provides the ability to create Billing Alarms that can be used to alert whenever your AWS bill exceeds a certain threshold. However, this approach has a few shortcomings:

    • You need to set a predefined threshold. When you are first starting to use AWS, it’s hard to know what your AWS bill will look like. A lot of people set this threshold pretty low to be safe.

    • An alert like this tends to be reactive instead of proactive. The alarm gets triggered once the threshold has already crossed. For example, I had forgotten to turn off an EC2 instance I was no longer using but I only found out about a week later once my billing threshold crossed the limit.

    Cost Explorer does provide an easy-to-use interface that can help keep you on top of your billing data. However, this requires one to use the tool regularly to ensure we don’t miss anything.

    In this article, we will look at how to build a simple pipeline to send us billing reports over email. The generated report will look like this:

    billing-alert-email

    The tools we will use are:

    • AWS Lambda
    • Simple Email Service
    • Cost Explorer API

    Read on →

  • AWS Lightsail Deep Dive: What is it and when to use

    AWS Lightsail doesn’t usually show up in a list of AWS’ most popular services. However, Lightsail can be a great service to use especially if you are looking for a service that is easy to set up and has low maintenance. In this article, we will take a deeper look into Lightsail, when to use it and compare it to some of its competitors.

    AWS Lightsail is a collection of building blocks that make it easy to get a web application up and running pretty quickly. These building blocks are:

    Read on →

  • AWS API Gateway: HTTP vs REST

    I was recently looking into API Gateways for a project. As I was reading up on AWS’ API Gateway, I realized that there were two options that I could potentially choose: REST APIs or HTTP APIs. The two services had similar names and provided similar features and left me feeling pretty confused about which option was more suitable for my use-case.

    One can always count on AWS to create new products that end up confusing people even more. As I started digging deeper to understand the differences, I wondered why Amazon created an entirely new HTTP API service instead of improving the existing REST API service. This way the customers get all the benefits and don’t have to spend time trying to understand the differences and choosing the right service for themselves.

    In this article, I’ll try and do a comparison between the two services, and hopefully, that will be useful for folks who are trying to decide between the two services.

    Read on →