Lance Halvorsen

Pragmatic Programmers


book eBook


94%
29.0% 71.0% 0.0%

Check price

Functional Web Development with Elixir, OTP, and Phoenix

Rethink the Modern Web App

Elixir and OTP provide exceptional tools to build rock-solid back-end applications that scale. In this book, you’ll build a web application in a radically different way, with a back end that holds application state. You’ll use persistent Phoenix Channel connections instead of HTTP’s request-response, and create the full application in distinct, decoupled layers.

In Part 1, start by building the business logic as a separate application, without Phoenix. Model the application domain with Elixir Agents and simple data structures. By keeping state in memory instead of a database, you can reduce latency and simplify your code. Then add OTP Behaviours such as gen_server and gen_statem that make managing in-memory state a breeze. Create a supervision tree to boost fault tolerance while separating error handling from business logic.

Phoenix is a modern web framework you can layer on top of business logic while keeping the two completely decoupled. In Part 2, you’ll do exactly that as you build a web interface with Phoenix. Bring in the application from Part 1 as a dependency to a new Phoenix project. Then use ultra-scalable Phoenix Channels to establish persistent connections between the stateful server and a stateful front-end client.

You’re going to love this way of building web apps!


Reviews

Jaimeiniesta @jaimeiniesta
I've followed the excellent Elixir for Programmers course and also the beta Functional Web Development with Elixir, OTP and Phoenix book.

positive

James Edward Gray II @JEG2
Functional Web Development with Elixir, OTP, and Phoenix is currently being revised towards a more idiomatic usage of Elixir processes. I would say that the design @sasajuric shows in Elixir in Action and blog posts like To spawn or not to spawn? is more what you should be paying attention to at this time.

positive

Anders @smedegaard
@easco, have you by any chance read Functional Web Development with Elixir, OTP, and Phoenix by @lance?

positive

Hubert Łępicki @hubertlepicki
OK , to get you some resources I highly recommend having a look at "Functional Web Development with Elixir, OTP, and Phoenix", where is basically DDD application style used (without naming it DDD which is OK). https://pragprog.com/book/lhelph/functional-web-development-with-elixir-otp-and-phoenix

positive

Hubert Łępicki @hubertlepicki
I've been reading "Functional Web Development with Elixir and Phoenix" and I actually find the use cases over there quite appealing.

positive

@dom
It's similar to the discussion on To spawn, or not to spawn? and the Functional Web Development with Elixir, OTP, and Phoenix book thread.

neutral

Saša Jurić @sasajuric
I don't have any plans to write a Phoenix book, since I think this space is nicely filled with Programming Phoenix, and upcoming Functional Web Development with Elixir, OTP, and Phoenix.

neutral

@snake117
I'm trying to wait patiently for Functional Web Development with Elixir, OTP, and Phoenix to really dive further

neutral

Wiebe-Marten Wijnja @Qqwy
Original source of discussion: This topic on the Pragmatic Programmers' Functional Web Development with Elixir, OTP, and Phoenix forum.

neutral

Jesse J. Anderson @jessejanderson
I've been reading Lance Halvorsen's new beta book "Functional Web Development with Elixir, OTP and Phoenix" and it's got me thinking about new ways of using processes.

neutral

Martin @martinm
I just completed my Elixir book collection with Functional Web Development with Elixir, OTP, and Phoenix.

neutral

Martin @martinm
I just completed my Elixir book collection with Functional Web Development with Elixir, OTP, and Phoenix.

neutral

@peerreynders
Functional Web Development with Elixir, OTP, and Phoenix

neutral

@peerreynders
"Functional Web Development with Elixir, OTP, and Phoenix" has been making headlines lately - lets look at that:

neutral

@peerreynders
During my recent query with regard to "Functional Web Development with Elixir, OTP, and Phoenix", Lance Halvorson kindly directed my attention toward the GenServer Documentation:

neutral

Woodson Delhia @Woody88
I also purchased this book Functional Web Development with Elixir, OTP, and Phoenix, unfortunately its still in beta.

neutral

Woodson Delhia @Woody88
So I have been reading two elixir books Functional Web Development with Elixir, OTP, and Phoenix and Elixir in action.

neutral