Parker Selbert is the creator of Oban, a renowned background job processing system for Elixir, emphasizing reliability and observability. In this engaging conversation, the Selberts share their journey developing Oban, discussing its impressive performance and the challenges faced during its evolution. They explore creative collaborations in tech, highlight the importance of user feedback, and unpack the balance between monetization and community support. Listeners gain insights into optimizing applications and the future of background job processing in the Elixir ecosystem.
Parker and Shannon Selbert share their journey in software development, highlighting their long-term fascination with the Elixir programming language.
Oban is presented as a powerful background job processor that ensures reliability and observability through PostgreSQL's transactional safety features.
The Selberts emphasize the importance of community engagement in refining Oban, providing support and insights while fostering user trust through collaboration.
Deep dives
Introduction to Oban and Its Creators
The creators of Oban, Parker and Shannon Selbert, discuss their journeys into software development and their backgrounds in programming languages like Perl and ActionScript. Their inaugural projects include interactive demos and consumer experiences, which laid the groundwork for their extensive careers in tech. The conversation highlights their long-term fascination with the Elixir programming language, initially sparked by Erlang and the ideas introduced in Joe Armstrong's literature. This personal history sets the stage for a deeper examination of Oban, a background job processing system built with Elixir.
The Unique Features of Oban
Oban is introduced as a robust background job processor that offers a multitude of features essential for managing asynchronous tasks effectively. Unlike its predecessors, Oban provides persistence and retries, along with introspection capabilities that allow developers to monitor job statuses in real time. The Selberts emphasize that Oban is built on PostgreSQL, benefiting from its capabilities to ensure transactional safety and reliability. This makes it particularly well-suited for developers who require accurate execution tracking of background jobs.
Community and Support Dynamics
The importance of community support is underscored as the Selberts express their appreciation for the vibrant Elixir community. They emphasize that developers can find assistance through forums and Slack, where experienced users contribute significantly, often guiding newcomers. With just a two-person team handling Oban, community engagement becomes vital in addressing inquiries and enhancing user experience. This interaction not only fosters user trust but also aids in refining Oban itself based on real-world use cases and feedback.
Challenges in Developing Oban
The Selberts recount the various challenges they faced while developing Oban, particularly around features like job uniqueness. Early attempts to implement these features led to performance bottlenecks, revealing the complexity involved in building a high-performing job processor. They highlight valuable lessons learned during this journey, recognizing that real-world usage reveals edge cases that can complicate initial assumptions. Over time, they adapted the system to better cater to user needs, demonstrating resilience and a commitment to improvement.
Future Plans and Community Contributions
Looking ahead, the Selberts share insights into their roadmap, including plans to open-source OpenWeb, a key component of Oban, to foster broader accessibility. They aim to empower users by providing essential tools that enhance productivity without financial barriers. Their strategy highlights the importance of tailored training and documentation, ensuring that users can make the most of Oban's capabilities. This approach not only strengthens community ties but also reflects their dedication to the Elixir ecosystem.
In this episode of the Elixir Mentor Podcast, the go-to source for All Things Elixir, Parker and Shannon Selbert, the creators of Oban, join me to discuss their groundbreaking work.
We explore the journey of developing Oban, a powerful job processing system that has become essential for thousands of Elixir applications. The Selberts share their vision behind Oban's creation, emphasizing its core principles of reliability, consistency, and observability in background job processing.
Our conversation covers how Oban achieves impressive performance and touches on its evolution from open-source beginnings to the advanced capabilities of Oban Pro and Oban Web. This episode offers valuable perspectives for Elixir developers looking to optimize their application's performance and reliability, providing a glimpse into the future of background job processing in the Elixir ecosystem.