The intuition behind rasterizing 3D space on a 2D screen.

This semester I’m taking a class on software design and for our final project, the course staff has given us 3-4 weeks and told us to make something using C++ and a graphics library called Cinder.

I thought it’d be cool to build the systems visualizing 3D space on the…

How Rust differs from other languages in one of the most common programming paradigms.

Image by the author

If you’ve heard about Rust, then you probably know why people are so excited about it. Memory safety through the ownership and borrowing system, blazing-fast speed, first-class support for WebAssembly, and so on.

Although these things make Rust a great programming language for the future, there are a lot of…

Systematic testing, test-first programming, writing tests, and more.

An illustration of a shower head and a broken pipe side by side
All visuals by the author

As software engineers, we want to write code that not only works, but works in every possible situation a user could find themselves in. Under any circumstance, we want our code to run the way we designed it to run, or at the very least communicate clearly what went wrong.

Stop worrying about it and hit the fundamentals.

Photo by Mathias Konrath on Unsplash

During the height of cardiovascular disease rates in the United States, a town of Italian immigrants stood out as a statistical anomaly. They had no deaths or even signs of heart disease in men under 55, and half the national rate of death by heart disease for those over 65.

I’ve been reading the book Sapiens by Yuval Noah Harari recently, and although I’m less than halfway through it has taught me so much. This is not a comprehensive view of my notes from the book, but a highlight and a connection that I’ve realized from my time reading.


I made a simple site for developers to easily get their own refresh and access tokens for Spotify’s API. Check it out here.

Screenshot of the site as of publishing this article

Motive Behind This Spotify API Authorization Wrapper

I was adding this page to my personal website that calls the Spotify API to show a brief listening history for my account.

Life advice from an 18-year-old.

Photo by the author

I see a lot of content creators I like making videos about things they wish they knew when they were younger, and I figured I’d flip the structure given that I’m in the opposite position as an 18-year-old right now. …

An analysis of the superhero story archetype as seen in Christopher Nolan’s Batman movies.

Concept design of Gotham City by Dermot Power

I’m not a huge superhero movie fan. Maybe I will be, but as of the time of writing this, I’ve consumed very few superhero movies. …

Getting better at reading and being a wasteman.

Photo by the author


I’ve been getting better at reading. I’m still rather slow and I reread a lot of passages because my mind wanders, but where before these things would bother me and cause me to stop, I’ve been able to keep going. …

My experience learning and using Rust, WebAssembly, Javascript, and WebGL.

For a little over a month now, I’ve been working on a 3D platformer game in the browser using Rust, WebAssembly, Javascript, and WebGL. This article is just a bit about my experience working with this stack.

The first level of my platform runner game. Feel free to check out more of my work on my personal website.

Why this stack?

Initially, I chose to use these technologies for a couple of reasons.

  1. I…

Alec Chen


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store