## Mastering Concurrency: A Comprehensive C++ Guide to Processes and Threads1946 words ~10 mins April 29, 2021

#Programming
1. Introduction First lets begin by defining a piece of system software called the Operating System (OS), which is responsible for orchastrating the sophisticated resource management of a given machine’s hardware as well as providing an abstracted interface for software to be built above. At the time of me writing this article, I have a web browser open, my spotify playlist on, as well as my VS code editor and a terminal open.

## Quick Primer on Metric Spaces401 words ~2 mins June 18, 2020

#Mathematics
Vector Space A vector space is set of mathemetical objects that can be multiplied and added together to produce objects of the same kind. This notion of vector spaces proves to be a very useful framework for extending methods and structures to very different types of problems. A few special types of vector spaces you may be already be familiar with: Function Spaces We can add functions together and scale them as well.

## Primer on Matrix Multiplication1172 words ~6 mins May 27, 2020

#Mathematics
Introduction Remember the good ol days when 6 x 5 easily made sense as adding 6 together with itself 5 times and whala you ended up with 30. Now you’re in college and things are hard 😭 Hopefully running through an example can give you a bit of a glimpse as to how and why we do matrix multiplication. How to Compute Matrix Multiplication Consider two Matricies A and B. We denote the dimensions by row and columns, in that order.

## Combinations390 words ~2 mins May 3, 2020

#Mathematics
Since the concept of “n choose k” seems to appear a lot in my life I decided I would make a quick post explaining the intuition behind it. Let’s start with a simple example. Say we had a set of three greek characters representing the names of three friends, $$F = \{ \alpha, \beta, \gamma \}$$ and we are interested in knowing how many uniquely paired matches could be played between two competitors of the friends in table tennis.

## Mathematics Meets Signal Processing: Exploring the Convolution Integral570 words ~3 mins April 22, 2020

Introduction Since signals are sets of data or information and systems process said data, we are interested in the analysis of systems. When we deal with a special type of system that contains the properties of linearity and time-invariance, we are able to construct methods of analysis that are extremely useful for Linear Time-invariant (LTI) systems. Fourier analysis, which will be a seperate blog post, and the convolution integral are examples of exploiting system properties to decompose inputs into basic signals which are easy to work with analytically.

## Random Variables and Distributions1345 words ~7 mins April 21, 2020

I hope this article serves as a basic introduction to the terminology of probability theory! Random Variables Considering that an experiment is a procedure that produces well defined outcomes, like taking a course and finishing with a certain grade letter, we see that a random variable is a function which maps random outcomes from experiments to numerical values $$X : \Omega \to R$$ . The set of all possible numerical values attainable is called the support of the random variable.