Introduction

I sold my first computer program when I was in 10th grade. That was in 1994! I remember writing programs for Windows 3.11 and using some of the early releases of Corel Draw and Delphi. I wrote my first single-page web application around the year 2002, before jQuery was a thing.

The point is, I am old. I have been coding long enough to make many mistakes and learn from each and every one of them. I have seen the rise and fall of languages, libraries, and frameworks. I have used many styles of programming and formed practical opinions about all of them. I wrote code for small and big projects. I worked in small and big teams. I wrote code for front-ends, back-ends, and inside databases. I created applications used by citizens of an entire nation!

I am mostlyself-taughT but I did eventually take some programming courses when I was in college. However, I do not think these college courses contributed much to my overall coding knowledge and experience. You can only learn coding by building actual programs, not through classroom examples.

You don’t learn to walk by following rules. You learn by doing, and by falling over.
— Richard Branson

This book presents my highly opinionated collection of tips, advice, and the practices I believe one should and should not be doing as a professional programmer. These include all the little things I learned over the past 20 years having coding as my main profession.

Opinionated is the keyword here. A lot of professional coders out there disagree with some of the points I am going to make in this book. I write a lot of JavaScript code these days and since JavaScript is the most-used programming language out there, all the examples in this book were written in JavaScript. Furthermore, some of the points I make in this book are a bit biased for the JavaScript language.

Take it all with a grain of salt.