Linear Regression: Intuition

In this post, we explore the intuition behind linear regression. While a relatively simple algorithm, it employs a bunch of ideas and techniques that are universal across machine learning.

Author's profile picture on Machine Learning and Data Science

Contributing to Firefox's SpiderMonkey

Since the past couple of years, I’ve open-sourced most of my projects and also contributed to a few small ones. However, I’ve always wanted to contribute to a large, popular open-source project. I finally got around to doing that last month: I submitted a patch to Mozilla Firefox’s JavaScript engine, SpiderMonkey, which was accepted on November 2.

Author's profile picture on Open-Source

Demystifying Tail Call Optimization

Tail call optimization (a.k.a. tail call elimination) is a technique used by language implementers to improve the recursive performance of your programs. It is a clever little trick that eliminates the memory overhead of recursion. In this post, we’ll talk about how recursion is implemented under the hood, what tail recursion is and how it provides a chance for some serious optimization.

Author's profile picture on Compilers

State Orchestration in Everest

Everest is a REST API testing client that I’ve been working on this year. It’s written in JavaFX and aims to be a lighter, open-source alternative to Electron-based options like Postman. It occupied the #2 spot on GitHub’s Java Trending for a week back in May this year when I released the first alpha. Today, I’ll be talking about a memory optimization technique that I’ve implemented in the most recent alpha release.

Author's profile picture on Personal Projects