Year in Retrospective

accelerate

creds to 0xluffyb for the wall

This year definitely was my best year when it comes to programming, only. Yea I built a bunch of cool shit but overall as a student not much of a great year (although I am working on improving that). This post though, only details the stuff I built or did this year starting from January to October. And I am pretty sure I am not starting anything new till like the June of 2025.

Lovbyte

lb

Lovbyte was my first serious step in making full stack web applications with javascript. It uses remix as the framework and prisma as the orm. Honestly, I really did not dislike remix as a framework, it was fine to work with. I have always had issues with typescript apps because then I have to run tsserver and it painfully freezes my 4gb ram beast of a laptop. Lovbyte was a dating app kind of thing but specifically made for programmer where programmers can customise their pages with projects they made or their tech stacks and so. I also added a chat feature as well. After this I got tired of web dev for some time and moved on to rust.

Linear

My best and recommended method of learning any new language is to some kind of discord bot with it. And so i did. Linear is a discord bot which can be used to host cryptic hunts and quizzes in your server. Sadly, now I can trigger people, but instead of sqlite, I used mongodb for storing data (I’m sorry). I also integrated the power to take and create hints. Overall I got a basic understanding of rust. I do not prefer rust for programming because it is kinda too hard for my dumb brain and I’ll respectfully take the skill issue here.

Scuffword

This is yet another discord bot made for learning yet another new language, this time C. This bot is an implementation of the infamous password game by neal. Of course this is not an 100% implementation as all levels are not realistically possible inside discord’s ui, but I tried my best. There are about 20 questions or so and it is pretty fun to play. I also learned how to make fetch requests in C and then manually string parsing json (pain). Also this project made me fell in love with sqlite, and it is now the only database I opt for everytime I’m building something no matter how complex the project is.

Webby // Shawty

This was when I had the most fun with C. These are web servers written in scratch in C without any external modules. I HAD so much fun making them and I’m honestly grateful that I did these. It made me learn more about how requests and responses work. With webby, I only had some basic routing, static files like images and gifs, and a fully functional sqlite todo app. Shawty is a url shortener written in the same stack, but replacing my javascript files with htmx. Kinda fascinates me how easy things really are when you fully understand them.

Pound

pound

Pound is a text editor I made following snaptoken’s amazing tutorial, but I extended it myself with cloning some common vim emulation, fancier ui and dashboard, and working line numbers. These things sound easy to make, but to me back then, these were some insanely tough things. This honestly taught me a LOT about terminals, I did not even know something called raw mode also existed before this tutorial.

Neuing

Neuing was a simple neural network simulation written from the ground up in golang, so that means I had no numpy or anything. Now this was a painstaking task because I am a very weak maths student and at the grassroots level, neural networks ARE just some matrix multiplications and it was a pain getting them right, but in the end I satisfied some convinving accuracy so it works I guess.

Biotrack

bt

I wanted to get back to web dev but I did not want to go back to writing mindless jsx. So I decided to use echo and templ to create biotrack, a all in one health tracker. I also experimented with the gemini api (actually quiet good) and also added an chat assistant that can find anomalies in your data and make recommendations. The good thing is that all of it is done entirely within golang and templ itself so no react bs or something. This was a very fresh breath of air from all the web dev slop that had been feed into my mind for the past 4 years.

Holmes

holmes

Holmes was another golang/echo web app I made but it is a bit more complex than bio track. It is a website where you can host cryptic hunts / quizzes and also add media like images, videos, audio to your questions via an admin panel. It was a fun challenge to create an admin panel and I also learnt about csrf protection. This was an app that was actually used to host a hunt and it went pretty smoothly with 0 downtime and errors. I also learned how to use s3 buckets for storing stuff. Overall it was pretty fun to make and I honestly love this type of web development more where I am not bounded by some insane file structure which results in 100s of files for the most mundane things.

Pixie

pixie

Pixie is a web based image editor built with NextJs for the frontend and Rust for all the backend image processing in the form of web assembly. I have not used any libraries for image processing and all of it is painful pixel manipulation that was fun to learn. Similary the onlything actually used in the frontend is the html canvas. You can crop, resize, scale and rotate images as some basic transformations or tweak with a bunch of filters. Of course you can load and save images. This was very fun to make as well and it was also a bit of the pain in the frontend but using zustand for state management made things a lot more easy.

Lock In Cafe

lockin

Lock In Cafe is another one of those 24/7 lofi websites. When I learnt that lofi.cafe is just embedding youtube iframes and cycling through them, I could not resist building my own. I added a todo list and a pomo timer on top of that and I have actually been using this non stop. Rare, one of the things I built that I actually use. This website is made with nextjs because I didn’t really want to spend much time making this and this was done under 2 hours of development time spanned across 4 days. You can visit lock in cafe at https://cafe.namishh.me.

Zenote

zenote

I also fiddled around with Tauri to create zenote, a no bullshit, keyboard oriented, markdown note taking app. It is really simple, has a buffer explorer, ability to save and open files, dark and light mode, and a nice looking welcome screen as well. So there is nothing extra in this app and it was made with the mindset of just “open and type”.

Notes

notes

I also got interested in a bit of DSA this year and decided to upload all of my notes for free. Right now, there are only a handful of topics but be prepared to see it get large in the next couple of years. You can visit theme at https://notes.namishh.me.

Smaller Things

  1. Captivus: A Prisoner’s Dillema Simulator
  2. Motus: A very tiny basic physics engine in C
  3. Venusta: A tiny utility to extract colorscheme from images
  4. Fetch.rs: A small customisable linux fetch script
  5. Hacknio: Re-designed the whole ui for this hackernews client

Floww

Floww is one of my bigger projects that I have put on hold/rarely work on because it is too big and will take me a couple of years to release. I plan to make it as a small SaSS startup and I really do believe it can just work out if executed perfectly which will require time and that is why it is on hold for now.

Studies and rest

Well this is my last year as a school student and my prolly my last blog post of this year. I have my college entrance exams in Jan and Apr but I very much know I’m not anywhere near the race. I will be fighting kids who worship this exam and have been religiously preparing for it for 4 years and sometimes even 6-7 years. Many people will be attempting the paper for the second time who might have gotten a very good rank last year but just not good enough for their desired branch, and then there is me, a mostly dumb kid whose not even that serious about the exam with 1 year of preparation. And to get my desired branch (computer science), I need be in the top 0.5% of the kids, and I’m battling 2M of them. Pretty hopeless and this journey could have gone right at multiple steps but yet here I am. I might make “Learn to excel in JEE from a failure” next year because there are some things that I regret but programming is NOT one of them.

In my country, people still have this broad thinking that “your college defines you”. And it is true that jobs are more likely to be given to students in better colleges, but that is not because of the college. It is because the student is smart and the chance of a kid being smart in a top tier college is high as well.

Well JEE, might not be destined for me, I could still give it a fair shot, but I know that all I want and WILL do is computer science no matter which college I land in. Maybe it will come late, but it will be sweet.

Namish

15 Oct 2024

( っ˶´ ˘ `)っ made out of ❤️ and boredom

built with astro