I am a German software and web engineer dedicated to learning and teaching programming in JavaScript. After obtaining my Masters Degree in computer science, I continued learning on my own. I gained experience from the startup world, where I used JavaScript intensively during both my professional life and spare time, which eventually led to a desire to teach others about these topics.
For a few years, I worked closely with an exceptional team of engineers at a company called Small Improvements, developing large scale applications. The company offered a SaaS product that enables customers to give feedback to businesses. This application was developed using JavaScript on its frontend, and Java as its backend. The first iteration of Small Improvements frontend was written in Java with the Wicket Framework and jQuery. When the first generation of SPAs became popular, the company migrated to Angular 1.x for its frontend application. After using Angular for over two years, it became clear that Angular wasnt the best solution to work with state intense applications, so they made the jump to React and Redux. This enabled it to operate on a large scale successfully.
During my time in the company, I regularly wrote articles about web development on my website. I received great feedback from people learning from my articles which allowed me to improve my writing and teaching style. Article after article, I grew my ability to teach others. I felt that my first articles were packed with too much information, quite overwhelming for students, but I improved by focusing on one subject at a time.
Currently, I am a self-employed software engineer and educator. I find it a fulfilling pastime to see students thrive by giving them clear objectives and short feedback loops. You can find more information about me and ways to support and work with me on my website.
FAQ
How to get updates?
I have two channels where I share updates about my content. You can subscribe to updates by email or follow me on Twitter. Regardless of the channel, my objective is to only share quality content. Once you receive notification the book has changed, you can download a new version of it from my website.
Is the learning material up-to-date?
Programming books are usually outdated soon after their release, but since this book is self-published, I can update it as needed whenever a new version of something related to this book gets released.
Can I get a digital copy of the book if I bought it on Amazon?
If you have bought the book on Amazon, you may have seen that the book is available on my website too. Since I use Amazon as one way to monetize my often free content, I honestly thank you for your support and invite you to sign up on my website. After creating an account there, write me an email about your purchase with a receipt from Amazon, so that I can unlock the content for you. With an account on my platform, you always have access to the latest version of the book.
Also, if you have purchased a print book, make sure to take notes in the book. It was my intention to keep the printed book extra large, for the sake of giving larger code snippets enough space, but also for giving you enough space to work with it.
How can I get help while reading the book?
The book has a community of learners who help each other and for people who are reading along. You can join the community to get help, or to help others, as helping others may help you internalize your own understanding. Just follow the navigation to my courses on my website, sign up there, and navigate to joining the community.
Can I help to improve the content?
If you have feedback, shoot me an email and I will take your suggestions into consideration. Dont expect any replies for bug tracking or troubleshoots though, because thats whats the community for.
What do I do if I encounter a bug?
If you encounter any bug in the code, you should find a URL to the current GitHub project at the end of each section. Feel free to open a GitHub issue there. Your help is very much appreciated!
How to support the project?
If you find my lessons useful and would like to contribute, seek my websites about page for information about how to offer support. It is also very helpful for my readers spread the word about how my books helped them, so others might discover ways to improve their web development skills. Contributing through any of the provided channels gives me the freedom to create in-depth courses, and to continue offering free material.
Whats your motivation behind the book?
I want to teach about this topic consistently. I often find materials online that dont receive updates, or only applies to a small part of a topic. Sometimes people struggle to find consistent and up-to-date resources to learn from. I want to provide this consistent and up-to-date learning experience. Also, I hope I can support the less fortunate with my projects by giving them the content for free or by having other impacts.
Who is this book for?
JavaScript Beginners
JavaScript beginners with knowledge in fundamental JS, CSS, and HTML: If you just started out with web development, and have a basic grasp about JS, CSS, and HTML, this book should give you everything thats needed to learn React. However, if you feel there is a gap in your JavaScript knowledge, dont hesitate to read up on this topic before continuing with the book. You will have lots of references to this fundamental knowledge in the book though.
JavaScript Veterans