June 11, 2020
0 strokes bestowed

Memoization: What, Why, and How

Trading Space for Time

Recently, I spent an hour with one of my protégés demonstrating some common advanced techniques we use at Webflow. One of the techniques I showed them was memoization. Let's learn what memoization is, why you might use it, and how do we write it from scratch.
JavaScriptReactComputer Science
May 29, 2020
0 strokes bestowed

No matter what it is you're building with React, when you boil it down, there are only three ways you can manage data in a React app: locally, parentally, and remotely.

May 27, 2020
0 strokes bestowed
The next part in our useReducer finite state machine journey is adding "guards". If you haven't read the previous posts in this collection, I encourage you to do so before reading ahead. Those posts are: How to Use useReducer as a Finite State Machine Adding Infinite States to a useReducer…
May 19, 2020
0 strokes bestowed
Lately, I have had the opportunity to work on some new features at Webflow. It's exciting to build new things for your customers. It's also exciting because I've had the opportunity to finally dive head-first into React Hooks and learn and explore some new patterns. Some have been winners, some…
May 15, 2020
0 strokes bestowed
Before reading this post, I encourage you to read How to Use useReducer as a Finite State Machine if you haven't already. In that post, I demonstrate how to make the React Hook useReducer behave like a finite state machine using a statechart-like graph. I'm going to expand upon that work today…
May 07, 2020
0 strokes bestowed
Near the end of last year, I was doing prep work for my first workshop on state machines. In my research, I came across this simple, but effective graph editor: https://csacademy.com/app/graph_editor/ . I was impressed with how simple it was to represent a graph with just a few lines of text. On…
May 04, 2020
0 strokes bestowed
I recently attempted to get XState into the Webflow codebase to manage some challenging and complex UIs but was met with resistance. No big deal, this is a part of work, consensus driving, disagreeing and committing, etc. If it hasn't happened to you yet, it will. One of the things you need when…
April 03, 2020
0 strokes bestowed
This exists as a living document to define some guidelines regarding state machines and their usage. They are by no means exhaustive, but hopefully set you on the right path. It is _highly recommended_ that you read the XState docs for more information.
March 02, 2020
0 strokes bestowed
I'm not sure when I first learned about "cyclomatic complexity". It's such an academic term that you can practically smell a classroom or library when you read or hear it. If I had understood the concept earlier in my career, I don't think I would have given it much thought. "I've got buttons to put…
February 20, 2020
0 strokes bestowed
It can be easy to forget that React components are just functions. They receive inputs, they give us an output, and they might trigger some side effects in the process. Because they are simply functions, we can use patterns with them that we use with other functions. Like recursion . What is…

Let's talk some more about JavaScript, React, and software engineering.

I write a newsletter to share my thoughts and the projects I'm working on. I would love for you to join the conversation. You can unsubscribe at any time.

Introduction to State Machines and XState Logo
Introduction to State Machines and XState

Check out my courses!

Liked the post? You might like my video courses, too. Click the button to view this course or go to Courses for more information.
View on egghead.io