Building Fast React Applications in React in 2025

One of the key challenges in building efficient React applications falls on managing state updates effectively. This is typically the largest problem that occurs when a React application grows in size and complexity. In this post, I’ll explore how incorrectly managed state updates can lead to performance issues and how to mitigate these problems using popular state management libraries and techniques. When you look at a typical React application (not a static website) you will often find that the depth of the component tree can grow very large. A tree with many nested components is the first and most probable cause of performance issues. If any component high up in the tree updates its state every component below it in the tree will re-render as well. If your application performs a lot of operations when a component renders or is re-rendered this can lead to a very sluggish user experience with a single page change causing multiple seconds of lag. ...

October 3, 2025 · 4 min · 835 words · Sebastian Pietschner

Learning Go as a JavaScript Developer

I’ve been working with JavaScript and its ecosystem for several years now, primarily focusing on web development with libraries like React and experimenting with different runtime environments like Node.js and Bun. Recently, I decided to expand my programming skills by learning Go (Golang), a statically typed, compiled language known for its simplicity and performance. Why Go? Given my interest in web development and developing efficient backend services, Go seemed like a natural choice coming from JavaScript. I first considered learning Go after seeing that Microsoft was porting the TypeScript compiler to Go. There are many different projects in the JavaScript ecosystem that use a faster compiled language for the massive performance improvements. For example, the Deno JavaScript runtime is built using Rust and the Bun runtime uses Zig. Coming from languages like JavaScript and TypeScript I was curious to see how Go handled concurrency and multithreading, as these are areas where JavaScript often meets limitations. ...

September 25, 2025 · 3 min · 558 words · Sebastian Pietschner

Self-Hosting: My Journey and Lessons Learned

Over the past few years, I’ve embarked on a journey into the world of self-hosting, starting with a single instance of Home Assistant and gradually expanding my services to include a variety of applications. This journey has been both exciting and challenging, filled with valuable lessons learned along the way. Inspiration: The Self Hosted Podcast I’ve been self-hosting for a number of years now, starting with one or two core programs and gradually expanding to host more than a dozen different services. A lot of my inspiration came from the Self Hosted podcast, which I discovered a few years ago. Every fortnight Chris and Alex would cover news in the open source and self-hosting world, as well as interviewing maintainers and covering new services that they had discovered. The podcast was a great way to learn about new tools whilst commuting and then arriving home to try them out. A lot of the services I run today were discovered through the podcast and I’ve learnt more than a few lessons from the hosts’ experiences. ...

September 21, 2025 · 7 min · 1298 words · Sebastian Pietschner

The Evolution of me on the Internet

Being nearly done with my university degree and looking for work I’ve begun to notice how many companies allow for a website or portfolio link on job applications. Before now I hadn’t really upgraded my personal website since this time of year in 2022 when I decided to invest a lot of time into building a full stack website using Remix, Postgres and the Slate rich text editor, paired with oAuth through Github and Discord for authentication. Admittedly though I did sometimes post new content to that blog I never really made a habit of it, and after I lost interest in the project I let it sit dormant for a long time. ...

September 21, 2025 · 4 min · 682 words · Sebastian Pietschner