Life Update


I got busy with interviews for a bit. Anyways, a couple updates.

I’m putting the differentiable programming series on hold for now.

I already have the next parts drafted. The problem is I’m not satisfied with how to keep the series consistent. Another issue is that I was studying and sourcing from 2-3 projects, and this one project had a somewhat convoluted code base. The noise from it kind of messed with my understanding. I need to step away from the series for a bit to let the ideas settle.

On another note, functional programming will remain my big focus for a while.

I have been working on this on and off for the past 12+ months. I mostly used PureScript, but recently I felt comfy enough to look into the Haskell core libraries and toolchains again. The nice thing about Haskell is that it has a very well established community, which means a deeper substrate of dev tools. The Haskell LSP support is more developed. For example, after setting up LSP in your editor, you can hover on the do notation and check for the output’s context. If you use Vim/NeoVim, take a look at haskell-tools for a streamlined IDE experience.

In the process, I uncovered a fragile point in my foundation. Not understanding applicatives finally caught up to me. I haphazardly covered this up and jumped right into monads from way back, because I didn’t want to be stuck in the beginner’s hell (which is especially deep and unforgiving for FP). Well, I need it to break through to more advanced stuff like transformers. Kinda. I allocated some time last week to address this issue. I am ready to continue now.

That being said, you definitely need to have an affinity for details (and math!) to enjoy this sort of stuff. It must be this way though, because correctness is the deal I signed up for. It is better to pay a large up-front cost now than having non-linearly large issues blown up in my face further down the line, à la billion-dollar mistake. It is indeed a lot of work, but it has been paying off in many ways. Knowing FP has opened up many cool new topics for me. In fact, the differentiable programming series was born in part out of my struggle with FP. :)

I also started experimenting with Claude last week. Wanted to see how fast I could iterate with it. I had two goals: to refresh my TypeScript, and to play around with some React hook patterns. There were some mistakes in the code generated by Claude, but overall the results were acceptable.

Finally, I am considering migrating this blog to a new framework. I am going with Halogen. This is going to be a long-term project.

That’s all I have for now. Until next time.

Take care.