All posts

Sun Feb 15 2026
  1. Braindump on language learning Sun Feb 15 2026
  2. Can NFTs be used to fund art? Sun Feb 15 2026
  3. songs I like Sun Feb 15 2026
  4. Deutsch Lernen Sun Feb 15 2026
  5. improving the site (2025) Sun Jul 06 2025
  6. two types of ideas Sat Jun 21 2025
  7. On growth Sat Jun 14 2025
  8. Advice for finalists Fri Jun 13 2025
  9. on education Sat Jul 15 2023
  10. How to increase brain plasticity for language learning Tue Jun 27 2023
  11. Joy Mon May 15 2023
  12. On Tiktok and Instagram Reels Sun May 14 2023
  13. Using technology to aid language learning Sun Apr 23 2023
  14. Improving the site (2023) Sat Apr 08 2023
  15. How to draw isometric cubes with Javascript and HTML canvas Wed Mar 15 2023
  16. Protocols for optimal health Sun Jan 01 2023
  17. Optimising my onebag Thu Dec 01 2022
  18. My "indefinite" onebag setup Thu Dec 01 2022
  19. Der Schatz von Hiddensee Sat Oct 01 2022
  20. Farming snails in Singapore Mon Aug 01 2022
  21. Alternative agriculture Mon Aug 01 2022
  22. Should we bring back the triclinium? Sun May 01 2022
  23. Ants Sat Apr 23 2022
  24. Recontextualising my site (2022) Thu Feb 03 2022
  25. Can you gain muscle doing only isometric exercises? Wed Feb 02 2022
  26. Is nonsurgical penile enhancement possible? Tue Jan 25 2022
  27. Is sauna good for you? Sun Jan 23 2022
  28. How to import and display Markdown files in React Wed Sep 01 2021
  29. How to implement role-based access control for AWS (Cognito, DynamoDB) Tue Jun 22 2021
  30. Solving two brainteasers 舅母 gave me Sun May 09 2021
  31. tl;dr of my Politics undergraduate thesis Sat May 01 2021
  32. MMODiscord: Run your own virtual world on any Discord server Wed Apr 07 2021
  33. Notes on AWS's serverless framework Wed Mar 24 2021
  34. Notes on Dynamo (2007) Sat Mar 20 2021
  35. MIT's 6.824 Distributed Systems, Lab 2: Raft Tue Mar 16 2021
  36. Memcached at Facebook (2013) Mon Mar 15 2021
  37. Notes on Amazon Aurora (2017, 2018) Sun Mar 07 2021
  38. FLP Impossibility Theorem Mon Mar 01 2021
  39. Notes on technical mentorship Sun Feb 21 2021
  40. Saltzer and Kaashoek (2009). Principles of Computer System Design: An Introduction Mon Feb 15 2021
  41. Notes on CRDTs Mon Feb 15 2021
  42. What is a Golang interface? Thu Feb 11 2021
  43. What is the CAP theorem really about? Thu Feb 11 2021
  44. Rao, Shekita and Tata (2011). Using Paxos to Build a Scalable, Consistent, and Highly Available Datastore [Spinnaker] Mon Feb 08 2021
  45. Ongaro and Ousterhout (2014). In Search of an Understandable Consensus Algorithm [Raft] Fri Feb 05 2021
  46. MIT's 6.824 Distributed Systems, Lab 1: MapReduce Fri Feb 05 2021
  47. Dean and Ghemawat (2004). MapReduce: Simplified Data Processing on Large Clusters Fri Feb 05 2021
  48. Self-studying MIT's 6.824 Distributed Systems Mon Feb 01 2021
  49. DIY-ing a Stanford CS degree in one year Sat Jan 30 2021
  50. Making your habits zero-friction is a massive productivity hack Thu Jan 28 2021
  51. Group testing to save the world Sun Jan 24 2021
  52. From Third World to Utopia: Singapore could end poverty for our children forever, today Mon Jan 18 2021
  53. Radically new ways of living and working are for the first time available (again) to us Sun Jan 10 2021
  54. Planning to build a Discord spatial layer Wed Jan 06 2021
  55. Worlds for hyperlocal communities Wed Jan 06 2021
  56. Teleoperation: enabling remote work for nonremote workers Mon Jan 04 2021
  57. The cheater's chessboard Sun Jan 03 2021
  58. Debugging my thesis Fri Dec 25 2020
  59. Report on CS107E Lab and Assignment 3 Mon Dec 21 2020
  60. Report on CS107E Lab and Assignment 2 Sun Dec 20 2020
  61. Report on CS107E Assignment 1 Sat Dec 19 2020
  62. Geolibertarianism with Harberger Taxes Sun Dec 06 2020
  63. Three levels of competency Mon Nov 30 2020
  64. A new method of training: can resting for hours between exercises maximise your gains? Mon Nov 30 2020
  65. Convergence is (finally) coming Mon Nov 30 2020
  66. How to set up bidirectional communication between a Docker container and its host machine using TCP sockets Sun Nov 15 2020
  67. How to install librealsense and pyrealsense2 on the Jetson NX Wed Nov 04 2020
  68. Pair work: the One Weird Trick to finally ship your side projects Thu Oct 08 2020
  69. Home gym ideas Sun Sep 27 2020
  70. Virtual workspaces --- working in a Minecraft office? Sat Sep 26 2020
  71. Clustering GPS trip data Fri Sep 11 2020
  72. Building a Python parallel processing pipeline package (R-3PO) Sat Aug 29 2020
  73. GSoC 2020: implementing real-time metrics for MGGG's Districtr app Fri Aug 28 2020
  74. A market-based mechanism to preserve Indonesia's forests Wed Aug 19 2020
  75. Rebuilding this website Mon Aug 03 2020
  76. Building a code sharing MVP with React and the WebSockets API Sun Aug 02 2020
  77. Singapore's GRC system likely advantages the PAP: a game-theoretic analysis Tue Jul 07 2020
  78. My 2020 fitness routine Wed Jul 01 2020
  79. How many solar panels would be needed to 100% solar-power Singapore? Tue Jun 02 2020
  80. Politics Thesis Thu Apr 23 2020
  81. Building a deep learning pipeline + model with Keras and PlaidML Tue Sep 17 2019
  82. Building an Bayesian SMS sender Mon Sep 16 2019
  83. Doing distributed data analysis on a Raspberry Pi cluster Thu Sep 12 2019
  84. The beta-Bernoulli bandit, Thompson sampling, and Bayesian inference Fri Jul 12 2019
  85. Explaining Acemoglu's model of directed technical change: a primer Sat Apr 20 2019
  86. Building an automated, blockchain-connected model train diorama Thu Jan 31 2019
  87. Building a Raspberry Pi console Tue May 30 2017
  88. Building my first Telegram bot Tue Sep 20 2016

