Posts
gRPC for Absolute Beginners, in Go
· β˜• 13 min read
Internet has evolved in last 2 decades a lot. HTTP/1.1 was not enough so we have HTTP2 now. The specification we used to transfer data between client and the server has also evolved. From XML, to JSON, and now we have Protocol Buffer, which is a binary spec. Let's dive deeper.

TDD Approach to Create an Authentication System With FastAPI Part 5
· β˜• 9 min read
We have been using FastAPI along with the Test-Driven Development process to come up with an authentication system. Till now we can register to own a tiny application using a username and password. We are also able to generate a JWT token to be classified as a logged-in user. But there is no point in logging in until the logged-in user can do something privileged. In this iteration of the series, we'd see how to access a protected endpoint using FastAPI and JWT.

TDD Approach to Create an Authentication System With FastAPI Part 4
· β˜• 11 min read
In the last couple of posts in TDD Auth with FastAPI series, we've been sustainably moved towards a web service that can let users register with the service. Now what? We have already done the easy part. The next part is to look at the authorization. This involves letting the user log in. And only give access to what they are authorized for. Let us look at the login part first.

Building a Book Store API in Golang With Gin
· β˜• 9 min read
Go community believes that we need no framework to develop web services. And I totally agree with that. When you work without using any framework, you actually learn the ins and outs of development. But once you learn how things work, you must reside in a community and don't reinvent the wheel.

__init__ vs __new__ and When to Use Them
· β˜• 5 min read
I recently got asked to me what did __init__ dunder method did in Python. And I was like, "it is used to initlize variables inside a class". And just after that the followup question was, "then what is __new__ used for. And I was completely blank.

How to Setup a Jenkins to DockerHub Pipeline with Multi-Arch Images
· β˜• 13 min read
We have previously seen how to set up a GitHub to Jenkins pipeline with webhooks, this time we are going to continue on that lesson and learn how to configure Jenkins to build and push Docker images to DockerHub. We’ll also see how to create images for both arm64 as well as amd64 architectures machines. Keep on reading.

How to Setup a GitHub to Jenkins Pipeline with WebHooks
· β˜• 10 min read
In a typical CI/CD pipeline, what happens is when you push your code to a code repository (remote) like GitHub/GitLab/BitBucket, an event is triggered by the git host provider. This trigger is known as WebHook. This webhook can be used by some third-party service to provide an array of integrations. Do you want to tweet on every git push? You can do that.

I Tried Open edX and it's Awesome
· β˜• 7 min read
This is a quick post where I talk about getting started strategies with Open edX as a developer. In this post I am documenting the process of edx installation on my local system for evaluating.

This is how OOPs and Mocking are related to Dependency Injection
· β˜• 12 min read
There are a few words, like unit testing, integration testing, mocking, dependency injection, object oriented proramming which are all related to each other. In this post I'm going to talk how, and then it will start to make sense to you.

TDD Approach to Create an Authentication System With FastAPI Part 3
· β˜• 15 min read
If you are following this series from start, you know that we can already create user from our API. But we have our tests failing right now, which is kind of smelly. In this post, we takle with the problem in our hand and discuss some methods we can do it with. One of them is dependency injection.

TDD Approach to Create an Authentication System With FastAPI Part 2
· β˜• 15 min read
In the last post in the series we did the project setup and seen some FastAPI basics along with red-green-refactor mantra of TDD. In this post, we talk about setting up the database and and implementing the user registration.