No Compromises - podcast cover

No Compromises

Joel Clermont and Aaron Sarayshow.nocompromises.io
Two seasoned salty programming veterans talk best practices based on years of working with Laravel SaaS teams.
Last refreshed:
Follow this podcast in the Metacast mobile app to refresh it and see new episodes.
Download Metacast podcast app
Podcasts are better in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episodes

Getting started with a legacy codebase

Stepping into an unfamiliar codebase with a long history can be a challenge. Aaron and Joel share some tips on how to get started and build confidence that you're making things better. 00:00 What is a "legacy" code base? 01:00 Getting those first tests in a legacy code base 03:05 Starting with unit tests can be hard 04:20 Be extra careful with external APIs 07:15 Onboarding a new project 08:35 Getting more specific on the first few tests 10:38 Silly bit Sign up for our newsletter of Laravel tips...

Dec 15, 202014 minEp. 11

Why even review when my code is perfect?

Some shy away from code review, not wanting to be critiqued. Aaron and Joel share some tips on how to get the most out of code reviews, and things to look for as a code reviewer. 00:00 The value of a code review process 02:53 Look at it as a learning opportunity 04:06 Approaching a pull request to review it 06:05 Should we make this better? 07:00 Did the programmer have a reason for what they did? 09:05 Everyone on the team should get their code reviewed 10:25 Silly bit...

Dec 01, 202014 minEp. 10

Are you testing me?

Aaron and Joel talk about why they write tests and what sorts of tests they find valuable. 00:00 Why do we write tests? 03:05 Implied trust in packages 04:15 What do you test? How do you write them? 06:30 Testing the happy path 07:05 Testing the "unhappy" paths 08:12 It's less work than you think 11:30 Testing a dumb mistake with range validators 14:40 Silly bit

Nov 17, 202018 minEp. 9

What is the one true way to do this?

We discuss a couple scenarios where there's more than one way to do something, and how we think through our decision. 00:00 How to pick what file to put this code in? 01:51 An example of a single-action controller 03:15 Should everything be single-action? 04:58 How many methods on a controller is too many? 06:10 Where do you put authorization logic? 08:00 Consistency is important 08:45 Silly bit

Oct 27, 202012 minEp. 8

Did you just tell me to read the manual?

How do you learn a new technology? Or how do you find out what's changed in the latest version of something you already use? Aaron and Joel share some tips on what they do. 00:00 So many new things to learn 00:56 Importance of reading docs 02:00 Reading versus doing 03:45 Be curious when reading 05:20 How to get hands-on practice 07:30 Learning a new release of an existing tool 10:15 Improve the docs! 12:15 Silly bit Exercises for Programmers from Pragmatic Press...

Oct 13, 202016 minEp. 7

Do you have a clear mental model?

The technologies we work with are extremely detailed. Without a clear mental model of how things work together, it's easy to get lost or confused. 00:00 A common pattern when a dev is stuck 01:12 What is a "mental model"? 02:15 A concrete example of a mental model 04:30 Discussing rebase versus merge 06:30 A PHP specific example for rebase 07:40 Mental models for queue workers 10:10 Open source helps us understand 11:30 Silly bit...

Sep 29, 202016 minEp. 6

The best argument is no argument

Disagreements and debate can sap your team's energy. We'll talk about some ways to avoid unnecessary conflicts, and how to successfully handle a difference of opinion on your team. 00:00 Developers want the "one true way" to do something 01:45 Handling a difference of opinion 02:33 Staying consistent within a project 03:44 Using tools to help consistency 06:00 Document your project standards 07:37 Keep an open mind 11:01 Choose your battles wisely 12:25 Involve the whole team in the discussion 1...

Sep 15, 202016 minEp. 5

What's with these flaky tests?

Croissants are great because they're flaky, but no one likes a flaky test. We share some strategies on how to make your tests more reliable. 00:00 Flaky tests are the worst 02:12 Why randomization can lead to flaky tests 03:10 A guideline on when to avoid randomization 05:10 Trying to predict the future? 06:15 Naming can be a guide 07:15 Use factory states 08:00 Another type of flaky test 11:15 Silly bit

Sep 01, 202015 minEp. 4

When should I upgrade my Laravel project?

00:00 The desire to upgrade to a shiny new Laravel version 02:20 I actually enjoy maintenance 03:48 An analogy with cars 04:30 The importance of communication 05:30 Making it easier to upgrade 06:30 Do you want to be on the bleeding edge? 07:52 Silly bit

Aug 14, 202011 minEp. 3

How do you figure out why your code isn't working?

00:00 The thought process when you get stuck 01:40 An example with CSS 03:40 Tools that can help locally 06:15 Using a debugger to learn about Laravel 06:30 Tools that can help in a remote environment 08:22 Real talk about debugging in production 09:57 Troubleshooting database performance 11:16 Searching the internet for an answer 13:02 Silly bit

Aug 14, 202015 minEp. 2

When is the right time to automate a dev task?

00:00 The urge to automate everything 01:49 Document before you automate 02:45 Weighing time spent versus time saved 03:30 Automation isn't maintenance-free 04:08 Types of automation 05:18 The exception to the rule 07:05 An example of using a command to update data 08:00 Silly bit

Aug 14, 202011 minEp. 1
Hosted on Transistor
For the best experience, listen in Metacast app for iOS or Android