BlogtechnicalZiverge And Matechs Announce New Dates For Practical Functional Programming With Typescript Workshop

Ziverge And Matechs Announce New Dates For Practical Functional Programming With Typescript Workshop

Introduce a brand new workshop - Frontend Testing in Typescript

03 June 2021# typescript# courses

Ziverge and Matechs announce new dates for Practical Functional Programming with Typescript workshop and introduce a brand new workshop - Frontend Testing in Typescript.

After the successful and greatly attended Practical Functional Programming with Typescript workshop led by Michael Arnaldi, the author of Effect-TS (functional programming library) in May 2021, we have decided to repeat the workshop in autumn (September 13-15th 2021), in 4 different time zones.

Europe

USA

We are also introducing a new workshop that gained in its popularity in a private teaching scenario within companies using Typescript - Frontend testing in Typescript. This course is for Typescript developers who are eager to learn how to build modern, robust, and testable front-end applications. The workshop will take place on October 11th - 15th 2021, available in 4 different time zones.

Europe

USA

About The Events

Frontend Testing in Typescript

Welcome to “frontend testing in typescript”, in this 5-day (4h/day) workshop we will explore a handful of techniques to test frontend applications using pure typescript in combination with jest, testing-library and cypress, we will primarily use react apps as examples but the techniques are generally usable with any other framework.

Regardless of the environment or the language you are developing in, testable code can be described by the sentence “program to an interface, not to a concrete implementation”.

In fact, every time we program-to an interface we can provide multiple implementations of the same contract (the “interface”) and this property comes in handy when we write our tests.

At the architecture level, testable applications tend to look like an onion, where each layer glues together functionalities from outer layers and provides functionalities to inner layers up to the very core of the app.

In the front-end, this concept can be viewed as the separation between UI and business logic, and separation between business logic and integration logic.

In react we will make use of pure functional components to represent the view layer and we will make utilities around the context API to carry business logic and integration logic to our components.

In the tests we will see how to test each component individually from the core UI up to the integration with the external world, we will discuss what properties to assert on each layer and we will see how to use code coverage tools to better understand the branching of our code and to spot what needs further testing.

Who is it for

This course is for Typescript developers who are eager to learn how to build modern, robust, and testable front-end applications.

Prerequisites

Good working knowledge of Typescript.

Topics

  • General introduction to testing
  • Testing in the context of Front-End applications
  • Unit Testing
  • Test Doubles
  • Integration Testing
  • End-to-End Testing
  • Design code with Testing in mind

Practical Functional Programming with Typescript

In this 5-day interactive workshop (4h/day), we’ll cover a wide range of topics, mixing theory and practice. You’ll learn the basics of FP (Pure Functions, ADTs, e-DSLs) and how to use functional effect-systems to build modular, performant applications that are easy to write and maintain.

We expect attendees to do practical exercises and solve problems in real-time. Typically, every 10 minutes of theory lessons follow a 15-20 minutes exercise session.

One of our core principles is no surprises. We teach everything from the basic principles, without presumptions, and without leaving the magic unfolded.

In this workshop, Typescript developers will learn how to solve complex problems in asynchronous and concurrent programming using the effect-ts library.

Upon completion of the course, you'll be able to:

  • Use the effect-ts library (and similar libraries such as fp-ts, qio, waveguide);
  • Build modern, high-performance, asynchronous and concurrent, resource-efficient, and stack-safe applications, both in the back-end (well-optimized for serverless) and front-end;
  • Implement best practices regarding error management and dependency management.

Who is it for

This course is for Typescript developers who are eager to learn how to build modern, robust, and testable applications that are performant both in the back-end and front-end.

Prerequisites

Good working knowledge of Typescript, including tagged unions, conditional types, and infer.

Topics

  • Pure Functions
  • Variance in TypeScript: Covariance and Contravariance
  • Introduction of Effect-TS
  • The Effect Data-Type and its utilities
  • Writing modular applications with Effect
  • Testing modular applications
  • Lightweight introduction to Fibers and concurrency
  • Managing Resources with the Managed Data-Type
  • Using Layers to structure dependency construction
  • A quick overview of the tools in the box (queues, ref, schedule, stream, etc.)
  • Build a minimal HTTP server that executes queries against PostgreSQL
  • ADTs, GADTs, and e-DSLs
  • Build a tiny, minimal version of Effect (synchronous and stack-safe)

Organization

The workshops will be remote via Zoom.

Community

Don't forget to join our Discord community: https://discord.com/invite/drVHpNgqDu

Related Posts

Functional Design

Functional Design by John A. De Goes Although functional programming theory is useful, most day-to-day functional programming does not…

See More

Ziverge / Matechs Partnership

Ziverge Partners With Matechs To Bring Functional Training For TypeScript Developers Ziverge today announced a partnership with Matechs to…

See More

Stream Processing with Scala

Stream Processing with Scala by Itamar Ravid Stream processing is a computing paradigm that can radically simplify many aspects of modern…

See More
Subscribe to our newsletter