Weekly Notes 018 - Things I Want To Grok, Leaky Abstractions & Upside Decay

  • I wrote Things I want to Grok (2021) - topics and areas of software engineering I want to explore and understand.
  • Avocado: I've been feeling constrained by my current way of previewing components in avocado. I decided to leverage Storybook for unlimited flexibility. Take a look at the commit here. I also implemented a Box component for wrapping around other components.
  • I spent a few hours documenting all my software projects. There are just 4 of them now and you can see them here.
  • I continued work on Syntex. I'm currently fine-tuning the interface and working on the chrome extension.
  • This has been a depressing week. I'm worried about issues relating to my existence and nationality. I saw this documentary of the civil war that took place here in Nigeria (1967 - 1970). It mainly affected the people of my Igbo tribe. More than 3 million people were killed simply because they asked for a better life. The whole situation is playing out again and the government just placed a ban on Twitter yesterday. If I could change one thing now, it would be my nationality.

Stuff I'm reading

  • The process: Building on-demand staging environments at Paystack - Paystack is one of Nigeria's leading fintech companies. This article documents how they built custom solutions to their staging problems. Paystack is the first Nigerian company I've seen in Increment Magazine. One thing I'm learning lately is that time spent working on tools is a multiplier effect.

  • Leaky Abstractions - article by a PM on the clipart team at Microsoft (In 2004). He talks about how the code for interacting with compressed files on Window was last updated on Valentine's day in 1998. So a codebase hasn't been touched for 23 years? It's hard to believe, but it might just be true.

  • I Spent $5,000 Advertising My Free Book to iOS and Android Engineers - It's hard to reach people! Gergely Orosz who was previously an engineering manager at Uber writes about how much he spent ($5000) to market a free book to mobile engineers. The stats are crazy! I didn't know advertising on newsletters could be this expensive.

  • The need for slimmer containers - This article explores how slimmer docker images are less vulnerable and better than larger ones. I barely know anything about docker, but I experienced this while trying to put together a docker environment last week. These docker images are full-fledged resources for running programs consistently. You could have a docker image for Nodejs, Postgres, etc. The idea is that anybody, anywhere in the world could get the same environment by using similar images. Check out this docker crash course if you're curious.

  • Upside decay - Eye-opening article about how bad decisions compound to produce unwanted economic results. One of these results is upside decay. This is when it becomes almost impossible for good things to happen. It's shown in the diagram below. Upside decay

    Image from Brian's article

  • Making JavaScript run fast on WebAssembly - People love Javascript, and they'll try to run it everywhere. This article is a case study of making Javascript run in environments without support for JIT compilation or a Javascript engine. They did this by passing the javascript engine (SpiderMonkey from Mozilla) inside a WASM environment. This works because WASMs can run everywhere (iOS, serverless, etc). However, there are performance implications, which are documented in the article.

  • Best Practices Around Production-Ready Web Apps with Docker Compose

  • 25 Years of CSS - Eric Meyer reflects on his 25 years experience with CSS. It's crazy how much the world has changed in 25 years and I wonder what it would feel like to witness that.

Also

Afrobeats

I've been hearing a lot about Amaarae. I decided to listen to her full album - The angel you don't know. At first, it starts weird and sounds different from everything I'm used to.

After listening to the album twice, I happen to like it. It's my go-to song for getting into work mode now.

Thanks for reading. See you next week!