February 27, 2021#technical

Reimplementing Signal's Key Exchange Algorithm

I had a bit of free time this week, as I took a break after last week's barrage of midterms. A friend of mine introduced me to Elixir, and I noticed that one of their demo projects was a real-time clone of Twitter. I drew inspiration from this and thought about making a short demo of a real-time chat app, which reminded me of Signal's end-to-end encryption, which is advertised as 100% deniable. I didn't end up making the chat demo, but I did go down a rabbit-hole and reimplement Signal's key exchange algorithm. Read more

January 28, 2021#technical

Switching Ecosystems

It finally happened. I told myself I'd stick to Windows machines forever, and would never buy Apple unless Windows ceased to be usable. I didn't think that day would come this early, if at all, but it did. Read more

December 25, 2020#technical

Simplifying App Deploys with Docker

If you recall, I've been writing Dokku-replacement tools for a couple of purposes now: my website, and some CS 61A infrastructure. It occurred to me that this is a fairly common use case, and there's no reason for me to not turn it into a reusable library. It'll make updating my website's buildserver as well as 61A's buildserver far more convenient, and new features will end up in both places. So I did! Read more

November 30, 2020#college | #technical

Overhauling Infrastructure for CS 61A

I've been working as a tutor this semester for CS 61A. Until about a week ago, my job has been primarily teaching, with a focus area in extra mentoring as well helping with grade management, since I took care of the latter as a TA over summer. However, after a bug popped up in the grading system last week, I volunteered to fix it instead of deferring to our Head of Software like we usually do. Since then, I've turned 61A infra over and improved multiple aspects of it. Read more

September 19, 2020#technical

Templating My Website

For the last month or so, ever since I redid my website and starting sharing it with people, I've been receiving a variety of compliments on it as people seem to have loved the minimalistic layout. I think I'm going to keep this layout for a while, as it's simple for me to extend with any new functionality I might need, but also fun to share and get people's reactions on. Read more

August 21, 2020#technical

Dockerizing My Website

I tend to revamp my website in part or whole every six months or so. This time, I didn't exactly switch it up entirely, but I did switch from static hosting to hosting on a server. Mostly for fun, but also because I wanted to move away from the restrictions of static hosting. Read more

March 20, 2020#college | #technical

My College Workflow

It is now my second semester in college, and it's been a pretty steady ride so far. In the last few months, I've developed a studyflow that I think works for me, and I figured I might as well share it here. This post will contain some general things, but it'll be very largely targeted towards what a CS major would care about, given that I'm a CS major. I'll break it down by course, as most of my process will probably carry forward to future similar courses. Read more

February 17, 2020#technical

How It's Made: My Toolkit

I've been doing a fair amount of restructuring of all of my projects as well as my workflow, but now that I have a regime in place I figured I'd share how everything is set up for me. I'll describe how I work as well as what tools I use for what purposes, so stick around if you're interested! Read more