Training:

Professional LiveView and OTP 16-17 Jul 2019
09:00 - 17:00
Bruce Tate

This is a 2 day training course.

From the coming books Designing Systems with OTP and the second edition of Programming Phoenix, this course will walk you through the strategies you'll need to build web applications without JavaScript. You can focus on what's happening on the server, even as you build the most interactive of applications. We'll cover a strategy for rapidly building applications the Elixir way, including:


 

  • Designing Applications in Layers
  • The LiveView lifecycle
  • JavaScriptless validations with changesets
  • Integrating OTP
  • Working with channels and events
  • Programming simple animations




OBJECTIVES
When you've completed this class, you'll have a deeper understanding of Elixir's OTP and Phoenix LiveView. You'll be able to think about program design, especially building your project in layers so that the LiveView code you create is easy to maintain, letting you deal with one piece of complexity at a time.

REQUIREMENTS
This is an intermediate level class scheduled to get you up and running quickly using LiveView. You should know Elixir, and it would help for you to know Phoenix as well.

EXPECTATIONS
We'll have plenty of time to work on labs along the way as you hone your skills. About half of the class is either lab work or coding side-by-side with your instructor.

OTP behaviours: behind the scenes for Phoenix users 16-17 Jul 2019
09:00 - 17:00
Martin Gausby

So you've built and deployed a Phoenix application backed by Ecto and Postgres, and come to the conclusion that you love it.

If you are looking at progressing to the next level, this hands on training will help you get to the next level. In it, we will focus on building applications using OTP behaviours and architecture guidelines. Learn about the battle-tested abstractions needed to build back-end, fault tolerant systems that will run for years and scale to billions of users.

Topics included:

  • Life before OTP
  • OTP architecture
  • Behaviours
  • Supervision
  • GenServer
  • GenStateMachine
  • Other behaviours (GenStage, GenFlow, Event Handlers, etc)
  • Optimizing for performance
  • ETS (a Redis in your beam)
  • Load regulation and back-pressure (fuse, safety valve)

 

OBJECTIVES
When you've completed this class, you'll have a deeper understanding of how to architect back-end systems and micro-services that you can access and use from Phoenix. Learn why we need behaviours such as Generic Servers, Generic Finite State Machines and others, when to use them, and how to integrate them into supervision trees.

REQUIREMENTS
This is an intermediate level class scheduled to get you up and running with OTP. You should have basic knowledge of Elixir, and whilst not necessary, it would be useful if you have developed a Phoenix application.

EXPECTATIONS
We'll have plenty of time to work on labs along the way as you hone your skills and put the theory into practice. About half of the class is either lab work or coding side-by-side with your instructor.