- Nov 26 2022 Studying Go in Korea
- Oct 14 2021 GraphQL, meet LiveGraph - a real-time data system at scale
- Dec 17 2020 A case study on strict null checks
- Oct 27 2020 The hidden challenges of autosave
- Aug 22 2019 How to build a plugin system on the web and also sleep well at night
- Sep 29 2018 Learned at Figma - what makes a good engineer?
- Sep 29 2018 Learned at Figma - design tools and multiplicative complexity
- Aug 4 2018 Yellowstone - filming my first travel video
- Jan 4 2018 Is implementing Operational Transform hard?
- Oct 6 2017 A simple approach to building a real-time collaborative text editor
- Aug 25 2017 Never graduate! Reflections on Recurse Center
- Aug 16 2017 Elixir in depth - reading and personal notes
- Aug 3 2017 Guide to conducting mock interviews on campus
- Aug 3 2017 Why offer mock interviews
- Aug 1 2017 Everything I know about internships, resumes, interviews, side projects, etc
- Jul 18 2017 How to learn anything - Pen spinning, DDR, rock climbing and public speaking
- Jul 14 2017 How to use React with Typescript in Phoenix
- Jul 12 2017 How to use React with Typescript in Phoenix (failed attempt)
- Jul 5 2017 My first six weeks at Recurse Center
- Jun 23 2017 Fast and mostly consistent distance field ray marching
- Jun 22 2017 Restricted Perlin noise for better rendering
- Jun 21 2017 Consistent distance fields for ray marching
- Jun 20 2017 The range of Perlin noise
- Jun 19 2017 Why I (want to) blog
- Jun 11 2017 Beliefs and emotions
end of undergraduate degree
- Apr 16 2017 31 new grads, 31 career choices
- Apr 13 2017 My journey to writing a valedictorian speech
- Jan 14 2017 Why you should pay special attention to your summer co-op terms
- Jan 14 2017 Medium-size software companies are the best default choice for internships
- Jan 7 2017 Learned at Jane Street - Practical functional programming and software engineering
- Jan 7 2017 Learned at Jane Street - Thinking fast and slow
- Jan 1 2017 Writings from Quora (2016)
- Jan 13 2016 Digital Nomadism - General thoughts
- Jan 13 2016 Digital Nomadism - Language exchange meetups
- Jan 13 2016 Digital Nomadism - The people of Airbnb
- Nov 23 2015 Proofreading with text-to-speech (diff included)
- Nov 17 2015 Writings from Quora (2015)
- Oct 12 2015 Learned at Dropbox - the social, cultural and business aspects
- Oct 12 2015 Learned at Dropbox - maximizing signal in interviews
- Oct 12 2015 Learned at Dropbox - 2nd internship, Pyston team
- Oct 12 2015 Learned at Dropbox - 1st internship, Carousel iOS team
- Sep 8 2015 Digital Nomadism - My plans for Fall 2015
- Aug 5 2015 The train of thought's first stop is men's cologne
- Aug 8 2014 Compiler optimization contest (Part II) - Racket functional programming
- Aug 8 2014 Compiler optimization contest (Part I) - In the Zone
- May 8 2014 Massively online courses' most important feature
- May 4 2014 Porting to Jekyll
- Feb 16 2014 Common errors in Windows Phone camera apps
- Feb 8 2014 Avoiding memory "leaks" in Windows Phone page navigation
- Feb 2 2014 PMATH 370 Notes
- Jan 16 2014 The Chameleon Style of Programming
- Dec 20 2013 Sugar for the technical mind (Part II)
- Apr 3 2013 To log or to not log
- Mar 28 2013 Sugar for the technical mind (Part I)
- Feb 24 2013 Deriving the continuous wavelet transform from Canny edge detection
- Feb 23 2013 Increasing voter turnout by voting randomly
- Dec 10 2012 How hard is music analysis? Five type of musical events
- Nov 26 2012 A tutorial's reach
- Nov 3 2012 Research skills in programming
- Oct 27 2012 I did not expect that
- Oct 26 2012 The Psychology of Windows 8
- Oct 1 2012 Experimenting with Haskell
- Sep 19 2012 Why develop Windows 8 apps and how to get started