Review: Programming Typescript - Making your JavaScript applications scale (Boris Cherny)
Although I wanted to start with it, I didn’t have the time to start reading technical literature until last years November. But then I wanted to refresh my Typescript skills and here we are.
I didn’t do much research to find some good books. As I know that the books from O’Reilly have good visualizations and are easy to read and understand I favoured them.
So the reviews led me to Boris Cherny’s Programming Typescript - Making your JavaScript applications scale.

The book starts with basic concepts like description of types, interfaces and classes. Then it proceeds to advanced concepts like mixins, polymorphs, namespaces, error handling or asynchronous programming.
And all this without a lack of humour.
I read it as a work book, so I tried to do all exercises and experiments with some concepts written down there.
Two things are for me worth to mention:
Getting the right expressions
Everyday I am reading several StackOverflow threads or articles from hackernews in the english language. But reading this book helped me a lot to be more confident about TypeScript development expressions like the difference of types or the difference before arguments and parameters.
Reading it from front to back has showed me some concepts which I sometimes forget about, because they are not so usual (like for example generators).
So I think this will help a lot in regards of reasoning about my code and solving issues easier with the concepts in the language.
Type-driven development
On page 80 Cherny defines type-driven development as:
Where you sketch out type signatures first and fill in values later.
That’s a new view on development with TypeScript I’ve got, although this should be clear. Or like I’d say in german: ‘Da fiel es mir wie die Schuppen von den Augen’.
With sketching out type signatures first and filling in the values in further development process it is easy to get things done fast. The prototyping of applications and have something to show that concepts/architectural designs work is done faster with this possibility in comparison to Java.
Summary
However you may want to use it: Either as a exercise book to learn and consolidate knowledge or as a reference book if you know the concepts and need them bundled with good descriptions, this book is really helpful and recommendable.
Further reading
- Typescript Handbook at typescriptlang.org
- Typescript Design Goals at github.com
Programming Typescript - Making your JavaScript applications scale by Boris Cherny (O’Reilly). 978-1-492-03765-1