Build Better Node.js Applications

By Alex Kondov, author of Tao of React

Tao of Node contains proven rules and guidelines to build better applications. You will learn more about architecture, design, tooling, testing and performance.

Contains 125 rules, grouped in 6 chapters, totalling 190 pages.

Where to go after the basics?

This is the question every beginner has once they learn the basics of Node. You know how to build an application and understand how the tools work. But once you start working on your first project, questions pop up. How do I structure it? Where do I put my business logic? How do I make it more reusable? What libraries should I use? What about the database?

There are many resources that can teach you the little pieces. No one tells you how to put them together to build real software. Most applications need to be extended, modified and supported. To work productively you need more than surface-level knowledge of Node.

Let me help you out. Through trial and error I've formulated a set of principles that I follow when building Node applications. I've learned them the hard way but you don't have to.

Who is this book for?

Tao of Node is made for beginners who want to get to the intermediate level. The best time to read it is when you've grasped the fundamentals and are starting to build real applications.

This book will not teach you Node.js from scratch. It builds on top of the core concepts and helps you form the right principles. So what knowledge do you need? Basic understanding of a router like Express, experience with any kind of database and one personal project to practice with.

If you've built an application following a tutorial and you're wondering how to structure it - this is for you. If you're unsure what's the best way to deploy it - this is for you. If you're not sure what you should focus on to make your code cleaner - this is for you.

Tao of Node will help you go to from beginner to intermediate by helping you understand the core principles of software design.

Contents

Each chapter contains a set of simple rules that will help you build great software. You don't have to read them in a particular order. Dive in and learn what's most interesting to you.

1. Structure

High level concepts and decisions that make a codebase modular and extensible - structure, abstractions and business logic.

2. Tooling

The technologies and libraries to focus on for your next project - frameworks, databases, supporting tools, logging and monitoring.

3. Testing

Development is never final. We'll learn principles about testing that will help us maintain quality and stability as our application grows and changes.

4. Performance

It doesn't matter how good your product is if it's slow. We'll explore core performance principles to keep in mind.

5. Serverless & GraphQL

Two technologies with great Node.js support that any engineer should understand. We will go over the best practices for each one.

6. Bonus: Scenarios

A collection of common problems that you can face in your work. From extracting a microservice to how to apply these patterns to existing projects.

Principles

Each rule is a concise, self-contained principle that gives you actionable advice. No unnecessary explanations, no specific reading order. It always contains context to understand the problem.

Context

Background about a design or architectural problem.

Avoid

Examples of non-ideal solutions and anti-patterns.

Solution

A better way to solve that problem.

Not sure?

I believe that basic knowledge should be public and accessible so I have uploaded around a third of the book for free on my personal blog. It's been read by over 20K people in the last 6 months. You can take a look right now, no email required.

You can see what others had to say about it on Hacker News, the Bytes newsletter, the JS Weekly newsletter, and the Node Weekly newsletter.

Get the book

You buy me lunch and I tell you everything I know about Node.

$19 (eBook)

Get the complete book. All 6 chapters, containing 125 principles, described in 190 pages. That's it.

About the author

I'm a software engineer by day, writer by night and Dungeons & Dragons enthusiast in between.

I started working with Node because I wanted to use the same language in the browser and on the server. Since then I've become passionate about this technology and I've used it in both startups and large corporations. Node's future is bright and I want to help others learn the best practices around it.

My aim is to pass down what I've learned about architecture and software design through my books. Tao of Node is the second in a series that started with Tao of React.

You can follow me on Twitter @AlexanderKondov, connect on LinkedIn or read more content at alexkondov.com.

FAQ

Why is it called Tao?

Tao is the absolute principle of the universe in Chinese philosophy. Tao of Node is a collection of my foundational principles for building applications.

Will this book teach me Node?

This isn't a book about the fundamentals. The best time to read it is when you are familiar with Node and Express (or another routing library) and want to take your skills to the next level.

Does it cover tools like databases?

The focus of the book is on software design and building web APIs. We cover popular tools and how to work with databases but it's not in depth.

How opinionated is it?

It describes the way I build Node services so you consider it opinionated. It's a good starting point that you can break out of depending on your problem.

Can I get a discount?

I want this book to be accessible. If you can't afford it message me on Twitter or LinkedIn and we'll sort it out.

What if I don't like it?

No worries, I'll give you a full refund.

© 2024 Alexander Kondov - Twitter, LinkedIn