Ciao!
I'm back droning about permanent knowledge. By the way, what do you think about the topic?
This week something fun happened.
I wanted to follow up on the previous articles:
I thought it would be cool to demo how my understanding of async programming, streams, event-driven modeling, and functional programming speeded up learning RxJs.
I started writing a post. But I wanted to add a snippet of code to compare vanilla JavaScript with RxJs. At the same time, I didn't want one of my silly and unrealistic examples, so I queried the internet.
I found a great page that I linked in the article. Even better, by reading through the examples, I discovered the scan
operator.
Exactly what I needed at work to implement a feature! It was pure luck, and it saved my ass from some ugly state mutations.
However, the best part was realizing that you could implement Redux with scan
. In fact, the architecture is nothing more than a reducer applying a stream of events to a state.
While I was amped up by the discovery, I screwed up at work.
I was feeling confident with RxJs. Hell yeah, I wrote an entire article bragging about it this week.
It turns out I made a significant first step, but there's more to learn. I spent a few hours debugging a stream that refused to work the way I wanted.
From Zero to RxJs via Knowledge Transfer — When I'm exposed to a new concept close to a dense area of my knowledge graph, I can approach it from multiple angles using different mental models.
Play the long game when learning to code by Daniel Chae at Stack Overflow — Aspiring coders tend to take one of two types of learning approaches. The first involves trying to learn syntax as fast as possible. The second emphasizes understanding above all. It may take longer, but I hope to show how it's better in the end. (Riccardo: I agree, it takes longer in the present. But let understanding of the principles compound for a bit, and you will be amazed by the return on investment.)
The Algebraic Structure of Functions, Illustrated Using React Components by James Sinclair — Let me be clear. I’m not suggesting anyone go and write all their React components using compose, map, and chain. I’m not even suggesting anyone include a Func library in their codebase. What I am hoping is that this gives you some tools to think differently about your React code. I’m also hoping that the algebraic structure of functions makes a little more sense now. (Riccardo: gotta be honest, this was an exciting read!)
Prefer Fakes Over Mocks by Tyrrrz — In this article we will look at the differences between these two variants of test doubles, identify how using one over the other impacts test design, and why using fakes often results in more manageable test suites. (Riccardo: Great read, but I'm still metabolizing it. What do you think?)
If you have a chance, please let me know how you feel about the topic of permanent knowledge. I'm trying to provide the most value to you as a reader. And I need your help to make it happen. Plus, it's a great way to get in touch. Hit reply and say hi!
Thanks for spending some time reading with me. Talk to you soon.
Yours truly,
Riccardo.