Reviewing "TypeScript in 50 Lessons"
Tags: reflections, typescript
Published: 2021-02-18 15:48:57

---
title: Reviewing "TypeScript in 50 Lessons"
published: true
description: My first time being a technical reviewer for a published book!
tags: Reflections, TypeScript
slug: ts-50-lessons
canonical_url: https://www.swyx.io/ts-50-lessons
cover_image: https://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6c3fd0d1-e97a-42a7-ab31-f9c3224c9869/20-typescript-book.jpg
---

I have just received my copy of Stefan Baumgartner's [TypeScript in 50 Lessons](https://typescript-book.com/) in the mail. It is the first book for which I have served as technical reviewer!

{% twitter 1361712610593316866 %}

I was enormously tickled not just to see my name in the Acknowledgements, but also to learn that apparently technical reviewing is important enough to make it on to the official book credits!

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wdbkd8oc4ck9se3qiwgf.jpg)


*(For what its worth - I got a small stipend for reviewing, and zero dollars whether or not you buy the book - but I'm writing it up anyway because I thoroughly enjoyed both the book and the process of reviewing it!)*


## Another TypeScript Book?

In general, one might wonder why the need for another TypeScript book. [Orta](http://twitter.com/orta) has led a total revamp of the docs since he joined the team, and now the official docs are much more readable and well organized than when I first started with them. 

Some folks might also recall that I did a well received [review of Boris Cherny's Programming TypeScript](https://twitter.com/swyx/status/1135525665971695617) in 2019. I even did a book report on it at a TS NYC meetup! (unrecorded, sadly)

This is something Stefan struggled with for months. When he originally pitched me on working with him, the brief was no more complicated than "write a TS book for Smashing Magazine". Fortunately, [Markus Seyfferth](https://twitter.com/indysigner)'s intuition shone through here and advised Stefan to move toward a "quick lesson approach" in the style of the enormously influential [CSS Secrets](https://twitter.com/csssecretsbook) (which [I have also reviewed](https://twitter.com/swyx/status/996094173081194498/photo/1)).

**The truth is that there is no one right way to approach a topic, much less teach it.** You can read through a dry list of rules and documentation, but it is quite another proposition to read realistic examples and explore ways to problem solve through the eyes of an expert. This is what *50 Lessons* does for TypeScript, going from introductory (what is TypeScript really about?) to expert (generics, variadic tuples, `infer`, and more).

[Stefan's blog](https://fettblog.eu/) speaks to his expertise and absolute mastery of the subject matter. His blogpost on [Low Maintenance Types](https://fettblog.eu/low-maintenance-types-typescript/), though new, is already an instant classic, and his post on [Why I don't use React.FC](https://fettblog.eu/typescript-react-why-i-dont-use-react-fc/) is often quoted in the React + TS commmunity. I can't do justice to the rest - just [check out his archive](https://fettblog.eu/articles/)!

What you get with the book, over the blog, is worked examples well organized for both a gentle introduction (when read from end to end) and revisiting on demand (when need arises). Check the full list of 50 lessons on [the book's site](https://typescript-book.com/). Even if you think you already know TypeScript, here's likely *something* here that could probably know better.

## Learning TypeScript in Public

One of the most unexpected outcomes of [learning in public](https://www.swyx.io/learn-in-public/) for a few years is that opportunities come **inbound** to you. The reason I stress the importance of **inbound** opportunities is two-fold: people find you based on your interests, and you get opportunities that you would never have considered yourself suitable for.

This is how I felt when Stefan first approached me in 2019:

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vnbybdj8kn8jp0lf1l39.png)

At that point I had only been curating [the React TypeScript Cheatsheet](https://react-typescript-cheatsheet.netlify.app/) for less than a year. I had [never](https://twitter.com/swyx/status/1107814140792524801?s=20) served as a technical reviewer and almost turned it down because I didn't feel qualified. But I took up the challenge anyway. It turned out that I didn't have much to worry about - Stefan was the perfect collaborator, and came back with a full manuscript about a year later that was already very well fleshed out.

Not having ever written a book before, I focused on double-checking the technical accuracy of the code samples and whether or not I could see the recommendations working in my former (React + TS Design System) team. I think it's also helpful not to know *too* much - having a beginner's mind is something valuable since that is the target audience of the book. If a sentence requires too much context to parse, it is probably worth breaking out or restating. In terms of the [3 Types of Editing](http://www.keypersonofinfluence.com/3-types-of-editing-and-which-is-right-for-you/), I counted myself lower down (copyediting and proofreading) rather than making more sweeping changes (structural editing).

I think the way that Stefan has built out his TypeScript expertise over the years is also exemplary of the #LearnInPublic ethos. He put his hometown, Linz (Austria) on the map with the quality events he runs, from [ScriptConf](https://scriptconf.org/) to [TSConf EU](https://tsconf.eu/). His [blog](https://fettblog.eu/articles/) and [guides](https://fettblog.eu/guides/) map out years of public learning with an incredible amount of polish and thoughtfulness. I'm incredibly inspired by him and honored to work with him in some small capacity.


> P.S.: if you do check out the book, look for a little cameo by yours truly on page 182!