Now - 1 Jun 24

Life Updates

What Have I Worked On & Done

Since my last update in Jan 2024, I changed my mind about the suitability of 42 Singapore curriculum for my purposes (cannot emphasize this enough!), and I have quiet-quit the programme. I’m basically waiting to get absorbed by the Black Hole.

Why did I decide to quit? A few reasons.

  • the main one is overkill: I honestly don’t think I need to know the details of operating systems, in order to have enough skills to make and debug my own apps… 42 is great for training all rounded software engineers, especially those who are keen to work on embedded systems.
  • the opportunity cost of doing the core curriculum is also quite substantial: the global record for shortest time completing the core curriculum is 8 months of 60-90hr weeks (if I remember correctly). The worst part is, after you’re done with it, the language you’d have demonstrable expertise in is C, which isn’t the most widely used language…
  • When I was working on getnextline, I had been struggling with all the memory allocation bugs and errors (which is part of the project’s learning goals, imo). At one point, I felt it was really dumb that I was struggling with memory allocation, when it’s a solved problem: many programming languages have garbage collection exactly to prevent the memory leaks and errors that occur when using C.
  • While working on getnextline at the 1.5 month mark, my friend Mr. T returned to 42, and proceeded to complete the project in 3 days. I asked him for a code review, and he kindly replied with a Slack message, with a lot of detailed comments which I parsed and re-read. I followed it up with a couple of question-sessions with him, where he nudged and guided me through asking questions. It was SUPER insightful, and I gained more from that single code review than from many interactions with other classmates in the previous 1.5 months: some classmates were VERY thorough, others were much less so (and I wonder if they really knew their stuff), but nobody else had the same degree of mental clarity (& same depth of understanding of the mental models of computation) as Mr T.
    • I realized that it’s super important for me (as a beginner) to have the right models taught upfront and early. And that in turn, made me realize that, for me, 42 might be less than ideal as a way for me to learn programming, given that it’s really dependent on one’s luck (for who is around you when you encounter problems).
    • Another factor is that the 42 pedagogy places a very high cognitive load: the cognitive load is so high that it’s throttling my ability to really learn (see this article here about cognitive load theory). A symptom of this was that I found myself completely stuck, and often unable to recollect what I did when I finally solved the problem!
    • The other thing I came to realize is that, due to its constraints (funding, institutional dynamics, etc.), 42 isn’t truly a mastery based learning approach. Yes, there are evaluations, but there is also a ticking time bomb called the Black Hole… so 42 is more of a hybrid rather than a pure MBL.

But I should note and emphasize again, that the above is simply my take and from my frame of reference: your mileage will vary!


After I quiet-quit 42, I tried a different thing for a while.

  • I tried learning Elixir, in particular the Phoenix framework through a couple of books. Both are VERY promising! However…
  • because the books I used were written in an older version of Elixir and Phoenix, I ended up in dependency hell: I literally spent 3+ days trying to debug and fix the dependency versions so that I can progress with the books. Unfortunately, I think I was in a circular dependency situation, involving earlier versions of certain Elixir libraries… I tried asking for help in an Elixir forum, but got no replies.

I was having breakfast and I updated my wife about the situation. And she made a very astute observation:

I’ve observed in the last few years, that you will usually do your research, and you’ll end up choosing some esoteric language that nobody in Singapore uses. Like previously you chose Clojure. I think the real reason you’re choosing these esoteric languages is because you want to be unique and different. Why don’t you choose something like Python? At least I’ve heard of it, and when I tell people you’re learning coding, everyone asks me “Oh, is PJ learning Python?” So at least, when you run into problems, you will have resources and people you can ask for help!

So now, I’m learning Python: I discovered that Launch School now has a Python track, and will focus on that after a short break.


Another thing which happened, was that I interviewed for a chief of staff role at a startup, then withdrew my candidacy when I realized where my heart was. It’s going to sound corny, but I realized my heart really still lies with Singapore, specifically with making Singapore remain competitive economically and for businesses.


Earlier in the year, I also did a few gigs:

  • I did a design thinking training run with Design Singapore’s School of X
  • I’m also an adjunct faculty of Singapore Institute of Technology for their Introduction to Design course for first-year students.

What have I Learned, & what are my thoughts

  • Dosage is key. I often “overdose” on doing something for too long. E.g. I was doing only coding with 42 for a while: when I went off to conduct the design thinking training workshops, that change really made me perk up! But the converse was also true: there was one week when I only did design-thinking work for the entire week, and I was exhausted: it was such a relief to just not talk to anyone, and just work on my computer with my code editor…

What I’ve read

  • The biggest game changer for me was reading 7 Powers: this was really eye opening. And it made me wonder what was Singapore’s 7 powers as a hub?

What I’ve done for Spiritual Practice

  • I continue meditating at least 1.5-2hrs daily, with a 30 min guided meditation with my wife in the mornings.
  • I’m also adding a journal entry practice, to do at the end of the day, to reflect on how my mind has been the whole day.

What I’ve done for my Workouts & Health

  • I restarted Starting Strength a couple of weeks ago, then fell sick with flu/covid for a week… so I’m just doing GMB’s Integral Strength, and doing zone 2 to rebuild my base.

What I’ll be doing next

  • I’ll continue with Launch School, and set an internal timeline for myself.
  • I’ll confirm my “runway”: last I calculated, I needed to find a job by October 2024. I’ll need to re-negotiate my “sabbatical” with my boss (i.e. my wife).
  • I have a few ideas I want to explore for myself:
    • using my experience as a line-manager to create a simple course offering for newly-promoted managers who have no training whatsoever.
    • another course offering I’m thinking of doing is to create a strategic writing course.

Updated as of 1 Jun 24