Leveraging the Fan Out Pattern to Build Scalable Systems

In today’s world, businesses need to handle massive amounts of data, and the ability to scale quickly is paramount. In this article, we will explore the Fan Out Pattern, a design pattern that allows us to scale our systems horizontally. We will also look at how we can implement this pattern using AWS services (SNS and SQS) and automate the process with Terraform. Building Blocks Before we dive into the details of the Fan Out Pattern, let’s take a look at the building blocks that we will use to implement it....

March 4, 2023 · 7 min · Engineering · Software Design · AWS

How Prime Numbers Underpin Modern Cryptography

Imagine a world where digital communication and data transfer was a minefield of danger and uncertainty. Every time you sent a message or transmitted data, you risked interception by malicious actors seeking to steal your information. But then came the heroes of modern cryptography - prime numbers. These seemingly ordinary numbers turned out to be the key to securing digital communications and data transfer in the modern age. In particular, the RSA algorithm became one of the most widely used cryptographic algorithms, relying heavily on prime numbers to ensure its security....

February 27, 2023 · 5 min · Maths · Cryptography

From Confusion to Clarity: Making Technical Documents Clear

As part of my computer science studies, I had many (at first glance) useless subjects, including one where we learned how to write documentation/reports in LaTeX. In retrospect, I see that mastering LaTeX helped me learn the ingredients of creating effective, readable and useful documentation. In my current role as a Software Engineer, I can confidently say that the proper practices for writing documentation I learned back then have helped me....

January 22, 2023 · 7 min · Engineering

Unlocking the Secrets of Secret Sharing

In this blog post, we’re going to dive into the world of secret sharing. You might be wondering, what the heck is secret sharing? Well, it’s a way to protect sensitive information by dividing it up and giving pieces to different people. But, only certain group of people can put the pieces back together to reveal the secret Idea The idea is simple. Let’s say we have a secret message that we want to share with a group of people....

January 13, 2023 · 8 min · Maths · Cryptography

The Essentials of Hashing

In this blog post, we’ll learn about a powerful technique called hashing, which is used for many purposes, including data storage, data integrity, data security, and data compression. The story follows King Data, ruler of a kingdom named DataLand, as he discovers the many benefits of hashing. Through his experiences, we’ll learn how hashing can be used to store data efficiently, verify its integrity, and protect it from unauthorized access. So come along on this magical journey and discover the wonders of hashing!...

December 30, 2022 · 11 min · Maths · Cryptography