Blogs
Short form notes, thoughts, ideas & answers to frequently asked questions
I'm sure you've run into this issue before. You try to a project up but you get an error that looks something like the following: What's…
What’s the difference between a framework and a library? A framework is something that you plug your code into. A library is something that…
Hashing is a technique used to convert a key into another value (typically for cryptographic or data storage purposes). It works by running…
For many developers, JavaScript acts as introduction to the functional programming paradigm. And if you've never encountered callback…
Is Domain-Driven Design (DDD) overrated? In my opinion, you can only say DDD is overrated once you've achieved mastery over it. At this…
Well, everybody. The time has come. March 31st, 2022 was my last day at Apollo GraphQL. After about 3 years, countless blog posts, 4 talks…
On this site, we're primarily concerned with software design, architecture, and the many problems that occur later on in your developer…
If you're just getting started with object-oriented programming, the notion of an class may seem a little foreign. Abstraction is one of…
The tldr Naming conventions dictate the way you write names (for methods, folders, variables and so on). The three most common are camel…
Intro In the previous article in this series, "How to use ESLint with TypeScript", we learned how add ESLint to our project and configure it…
Originally published in volvox vault's issue on metamorphosis. Someone said I was a writer the other day. When the hell did that happen…
Albert Camus was a French philosopher most well known for his ideas about absurdism. Sometimes regarded as an existentialist philosopher…
I'm always interested in what blog readers are building using Domain-Driven Design and Clean Architecture practices. In this post, I'd like…
In this article, you will learn how cold start issues occur, what factors contribute to cold starts, and how to manage Lambda cold starts…
Historically, when starting on a new React project, we’ve had to design and implement the state management infrastructure from scratch in a…
Intro On most projects I've ever worked collaboratively on, someone takes the role of the code cleanliness champion. It's usually the team…
Intro Formatting is one of several concerns in the efforts to write clean code. There's a lot of other stuff we should be concerned about as…
Deploying a Serverless GraphQL API with TypeScript is essentially the same as deploying one with JavaScript. The only difference is in the…
Unfortunately, in GraphQL, you can't nest operations to apply better grouping (namespacing / separation of concerns) to your services. Here…
Today, in the Advanced JavaScript Developers group, someone asked the question: Musing from a Noob: so if you were to write a translator…
Intro In "Decoupling Logic with Domain Events [Guide] - Domain-Driven Design w/ TypeScript", we use Sequelize Hooks to decouple business…
Introduction Designing your GraphQL schema is a potentially expensive task. It's potentially expensive because if we respect the principles…
At the time of writing this, I've been on Earth for about ~2.4 decades. That means that ten years ago, I was the very tender age of fourteen…
Quite honestly, I don't know if I really enjoy writing optimization code. I'm not saying that I don't like optimized code- I'm saying that…
Go read "When to Use a Private Constructor | Object-Oriented Programming w/ TypeScript". You'll use static factory methods for the same…
One of the first things we learn when we start out is how to create instances of objects. Typically, we do this with the keyword. The…
Readers of khalilstemmler.com either love or hate the design of the site. When I was designing the site, I knew that I wanted to draw a…
We talk about a lot of advanced Node.js and TypeScript concepts on this blog, particularly Domain-Driven Design and large-scale enterprise…
Microsoft called TypeScript JavaScript that scales... what's so unscalable about JavaScript? With respect to software development, there are…
In Object-Oriented Programming, we write a lot of classes. Classes contain properties (methods and attributes) which hold variables and…
Last time, we talked about how to create a facade over our ORM using the Repository pattern. Today, we're talking a little bit about where…
Join the discussions on Hackernews and Reddit. Getters and setters (also known as accessors) were introduced to JavaScript when ECMAScript…