Workshops
TypeScript: from novice to expert
The JavaScript Eco System is moving to TypeScript. Fast. This workshop will explain why and when you might want to use TypeScript, and get you up and running with all the essentials. In this workshop we will cover practically the full language. And we will go deep.
- Introduction to type systems in general and TypeScript specifically. Why TypeScript? And when (not)? What is the underlying model?
- Project setup and migration strategies
- The basics: Primitives, interfaces, classes, generics.
- Control flow and type inference
any
,never
, andunknown
. Your buddies for life!type
, type operators and modifiers:private
,readonly
,&
,|
,infer
,this
,typeof
,is
,?
and!
- Typing complex functions and objects: Tuples, index signatures, mapped types, conditional types, variadic arguments, overloading, declaration merging
- Namespaces and typing external packages
- Primer to TypeScript and React (Optional)
Subjects will be discussed by with real-life examples and practiced in exercises. For example you will have to design types for existing code, or fix complicated type errors.
This workshop is also suitable for those that have basic experience with TypeScript. Since the basics only take only ~2 hours to cover, most of the day is still super valuable to enhance your TypeScript skills, even if you already have real project experience with TypeScript! Did you ever encounter super confusing types in some of the libraries you use? Did you get some super vague compiler errors? After this workshop you will be able to understand them!
About the author: Michel has been working with TypeScript full time for the last 3 years. He authored several open source libraries (such as MobX and MobX-state-tree) that are written in TypeScript and leverage some of it's finest features.
Pre-requisites: Familiarity with JavaScript and modern syntax features (ES2015).
Feel free to request a quote to deliver this workshop on your company or conference.
TypeScript for React devs
The JavaScript Eco System is moving to TypeScript. Fast. TypeScript has some unique, very powerful features that fit very well with the dynamic nature of the JavaScript language. This workshop will get you up and running with all the basics and the most important advanced patterns of TypeScript.
But beyond that, this is a workshop for React devs! So we will discuss extensively how to combine TypeScript with a React code base. To practice the theory, during the hands-on parts of this workshop we will be migrating an application from plain JavaScript to TypeScript.
About the author: Michel has been working with TypeScript full time for the last 3 years. He authored several open source libraries (such as MobX and MobX-state-tree) that are written in TypeScript and leverage some of it's finest features.
Pre-requisites: Familiarity with React, JavaScript and modern syntax features (ES2015).
Feel free to request a quote to deliver this workshop on your company or conference.
Advanced State Management with MobX and MobX-state-tree
MobX is a state management library which is very popular in the React scene (notable users include Microsoft, Amazon, Lyft, SAP and DICE), and applicable outside of React as well. Its core principle is simply:“Anything that can be derived from the application state, should be derived. Automatically.” MobX takes reactive programming to the next level and turns your state into a reactive model. The result is very straightforward and concise code.
In this workshop you will learn all you need to know about MobX and how to leverage MobX with React. We will start with the basics. What is the philosophy behind MobX? How do you reason with MobX. What is transparent reactivity? You will learn how MobX boosts productivity, but also how to avoid common pitfalls. You will see how you can use MobX to crank out PoCs. Next, we will discuss how MobX is used at Mendix to manage a problem domain that is described in more than 1500 classes.
In the afternoon we will dive into more advanced subjects, like modeling asynchronous processes and state hydration. We will take a look at the basics of Mobx-State-Tree, which helps organize complex problem domains by providing clear architectural patterns, an API to declare your state shape and all the tools needed to do advanced stuff like time travelling, undo / redo, patch generation, middle-ware etc.
Even if you don't plan on using MobX yet, leverage this to familiarize yourself with different ways to organize state.
To attend this workshop you need to be familiar with JavaScript (ES2015). Knowing the basics of React is recommended.
Variations of this workshop are also possible:
- 4 hour introduction workshop to MobX only
- 2 hour introduction workshop to MobX-State-Tree (basic MobX knowledge is recommended)
Feel free to request a quote to deliver this workshop at your company or conference.