AI Won The Typescript War
AI Won The Typescript War The debate is over. TypeScript did not win because of better arguments. It won because AI tools made the debate irrelevant. Researchers found a key patte…
The JavaScript and TypeScript ecosystem.
AI Won The Typescript War The debate is over. TypeScript did not win because of better arguments. It won because AI tools made the debate irrelevant. Researchers found a key patte…
A Width Check Said the String Was Safe to Cut. It Split a Kanji in Half. A name entered a terminal table and came out broken. The surname was 𠮷田. The first character is not the c…
DOM CRUD Operations The Document Object Model (DOM) is how browsers represent HTML. It turns every element, attribute, and text piece into an object. JavaScript uses these objects…
How To Set Up React Context Prop drilling ruins your code. You pass data through five layers of components that do not need it. React Context fixes this. However, most setups crea…
Testing Nodejs Digest Emails Without Inbox Noise Digest emails cause problems when preview environments send summaries to one shared mailbox. You lose track of which message belon…
Test Email Change Flows Without Missed Links Changing an account email seems small. It is a common trap for QA teams. One tester updates an address. Another person opens the email…
The 3 Second Rule of Web Performance You have three seconds. After that, your users leave. Google research shows 53% of mobile users abandon a site if it takes longer than 3 secon…
Using React Refs and useRef Hook React uses a declarative approach. You update state, and React updates the UI. This works for most tasks. But sometimes you need to step outside t…
Why Index as a Key is a Bad Idea in React You build a dynamic list in React. You delete an item. Suddenly, the UI state of a different item changes. Or, you sort a list and the in…
Track Live Website Visitors Without Subscriptions A client wanted to see who was on their website in real time. They liked the Tidio widget but did not want to pay for a subscript…
Why You Need the React Key Prop You see this error in your console: "Each child in a list should have a unique 'key' prop." Many developers ignore it. This is a mistake. This warn…
My Coding Agent Remembered Sessions, Not Work A coding agent can keep a thread alive and still feel forgetful. I ran into this issue while building CliGate. I fixed session contin…
Master React Lists and Keys Rendering lists in React is simple, but doing it right is hard. Many developers use the array index as a key. This is a mistake. It leads to bugs and s…
TypeScript Using Keyword and Explicit Resource Management Memory leaks in production often stem from one error: developers acquire resources but fail to release them. Database con…
Test Passwordless Login Without Inbox Chaos Passwordless login looks easy in a demo. A user enters an email. A magic link arrives. The session starts. In staging, this flow gets m…
How Node.js Handles Thousands of Requests People say Node.js is single threaded. Yet, it handles thousands of requests, reads files, and makes API calls without stopping. How does…
The Hidden Cost of Every npm Install We spent ten years downloading libraries to fix JavaScript. We used moment.js for dates. We used lodash for utilities. We used node fetch for…
Mistakes When Using UV Air Recirculators in Food Production Air hygiene is vital in food production. Packaging areas are especially sensitive. Airborne microbes can ruin product q…
Building An Interactive App Guide Support teams often struggle with apps they have never installed. A PDF with screenshots is the standard solution. Most people do not read PDFs.…
The Invisible Frontend: Small Decisions That Save a Product The best frontend work never shows up in a demo. The work I value most is invisible. No one takes screenshots of it. Bu…
How I Updated Every Branch Without Touching A Single Machine I built an internal desktop tool using Electron. It runs on machines across many branch offices. These offices have di…
React Performance Optimisation Checklist Slow applications kill businesses. They cause high bounce rates and frustrate users. They also increase your infrastructure costs. You do…
Day 5 of Learning React: Batching and Functional Updates I thought calling a state setter multiple times caused multiple renders. I was wrong. React is smarter than that. It uses…
Your Console Is Lying To You Your browser DevTools might mislead you during debugging. It is not broken. It is optimized for speed, not for perfect accuracy. Here is why you canno…