All posts

  1. A collection of pronatalist pieces 18 October 2026
  2. 2026 Japanese learning experiment 11 October 2026
  3. human computing in the age of LLMs 11 October 2026
  4. My reading journey 30 August 2026
  5. My experience with aristocratic tutoring 30 August 2026
  6. One simple trick to have good dates 30 August 2026
  7. Scattered thoughts and changes on turning 30 3 August 2026
  8. songs I like 3 May 2026
  9. Pixel Art on NFC cards 3 May 2026
  10. Growing up in the 90s 3 May 2026
  11. video games are IQ shredders 9 July 2025
  12. improving the site (2025) 6 July 2025
  13. two types of ideas 21 June 2025
  14. A game 10 years in the making 19 June 2025
  15. On growth 14 June 2025
  16. Advice for finalists 13 June 2025
  17. Braindump on language learning 10 June 2025
  18. Deutsch Lernen 10 September 2023
  19. on education 15 July 2023
  20. How to increase brain plasticity for language learning 27 June 2023
  21. Georgism in Singapore 24 June 2023
  22. Guerilla Gardening 4 June 2023
  23. Joy 15 May 2023
  24. On Tiktok and Instagram Reels 14 May 2023
  25. Using technology to aid language learning 23 April 2023
  26. Improving the site (2023) 8 April 2023
  27. How to draw isometric cubes with Javascript and HTML canvas 15 March 2023
  28. Can NFTs be used to fund art? 1 January 2023
  29. Protocols for optimal health 1 January 2023
  30. Optimising my onebag 1 December 2022
  31. My "indefinite" onebag setup 1 December 2022
  32. Der Schatz von Hiddensee 1 October 2022
  33. Farming snails in Singapore 1 August 2022
  34. Alternative agriculture 1 August 2022
  35. Should we bring back the triclinium? 1 May 2022
  36. Ants 23 April 2022
  37. Recontextualising my site (2022) 3 February 2022
  38. Can you gain muscle doing only isometric exercises? 2 February 2022
  39. Is nonsurgical penile enhancement possible? 25 January 2022
  40. Is sauna good for you? 23 January 2022
  41. How to import and display Markdown files in React 1 September 2021
  42. How to implement role-based access control for AWS (Cognito, DynamoDB) 22 June 2021
  43. Solving two brainteasers 舅母 gave me 9 May 2021
  44. tl;dr of my Politics undergraduate thesis 1 May 2021
  45. MMODiscord: Run your own virtual world on any Discord server 7 April 2021
  46. Some ways to deal with big(-ish) data: 'why do we get an OutOfMemory error in FPGrowth?' 31 March 2021
  47. Notes on AWS's serverless framework 24 March 2021
  48. Notes on Dynamo (2007) 20 March 2021
  49. MIT's 6.824 Distributed Systems, Lab 2: Raft 16 March 2021
  50. Memcached at Facebook (2013) 15 March 2021
  51. Notes on Amazon Aurora (2017, 2018) 7 March 2021
  52. FLP Impossibility Theorem 1 March 2021
  53. Notes on technical mentorship 21 February 2021
  54. Some rough notes on React after playing with it for a day 19 February 2021
  55. Splitting a string into the fewest number of palindromes 18 February 2021
  56. Saltzer and Kaashoek (2009). Principles of Computer System Design: An Introduction 15 February 2021
  57. Notes on CRDTs 15 February 2021
  58. System design (and business case) for a EV charging station backend 13 February 2021
  59. What is a Golang interface? 11 February 2021
  60. What is the CAP theorem really about? 11 February 2021
  61. Rao, Shekita and Tata (2011). Using Paxos to Build a Scalable, Consistent, and Highly Available Datastore [Spinnaker] 8 February 2021
  62. Ongaro and Ousterhout (2014). In Search of an Understandable Consensus Algorithm [Raft] 5 February 2021
  63. MIT's 6.824 Distributed Systems, Lab 1: MapReduce 5 February 2021
  64. Dean and Ghemawat (2004). MapReduce: Simplified Data Processing on Large Clusters 5 February 2021
  65. Self-studying MIT's 6.824 Distributed Systems 1 February 2021
  66. DIY-ing a Stanford CS degree in one year 30 January 2021
  67. Making your habits zero-friction is a massive productivity hack 28 January 2021
  68. Group testing to save the world 24 January 2021
  69. From Third World to Utopia: Singapore could end poverty for our children forever, today 18 January 2021
  70. Radically new ways of living and working are for the first time available (again) to us 10 January 2021
  71. Planning to build a Discord spatial layer 6 January 2021
  72. Worlds for hyperlocal communities 6 January 2021
  73. Teleoperation: enabling remote work for nonremote workers 4 January 2021
  74. The cheater's chessboard 3 January 2021
  75. Debugging my thesis 25 December 2020
  76. Report on CS107E Lab and Assignment 3 21 December 2020
  77. Report on CS107E Lab and Assignment 2 20 December 2020
  78. Report on CS107E Assignment 1 19 December 2020
  79. Geolibertarianism with Harberger Taxes 6 December 2020
  80. Three levels of competency 30 November 2020
  81. A new method of training: can resting for hours between exercises maximise your gains? 30 November 2020
  82. Convergence is (finally) coming 30 November 2020
  83. How to set up bidirectional communication between a Docker container and its host machine using TCP sockets 15 November 2020
  84. How to install librealsense and pyrealsense2 on the Jetson NX 4 November 2020
  85. Pair work: the One Weird Trick to finally ship your side projects 8 October 2020
  86. Home gym ideas 27 September 2020
  87. Virtual workspaces --- working in a Minecraft office? 26 September 2020
  88. Clustering GPS trip data 11 September 2020
  89. Board Game Engine 1 September 2020
  90. Building a Python parallel processing pipeline package (R-3PO) 29 August 2020
  91. GSoC 2020: implementing real-time metrics for MGGG's Districtr app 28 August 2020
  92. A market-based mechanism to preserve Indonesia's forests 19 August 2020
  93. Rebuilding this website 3 August 2020
  94. Building a code sharing MVP with React and the WebSockets API 2 August 2020
  95. Singapore's GRC system likely advantages the PAP: a game-theoretic analysis 7 July 2020
  96. My 2020 fitness routine 1 July 2020
  97. How many solar panels would be needed to 100% solar-power Singapore? 2 June 2020
  98. Theopol Final Exams 1 June 2020
  99. QE Final Exams 1 June 2020
  100. PolSoc Final Exams 1 June 2020
  101. Micro Final Exams 1 June 2020
  102. Macro Final Exams 1 June 2020
  103. Game Theory Final Exams 1 June 2020
  104. Politics Thesis 23 April 2020
  105. Building a deep learning pipeline + model with Keras and PlaidML 17 September 2019
  106. Building an Bayesian SMS sender 16 September 2019
  107. Doing distributed data analysis on a Raspberry Pi cluster 12 September 2019
  108. The beta-Bernoulli bandit, Thompson sampling, and Bayesian inference 12 July 2019
  109. A gentle introduction to the IS-PC-MR model 21 April 2019
  110. Explaining Acemoglu's model of directed technical change: a primer 20 April 2019
  111. Building an automated, blockchain-connected model train diorama 31 January 2019
  112. Blocktrain 1 August 2018
  113. Phonics Game 1 July 2018
  114. Q-Step Essay 6 May 2018
  115. Dropship Chess 1 September 2017
  116. Inspector's Gadget 1 August 2017
  117. Building a Raspberry Pi console 30 May 2017
  118. Building my first Telegram bot 20 September 2016
  119. Automated Transaction Tracker 1 August 2016
  120. Form Emailer and Form Letterer 1 April 2016

