Posts
Very Basics of Concurrency in Go
· β˜• 7 min read
I've dabbled over many languages in the past, from PHP, Java, Python, C/C++, JavaScript and now Go (some of them I only know the syntax of). I never experienced concurrency the way it does in Go. In my first company I did some concurrent programming using Python threads, but the threads didn't share any data between them.
https://d2kbulfv42d43j.cloudfront.net/2021/concurrency_vs_parallelism.jpg

Git Submodules Basics and How to Replace One Submodule With Another
· β˜• 7 min read
Suppose you are working with softwareA which depends on libraryA, instead of copy-pasting the libraryA over and over again when a new version of the library is released what we can do is use submodule to make this process DRY and elegant.
https://d2kbulfv42d43j.cloudfront.net/2021/default-hermit-screen.png

How I Enabled HTTPS on My EC2 Hosted Website
· β˜• 6 min read
In 2014, Google hinted that they are running tests taking into account whether sites use secure, encrypted connections as a signal in our search ranking algorithms. This means it will affect SEO in some way. Today in the age of HTTP2, https is defualt. Default in the sense that many server software will only allow HTTP2 when https is configured.
https://d2kbulfv42d43j.cloudfront.net/2021/https_enabled_domain.png

Inheritence in JavaScript with Prototypes
· β˜• 2 min read
In this post we'll learn about what are prototypes, why use them and how we can do inheritence with it.
https://d2kbulfv42d43j.cloudfront.net/2021/prototype_inheritance.jpg

2020 in Review: Soft Skills, Books, Cloud and SE Practices
· β˜• 10 min read
Each year I post about what have I done in that particular year, inclining it more toward career. This is to document my process of learning over the year of 2020. I would say this was a productive year for people in IT. I myself completed some courses this year which would take more time if it was a non-corona year.
https://d2kbulfv42d43j.cloudfront.net/2021/2020_in_review.jpg

Beginner's Introduction to Promises in JavaScript
· β˜• 2 min read
Promise is a language feature for asynchronous programming in JavaScript. Today we see the basic syntax which will get you running while you learn more on the go.
https://d2kbulfv42d43j.cloudfront.net/2020/pinky_promise.jpg

Data Structures 101
· β˜• 8 min read
Like most of the self-taught programmers, I spent a lot of my years dabbling with different technologies. But there comes a time in every programmer's life when they have to learn data structures and algorithms to proceed in their careers. In this post I will go through the basics of data structures, what purpose they server and what's common between all of them.
https://d2kbulfv42d43j.cloudfront.net/2020/array_representation_in_memory.jpg

A Brief Evolution of HTTP
· β˜• 7 min read
In this post I have gone through and collected events related to HTTP and it's gradual development.
https://d2kbulfv42d43j.cloudfront.net/2020/OSIModel.jpg

Difference Between Handler, Handle and HandlerFunc
· β˜• 6 min read
Are you lost between Handle, HandleFunc, and HandlerFunc? If the answer is yes then this post is for you. To understand these pretty well we need to be familiar with interafces. Although `interface` is just a keyword, it's confusing at first when you are switching from Python like language; which does not have a similar keyword.
https://d2kbulfv42d43j.cloudfront.net/2020/interface_usage.png

What Does a True RESTful API Means?
· β˜• 4 min read
The way we used to deliver resources to the client in a server-client setup is now drifting away from REST to a more modern delivery mechanism. Two of them are gRPC and GraphQL. While both these solve a different kind of problem, REST is going to stay for a while. It is the simplest to learn at least.
https://d2kbulfv42d43j.cloudfront.net/2020/restful_api.png

Benchmarking in Go, with Example
· β˜• 3 min read
If you think it’s slow, first prove it with a benchmark. Don't assume if things are slow. Benchmark it and see if they are really slow. Benchmarking is the way we check how fast our algorithm is for a given unit of the program. In benchmarking, we typically see how many iterations can a piece of code can run in a given time.
https://d2kbulfv42d43j.cloudfront.net/2020/benchmarking_in_golang_car_432376_960_720.jpg

Top 6 Free Learning Resources I used to Learn Go
· β˜• 4 min read
I am a self-taught programmer from start. And have limited knowledge of computer science. Which of course is changing day by day. I had a background in Python before getting into Go. So my recommendations will also be aligned with my experience level.
https://d2kbulfv42d43j.cloudfront.net/2020/red-green-blue-gophers-smaller.png

Optional Parameters Using Option Struct
· β˜• 5 min read
There is another option to use optional parameter which we saw in last post. We use something called option struct. Much similar to what we do in JavaScript. Without further ado, let's get started.
https://d2kbulfv42d43j.cloudfront.net/2020/option_struct.png