Day 5 of Learning React: Batching and Functional Updates
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…
The JavaScript and TypeScript ecosystem.
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…
My Backup Lost Every Photo I built a backup button for an offline mood tracker. It exported data to a JSON file. Users could save it and move it to a new phone. It seemed perfect.…
Why Your Vibe Coded Website Will Never Rank A founder showed me a website last month. It looked great. It had clean animations and sharp copy. He built it in one afternoon using A…
TypeScript Won. Here is What It Actually Bought Us. Nobody argues about using TypeScript anymore. New projects use it by default. The debate is over. The real value is not just ca…
React vs Next.js: Which Should You Learn? Beginners often ask if they should learn React or Next.js first. The wrong choice slows your progress. This guide helps you decide based…
Custom E commerce on Firebase I built a custom e commerce site from scratch. I did not use off the shelf platforms. I used Firebase Realtime Database and Netlify. The goal was to…
Signed Token Between Two PWAs: HMAC SHA256 With No Backend You need to pass user identity from one PWA to another. Both apps run on separate Firebase projects. They share no datab…
Build Your First Discord Bot with JavaScript You want to build a Discord bot. Maybe you see bots playing music or running polls and wonder how they work. By the end of this series…
Engineering BrainRot TV on an Orange Pi Zero I built a video installation for the TIAT exhibition in San Francisco. It explores how modern algorithms keep us glued to screens. The…
Why I Returned to JavaScript After 7 Years I am a UI developer with 7 years of experience. I know HTML and CSS. I can turn Figma designs into code. But I never felt like a real de…
You Don't Use Linked Lists. But They're Running Half Your Software. You will likely never write a linked list in a production JavaScript project. Your language built in arrays han…
TypeScript Won. Here Is What That Bought Us. The debate is over. Most new frontend projects use TypeScript by default. People no longer argue about whether to adopt it. The real v…
Replaced My App's Database With A Google Drive Folder I wanted to track my daughter's music progress. She gets audio clips and notes from her teacher every week. I wanted to liste…
Debugging This Stuff Beginners think experienced developers do not make mistakes. The truth is different. Experienced developers just find mistakes faster. I built a full stack pr…
When React Says Re render, It Means Three Things When you call setState, React does not just update the DOM. It runs three separate phases in a sequence. Most developers confuse t…
Rust Ate the JavaScript Toolchain. Then Cloudflare Bought It. Vite changed how it works. It moved from two tools to one single pipeline. The old way used esbuild for development a…
Save Hours with these JavaScript Async/Await Patterns Writing async code often feels like untangling a mess of promises. You spend more time debugging undefined values than buildi…
What Building Pagelyze Taught Me About React Building Pagelyze changed my view on React. I stopped looking at theory and started looking at product architecture. Pagelyze is a web…
Shallow Copy vs Deep Copy in JavaScript JavaScript handles copying in two ways depending on the data type. Primitive Values (Copy by Value) Primitive types include strings, number…
100 Days, 87 Tools, Zero Servers I spent 100 days building ToolKnit. It is a suite of 87 browser based tools. Most tool sites work like this: You upload a file. A server processes…
I Interviewed 5 Candidates for a Technical Role I interviewed five candidates for a frontend role last week. They had different backgrounds and different skills. By the end of day…
React Lost Its Mass and Vercel Is Wearing Its Skin The React community used to own the project. Now, it feels like a hosting company manages it. The shift happened slowly. Then it…
JavaScript Arrays Methods Part 1 An array is a special object in JavaScript. It stores multiple values in one variable. Instead of creating separate variables for every student: l…