Private posts

  1. 2026-09-29 daily note 29 September 2026
  2. 2025 Year Compass 1 January 2026
  3. What is the blockchain good for? 8 December 2025
  4. Classics study guide 10 June 2025
  5. 2023 in review 26 December 2023
  6. A primer on oil swaps 5 September 2023
  7. On Bologna 23 August 2023
  8. Letter to my sister 2 August 2023
  9. one month in berlin 23 July 2023
  10. On being a better friend (or, the Autist's Guide to the Galaxy) 8 July 2023
  11. Thoughts May 2023 7 May 2023
  12. A super private post! 8 April 2023
  13. 2022 in review 18 December 2022
  14. six months on the road 1 July 2022
  15. Figuring out how I feel about relationships 1 February 2022
  16. 2021 in review 31 December 2021
  17. Behavioural questions for Anima 10 August 2021
  18. Quarter-life review 2 August 2021
  19. How do Fleet Adapters work? 8 April 2021
  20. Thoughts on the VAMA2 demo we gave, and what our next steps should be 5 April 2021
  21. Notes on my first meeting with Cedric 6 March 2021
  22. Technical documentation for the Scene Understanding Module in IMDA's VAMA2 autonomous robotics project 5 March 2021
  23. A letter to my past self 24 January 2021
  24. 2021 Week 3 Review 17 January 2021
  25. 2020 in review 27 December 2020
  26. What I've been doing since I last applied to Harvard 15 December 2020
  27. Taking stock of all my projects 15 December 2020
  28. 2020 Week 49 review (29 Nov-5 Dec) 6 December 2020
  29. Projects to-do list 1 December 2020
  30. 2020 Week 48 review (21-28 Nov) 29 November 2020
  31. 2020 Week 46 review (09-15 Nov) 15 November 2020
  32. 2020 Week 45 review (01-08 Nov) 8 November 2020
  33. 2020 Week 44 review (25-30 Oct) 31 October 2020
  34. 2020 Week 43 review (18-24 Oct) 25 October 2020
  35. 2020 Week 42 review (11-17 Oct) 18 October 2020
  36. Letter to Bassel in August 2020, after my Finals results 1 August 2020
  37. 2020 Semiannual Review 31 July 2020
  38. Thoughts on a trip to Kuhlenbronn 29 July 2020
  39. 2019 Annual Review 1 January 2020
  40. Email to Bassel telling him about my internship and thesis during July 2019 28 July 2019
  41. 2019 Semiannual Review 19 July 2019
  42. Breaking up 23 June 2019
  43. HT 2019 report and plans for the summer 23 June 2019
  44. MT 2018 report and plans for 2019 1 January 2019
  45. 2018 Semiannual Review 1 July 2018
  46. Hilary 2018 report 10 March 2018
  47. Michaelmas 2017 report 5 December 2017
  48. Sep 2017 report 24 September 2017
  49. Aug 2017 report 22 August 2017
  50. May 2017 report 29 May 2017
  51. 2017 Quarterly Report I 31 March 2017
  52. 2016 Annual Review 27 December 2016
  53. 2015 Annual Review 26 December 2016
  54. ORD lo 6 December 2016
  55. October in review; plans for November 28 October 2016
  56. An eventful Saturday 8 October 2016
  57. September 2016 report 5 September 2016
  58. Long-overdue update 11 August 2016
  59. On Brexit, and the unreasonable effectiveness of demagoguery 24 June 2016
  60. An update on my life so far 26 May 2016
  61. Meeting with iDA staff (Oscar, Kiranjit and Eric) 11 May 2016
  62. Meeting with Mrs Hauw, swimming with Xiao Hui and future plans 10 May 2016
  63. daily report: I talk about what I've done for the past two weeks 5 May 2016
  64. daily report 24 April 2016
  65. daily report: my first post 23 April 2016