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.…
How to Send Documents in a Firebase Chat I built a chat system for a sales team. It handles text, images, and voice messages. I needed to add document sharing for PDF, Word, and E…
Has Isn't A Parent Selector. It Deletes JavaScript. Search your code for classList.toggle. You likely see many instances where you use JavaScript to toggle a class on a parent ele…
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…