RSSAmplifier

Blog

Max Rozen

Learn React with Max Rozen

maxrozen.comRSS feed ↗90 posts

Latest posts

OnlineOrNot Diaries 25: you can just build things

You *can* just build things.

Four years of running a SaaS in a competitive market

Looking back on the last four years, what worked, what didn't.

OnlineOrNot Diaries 24

Looking over last year, and a first incident for 2025.

OnlineOrNot Diaries 23

Working with big systems all day can slow you down.

OnlineOrNot Diaries 22

Feels like I've already said everything I had to say

OnlineOrNot Diaries 21

I was young, and needed to ship...

OnlineOrNot Diaries 20

Dipping my toe in enterprise sales

OnlineOrNot Diaries 19

Refactoring the business entity, thoughts on marketing and building

Lessons from my third year running a SaaS

I've run this business for three years now, and I'm only just now starting to *get it*.

OnlineOrNot Diaries 18

Starting the year by cleaning up even more

2023: Focusing on a single product pays off

The first year where I managed to keep my focus entirely on a single project.

Starting a Cloudflare Worker from scratch

We don't need no fancy tooling!

OnlineOrNot Diaries 17

On learning screencasting, cleaning up tech debt, and focus

OnlineOrNot Diaries 16

On content marketing, starting a YouTube channel, and improving status pages

OnlineOrNot Diaries 15

Heading back into the arena. We are so back.

OnlineOrNot Diaries 14

Back to regular programming.

OnlineOrNot Diaries 13

I tried building a monolith.

OnlineOrNot Diaries 12

On failing customers, failing to ship a new feature, learning sales, and giving up on ads.

OnlineOrNot Diaries 11

On building table-stakes features, and breaking through a plateau.

OnlineOrNot Diaries 10

On re-rearchitecting.

OnlineOrNot Diaries 9

On cleaning up the shop.

OnlineOrNot Diaries 8

Building a new feature in a couple of weeks.

OnlineOrNot Diaries 7

In which I pay for people to check out OnlineOrNot to test my landing pages.

OnlineOrNot Diaries 6

A new monitoring service for OnlineOrNot, and new learnings for my pricing page.

OnlineOrNot Diaries 5

In which I doubled my conversion rate without trying too hard.

OnlineOrNot Diaries 4

On ripping out product analytics, updating the pricing page, and adding multi-region monitoring

Getting your own good enough laptop for under $500

I recently bought a cheap, used Thinkpad T480, replaced a bunch of parts. Some folks were asking how they could do the same thing, so I figured I'd write about it

OnlineOrNot Diaries 3

Marketing week? More like reliability week

OnlineOrNot Diaries 2

In which I ship a CLI (for real this time), and improve a few things

OnlineOrNot Diaries 1

On marketing, and shipping a CLI

On replacing my MacBook Air M1 with a Thinkpad T480

In which you probably wonder, but ...why?

2022: I just kept shipping

Another year in review, in which I just keep shipping, with some stumbles along the way

Managing your Node.js installation

If you're finding yourself manually installing different versions of Node, you need to know there's a *much* better way.

How I became a React developer

On how I left a 'prestigious' consulting job to start from scratch as a React developer

Learn Integration Testing with React Hook Form

Testing is super important, and yet it's hard to find practical examples to show you what to do. This article intends to fix that, by teaching integration testing with React Hook Form.

Strangers from the internet paid for my MacBook Air: on my 4th year of indiehacking

In which I finally make money from strangers off the internet.

@forge/api: Cannot read properties of undefined (reading ‘fetch’)

How to fix a cannot read properties of undefined error in Forge

Keeping up with React Libraries

React libraries are hard to keep track of. This article attempts to put the ones worth talking about on one page.

Demystifying useEffect's clean-up function

useEffect's clean-up function can be pretty confusing, especially if you're still trying to think in lifecycle methods. Let's clarify the clean-up function in this article.

A Walkthrough of migrating MaxRozen.com from Gatsby to Next.js

I recently migrated MaxRozen.com from Gatsby to Next.js, in this article I'll detail the steps it took.

Protecting your React routes

React apps send their code directly to users, so you might be a little confused about how React 'guards' routes from unauthorised viewing. This article explains how.

Deploying Node and React Shopify apps on Vercel

Shopify's tutorial is awesome for getting started, but doesn't let you deploy onto Vercel. In this article, I'll show you how.

Using Tailwind CSS with React and CSS-in-JS

If you're already using a CSS-in-JS library, trying out Tailwind CSS with your existing app might be much easier than you think.

Indiehacking: a review of my 3rd year

A review of my third year of trying to start an internet business.

Guidelines for developing Custom Hooks in React

You've just gotten over the fact we call them 'Hooks', but how do you stop repeating the same code everywhere? Let's learn about Custom Hooks.

Guidelines for Deploying React

These days there are a heck of a lot of options for deploying React. It can be a bit overwhelming. This article simplifies your choices.

Fixing Race Conditions in React with useEffect

If you're using useEffect to fetch data, chances are you've either run into a race condition, or have one without realising it. Let's learn how to fix them in this article.

Fetching Data in React with useEffect

If you're confused about side-effects and pure functions, it can be hard to understand useEffect. Let's learn them both, to fetch data with useEffect.

Guidelines for choosing React Libraries

There are a *lot* of React libraries out there. So how do you pick which one to use in your app? This article provides guidelines for choosing.

Understanding when to use useMemo

If you've just learned what useCallback is, you might be wondering why on earth useMemo exists, and why we don't use it everywhere.