Escaping the US Cloud: A Practical Migration Story

2025-03-18
Escaping the US Cloud: A Practical Migration Story

Concerns over conflicting EU privacy laws and US data practices, coupled with the potential for US government misuse of tech companies as weapons, led the author to migrate their business's reliance on US cloud services. The article details the process and experiences of switching from Microsoft 365 to Proton, Bitwarden to Proton Pass, and gradually migrating other services such as GitHub, Google Search, Cloudflare/Google DNS, Docker Hub, and NPM. Some migrations proved easier than expected, like the surprisingly seamless transition to Proton as a Microsoft 365 alternative, while others, like GitHub, demanded more time due to high dependency. The article highlights the importance of reducing dependence on US cloud services and encourages exploring European alternatives.

Read more
Development tech sovereignty

Next.js Pre-rendering: How Much Traffic Can It Really Handle?

2025-03-09
Next.js Pre-rendering: How Much Traffic Can It Really Handle?

The author tested the traffic capacity of their Next.js pre-rendered site and found a VPS server could only handle around 200 concurrent requests, far lower than expected. This led to an upgrade to a dedicated server, resulting in a significant performance improvement, handling thousands of requests per second. In contrast, server-side rendering (SSR) performed significantly worse than pre-rendering, struggling under high traffic. The article also discusses the pros and cons of other solutions like Cloudflare and Vercel, ultimately opting for a dedicated server for scalability. Future tests will explore further optimizations.

Read more

Google Translate Breaks React (and other Web Apps): A DOM Showdown

2025-02-14
Google Translate Breaks React (and other Web Apps): A DOM Showdown

Google Translate, Chrome's built-in extension, manipulates the DOM in a way that breaks many modern web apps, particularly those using React. The article dives deep into how Google Translate works, replacing TextNodes with FontElements, disrupting React's Virtual DOM and causing crashes or data inconsistencies. Common errors like `NotFoundError` and `insertBefore` failures are analyzed, along with workarounds such as monkey patching and wrapping TextNodes in `` elements, but these solutions have limitations. Ultimately, the article suggests developers weigh the pros and cons, potentially disabling Google Translate or implementing their own localization to ensure app stability and user experience.

Read more