Private posts

  1. Classics study guide Sun Feb 15 2026
  2. What is the blockchain good for? Sun Feb 15 2026
  3. 2026-02-14 daily note Sat Feb 14 2026
  4. 2026-02-13 daily note Fri Feb 13 2026
  5. 2026-02-12 daily note Thu Feb 12 2026
  6. 2026-02-10 daily note Tue Feb 10 2026
  7. 2026-02-09 daily note Mon Feb 09 2026
  8. 2026-02-07 daily note Sat Feb 07 2026
  9. 2026-02-06 daily note Fri Feb 06 2026
  10. 2026-02-05 daily note Thu Feb 05 2026
  11. 2026-02-04 daily note Wed Feb 04 2026
  12. 2026-02-03 daily note Tue Feb 03 2026
  13. 2026-01-30 daily note Fri Jan 30 2026
  14. 2026-01-28 daily note Wed Jan 28 2026
  15. 2026-01-27 daily note Tue Jan 27 2026
  16. 2026-01-26 daily note Mon Jan 26 2026
  17. 2026-01-22 daily note Thu Jan 22 2026
  18. 2026-01-21 daily note Wed Jan 21 2026
  19. 2026-01-20 daily note Tue Jan 20 2026
  20. 2026-01-19 daily note Mon Jan 19 2026
  21. 2026-01-18 daily note Sun Jan 18 2026
  22. 2026-01-17 daily note Sat Jan 17 2026
  23. 2026-01-16 daily note Fri Jan 16 2026
  24. 2026-01-15 daily note Thu Jan 15 2026
  25. 2026-01-14 daily note Wed Jan 14 2026
  26. 2026-01-13 daily note Tue Jan 13 2026
  27. 2026-01-12 daily note Mon Jan 12 2026
  28. 2026-01-10 daily note Sat Jan 10 2026
  29. 2026-01-09 daily note Fri Jan 09 2026
  30. 2026-01-08 daily note Thu Jan 08 2026
  31. 2026-01-06 daily note Tue Jan 06 2026
  32. 2026-01-05 daily note Mon Jan 05 2026
  33. 2026-01-04 daily note Sun Jan 04 2026
  34. 2026-01-03 daily note Sat Jan 03 2026
  35. 2026-01-02 daily note Fri Jan 02 2026
  36. 2026-01-01 daily note Thu Jan 01 2026
  37. 2025-12-31 daily note Wed Dec 31 2025
  38. 2025-12-26 daily note Fri Dec 26 2025
  39. 2025-12-16 daily note Tue Dec 16 2025
  40. 2025-12-08 daily note Mon Dec 08 2025
  41. 2025-12-01 daily note Mon Dec 01 2025
  42. 2025-11-28 daily note Fri Nov 28 2025
  43. 2025-11-27 daily note Thu Nov 27 2025
  44. 2025-11-26 daily note Wed Nov 26 2025
  45. 2025-11-25 daily note Tue Nov 25 2025
  46. 2025-11-19 daily note Wed Nov 19 2025
  47. 2025-11-18 daily note Tue Nov 18 2025
  48. 2025-11-13 daily note Thu Nov 13 2025
  49. 2025-11-12 daily note Wed Nov 12 2025
  50. 2025-11-11 daily note Tue Nov 11 2025
  51. 2025-11-10 daily note Mon Nov 10 2025
  52. 2025-11-09 daily note Sun Nov 09 2025
  53. 2025-11-07 daily note Fri Nov 07 2025
  54. 2025-11-05 daily note Wed Nov 05 2025
  55. 2025-11-04 daily note Tue Nov 04 2025
  56. 2025-10-30 daily note Thu Oct 30 2025
  57. 2025-10-28 daily note Tue Oct 28 2025
  58. 2025-10-27 daily note Mon Oct 27 2025
  59. 2025-10-25 daily note Sat Oct 25 2025
  60. 2025-10-24 daily note Fri Oct 24 2025
  61. 2025-10-17 daily note Fri Oct 17 2025
  62. 2025-10-10 daily note Fri Oct 10 2025
  63. 2025-10-09 daily note Thu Oct 09 2025
  64. 2025-10-08 daily note Wed Oct 08 2025
  65. 2025-10-07 daily note Tue Oct 07 2025
  66. 2025-10-02 daily note Thu Oct 02 2025
  67. 2025-09-29 daily note Mon Sep 29 2025
  68. 2025-09-24 daily note Wed Sep 24 2025
  69. 2025-09-18 daily note Thu Sep 18 2025
  70. 2025-09-13 daily note Sat Sep 13 2025
  71. 2025-09-10 daily note Wed Sep 10 2025
  72. 2025-09-09 daily note Tue Sep 09 2025
  73. 2025-09-08 daily note Mon Sep 08 2025
  74. 2025-09-01 daily note Mon Sep 01 2025
  75. 2025-08-30 daily note Sat Aug 30 2025
  76. 2025-08-28 daily note Thu Aug 28 2025
  77. 2025-08-26 daily note Tue Aug 26 2025
  78. 2025-08-22 daily note Fri Aug 22 2025
  79. 2025-08-21 daily note Thu Aug 21 2025
  80. 2025-08-20 daily note Wed Aug 20 2025
  81. 2025-08-19 daily note Tue Aug 19 2025
  82. 2025-08-18 daily note Mon Aug 18 2025
  83. 2025-08-16 daily note Sat Aug 16 2025
  84. 2025-08-15 daily note Fri Aug 15 2025
  85. 2025-08-14 daily note Thu Aug 14 2025
  86. 2025-08-13 daily note Wed Aug 13 2025
  87. 2025-08-12 daily note Tue Aug 12 2025
  88. 2025-08-11 daily note Mon Aug 11 2025
  89. 2025-08-06 daily note Wed Aug 06 2025
  90. 2025-08-05 daily note Tue Aug 05 2025
  91. 2025-08-03 daily note Sun Aug 03 2025
  92. 2025-08-01 daily note Fri Aug 01 2025
  93. 2025-07-29 daily note Tue Jul 29 2025
  94. 2025-07-26 daily note Sat Jul 26 2025
  95. 2025-07-25 daily note Fri Jul 25 2025
  96. 2025-07-24 daily note Thu Jul 24 2025
  97. 2025-07-23 daily note Wed Jul 23 2025
  98. 2025-07-22 daily note Tue Jul 22 2025
  99. 2025-07-21 daily note Mon Jul 21 2025
  100. 2025-07-20 daily note Sun Jul 20 2025
  101. 2025-07-19 daily note Sat Jul 19 2025
  102. 2025-07-18 daily note Fri Jul 18 2025
  103. 2025-07-17 daily note Thu Jul 17 2025
  104. 2025-07-16 daily note Wed Jul 16 2025
  105. 2025-07-15 daily note Tue Jul 15 2025
  106. 2025-07-14 daily note Mon Jul 14 2025
  107. 2025-07-13 daily note Sun Jul 13 2025
  108. 2025-07-12 daily note Sat Jul 12 2025
  109. 2025-07-11 daily note Fri Jul 11 2025
  110. 2025-07-10 daily note Thu Jul 10 2025
  111. 2025-07-09 daily note Wed Jul 09 2025
  112. 2025-07-08 daily note Tue Jul 08 2025
  113. 2025-07-07 daily note Mon Jul 07 2025
  114. 2025-07-01 daily note Tue Jul 01 2025
  115. 2025-06-30 daily note Mon Jun 30 2025
  116. 2025-06-29 daily note Sun Jun 29 2025
  117. 2025-06-28 daily note Sat Jun 28 2025
  118. 2025-06-27 daily note Fri Jun 27 2025
  119. 2025-06-26 daily note Thu Jun 26 2025
  120. 2025-06-25 daily note Wed Jun 25 2025
  121. 2025-06-24 daily note Tue Jun 24 2025
  122. 2025-06-23 daily note Mon Jun 23 2025
  123. 2025-06-22 daily note Sun Jun 22 2025
  124. 2025-06-18 daily note Wed Jun 18 2025
  125. 2025-06-16 daily note Mon Jun 16 2025
  126. 2025-06-15 daily note Sun Jun 15 2025
  127. 2025-06-14 daily note Sat Jun 14 2025
  128. 2025-06-13 daily note Fri Jun 13 2025
  129. 2025-06-12 daily note Thu Jun 12 2025
  130. 2025-06-11 daily note Wed Jun 11 2025
  131. 2025-06-10 daily note Tue Jun 10 2025
  132. 2025-06-09 daily note Mon Jun 09 2025
  133. 2025-06-08 daily note Sun Jun 08 2025
  134. 2023 in review Tue Dec 26 2023
  135. 2023-12-26 daily note Tue Dec 26 2023
  136. 2023-11-16 daily note Thu Nov 16 2023
  137. 2023-11-04 daily note Sat Nov 04 2023
  138. 2023-09-25 daily note Mon Sep 25 2023
  139. 2023-09-18 daily note Mon Sep 18 2023
  140. 2023-09-16 daily note Sat Sep 16 2023
  141. 2023-09-10 daily note Sun Sep 10 2023
  142. 2023-09-09 daily note Sat Sep 09 2023
  143. A primer on oil swaps Tue Sep 05 2023
  144. 2023-09-05 daily note Tue Sep 05 2023
  145. 2023-08-29 daily note Tue Aug 29 2023
  146. 2023-08-25 daily note Fri Aug 25 2023
  147. 2023-08-24 daily note Thu Aug 24 2023
  148. On Bologna Wed Aug 23 2023
  149. 2023-08-20 daily note Sun Aug 20 2023
  150. 2023-08-19 daily note Sat Aug 19 2023
  151. 2023-08-18 daily note Fri Aug 18 2023
  152. 2023-08-17 daily note Thu Aug 17 2023
  153. 2023-08-16 daily note Wed Aug 16 2023
  154. 2023-08-15 daily note Tue Aug 15 2023
  155. 2023-08-13 daily note Sun Aug 13 2023
  156. 2023-08-12 daily note Sat Aug 12 2023
  157. 2023-08-09 daily note Wed Aug 09 2023
  158. 2023-08-07 daily note Mon Aug 07 2023
  159. 2023-08-06 daily note Sun Aug 06 2023
  160. 2023-08-05 daily note Sat Aug 05 2023
  161. 2023-08-04 daily note Fri Aug 04 2023
  162. 2023-08-03 daily note Thu Aug 03 2023
  163. Letter to my sister Wed Aug 02 2023
  164. 2023-08-01 daily note Tue Aug 01 2023
  165. 2023-07-31 daily note Mon Jul 31 2023
  166. 2023-07-30 daily note Sun Jul 30 2023
  167. 2023-07-29 daily note Sat Jul 29 2023
  168. 2023-07-28 daily note Fri Jul 28 2023
  169. 2023-07-25 daily note Tue Jul 25 2023
  170. 2023-07-24 daily note Mon Jul 24 2023
  171. one month in berlin Sun Jul 23 2023
  172. 2023-07-23 daily note Sun Jul 23 2023
  173. 2023-07-22 daily note Sat Jul 22 2023
  174. 2023-07-21 daily note Fri Jul 21 2023
  175. 2023-07-20 daily note Thu Jul 20 2023
  176. 2023-07-19 daily note Wed Jul 19 2023
  177. 2023-07-15 daily note Sat Jul 15 2023
  178. 2023-07-14 daily note Fri Jul 14 2023
  179. 2023-07-13 daily note Thu Jul 13 2023
  180. 2023-07-12 daily note Wed Jul 12 2023
  181. 2023-07-11 daily note Tue Jul 11 2023
  182. 2023-07-10 daily note Mon Jul 10 2023
  183. 2023-07-09 daily note Sun Jul 09 2023
  184. On being a better friend (or, the Autist's Guide to the Galaxy) Sat Jul 08 2023
  185. 2023-07-07 daily note Fri Jul 07 2023
  186. 2023-07-06 daily note Thu Jul 06 2023
  187. 2023-07-05 daily note Wed Jul 05 2023
  188. 2023-07-04 daily note Tue Jul 04 2023
  189. 2023-07-03 daily note Mon Jul 03 2023
  190. 2023-06-30 daily note Fri Jun 30 2023
  191. 2023-06-29 daily note Thu Jun 29 2023
  192. 2023-06-28 daily note Wed Jun 28 2023
  193. 2023-06-27 daily note Tue Jun 27 2023
  194. 2023-06-26 daily note Mon Jun 26 2023
  195. 2023-06-25 daily note Sun Jun 25 2023
  196. 2023-06-24 daily note Sat Jun 24 2023
  197. 2023-06-23 daily note Fri Jun 23 2023
  198. 2023-06-22 daily note Thu Jun 22 2023
  199. 2023-06-21 daily note Wed Jun 21 2023
  200. 2023-06-20 daily note Tue Jun 20 2023
  201. 2023-06-19 daily note Mon Jun 19 2023
  202. Sun Jun 18 2023 00:00:00 GMT+0000 (Coordinated Universal Time) Sun Jun 18 2023
  203. Thoughts May 2023 Sun May 07 2023
  204. A super private post! Sat Apr 08 2023
  205. 2022 in review Sun Dec 18 2022
  206. six months on the road Fri Jul 01 2022
  207. Figuring out how I feel about relationships Tue Feb 01 2022
  208. 2021 in review Fri Dec 31 2021
  209. Behavioural questions for Anima Tue Aug 10 2021
  210. Quarter-life review Mon Aug 02 2021
  211. How do Fleet Adapters work? Thu Apr 08 2021
  212. Thoughts on the VAMA2 demo we gave, and what our next steps should be Mon Apr 05 2021
  213. Notes on my first meeting with Cedric Sat Mar 06 2021
  214. Technical documentation for the Scene Understanding Module in IMDA's VAMA2 autonomous robotics project Fri Mar 05 2021
  215. A letter to my past self Sun Jan 24 2021
  216. 2021 Week 3 Review Sun Jan 17 2021
  217. 2020 in review Sun Dec 27 2020
  218. What I've been doing since I last applied to Harvard Tue Dec 15 2020
  219. Taking stock of all my projects Tue Dec 15 2020
  220. 2020 Week 49 review (29 Nov-5 Dec) Sun Dec 06 2020
  221. Projects to-do list Tue Dec 01 2020
  222. 2020 Week 48 review (21-28 Nov) Sun Nov 29 2020
  223. 2020 Week 46 review (09-15 Nov) Sun Nov 15 2020
  224. 2020 Week 45 review (01-08 Nov) Sun Nov 08 2020
  225. 2020 Week 44 review (25-30 Oct) Sat Oct 31 2020
  226. 2020 Week 43 review (18-24 Oct) Sun Oct 25 2020
  227. 2020 Week 42 review (11-17 Oct) Sun Oct 18 2020
  228. Letter to Bassel in August 2020, after my Finals results Sat Aug 01 2020
  229. 2020 Semiannual Review Fri Jul 31 2020
  230. Thoughts on a trip to Kuhlenbronn Wed Jul 29 2020
  231. 2019 Annual Review Wed Jan 01 2020
  232. Email to Bassel telling him about my internship and thesis during July 2019 Sun Jul 28 2019
  233. 2019 Semiannual Review Fri Jul 19 2019
  234. Breaking up Sun Jun 23 2019
  235. HT 2019 report and plans for the summer Sun Jun 23 2019
  236. MT 2018 report and plans for 2019 Tue Jan 01 2019
  237. 2018 Semiannual Review Sun Jul 01 2018
  238. Michaelmas 2017 report Tue Dec 05 2017
  239. Sep 2017 report Sun Sep 24 2017
  240. Aug 2017 report Tue Aug 22 2017
  241. May 2017 report Mon May 29 2017
  242. 2017 Quarterly Report I Fri Mar 31 2017
  243. 2016 Annual Review Tue Dec 27 2016
  244. 2015 Annual Review Mon Dec 26 2016
  245. ORD lo Tue Dec 06 2016
  246. October in review; plans for November Fri Oct 28 2016
  247. An eventful Saturday Sat Oct 08 2016
  248. September 2016 report Mon Sep 05 2016
  249. Long-overdue update Thu Aug 11 2016
  250. On Brexit, and the unreasonable effectiveness of demagoguery Fri Jun 24 2016
  251. An update on my life so far Thu May 26 2016
  252. Meeting with iDA staff (Oscar, Kiranjit and Eric) Wed May 11 2016
  253. Meeting with Mrs Hauw, swimming with Xiao Hui and future plans Tue May 10 2016
  254. daily report: I talk about what I've done for the past two weeks Thu May 05 2016
  255. daily report Sun Apr 24 2016
  256. daily report: my first post Sat Apr 23 2016