My Reading List

I am currently trying to learn various things like: Rust Haskell Distributed Systems, …etc. To achieve this, I have been exploring various resources: I have been delving into Alexis King’s blog at this link to gain a deeper understanding of typeclass metaprogramming. I have attempted several challenges provided by fly.io, some of which I have documented here. I am referencing a list of papers mentioned in the course syllabus, available here. I am studying “A Top-Down Approach: Computer Networking” by Kurose & Ross. I am exploring resources such as Rust Atomics and Locks to deepen my understanding. I am engaged in a Functional Programming Course. I am utilizing resources from Zerodha Varsity. I am also undertaking various “build-your-own” projects available at codecrafters.io, including: Redis Docker and others. I am navigating through this list based on my current interests, with the aim of completing it by the end of the year. ...

March 8, 2024 · 1 min · Upendra Upadhyay

Getting Into Computer Science

Throughout my childhood, I held a keen interest in computers, particularly in gaming. However, the technical\science aspects didn’t initially captivate me. Back in 2010, acquiring new games was a challenge due to limited internet access. We relied on friends with installation CDs, DVDs, or pendrives. Unfortunately, scratched disks often led to checksum errors or missing files, which forced us to download DLLs/files from the internet to fix issues. Encountering language barriers(English is not my first language) or difficult game levels led us to seek cheat engine for assistance. It was through this pursuit that I was introduced to Lua, although my attempts at mastery were unsuccessful. Nonetheless, I learned to utilize basic features like memory scanning to manipulate in-game values, enabling me to progress in game, by freezing my health, or getting large pool of money. ...

March 7, 2024 · 2 min · Upendra Upadhyay

Diversifying Career

I aim for a high impact career, and the more I contemplate this, the more I realize it cannot be achieved by sticking to one field alone. I’ve been entrenched in the computer science realm for some time, with a side interest in machine learning/data science. While my past roles have mainly revolved around fintech or logistics, I believe achieving greater career impact necessitates cross-pollination across different domains, blending diverse ideas to enhance my work. ...

March 5, 2024 · 1 min · Upendra Upadhyay

Advent of Code 2023 Day 5

AOC-2023-5 If You Give A Seed A Fertilizer This problem was hardest yet and took longest to solve. so the problem asks us to create a map from seed to location such as: seed -> soil -> fertilizer -> water -> light -> temprature -> humidity -> location where we are given certain mappings from one entity to another, eg: seed 1 corresponds to soil 10 and given this mapping and intial seed list we need to find the minimum location. ...

March 1, 2024 · 2 min · Upendra Upadhyay

Advent of Code 2023 Day 4

AOC-2023-4 Scratchcards This problem was easy in the sense that it required just required correct parsing and following the rules to get the result in the problem. Part 1 Part 1 just required correct parsing and computing the solution. Part 2 Part 2, says that for each winning card with n numbers, we will get extra copies of next n cards, so to maintain the number of extra cards we used a state monad, to keep track of how may extra copies each card have. We use that information to multiply our score with that. ...

February 29, 2024 · 1 min · Upendra Upadhyay