In this post, I will share my own point of view about React Hooks, and as the title of this post implies, I am not a big fan.

Let’s break down the motivation for ditching classes in favor of hooks, as described in the official React’s docs.

Motivation #1: Classes are confusing

we’ve found that classes can be a large barrier to learning React. You have to understand how this works in JavaScript, which is very different from how it works in most languages. You have to remember to bind the event handlers. …


A utility library for testing React Native components using Detox

In this post I will explain how and why I created Kompot, the trade-offs I made in the process, and the final architecture I ended up with.

A few words about Component testing

If you’ll search google for the term “Component testing”, you will find lots of vague and contradicting definitions. I am guessing it’s because no one directly invents and name all those different testing methodologies. They just sporadically evolve as the need calls, and after a while people try to classify them retrospectively. There are lots of grey areas, and it seems like no one can agree on a solid terminology. In the context…


How many times a day do people ask you if you can travel back in time? If you are building a state management library, the answer is quite a lot.

In this tutorial I will show you how to achieve time traveling and state serialization capabilities using Controllerim.

If you don’t know what Controllerim is, you better start by reading Getting started with Controllerim and The Ugly Side Of Redux

A Small Disclaimer

I actually don’t think that time traveling is very useful for debugging. Redux has put time traveling capabilities under the spotlight, and it seems like everyone loves it. I can…


In this post I will briefly explain Redux at a very high level for those of you who don’t already know it, I will try to convince you why Redux is actually promoting an anti-pattern (the singleton global store), and I’ll show you my own alternative called Controllerim.

Update (11/09/2020): This post is pretty old now, and many things has changed since I wrote it. Today, Dan Abramov, the creator of Redux, already admits that Redux was a mistake, and Redux is loosing his popularity. Controllerim is still working and pretty much stable, but I am no longer maintaining it…


In this tutorial, I will explain the basics of Controllerim by showing you how to build a simple react app using Controllerim as it’s state management tool, step by step.

The app will look like this:

A preview of the final app

We will create a notes list, and we will present it to the user in two different themes. Why? Cause we can! We will also have a counter that will show us the total number of notes in both of the lists, and we will have a Chuck norris button that will fetch a random Chuck Norris joke from the web and add it to our note. Why? Cause we…

Nir Yosef

Front-end developer @Wix.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store