March 22, 2017
The first patent for a laser was awarded on this day in 1960. Lasers have given us everything from printers, to surgical tools, to DNA sequencing instruments, and of course, cat toys. A breakthrough invention like that can literally change the future.
Which brings us to Elixir, OTP, and Phoenix. Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web applications. OTP has a rich and robust history as a secret weapon in the war to create incredibly robust, nine-nines uptime, scalable applications.
Learn how to harness this power for yourself. Come get copies of Functional Web Development with Elixir, OTP, and Phoenix: Rethink the Modern Web App for everyone on your team today from from pragprog.com/book/lhelph.
And if you really want to make a cat toy with it, we won't judge.
Functional Web Development with Elixir, OTP, and Phoenix: Rethink the Modern Web App
Elixir and OTP give us exceptional tools to build stateful back-end applications that really scale, with rock-solid reliability. In this book, you'll build a web application in ways that are radically different from the norm. The back end will be stateful, not stateless. Use persistent connections with Phoenix Channels 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_fsm 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!
Now in beta from pragprog.com/book/lhelph.
Upcoming Author Appearances
Did You Know?
If you've bought a paperback copy of one of our titles, you can still buy the ebook at our discounted "combo" price—even if you bought the paperback from a book store. Look on the last page of your paper book for directions.
Don't Get Left Out
Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on pragprog.com (email address and password is all it takes) and select the checkbox to receive newsletters.
Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:
Tell your friends! Tweet this
- iOS 10 SDK Development in print
- Swift Style in print
- Python Testing with pytest
- Agile Web Development with Rails 5.1
- A Common-Sense Guide to Data Structures and Algorithms
- Design It!
- Effective Testing with RSpec 3
- The Cucumber Book, Second Edition
Thanks for your continued support,
Publisher, Pragmatic Bookshelf
Books • eBooks • PragPub Magazine • Audiobooks and Screencasts