Blog
Welcome to my blog. I write about web development, engineering challenges, and my journey building software. I learn by building, and I use this space to document the technical hurdles I overcome along the way.
React at its Core: Components, State, and the Re-render
When you first learn React, the ecosystem feels overwhelming. You immediately hear about custom hooks, context providers, the virtual DOM, and strict mode. But if you strip all the complex jargon away, React is actually incredibly simple.
HTTP Status Codes: Exactly What to Return and When
I used to just use two status codes for my website, which were 200 and 500. If the request worked, I sent a 200. If my code crashed, I sent a 500. But later, I realized the importance of using correct status codes.
Statically Typed vs. Dynamically Typed: What is the Difference?
If you learned to code with JavaScript or Python, you are used to creating variables without thinking too much about what kind of data they hold. If you started with Java or C++, you know you have to declare exactly what type of data every single variable will store before you even run the code.
Compiled, Interpreted, and Just-In-Time: How Code Runs
Everyone learns the basic difference between compiled and interpreted languages early on. I understood that part fine, but I was always confused about where Just-In-Time (JIT) compilation fit in. I used to think a JIT was just a slightly faster interpreter, and I thought JavaScript was purely interpreted.
JS Concepts Part 1: Synchronous vs Asynchronous JavaScript
Web development has moved far beyond simple static pages, and mastering asynchronous JavaScript is the reason why modern applications feel so fast. Because JavaScript is naturally single-threaded, it can only execute one command at a time.
JS Concepts Part 2: Closures and Lexical Scope
Web development has grown more complex than just writing simple scripts, and mastering closures is a big reason why large-scale applications can manage data securely. Learn how lexical scope works and how to handle private variables.
JS Concepts Part 3: Fetch vs. Axios
Every time you build a web application, you have to get data from a backend server. In JavaScript, you usually have two choices to do this. You can use the native fetch API that comes with the browser, or you can install a third-party package called Axios.
Your website is boring and AI is to blame
If you spend any time looking at new startups or portfolios lately, you probably noticed something really annoying. Every single website looks exactly the same. AI is doing all the heavy lifting for web design now, and it's killing creativity on the internet.
Confused by Breakpoints? A Junior Dev’s Guide to Tailwind CSS
Responsive design always seemed simple to me until I started using Tailwind seriously and unprefixed classes felt messy. Here is a breakdown of how sm, md, and lg actually work, and how to master the mobile-first approach.
More articles coming soon...