
The Tuple Podcast
Ben Orenstein interviews great programmers about their craft.
Latest episodes

Jun 10, 2024 • 1h
Adam Wathan, Creator of Tailwind CSS
Adam Wathan, creator of Tailwind CSS, and Ben discuss the challenges and motivations behind the rewrite of Tailwind 4.0, emphasizing clean codebases, backward compatibility, the use of Rust, testing strategies, and the future of Tailwind as a business. They explore the importance of easy upgrades, API techniques, optimized development with Rust, testing processes, and balancing core product development with marketing efforts for business success.

May 27, 2024 • 45min
Matt Swanson, CTO at Arrows
Matt Swanson, CTO at Arrows, discusses his journey in content creation, the benefits of working in-person, and the value of demonstrating competence through content creation. They touch on the changing landscape of content creation, the longevity of Ben's Ruby talk, and the importance of quality coworkers.

May 13, 2024 • 46min
Derrick Reimer, Founder of SavvyCal
In this conversation, Ben and Derrick discuss the challenges of growing a business and the decision to target specific market segments. They explore the trade-offs between serving a broad audience and focusing on a niche market. They also discuss the technical choices and architectural decisions in building a product, with Derrick sharing his positive experience with Elixir and the Phoenix framework.LinksTuple.app (https://tuple.app) - The best app for pair programmingSavvyCal.com (https://savvycal.com) - The scheduling tool Derrick createdPhoenix (https://www.phoenixframework.org) - the Elixir framework SavvyCal is built onRails (https://rubyonrails.org) - the Ruby framework Ben worked withKey TakeawaysElixir and the Phoenix framework offer a maintainable and explicit approach to building applications.Functional programming paradigms can simplify code organization and improve maintainability. Object-oriented programming and functional programming have different approaches to code organization and maintainability.The active record pattern in Rails can lead to large and complex models, while the repository pattern in Phoenix provides a more modular and explicit approach.Open source contributions can be seen as a good faith contribution to the commons and can provide benefits such as status and marketing opportunities.Developers can improve their design skills by studying resources like the book 'Refactoring UI' and being introspective about user interfaces in their daily lives.Chapters(00:00) - Introduction and Background
(02:12) - Savvy Cal and Horizontal Products
(05:56) - Choosing Between Niche and Broad Audience
(15:59) - Phoenix vs. Rails
(22:20) - Object Oriented vs. Functional Programming
(36:02) - The Motivations Behind Open Source Contributions
(43:20) - Improving Design Skills as a Technical Person

8 snips
Apr 22, 2024 • 1h 13min
Thorsten Ball, Software Engineer at Zed
Software Engineer at Zed, Thorsten Ball, shares insights on differentiation, working in public, importance of domain knowledge, standing out in job interviews, and building innovative products like Zed text editor. Emphasizes soft skills, communication, problem-solving, and showcasing competence to enhance hiring opportunities. Discusses diverse skill set, unique career paths, and the value of self-promotion in tech industry.

Apr 1, 2024 • 1h 11min
Andreas Kling, Creator of SerenityOS and the Ladybird Browser
Ben interviews Andreas Kling, creator of SerenityOS and the Ladybird browser. They talk about the concept of lifestyle software and how it relates to the development of SerenityOS, Andreas’ vision of creating a Zen garden for developers, and the benefits of using a mono repo and a unified language in the development process. They also touch on the use of AI and language models for writing code, the art of using Copilot effectively, and the future of LLMs in pair programming.Enjoy!LinksTuple.app - The best app for pair programmingAndreas’ YouTube Channel - The home for Serenity, Ladybird, and other updates from AndreasSerenityOS - The operating system Andreas builtLadybird - The browser Andreas builtKey TakeawaysSerenity OS is an example of lifestyle software, where the focus is on the happiness of the developers and the joy of programming.The use of a mono repo and a unified language in Serenity OS allows for efficient development and easy cross-cutting changes.Onboarding new contributors by encouraging them to explore and find their own areas of interest leads to a diverse range of contributions.Raw coding videos and pair programming can be powerful tools for knowledge sharing and learning.Having a long-term vision and setting ambitious goals can help overcome the challenges of monumental projects.Continuous learning and improvement are essential for staying on top of new tools and technologies in the programming industry.Balancing programming and management responsibilities can be challenging, but leveraging the skills and expertise of a team can lead to greater productivity and growth. Building confidence in programming is crucial for productivity and success.Starting small and building miniature models can help understand complex concepts.Throwing away code and rebuilding with improved architecture can lead to better outcomes.Using AI and language models can significantly speed up coding tasks.Chapters(00:00) - Introduction
(00:41) - Serenity OS and Lifestyle Software
(03:40) - Building a Zen Garden for Developers
(09:07) - Mono Repo and Unified Language
(11:29) - Easy Onboarding and Contributions
(13:05) - The Power of Raw Coding Videos
(15:48) - Pair Programming and Knowledge Sharing
(24:06) - Facing Intimidation at the Start of Projects
(26:18) - Maintaining a High Clock Speed
(32:34) - Continuous Learning and Improvement
(36:44) - Balancing Programming and Management
(39:07) - The Joys and Challenges of Company Growth
(40:13) - Coaching and Mentoring
(41:40) - Building Confidence in Programming
(42:49) - Building Miniature Models
(43:41) - Building to Throw Away
(46:45) - Learning from Senior Engineers
(48:09) - Using AI and LLMs for Writing Code
(51:47) - The Art of Using Copilot
(54:27) - The Future of LLMs in Pair Programming
(57:47) - The Evolution of Open Source Projects
(01:03:44) - Establishing Community Rules Organically

Mar 18, 2024 • 1h 6min
Fable Tales, Staff Engineer at Stripe
In this conversation, Fable and Ben dig deep on building a technical career that balances programming and company leadership. Fable shares their experience working at Stripe and the different roles they have held, including being a technical advisor to the CTO. They also discuss Fable's career move from being a hands-on programmer to role where less hands-on coding is required, Fable's take on "code crimes", and how to find enjoyment and fulfillment in solving complex problems.LinksTuple.app - The best app for pair programmingStripe - The company Fable works atRuby Kaigi - An annual conference dedicated to the Ruby programming language.Sidekiq - A simple, efficient background processing library for RubySorbet - A fast, powerful type checker designed for Ruby.YubiKey - A hardware device designed for high-security two-factor authentication.Key TakeawaysMaking connections and friendships at conferences can be valuable in the programming community.Debugging and problem-solving skills are crucial for software engineers.Being willing to learn and work with different programming languages can enhance your skills.Prototyping and spiking can be effective ways to test and develop new ideas.Chapters(00:00) - Introduction and Conference Interaction
(00:38) - Making Friends at Conferences
(04:13) - Work at Stripe
(06:17) - Becoming a Staff Engineer
(06:53) - Getting Good at Programming
(08:46) - Debugging and Problem Solving
(11:22) - Working with C and C++
(13:13) - Debugging with Print Statements and Debuggers
(17:06) - Prototyping and Spiking
(24:11) - Technical Advisor to the CTO
(27:26) - Coding Hill to Die On
(29:52) - Workflow Optimization
(36:53) - Coding vs Non-Coding Time
(39:08) - Transition to Leadership
(41:07) - Motivation and Impact
(42:13) - Love for Programming
(44:14) - Coding Style: Short Methods and Small Classes
(48:48) - Personal Style and Code Crimes
(52:18) - Commercial Open Source
(56:08) - Getting Involved in Open Source
(01:04:52) - Wrap-up

Feb 23, 2024 • 52min
Josh Pigford, Creator of Maybe.co
Ben interviews Josh Pigford about Maybe.co's journey from startup to open source project. They discuss tech stack decisions, challenges of personal finance software, and transitioning to Rails. Key takeaways include rebuilding software, targeting Mint users, and exploring moonshot ideas.

5 snips
Feb 6, 2024 • 1h 24min
Caleb Porzio, Creator of AlpineJS and Laravel Livewire
Ben interviews Caleb Porzio, creator of AlpineJS and Laravel Livewire. Topics include programming style, functional vs object-oriented programming, starting complicated projects, the value of tests over code, managing pull requests and code reviews, rewriting large projects, and more.

6 snips
Jan 24, 2024 • 1h 4min
Taylor Otwell, Creator of Laravel
Ben interviews Taylor Otwell, creator of Laravel. They discuss everything from tabs vs. spaces to the origins of Laravel. Maintaining backward compatibility, clean code, testing, and building a business around open source are also explored.
Remember Everything You Learn from Podcasts
Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.