- What’s with the name?
2023-02-06 - Other
- How to enable colored compiler output with CMake + VSCode
2023-02-05 - C++, CMake
- Should everyone be a leader?
2023-02-04 - Essay
- Save all the code you write
2023-02-04 - Twitter Archive
- Pick an impressive project, then checkout to the first commit
2023-02-04 - Twitter Archive
- Why I enjoy hanging out with entrepreneurs
2023-01-30 - Entrepreneurship
- Why I write in public
2023-01-28 - Writing
- A takeaway I often get from exploit writeups
2023-01-25 - Twitter Archive
- Can we have non-atomic std::shared_ptr in C++?
2023-01-23 - C++, Twitter Archive
- Location Capital
2022-12-21 - Essay
- Remote onboarding
2022-12-20 - Career, Essay
- Short thread about LLDB pretty printing internals
2022-10-13 - C++, Twitter Archive
- Tips for writing LLDB pretty printers
2022-10-13 - C++
- My audio development journey
2021-11-11 - Career, Twitter Archive
- “Menu reference” shaped solutions
2021-10-28 - Other, Twitter Archive
- I get asked why I’m into C++ and not Rust.
2021-09-02 - Other, Twitter Archive
- git diff can natively detect code movement
2021-08-26 - Other, Twitter Archive
- Linux Internals: How /proc/self/mem writes to unwritable memory
2021-05-12 - C, Deep Dive, Favorite, Linux Kernel
- The tradeoffs in using -Weverything
2021-04-13 - C, C++
- Surgical formatting with git-clang-format
2021-04-02 - C, C++
- What you should know before taking your gap year (and lessons from mine)
2021-03-06 - Life
- How to pick a market that will make you money
2021-01-28 - Entrepreneurship
- Open source licensing for supervillains
2021-01-22 - Deep Dive, Favorite, Legal
- An actionable framework for yearly goal planning
2021-01-09 - Life, Productivity, Twitter Archive
- Evergreen tweets
2020-12-28 - Blogging, Twitter Archive
- How to set up a business email for free
2020-12-16 - Other
- Tips for reading the Linux kernel
2020-12-09 - Linux Kernel
- Tips for effective technical presentations
2020-11-23 - Other, Twitter Archive
- How to manage your time like a millionaire
2020-11-23 - Productivity
- Double fetches, scheduling algorithms, and onion rings
2020-11-13 - Favorite, Life
- Taking a gap year and working at a fast food restaurant
2020-11-12 - Life
- What they don’t tell you about demand paging in school
2020-10-14 - C++, Deep Dive, Favorite, Linux, Linux Kernel
- Tips for submitting your first Linux kernel patch
2020-09-26 - Linux Kernel
- How to set up a minimal Linux kernel dev environment on Ubuntu 20.04
2020-09-26 - Linux, Linux Kernel
- The “Early Stage Founder” Card
2020-09-18 - Entrepreneurship
- Admitting defeat
2020-09-12 - Blogging
- 3 Key Habits I Used to Learn Chinese
2020-09-11 - Language Learning
- The downside of a novel product
2020-09-04 - Entrepreneurship
- Don’t sleep on Google Sheets for backend infra!
2020-09-02 - Web Dev
- Realizing that you are the end of line
2020-08-25 - Entrepreneurship
- Don’t confuse std::move and std::forward
2020-08-05 - C++, Twitter Archive
- Getting bit by unique_ptr
2020-08-03 - C++, Twitter Archive
- You can use /proc/*/mem to bypass memory protections
2020-07-22 - Linux, Twitter Archive
- Read bits are not enforced for memory mappings
2020-07-10 - Linux, Twitter Archive
- macOS has a native memory leak checker
2020-06-30 - macOS, Twitter Archive
- How to set up an ARM64 playground on Ubuntu 18.04
2020-06-24 - Assembly, Linux
- 3 Life Skills I Learned From Indie Hackers
2020-06-24 - Entrepreneurship
- Advice for finding mentorship
2020-06-20 - Favorite, Life
- People hate surveys, but like being interviewed
2020-06-18 - Entrepreneurship
- Taking responsibility for lost sales
2020-05-01 - Entrepreneurship
- I landed code in LLDB!
2019-12-21 - Other
- Reproducing a GCC 8.1 ABI compatibility bug
2019-12-03 - Assembly, C++, Twitter Archive
- Being pedantic about C++ compilation
2019-11-28 - C++, CMake, Linux
- struct stat notes
2017-04-20 - Linux
- How setjmp and longjmp work
2016-02-09 - Assembly, C, Favorite, Linux
- Off to the (Python Internals) Races
2015-06-07 - Linux
- Building a Sketchy Website 101
2015-04-25 - Other
- Netcat “-e” Analysis
2014-11-03 - Linux
- Beginner Crackme
2014-10-27 - Assembly, Linux, Other
- Netcat Refresher
2014-03-05 - Linux
- Noise machine
2013-10-11 - Other