Skip to main content
AS

Adji Slater

Adji Slater is a software developer with deep expertise in web authentication, code review practices, and innovative approaches to software design. Through podcast appearances, Slater explores the nuanced intersections between technical implementation and team dynamics, offering unique insights into developer mentorship, system architecture, and strategic problem-solving. Drawing unexpected parallels between disciplines like board game strategy and programming, Slater brings a thoughtful, analytical approach to discussing technical challenges, with particular focus on optimizing code structure, managing development workflows, and creating effective communication strategies within engineering teams.

3episodes
1podcast

Featured On 1 Podcast

All Appearances

3 episodes

AI Summary

→ WHAT IT COVERS Joel and Adji explore parallels between board game strategy and software development, examining how optimization problems, resource management, and team communication patterns translate between gaming and coding contexts. → KEY INSIGHTS - **Component extraction strategy:** Pull out React components aggressively when conditionals multiply, treating each card variant as a separate component rather than nesting logic within JSX soup to maintain single-layer abstraction and improve readability for future developers. - **Algebraic data types for analysis:** Model complex UI states using union and intersection types as an analysis tool, even without implementing them in code, to map out all possible component combinations and identify which parts can vary independently. - **Bottleneck identification framework:** Identify the limiting resource in any system first before optimizing, whether turns in a board game or database queries in production, since improving non-bottleneck resources yields zero performance gains regardless of effort invested. - **Linear versus exponential strategies:** Recognize when pursuing linear steady-progress approaches versus compounding exponential growth, then adjust game length accordingly—rush to end early with linear strategies before exponential competitors compound their advantages and overtake you. → NOTABLE MOMENT Joel realizes his board game analysis mirrors his software work exactly—applying Big O notation to strategy selection and flame graph thinking to resource bottlenecks—making connections between professional optimization skills and recreational problem-solving he hadn't consciously recognized before. 💼 SPONSORS [{"name": "Judo Scale", "url": "https://judoscale.com"}, {"name": "Scout Monitoring", "url": "https://scoutapm.com"}] 🏷️ React Architecture, Test Driven Development, Game Theory, Software Optimization

AI Summary

→ WHAT IT COVERS Sally Hall and Adji Slater explore effective mentorship techniques for developers with different experience levels, focusing on code review feedback, balancing consistency with team morale, and adapting communication styles to individual needs. → KEY INSIGHTS - **Code Review Timing:** Avoid in-depth technical discussions during urgent bug fixes or late Friday afternoons when developers lack mental capacity to learn. Save larger conversations about testing philosophy or architecture patterns for dedicated team discussions instead. - **Draft PR Strategy:** Use draft pull requests to solicit early feedback on uncertain implementations rather than presenting finished work. This approach helps reluctant collaborators engage more readily by framing requests as seeking input rather than demanding help with decisions. - **Feedback Calibration:** Match feedback intensity to developer confidence levels by monitoring PR comment volume. When multiple review rounds have already occurred, skip non-blocking nitpicks to let developers complete tasks successfully rather than eroding confidence through endless revision cycles. - **Assumption Management:** Prefix technical terms with links or spell out acronyms on first use to accommodate varying knowledge levels. Use phrases like "you probably already know this" before explanations to respect expertise while ensuring shared understanding across experience gaps. → NOTABLE MOMENT One developer recalled receiving only the comment "why did you do this?" on a pull request before their manager went on vacation, creating days of anxiety about whether the code was acceptable or fundamentally flawed. 💼 SPONSORS [{"name": "Judo Scale", "url": "judoscale.com"}, {"name": "Scout Monitoring", "url": "scoutapm.com"}] 🏷️ Code Review, Developer Mentorship, Team Communication, Rails Development

AI Summary

→ WHAT IT COVERS The episode examines HTTP Basic Auth implementation, covering database connection pool configuration for Sidekiq workers, CSRF vulnerability mitigation strategies, and security trade-offs when using browser-based authentication versus token-based API authentication systems. → KEY INSIGHTS - **Sidekiq Connection Pooling:** Set database connection pool to 100-200 instead of matching concurrency exactly per dyno. This eliminates configuration complexity across environments since pools define maximum connections allowed, not connections created at boot time. - **Basic Auth CSRF Protection:** HTTP Basic Auth requires CSRF tokens on destructive endpoints because browsers automatically resend credentials on every request. Third-party sites can trigger authenticated requests via JavaScript or image URLs, enabling cross-site attacks even with CORS policies active. - **PG Bouncer Architecture:** Implement PG Bouncer as a global Postgres connection pool when scaling beyond basic setups. This centralizes connection management across all dynos and releases connections faster than per-dyno Active Record pools, improving IO efficiency at scale. - **API Authentication Safety:** APIs using OAuth tokens or bearer authentication don't need CSRF protection because tokens aren't automatically sent by browsers. Basic Auth and cookie-based sessions require CSRF tokens unless same-site cookie restrictions prevent cross-origin credential transmission. → NOTABLE MOMENT A Twitch streamer playing Mario 64 captured footage of the character instantly teleporting between platforms. The gaming community's best explanation attributes this visual glitch to a cosmic ray flipping a bit in memory during gameplay. 💼 SPONSORS [{"name": "Judo Scale", "url": "judoscale.com"}, {"name": "Scout Monitoring", "url": "scoutapm.com"}] 🏷️ HTTP Authentication, Database Connection Pooling, CSRF Security, Sidekiq Configuration

Never miss Adji Slater's insights

Subscribe to get AI-powered summaries of Adji Slater's podcast appearances delivered to your inbox weekly.

Start Free Today

No credit card required • Free tier available