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 2D screen.

My goal for the end of the project was to just render a camera inside of a room, where the room was represented by some white lines drawing the frame against a black background.

I really had no idea how difficult this was going to be, so this…


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 nuances to the language that make it really nice to work with too.

A lot of programmers aren’t doing things that really benefit from Rust’s most lucrative advancements, however, the choices that went into designing this programming language make it worth exploring. …


An illustration of a shower head and a broken pipe side by side
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.

Enter testing.

Testing is the way we test our programs. Simple. The concept alone may be intuitive, but there’s a bit more nuance to how we design tests effectively and efficiently.

The great conflict of testing is that

  1. Everyone wants their code to work.
  2. No one wants to write tests…


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.

Through their story, we can learn that the key to health and happiness may be one and the same. It’s the story of a small village in the foothills of eastern Pennsylvania, a town named Roseto.

The Roseto Mystery

In the late 1800s, a group of paesani from Roseto, Italy immigrated to America…


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.

Probably the most central claim from the book, or at least what I’ve read of it, is that the key to humans’ success and survival has been our ability to cooperate and large numbers, enabled by our ability to collectively believe in the same fictional ideas.

Some of these fictional ideas…


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.


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. So for my older self, these are some things I hope you remember.

Dear 28-year-old Alec,

In just about a month, I will be coming up on a whole year of taking cold showers. I started this first stereotypical improve-yourself practice on somewhat of a whim, and now that a year’s gone by, it’s got me thinking about the path…


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. This is just to say that I’m not incredibly well-versed on the genre, but I thought I’d share my thoughts on what makes Christopher Nolan’s Dark Knight Trilogy so brilliant.

Although I’ve never really taken much time to think about superhero movies, this trilogy has opened me up to what makes this genre so compelling. In the basic form, I think the purpose of superhero movies, or the sort of selling point that makes superhero…


Photo by the author

Update

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. Maybe it’s just that the story I’ve been reading recently has been especially good.

I’m becoming somewhat agnostic of this format of an update, reflection, thought, and beginning to just throw whatever I want into these. …


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 think Rust is cool.
  2. I think Rust and WebAssembly have a lot of potential for the future of web development, as inexperienced and uninformed my thoughts on the subject may be.
  3. For a game, something that has the potential to be pretty computationally taxing for both the CPU and GPU…

Alec Chen

UIUC CS | alecchendev.com

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