Hi, welcome to my blog! I am Kai Wern.
Here I write about software and life. Some of the tools I use daily are vim, Elixir/Phoenix, Rust, and PostgreSQL. You can expect posts about these from my blog.
Recently, I just finished up my batch in RC. During my time in RC, I have work on:
- Writing simple database in Rust, inspired by Let’s Build a Simple Database.
rok, a minimal reverse proxy inspired by ngrok.
- Implementing Viewstamped Replication (VSR) in Elixir based on this paper.
- Learning about database and exploring other lower level system like networking, observability and etc.
- Writing a book about building a ~simple~ database in Rust, based on my work above and inspired by Let’s Build a Simple Database and Crafting Intepreters.
After my RC batch ended, I’m focusing on the following stuff:
- Getting a job. Currently, I’m applying for different jobs, hoping to be able to pivot my career into working on lower-level systems.
- Continue to work on my projects in RC, such as the database system, VSR implementation, and
- Learn more about data structures and algorithms.
- Thinking of starting making video content about programming.
- Start some side hustle so I can have multiple income sources down the road.
These are the side projects that I worked in the past to learn, which now have been abandoned by me:
- TIL: Today I learned a web application developed with Phoenix. It includes basic features like adding posts with Markdown and tagging. The idea of the application is inspired by Hashrocket TIL.
- Expendere: A personal finance management web application that includes features like, expense tracking, budget, and recurring transaction (bills). It is developed with Ruby on Rails and a little bit of Preact. Due to limited time (and interest) available, it is abandoned now.
- hbtrack: My first CLI to track habits! It’s written in Ruby and still functions well. But I stopped using it, and uss Streaks instead.