Learn from the best cherry-picked trainers

Pro workshops at JSNation

Hands-on workshops will be run both in-person & remotely via Zoom.

The workshops listed below are not included in Full ticket and should be bought separately.

Nik Graf

Advanced React

React is adding new capabilities with a lot of focus on form handling and React Server Components (RSC). In this workshop we will explore the new APIs, discuss the benefits and highlight the potential pitfalls to give you a head start for using these new features in your applications.

We will explore the following topics:

  • React Server Components introduction incl. how client/server boundaries behave and some of the pitfalls
  • New & newish hooks: use(Promise|Context), useFormState, useFormStatus, useOptimistic, useTransition, useDeferredValue
  • Getting the most out of React leveraging Suspense

The workshop is split into several modules. Each of them starts with a 20 min presentation, 30-50 min coding session and is followed by a 10 min retrospective. The last session will be reserved for topics you might be interested in.

Workshop schedule & location

Date & time: June 11, 9:00-18:00 CEST. In-person in Amsterdam, the venue – TBC.

Josh Goldberg

TypeScript Deep Dive

You know TypeScript. But do you really know TypeScript? Join Josh Goldberg, author of Learning TypeScript (O’Reilly) in a deep dive into your favorite strongly typed flavor of JavaScript. We’ll learn how to really use the type system to your advantage to help write readable, type-safe, TypeScript code.

This interactive workshop will build up your TypeScript mastery through the following sections:

  1. Structural typing: Recapping how the type system fundamentally works with inferred vs. explicit object types
  2. Using IDE features: Code navigation, name completions, and error debugging that level up any JavaScript and/or TypeScript developer.
  3. Shape satisfaction: Showing different ways to create objects that partially or completely adhere to shapes, including with the new satisfies keyword
  4. Type modifiers: Using the keyof and typeof type-system-only keywords to infer types from values or other types
  5. Generics: Using type parameters, especially in conjunction with keyof and typeof, to introduce reusability into the type system
  6. Mapped types: Transforming existing types into new ones for flexibility and reusability
  7. Conditional types: Introducing logic into the type system for some truly dynamic types
  8. Miscellaneous: You tell me! We’ll spend the rest of the day covering any questions you have.

Throughout the workshop, we’ll be building up a small version of the popular “Zod” library that can define and validate schemas along with their types. You’ll emerge with a working mini-Zod and a renewed appreciation for the inference libraries like it provide.

Each session consists of a ~30-45 minute interactive lecture+workshop, with 15 minutes in-between for bio breaks and miscellaneous questions, and a lunch break in the middle.

Workshop level

Intermediate/advanced.

Workshop schedule & location

Date & time: June 12, 9:00-18:00 CEST. In-person in Amsterdam, the venue – TBC.

Kent C. Dodds

React Future (Server Components and Actions)

You’re interested in how far React can take the component model. Everyone is. While React has not yet officially released server components and actions as features in a stable version of React, you want to understand how these features work because you’d like to use them within one of the frameworks built on top of React which has support for them.

In this workshop we won’t be using any frameworks. In fact you might say we’ll be building our own framework. It’s important for you to understand at least one or two layers below where you typically operate to be able to use your abstractions effectively. So we’ll be working with the raw/unreleased/experimental/futuristic APIs for React Server Components and React Server Actions. Once you finish this workshop, you’ll finally have the proper mental model for what server components and actions will do for you as an every day React app developer. Whatever kind of React app you’re building (and whatever architecture you have), you’ll find ways to apply these future features to your application eventually and after this workshop you’ll be eager to do so for the DX and UX improvements they provide.

Table of contents
  • - The relationship between client and server components and their respective module graphs
  • - Streaming serialized React elements
  • - Submitting forms to server actions
  • - Managing pending state for server actions
  • - Providing great loading UX with optimistic UI
Workshop schedule & location

Date & time: June 19-20, 16:00-20:00 CEST. REMOTE.

Trainers

Nik Graf
Serenity, Austria

Nik is the founder of Serenity and is passionate about cryptography, CRDTs, GraphQL and React. He co-created several popular open source projects like DraftJS Plugins and Polished and participated in Stripe’s Open Source Retreat. In his spare-time he enjoys ski touring, cycling and organising the ReactJS Vienna meetup.

Josh Goldberg
Open Source Developer, USA

Hi, I’m Josh! I’m an independent full time open source developer. I work on projects in the TypeScript ecosystem, most notably typescript-eslint: the tooling that enables ESLint and Prettier to run on TypeScript code. I’m also the author of the O’Reilly Learning TypeScript book, a Microsoft MVP for developer technologies, and an active conference speaker. My personal projects range from static analysis to meta-languages to recreating retro games in the browser. Also cats.

Kent C. Dodds
Epic React, USA

Kent C. Dodds is a world renowned speaker, teacher, and trainer and he's actively involved in the open source community as a maintainer and contributor of hundreds of popular npm packages. He is the creator of EpicReact.Dev and TestingJavaScript.com. He's an instructor on egghead.io and Frontend Masters. He's also a Google Developer Expert. Kent is happily married and the father of four kids. He likes his family, code, JavaScript, and Remix.