Generic Data Structure in C

Goal Goal of this post is to show the learnings specifically the generics programming in C, and the other C related techniques that I really liked. Target Readers The targeted readers are the folks interested in C Programming languages and know the language in begineer and intermediate stages, but interested to learn new techniques. Blog I recently read the linux kernel by Robert Love, It was a nice book, but became sligthly more dry for me once it came to end, as it was too much code definition after the VFS chapter. ...

March 1, 2025 · 2 min · Upendra Upadhyay

Ai Tools

How to Write an Effective Prompt Writing effective prompts is crucial for sparking creativity and getting the best results from AI tools like ChatGPT. Here are the essential elements to include in your prompts: Context: Provide relevant background information to set the stage for the AI. Context helps it understand the situation and tailor its response accordingly. Task: Clearly state what you want the AI to do, being specific about the desired outcome. For example, if requesting an email, specify the recipient and purpose. ...

April 7, 2024 · 3 min · Upendra Upadhyay

Book Review

I recently joined a new company called stripe, and I read few of the stripe press books like Increment. I read the remote increment issue, which was mostly fluff, but some useful studies and requirements that tells what it needs to be successful as remote employee and company, mostly how to manage time, async communication and high agency. Other small book that I read was called how to get things done, this book is for peeople looking for practical advice and generate a sense of urgency and make you an employee with more agency. It tells about someone with ADHD, can concentrate on work and be productive. The best advice was visualizing how the task will look once completed and maintaing the RNL list to stop you from being distracted. ...

March 9, 2024 · 2 min · Upendra Upadhyay

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