Oitihjya Seninhelpshift-engineeringProtocols: Clojure’s Polymorphic MagicIn this post, we will try to understand how protocols work in Clojure. As an example, we will see how clojure/core.cache, a well-known…9 min read·Feb 28, 2024----
Oitihjya SenUnderstanding: Log-Structured Merge TreesIn this post, I am listing down my understanding of Log-Structured Merge Trees (LSM Trees, in short), based on my reading of the first part…7 min read·Apr 17, 2023----
Oitihjya SenTransitioning from Heroku Free Tier to GCP + YugabyteDBThis post captures the list of steps I followed to migrate a HTTP service from a Heroku dyno to a Google Cloud Platform instance powered by…11 min read·Jan 8, 2023----
Oitihjya Seninhelpshift-engineeringUnderstanding Ring Middlewares and Compojure RoutesRing Framework5 min read·Nov 2, 2022----
Oitihjya SenPreventing Phantom Meetings Using Transactions and Serializable IsolationIn this post, I discuss how time-slot collisions in a meeting scheduling application can be resolved. First, I discuss the business logic…14 min read·Feb 10, 2022----
Oitihjya SenKicking Around Packets: Understanding How the Internet WorksIn this post, I try to answer the question “What is the internet and how does it really work?”15 min read·Feb 2, 2022----
Oitihjya SenMy First Clojure Backend Using Ring, Jetty and CompojureIn this post I discuss how I built my first web-app, RemindMe, using Clojure! The app is deployed here: https://remind.otee.dev15 min read·Jan 25, 2022----
Oitihjya SenWho Moved My Cheese: Laziness in ClojureIn this post, I try to understand what lazy sequences are and how to create our own lazy sequence in Clojure.6 min read·Jan 17, 2022----
Oitihjya SenRecurse Center: Week TwoThis post is about my second week at the Recurse Center.3 min read·Jan 17, 2022----
Oitihjya SeninJavaScript in Plain EnglishHow to Make Short Links Shorter: Using NGINX and Custom DomainA guide on how to shorten short links generated by Twirl.6 min read·Jan 13, 2022----