LiveBook Course




What's in this preview?

We want you to get the feel for typical Groxio content and the reasons we provide each type of content. Each Groxio module comes in four scheduled releases consisting of the central PDF, videos, and resource links. Later releases have projects as well. You can see part of the first release here.

Code and prose in one simple tool



Buy Course Today!






Release Schedule: 2022-04-01 through 2022-06-08

Version: April 8, 2022


Just $70.00, A La Carte
(other options available)




Programmer Passport LiveBook






Why a book?

The scientific teaching method we follow is the Dreyfus learning model. Books provide the metaphors experts need to build context, step-by-step instructions for beginners, and the exercises that intermediates need to learn.

Itinerary


1. Liveook Scenarios

Why an itinerary?

The itinerary is a virtual guide. This optional list describes the highlights of each release to maximize your learning time.

Description

Livebook is an interactive notebook in the spirit of the Jupyter notebook or the Julia Notebook. Built for data sciences alongside the Nx project, Livebook’s use cases have grown into education, project documentation, and more. Livebook has the potential to make revolutionary changes across the Elixir community.


Livebook uses Elixir’s distribution services and Phoenix LiveView to provide an interactive experience. Vendors like Fly.io are beginning to use Livebook to bring new developers to their cloud services platform.

History

Livebook is a project that’s been around for only a year. Jonatan Kłosko wrote his thesis on numerical data processing and evolutionary algorithms with Elixir’s Nx and José Valim noticed. Jonatan worked closely with José to create Livebook. With a growing community and the support of Elixir’s core team, Jonatan has built up Livebook from a new project to a robust tool in a very short time.




Course Objectives

Groxio courses focus on concepts rather than features. This course will focus less on the programming APIs surrounding Livebook, though we’ll touch on them briefly.


Instead, we’ll look at use cases for Livebook. When you’re done, you’ll be able to:

  1. Install a default Livebook locally, or on a cloud provider.

  2. Build a protootype with Livebook using a Mix project, a local IEx session, or remote IEx node.

  3. Install a Nerves project to work with custom hardware.

  4. Use Livebook to install dependencies.

  5. Use Livebook to work with graphs and charts.

Videos

Public & Private




Why videos?

Groxio language modules have two kinds of videos. Our overview videos set the history and context of a language, or wrap up the work we've done, and are free to support language ecosystems. Our coding instruction videos, mostly starting with the second release, are paid content, and each one offers a live coding project.

Every learning level benefits from pair programming. Our videos are professional, but do not scrub away every tiny mistake. That way, you can see how experienced programmers deal with errors and changes in code organization.

1. Livebook Scenarios

Livebook is a tool for dealing with both prose and code. Unlike a word processor, it can compile code and produce output. Unlike a code base, documents are structured as a document rather than modules for code. We'll walk through key scenarios enabled by this beautiful, new project.

Video

2. Distributed Elixir

Elixir's roots run deeply through Livebook. This short introduction to distributed Elixir walks you through how to find the key configuration elements as you're dealing with an embedded IEx session within a Livebook.
Subscriber content

Video

3. Running Livebook on Fly.io

This video walks you through how to get a Livebook session up on a single session on Fly.io, and then how you'd go about configuring a Livebook that's broken down into a distributed IEx session and Phoenix server.
Subscriber content

Video

4. Installing a Nerves Livebook

This video walks you through how to get a Nerves version of Livebook running. Frank Hunleth and Bruce Tate used this tool when collaborating on the book Building a Binary Clock with Elixir and Nerves.
Subscriber content

Video

5. Running the Binary Clock on Elixir and Nerves

In this video, we use Livebook running on a Raspberry Pi Zero to interact with a Livebook to interact with a custom chip. Livebook makes experimenting with hardware easy because it eliminates friction in the feedback loop that comes with building and deploying hardware.
Subscriber content

Video

6. Livebook Animations with Kino

In this video, we use the Kino component library with the CRC pattern to build simple animations. With Kino, an animation uses a function to continuously return visual components and also update a continuously changing accumulator. Kino takes care of the rest. We start with this toy animation, and over time will grow its capabilities.
Subscriber content

Video

7. Livebook Graphics with SVG

In this video, we use the Kino images to render simple SVG graphics. Since these are SVG graphics, the technique can render graphical data. We use Kino's basic library to provide a default image which Livebook knows how to render based on the Render protocol. Later, we'll build our own basic components that know how to render themselves in Livebook.
Subscriber content

Video

8. Livebook Render Protocol

In this video, we walk through the techniques Livebook uses to render various kinds of components. We build our own SVG canvas and first use the Render protocol's default form. Later, we walk through how this might work with an out-of-the-box tool with a custom rendering.
Subscriber content

Community Resources

Cool quick trips for LiveBook




Why resource links?

Each new chapter has a set of links, separated into three categories. The categories reflect different competency levels and resources that match that stage of learning, for each Groxio release.

Learn It

These resources will get you on the path to learning with background information, tooling and exercises.

Do It

You decide how deep to go. These resources are exercises and projects to cement your learning.

Grok It

These resources will help you put your new knowledge into context so you'll be better at your everyday job.

Projects

Longer Excursions (chapters 3 and 4)






Why projects?

The Dreyfus model is originally instruction for pilots. A typical pilot course is based on reading material to understand context, and then flying a plane. Our videos and PDFs are important, but in the end, programmers need to program in order to learn. Our projects offer different levels of assistance, from "give me the answer" to "make this test pass".