Developing With Elixir
Learn how to think and code functionally by building an app in Elixir.
Build a complete Elixir app from start to finish
You can do a bunch of cool stuff with the Elixir programming language, from building web apps using the Phoenix framework to embedding code on networked devices. And it's tempting to jump right into these projects and hope for the best. But without a solid understanding of how to write functional programs the Elixir way, you're in for a white-knuckle ride.
Save yourself time, frustration, and the perils of coding by coincidence by learning all the essentials of developing Elixir apps upfront.
Learn The Pragmatic Way
Build a Real Project with Real Code In the Studio, our focus is always on helping you build real applications. Each new topic or technique in the progression of the course is motivated by the next feature we want in the app we're building.
Learning in the context of building a real application makes a huge difference. By following a project-based approach, you see how all the pieces fit together. You gain a deeper understanding of both the "how" and the "why". Learning this way makes everything "click"... and it's just more fun!
Here's another difference: We respect your time. In the videos we get right to the point and pace things to keep you engaged. You don't have to suffer through rambling commentary and annoying typos! We stay on topic and post-produce the videos to the highest quality so you get a streamlined, time-friendly learning experience.
Go From a New Project to a Complete Elixir Application Since we build an app from scratch, the course outline isn't organized around Elixir's syntax or libraries. For example, you won't find a module named "Strings" that shows you everything you can do with a string. Boring! Instead, the course outline follows the timeline of a project as we incrementally add new features. Syntax and libraries are introduced progressively when we need them to actually get something done.
Each module includes a short, focused video that either uses a new aspect of Elixir to accomplish a task or reinforces something we learned in a previous video but in a slightly different way. You can watch all the videos this afternoon or savor a few each day over lunch or on your commute!
The final course will include at least the following modules:
- 1. Introduction and Setup
- 2. Create a Mix Project
- 3. High-Level Transformations
- 4. Parse the Request
- 5. Format the Response
- 6. Route Multiple Requests
- 7. Params, 404s, and Status Codes
- 8. Rewrite Requests and Track 404s
- 9. Organize Modules
- 10. Serve Static Files
- 11. Modeling with Structs
- 12. Serve Dynamic Content
- 13. Test Automation
- 14. Web Server Sockets
- 15. Command-Line Executable
- 16. Use an External Library
- 17. Handle POST Requests
- 18. Processes and OTP
- 19. Manage Server-Wide In-Memory State
- 20. Supervising Processes
For Developers New To Elixir
To respect your time in the videos, we assume you have project-level experience with another programming language such as Ruby. This isn't a first-time programming course. However, we don't assume you have any prior experience with functional programming or Elixir. If you're already using Elixir in earnest, then depending on your experience this course may not be a good fit for you.
We aim for 100% satisfied developers, so if this course turns out not to be a good fit for you, we'll gladly issue you a 100% refund.
From Mike & Nicole
Hi Folks! Many of you have emailed and tweeted us about an Elixir course. We did a lot of head-scratching coming up with a good way to teach Elixir. We didn't want a referency, syntax-focused course because, well, those make us fall asleep. Instead, in this course we'll actually build something with Elixir. We'd love to have you join us in the Studio for this great course! Learn more about us…
Frequently Asked Questions
Why Elixir? Glad you asked! It's smart to question why you might need to add another programming language to your repertoire. Here's the thing: Elixir isn't just another programming language. It's unique in that it's built on the Erlang VM which has a long, proven track record of powering concurrent, distributed, and fault-tolerant systems. Elixir gives us the joy and productivity of Ruby with the concurrency and scalability of Erlang.
Do I need this course if I already know Elixir? Honestly, it depends.
If by "know Elixir" you mean you've read a book and perhaps experimented with some code, then we think you'll get a lot of value seeing how to build a complete app from scratch. Folks often say our courses help them fill in gaps in their understanding.
If you're using Elixir in earnest on a project and feel confident, then frankly this course may be too introductory for you. Then again, it's always helpful to see other examples of Elixir in action. And you just might discover one tip, trick, or explanation that makes it all worth it. :-)
Does the course expire or have a time limit? Nope! It never expires and you can revisit all the course material as often as you like.
Why should I get the early access, pre-release version now? Simply put, so you can get started right away! We'll continue filming and post-producing new videos over the next several weeks, but you don't have to wait until the entire course is done. Plus, you'll get a significant discount as thanks for supporting this course in its early stages!
Will I learn the Phoenix framework? Not in this course. Elixir is a functional programming language with a fairly steep learning curve. Phoenix is a full-stack web framework built on Elixir. Trying to learn Elixir and Phoenix at the same time is a recipe for confusion. Remember how frustrated you felt stumbling around in Rails before you really knew Ruby?
What if I'm not satisfied? We aim for 100% satisfied developers, so if this course turns out not to be a good fit for you, we'll gladly issue a 100% refund.
Can I ask other questions? Of course! Email firstname.lastname@example.org and we'll happily try to answer your questions.