About the Instructor
- Frontend Masters instructor for 9 years
- Developer Platform Lead @ Stripe
- Designs Stripe’s API semantics
- Architect responsible for TypeScript projects like node-stripe, Stripe Shell, and Stripe Workbench
Top Goals for this course
Pass along key knowledge gained through thousands of hours of TypeScript teaching, Q&A and pair programming By the end of this course, you will be able to understand challenging type information.
This likely is pretty scary right now, but you’ll know what it means by the end of the course
tsTry
// Get keys of type T whose values are assignable to type UtypeFilteredKeys <T ,U > = {[P in keyofT ]:T [P ] extendsU ?P : never}[keyofT ] &keyofT /*** get a subset of Document, consisting only of methods* returning an Element (e.g., querySelector) or an* Element[] (e.g., querySelectorAll)*/typeValueFilteredDoc =Pick <Document ,FilteredKeys <Document ,(...args : any[]) =>Element |Element []>>
What do you assume I already know?
- Modern javascript
- The basics of function, object and array types
- Basic generics (e.g., typescript fundamentals v3)
- Index signatures
Also… some practical experience is important
Workshop Setup
As long as you can access the following websites, you should require no further setup
Which of your TypeScript courses is right for me?
I’ve made four TS courses for Frontend Masters so far:
Core
These courses focus on deep understanding of the programming language and how the TS compiler models and checks your code. Most of the “class time” is spent in a lab environment.
- TypeScript Fundamentals (v3)
By the end of this course, you’ll have a basic understanding of the TypeScript language - Intermediate TypeScript
By the end of this course, you’ll be prepared to contribute to a wide range of non-trivial TypeScript projects. You could be well on your way to becoming the TypeScript expert on your team.
Electives
These courses focus on application of TypeScript to solving problems at scale. Most of the “class time” is spent building apps together.
- Production-Grade TypeScript
This course focuses on build pipelines, tooling, and practical use of TypeScript at scale. - JS & TS Monorepos
This course focuses on monorepos — the concept of multiple sub-projects existing in a single git repository.