Originally published at https://badgerbadgerbadgerbadger.dev.

I’ve come across many mTLS tutorials on the internet but none them took me through the process, end-to-end, in a satisfying fashion. I hope to do in this tutorial is to start with the ideas of TLS and mTLS and conclude with an implementation you could reasonably productionize. Although we’ll be using a Golang server as our backend and Traefik as our reverse proxy, these ideas translate to other technologies as well.

Serve Me!

In a traditional TLS setup, the kind you encounter every time you see that green padlock icon in your browser’s address bar, it is…


The shared github repo for the end product of this post is in version 2 state. @lovasoa kindly contributed a pull request which massivley improved performance and allowed the rendering to happen at full screen with much better speed and taught me many things in the process. I’ve added these improvements as an updated section at the end of the post. Many thanks @lovasoa. The first version, on which most of this post is based is still available for perusal at https://github.com/ScionOfBytes/smooth-mandelbrot/tree/v1.0.

Intro

A few weeks ago, somewhere in late April, I became fascinated with the Mandelbrot Set. I came across…


I’ve been playing — you guessed it! — a lot of Horizon: Zero Dawn, lately (I’ve even reached far enough to know why the game has Zero Dawn in the title). It took me a while to get over my lethargy and truly dive into this masterpiece, but once I did, I found myself hooked. …


So said my mother when I was twelve. Naturally, my twelve-year-old self rebelled against the idea and ever since then I’ve made it my life’s mission to have fun. Most things I do are in pursuit of having a good time.

And yet, I don’t always end up enjoying myself. Heck, I almost never end up enjoying myself. Maybe my mother was right.

Don’t tell her that.

I have a very bad habit of buying games for my PS4 that I don’t end up playing for more than an hour. …


Originally published at https://badgerbadgerbadgerbadger.dev on September 13, 2017.

Note: In this post I talk both about the purely technical reasons for doing certain things and some practices that have made debugging production systems easier for me. I’m still fairly new to Go and still learning, so if you find any issues with my approach or have a better way to approach the problem, please leave a comment.

I come from a NodeJS background and my coding habits have been heavily influenced by the paradigms most used in NodeJS. I started coding in Go quite recently and immediately fell in love…


My best friend and I often talk about theoretical scenarios. Being the bright rays of sunshine that we are, we more often than not meander down morbid roads.

We were talking about Christina Grimmie and her unfortunate death and how her legacy has been immortalized because of the internet. Her songs will be heard decades from now -crosses fingers- by people who might not even know she’s gone till they look her up on Wikipedia. She has left behind a musical legacy and in people’s hearts, she’ll never die.

Some of you are gonna snigger behind a closed fist or…


NFS Rivals

I got NFS Rivals on the PS4 just last week. It’s a fun game I picked up for $20 and I didn’t think I’d it play much (I got it coz my girlfriend wanted to play a racing game), but then I ended up playing it quite a lot.

I could say a lot of good things about the game and I could say a lot of bad things. I’m not a very big racing-game fan and haven’t played enough of them to write a well-informed critique (though I can tell you that Most Wanted 2005 was a vastly superior…


Courtesy of https://unsplash.com/@ashelizabethphotos

I bought a PS4, last week. I thought it would fill the gaping hole in my chest. And lo and behold, it did. Who knew the hole in my chest was shaped exactly like a PS4? 😜

I’ve been a casual gamer all my life. Started off with NES games, moved on to PC, and then played SNES, Gameboy, Gameboy Color, Gameboy Advance and N64 games, all of the latter emulated on said PC. Never played on an Xbox or Playstation (till now) and never really missed them.

My favorite type of games have always been RPGs. I’m a reader…


I love listening to podcasts as much as I love reading articles. Some people have told me that they don’t feel the same way- they can read faster than a podcast and the whole speed-up-the-cast-to-listen-faster thing just feels weird to them. That has always rubbed me the wrong way. It is as if they are implying that listening to podcasts in real-time is somehow a waste of precious moments, and unless you are consuming an article or cast as fast as possible you are somehow violating a holy precept of time-optimization.

I love listening to Changelog podcasts, especially Spotlight and…


Photo courtesy of https://unsplash.com

Today, while at work, I had to turn a single-quoted string into a template literal because mid-way through the string I realized I had to put in an apostrophe. This has happened often enough that I want to stop thinking in this dual single-quoted/template-literal mode and just go template-literal all the time.

Now before I say anything more I’d like to clarify that I’m working with NodeJS almost all the time with full feature support for template strings and no issues with things like minification. …

Shaun

Weekend coder, disorganized reader. My tech posts are usually at https://badgerbadgerbadgerbadger.dev/

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