A peek into the cacophony of software, Internet, and art that is my life.

Reflections 2020

Another year, another... year?

Understanding D3

A blog post

Modeling Moments so Dear

You could call this a moment generating function, but you really shouldn't

Reflections 2019

Another year in review

Matisse is a Team Player

Generating stories from book covers

Merry Belated Christmas

The much delayed part 2 of naitian.holiday festivities

April Showers

Some rainy day poetry

Subtle Asian Meta

Going one step deeper

First Semester Reflections

Fall 2018 Wrap-Up

If You Start Playing...

Part 1 of naitian.holiday festivities

Reflections 2018

Some thoughts on the past year (time flies)

Procrastination and Showering

I have a final soon.

Let it Snow

A Little Bookmarklet for the Winter

The Consequence Eradicatorâ„¢

Unfortunately, our Conrad doesn't have a soft British accent.

Reflections 2017

Some thoughts on the past year

purple.com: a brief eulogy

Here's to the death of an era.

About this Site - The Terminal

How the "terminal" works.

Do My Friends Care About Me?

Yes. Yes, they do. At least, 22% of them.

The Blue Lagoon

The exciting world of speech synthesis

About this Site - Design

How I designed this site.

About this Site - Intro

A walkthrough of how this site was built.

Fizz Buzz

A Fizz Buzz solution and why too much thinking is bad.

Getting Cozy with Jekyll

A quick guide to easily generating new Jekyll posts with Python and Mustache

Oops! and Why I Use Vim

A quick post on how and why I use vim.

New Year, New Blog, and New Bugs

A couple of notes on the upcoming year.

Chrome Developer Tools

An introduction to Chrome Developer Tools, originally written for TJ Dev Club.