Lambda unchained

Image for post
Image for post
Original comic by Cyanide and Happiness. Author’s remixed version above.


I recently came across a use case where I had to add text and resize multiple images a day and convert them to WebP format from JPEG so that they can be served more efficiently on the web.

In this post, I’ll be talking about how we scaled up this process using AWS Lambda. We’ll also work on a sample app that processes a single image through Lambda and uploads it to S3.

Initial Approach

As an initial approach, I used a simple Node server (in an EC2 box) which used sharp library (more on this later) to process images. …

Add security to your containers

Image for post
Image for post
Photo by Philipp Katzenberger on Unsplash


In my last article, I spoke about how you can build Docker images and run containers.

While it would make a good read for beginners, I’d like to focus on a problem that bugged me for weeks while setting up HTTPS on a Kubernetes cluster mainly because of how scattered the docs are.

Cert manager is a native add-on in Kubernetes that can be used for managing certificates. We will be using Let’s Encrypt as the certificate issuer.

For the purpose of this tutorial, we’ll be using a tool called Helm. …


Docker — a buzzword in the tech industry for some time now and a daunting concept to deal with initially. In this article, we’ll be exploring what Docker is, why we need it, and how we could run a basic Golang server in a Docker container. So, let’s dive in.

What is Docker?

Docker is simply an ecosystem that provides us with a set of services and tools to help in running and managing containers.

So, what are containers?
According to, “A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another”.
What this means is that a docker container provides you with a package packed with your app, libraries, binaries, and settings so that it can independently run on any system isolated from the host OS. …


In this post, we’ll be focussing on how binary search trees can be implemented in Golang and why they’re preferred over linear data structures like arrays or linked lists.

While we are still thinking of why trees over arrays and lists, let’s have a basic overview of the major functionalities we will be implementing in this article

  1. Node insertion.
  2. Tree Traversal.
  3. Get Min.
  4. Get Max.

What are Trees?

Trees are data structures used to represent a hierarchy. They are usually composed of multiple smaller trees. They represent a collection of nodes connected with edges and each node holds data of some type. …


Puneeth S

I write code

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store