Skip to content

About the Author

I am a German full-stack developer with a passion for learning and teaching JavaScript. Following the completion of my Master's Degree in computer science, I immersed myself in the startup world, extensively using JavaScript both professionally and in my free time. Collaborating with an exceptional team of engineers in Berlin/Germany, we developed large-scale JavaScript applications which sparked my interest in sharing this knowledge with others.

During this time, I regularly authored articles on web development for my website. Positive feedback from readers seeking to learn from my articles motivated me to refine my writing and teaching style. With each article, my ability to effectively educate others continued to grow. Witnessing students thrive by providing them with clear objectives and quick feedback loops is particularly fulfilling.

Presently, I operate as a freelance developer, closely working with companies on their products as freelancer or consultant. More information about collaborating with me can be found on my website.

FAQ

How to get updates?

Stay informed about the latest updates through my Newsletter. Rest assured that I prioritize sharing only high-quality content.

Is the learning material up-to-date?

Unlike traditional programming books that quickly become outdated, this self-published book allows for prompt updates whenever new versions of relevant tools or technologies are released. You'll always have access to the latest information.

Can I get a digital copy of the book if I've purchased it on Amazon?

Did you know that it's also available on my website? To access the content there, simply send me an email with proof of your Amazon purchase. I'll then unlock the content for you on my website where you'll always have access to the latest version of the book. I truly appreciate your support, so a review on Amazon would be fantastic!

Why is the print version so large?

If you've acquired the print version of the book, consider making notes directly in its pages. The deliberate choice to keep the printed book extra-large was made to provide ample space for extensive code snippets and to afford you sufficient room for your annotations and personal notes. This size decision was crafted with the intention of enhancing your overall reading and learning experience.

Why is the book written like a long-read tutorial?

The unconventional manner in which this book is written and structured might come as a surprise to those more accustomed to the conventional format of programming texts. When I first started coding, there was a scarcity of practical, hands-on resources available. As a learner, I found great value in materials that provided step-by-step instructions, guiding me through not only the 'what' and 'how' but also the 'why' behind each concept. With the goal of replicating this immersive learning experience, I've taken on the task of self-publishing, hoping to extend this valuable knowledge-sharing opportunity to fellow developers within our community.

Where do I get help?

Should you come across any difficult sections in the code, I encourage you to join the community on Discord, where you can share your thoughts and feedback with other learners.

Who is this book for?

JavaScript Beginners

JavaScript beginners with a basic understanding of JS, CSS, and HTML: If you've just started web development and have a basic grasp of JS, CSS, and HTML, this book will provide everything you need to learn React. However, if you feel there's a gap in your JavaScript knowledge, don't hesitate to review that topic before continuing with the book. You will find many references to fundamental JavaScript concepts within the book.

JavaScript Veterans

JavaScript veterans coming from jQuery: If you've extensively used JavaScript with jQuery, MooTools, or Dojo in the past, the new JavaScript landscape may seem overwhelming as you get back on track. However, most of the fundamental concepts haven't changed--it's still JavaScript and HTML under the hood. This book will give you a solid starting point for React.

JavaScript Enthusiasts

JavaScript enthusiasts with knowledge of other modern SPA frameworks: If you're coming from Angular or Vue, there will be differences in how you write applications with React. However, all these frameworks share the same fundamentals of JavaScript and HTML. After adjusting your mindset to React's approach, you should have no trouble adopting it.

Non-JavaScript Developers

If you're coming from another programming language, you're likely more familiar with the various aspects of programming. After learning the fundamentals of JavaScript and HTML, you should have a smooth time picking up React with this book.

Designers and UI/UX Enthusiasts

If your main profession is in design, user interaction, or user experience, don't hesitate to pick up this book. You may already be quite familiar with HTML and CSS, which is a plus. After covering some more JavaScript fundamentals, you'll be well-equipped to work through the rest of the book. These days, UI/UX is increasingly intertwined with implementation, and React often handles these details. Knowing how things work in code will be a valuable asset.

Team Leads, Product Owners, or Product Managers

If you're a team lead, product owner, or product manager in your development department, this book will provide a clear breakdown of the essential parts of a React application. Each section explains a React concept, pattern, or technique that adds a feature or improves the overall architecture. It's a well-rounded reference guide for React.

How to read the book?

Most programming books are high-level and delve into technical details, but they often lack the ability to get their readers into coding. This book may differ from those you are used to reading in this domain because it attempts to teach aspiring developers actual programming. I try to strike a balance between being pragmatic, by providing you with the tools to get the job done, and being detail-oriented, by giving you the necessary information to understand these tools and how they are used in practice.

Take Notes

If you have a print version of the book, do not hesitate to underline paragraphs, write notes, or annotate code snippets. That's why it has such a large size in the first place. If you don't have a print version, keep a notebook on the side for your learnings. Taking notes fortifies what you have learned, and you can always come back to them. With every new learning, you will get a better understanding of the big picture and how the smaller pieces fit together, so it's a great exercise to write down your learnings on a piece of paper.

Code Code Code

Every section introduces you to a new topic in a pragmatic way. For this reason, just reading through the section does not suffice to become a developer because there are lots of things going on in one section alone. So you shouldn't rush from section to section. Instead, I recommend having a computer by your side to code along the way.

Do not just copy and paste code; instead, type it yourself. Do not be satisfied when you just use the code from the book; instead, experiment with it. See what breaks the code and how to fix it. See how certain changes affect the result. And see how you can extend or even improve the code by adding a few lines to it. That's what coding is all about, after all. It does not help you to rush through the book if you haven't written a line of code. So get your hands dirty and do more coding than reading!

Anticipate

There will be many coding problems presented in this book. Sometimes, I will give you the option to solve things yourself before reading about the solution in the next paragraph or code snippet. However, it breaks the flow of repeating myself, so I keep these encouragements to a minimum. Instead, I am hoping for your eagerness to jump ahead. Try to solve things before I get the chance to present you with the solution. Only by trying, failing, and solving a problem will you become a better developer.

Take Breaks

Since every section introduces you to a new topic, it's easy to forget the learnings from the previous section. In addition to coding along with every section, I recommend taking breaks between the sections to allow the learnings to sink in. Read the section, code along the way, code even a bit more if you like, and then rest. Think about your learnings while taking a walk outside or speak with someone about what you have learned, even if this other person is not into coding. After all, taking breaks is always essential if you want to learn something new.