RSSAmplifier

Blog

Stephan Meijer's Blog

Latest articles from meijer.works

meijer.worksRSS feed ↗31 posts

Latest posts

Keep Your Error Messages

Preserve meaningful error messages in production, stop using tools that strip them.

The Perfect Stack Is Two

Stop chasing one framework to do it all. The perfect stack is two.

Review PRs without stashing, with git worktree

Work on multiple branches at once without stashing or cloning.

Populate PostgreSQL with Mock Data

Learn how to efficiently generate and insert realistic mock data into your database.

Orchestrate your Dev Environment using Devbox

Use Devbox to manage your portable, isolated, dev environment, on any machine.

Improve your Dev Stack with process-compose

Use process-compose to manage your dev services.

Manual Approvals in GitHub Actions

How to use manual approvals in GitHub Actions to wait for a human to approve a release.

Don't mutate the iterator

Don't mutate the iterator you're iterating over.

Linking Packages with Yalc

Effective package development using Yalc.

Isomorphic Development

Fullstack development, or rather isomorphic development, isn't as easy as they say.

Simpler Dev Environments with Procfiles

Use Procfiles to turn multiple startup commands into a single one.

Conflicted

A rambling about recent events in my life.

Typed GraphQL with react-query & graphql-request

Using typed GraphQL queries to easy development and maintain API confidence.

Handling POST requests in Next.js getServerSideProps

How to handle POST requests in Next.js getServerSideProps.

Typescript Type Assertions

How to use Type Assertions to narrow types in TypeScript.

Trivia or Job Interview?

The interview process is broken, I can build, I can't play.

How I got a job offer from a funded startup

How I got an exciting job offer, that I had to decline.

A quick dive into generators

Generators and what makes them so special.

Three ways to handle recursion

Walking down a tree using a function, loop or generator.

You might not need recursion

Flat loops as an alternative for complex recursive functions.

My Career and Lessons Learned in a Nutshell

How I became as productive as I am.

TypeScript Type Guards and Type Predicates

How to use Type Guards to narrow types in TypeScript.

Simplify your Dev Environment with PM2

Use PM2 to turn multiple startup commands into a single one.

How to handle forms in React, the alternative approach

Form handling in React, without react controlling everything!

Don't skip elements with array destructuring

Prefer [].slice(2) over [,,rest]

How to implement a generic ValueOf<T> helper type in TypeScript

A typescript &#x60;valueof&#x60; implementation similar to &#x60;keyof&#x60;

Don&#x27;t stop Mutating

Mutating objects is fine, sometimes preferred.

Stop mutating in map, reduce and forEach

Functional methods and side effects don&#x27;t play well together.

Work From Home; The Struggle of 2020

Working from Home isn&#x27;t the same anymore.

The launch of Updrafts.app

The launch of Updrafts.app - A Tailwind Studio.

The costs of Optional Chaining

The costs of Optional Chaining in performance and bundle size.