Welcome to The Rabbit Hole, the definitive developers podcast. If you are a software developer or technology leader looking to stay on top of the latest news in the software development world, or just want to learn actionable tactics to improve your day-to-day job performance, this podcast is for you.
Similar Podcasts
The Laracasts Snippet
The Laracasts snippet, each episode, offers a single thought on some aspect of web development.
Regular Programming
Conversations about programming. By Andreas Ekeroot and Lars Wikman, funded by Underjord.io.
Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.
255. Developer Friendly Reminders (Replay)
What is your ritual for starting the day? Are you starting out by choosing a deliberate practice that can help skyrocket your productivity? Welcome back to another episode of The Rabbit Hole, co-hosting today with me, Michael Nuñez, is Dave Anderson. Today we are giving you developer-friendly reminders! Things that you can do with your life that will take five minutes that you should be doing, every now and then. So stay tuned as we share some friendly reminders to help you get through your day!
254. The Art of Gathering (Replay)
As the world slowly reopens after more than a year of COVID-19 shutdowns, coming together is more important than ever. Today’s episode takes a human-centered approach to how to create more meaningful gathering spaces and some simple tips you can follow to do so. From committing to a clear purpose to asking how your gathering impacts the wider world, we share some of the rules outlined in Priya Parker’s fascinating book, The Art of Gathering: How We Meet and Why It Matters, and we discuss the benefits of Jefferson Dinners, where there is only one topic of conversation. Tune in today for some insight into the art of gathering!
253. SOLID - Single Responsibility Principle (Replay)
Do you know how you can feel overwhelmed when you have too much on your plate? Well, your code can feel the same way. This is why it’s important to follow the Single Responsibility Principle, SRP, which is what the ‘s’ in SOLID stands for. Today we do a deep dive into the SRP and how you can ensure that your class or object only does one thing at a time. We take a look at some of the benefits of following the SRP, such as ease of testing and greater flexibility with making changes. When there is more than one responsibility designated to a class, it can quickly become confusing when you need to alter a piece of code. We also look into why you should try to keep classes as small as you can, how to know if a class or object has more than one responsibility, and why you should always be ready to refactor.
252. Motivation (Replay)
In today’s episode, we are talking about motivation — what keeps us up at night and what gets us out of bed every single day? We are joined by a special return guest and friend of the show, Kevin Thomas. Kevin is a Principal Consultant and Director at Stride. There are some obvious motivating factors, such as money as well as less obvious ones such as purpose and autonomy.
251. Remote Teams (Replay)
On today’s show we welcome David Rataczak. David works remotely for GitHub on their payments team. Prior to working at GitHub, David had been working remotely for about five years after working at a fully onsite company in San Francisco for a year.
250. Imposter Syndrome (Replay)
Today on the show we are joined by none other than our host, Michael Nuñez’s brother, Steven Nuñez! Steven will be helping us in our discussion about a very special topic and one that is very common amongst developers, imposter’s syndrome! Sound familiar? Feel familiar? Well, chances are at some point in your professional career (and beyond) you have probably felt like an imposter.
249. Comments Considered Harmful, Comments Considered Helpful (Replay)
Today, we’ll be talking about whether comments are considered harmful or helpful. We’re pretty sure that there are many different comments you may have run into in your careers. Comments are something that is really common to every programmer, everyone can relate to them – whether they’ve been tormented or blessed by them. We’ve come across some pretty funny comments in the past like, “Holy crap, WTF is this?” or “Drunk, will fix later,” or “Magic, do not touch,” or just the standard, “I’m sorry.” Aside from their entertainment value, comments can be useful for a multiple of other reasons – such as documentation and setting to do reminders for a team. But how can we utilize comments most effectively to avoid the shame game? In this episode, we discuss how best to use comments for to-tasks, writing tests, the value of user stories, the dangers of tech debt and the almighty perils of the copypasta driven development boys. In addition, we will also discover how scout’s honor applies to code (as well as to developers from the Bronx), why a comment is the only code that can lie to you and how you can quite simply avoid comments altogether.
248. Common Mistakes Tech Leads Make with Kelly Wu (Replay)
Today on the show, we welcome special guest, Kelly Wu. Kelly is a software consultant and as a consultant has worked with many different tech leads and teams throughout her career. Most engineering teams will have a tech lead and have experience either working with a tech lead or actually being one.
247. No more PRs -- Try Mob Programming Instead!
Everybody knows one of those senior dev gatekeepers for codebase who just swat PRs away and block every code review that comes through. Today we talk about some healthier ways to deal with the gauntlet of approvers and the benefits of mob programming code reviews. Tuning in you’ll hear about the pros and cons of code review posses, the problem of people who just approve code without really looking at it, and the question of how nitpicky we should be. Our hosts also discuss personal code styles versus agreed-upon code practices and explain the reasons why they will block a PR. To discover the benefits of mob programming, tune in today!
246. Pair Programming Antipatterns
There are a lot of ways pair programming can go wrong. Thankfully, it’s possible to pair well simply by avoiding pairing poorly and, by steering clear of some of the common mistakes that we outline in this episode, you’ll automatically up your chances of success! Today, on The Rabbit Hole, Michael Nunez, Sophie Cruetz, and Dave Anderson talk pair programming antipatterns, from multiple disruptions to over-philosophizing, from keyboard hogging to decision fatigue. For some simple tips on how to make pair programming a great tool for knowledge sharing and team building rather than a chore, tune in today!
245. Seven Wastes of Software Development (Replay)
In this episode of The Rabbit Hole, we are unpacking The Seven Wastes of Software Development! Dave and Michael break down the seven points as they appear in the book Implementing Lean Software Development by Mary and Tom Poppendieck and chat about their experience and thoughts on each.
244. Trunk Based Development vs Gitflow (Replay)
Today on the show we will be talking about Git Workflows. It seems like everybody is always using Gitflow or Trunk Based Development. Gitflow defines a strict branching model designed around the project release. It assigns very specific roles to different branches and defines how and when they should interact. Trunk Based Development is a source-control branching model, where developers collaborate on code in a single branch called ‘trunk’. Advances to source-control technologies have made Trunk Based Development more (and sometimes less) prevalent. However, it has been a branching model that many have stuck with through the years. In this episode we’ll be getting into more of what we prefer, whether it is Gitflow or Trunk Based Development and we’ll get to some of the pros and cons behind the two.
243. Circling Back to Programming Idioms
We had so much fun last time out talking about programming idioms that we thought it was worth revisiting the topic and exploring a few more. To kick things off we talk about the idea of 'bike shedding', the supposed history of the term, and how it can apply to various situations in which something trivial is more engaging than an important matter. From there, we turn to the more common idiom of the hammer and everything appearing to be a nail. We see this problem arising when programmers tend to lean into their own expertise or method, which is not always the most appropriate. We also cover the overuse of refactoring, the detrimental effects this can have, and why rubber duck debugging can be such a satisfying experience. Tune in to hear it all!
242. Senior Engineering Superpowers (Replay)
Becoming a senior engineer is a defining moment in an IT professional’s career. Yet, this moment might not make itself obvious. Today hosts Michael Nunez and David Anderson talk about when they realized that they had become senior engineers and the traits that come with this increase in status. After sharing some back-and-forth banter about their engineering superpowers, Michael and David discuss when they achieved their seniority and what it felt like.
241. Programming Idioms
Each programming language has its own set of idioms or patterns of code used to express some standard kind of computation. Today on The Rabbit Hole, we’re talking about the programming idioms or expressions that we use on the regular; which are not to be confused with idiomatic programming or regular expressions! Tune in to learn what it means to shave a yak, boil the ocean, and grok a concept, as well as the difference between FUBAR and foobar, what turtles have to do with the problem of infinite regress, and so much more!