Skip to content

Instantly share code, notes, and snippets.

@jdegoes
Last active December 29, 2019 16:33
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jdegoes/2c74f4db27dfda54e6ac8312bb0ba8d4 to your computer and use it in GitHub Desktop.
Save jdegoes/2c74f4db27dfda54e6ac8312bb0ba8d4 to your computer and use it in GitHub Desktop.
Possible ZIO Workshops
  • Scheduling & Retrying with ZIO: A 2 hour workshop that shows how to create and use schedules and retry policies with ZIO. Scheduling covers cache use cases, downloading resources, sending emails; retrying covers flaky web APIs, database connections, etc.
  • ZIO CRUD. A 2 hour workshop showing how to build a basic REST API using ZIO + third-party library.
  • Using ZIO with Legacy Code: A 2 hour workshop that shows how to wrap lots of legacy code: sync code, async code, Future code; and demonstrate use of Runtime to unsafeRun at boundary points for roundtrip integration.
  • Crash Course in ZIO: A 2 hour workshop that covers “hello world” and a few other simple examples of writing programs with ZIO, with an emphasis on thinking functionality (values & operators on values) and using ‘for’ comprehensions successfully.
  • Rethinking Error Management: A 2 hour workshop that shows how to effectively use recoverable and non-recoverable errors, as well as lossless errors, to build resilient apps that don’t leak errors and that enforce some error guarantees at compile time.
  • Goodbye Threads, Hello Fibers. A 2 hour workshop comparing and contrasting threads and fibers, showing how fibers are much more composable and much more lightweight than threads. Shows fiber dumps and execution traces and compares with thread dumps and stack traces.
  • Database (Z)IO. A 2 hour workshop showing how to access databases using ZIO and a third-party library.
  • Using ZIO with (Spring|Akka|Play|Spark) (Take your pick). A 2 hour workshop that shows how you can use ZIO with a common / popular library and some benefits that come from doing so.
  • Coding to the Interface with ZIO. A 2 hour workshop on using ZIO environment to make it easier to “code to the interface, not the implementation”. Showing custom environments, test / mock implementations, and hiding implementation details from business logic.
  • Easy Configuration Management: A 2 hour workshop showing how a single, automatically derivable ConfigDescriptor can enable you to read config from any format, generate documentation, write config to any format, and access type-safe config globally from any ZIO app.
  • Powerful Streaming. A 2 hour workshop showing how to create and consume ZIO streams from a variety of sources and to a variety of sinks. Emphasis on common patterns in ETL and data streaming.
  • Actors in 2020. A 2 hour workshop showing how ZIO Actors lets people reuse their familiarity with the actor model, but benefit from recent advances in functional effect systems.
  • Concurrent Interruption Masterclass. A 2 hour workshop showing how to exert fine-grained control over interruption using ZIO’s powerful operators: interruptible, uninterruptible, uninterruptibleMask, etc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment