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

Changing our mind about queues in testing

We'll admit it: sometimes we change our mind. In this episode, we discuss how we used to setup queues in Laravel tests, and why we changed it. Show Notes 00:00 Sometimes we change our mind over time 02:00 Changing queue from sync to null in tests 03:45 Feature versus integration tests 04:40 Where do you test job logic? 05:30 White box versus black box testing 07:15 Laravel queue drivers and how faking works 08:55 Why use events at all? 09:30 The new approach is faster too 11:15 Silly bit Want to...

Apr 04, 202314 minEp. 71

Too many rules?

Rules in programming can be extremely helpful, especially on a team. But is it possible to go too far with rules? We discuss a couple recent scenarios where we could have made a rule, but decided not to. 00:00 I like rules 01:20 Maybe going too far with rules - the scenario 03:05 Bug explanation 05:03 A tangent on test setup 06:30 A possible rule to prevent this bug 07:17 Why this rule went too far 08:50 We still want to fix it, just not now 09:45 Another example with syntax and code standards 1...

Mar 21, 202316 minEp. 70

Keeping an open mind with other languages and tools

Before you vent some frustration on another tool or programming community, take a deep breath and think about why you're irritated? We talk about our own reactions to some technologies and how it's good to keep an open mind or, at a minimum, to not be a jerk. 00:00 It's easy to hate on tools you don't use 01:02 Why are there different kinds of tools? 03:30 Is it "bad" because we don't understand it? 04:42 Learn from other communities 07:10 Don't be a jerk 07:55 Silly bit Need some help with your...

Mar 07, 202312 minEp. 69

What we look for in a package

We have such a rich ecosystem of packages in the Laravel and PHP community. But can there be too much of a good thing? What do we consider before adding a small package to our projects? 00:00 A healthy ecosystem of packages 01:02 Too much of a good thing? 02:48 Risks to consider 04:13 Other ways to share 05:34 Think before you promote 08:02 Consider the friction 08:39 Silly bit Would you like help auditing the packages in your Laravel application ?...

Feb 21, 202311 minEp. 68

Blogging versus tweeting

Laravel has a vibrant community of people teaching and sharing what they've learned. What makes a good tip? Should you tweet or blog or both? 00:00 Why blogging is beneficial 02:43 Slowing down before you publish 04:30 Tips that provide value 08:11 Platforms can go away 09:36 Silly bit Check out the new articles section on masteringlaravel.io

Feb 07, 202312 minEp. 67

Knowing when to use new language or framework features

New PHP version! New Laravel version! So exciting! But when does it make sense to upgrade, and when does it make sense to start using new language or framework features? PHP marches forward (00:00) Upgrade strategy depends on team size (01:20) Considerations for new language features (02:33) Performance gains (03:27) Readability (04:56) How to adopt new features (06:16) Depends on the project's maturity (08:14) Upgrading for security (09:30) Silly bit (11:17) If you enjoy this podcast, we'd real...

Jan 24, 202314 minEp. 66

Going on a bug hunt

How can a bug be fun, and not frustrating? When you treat it like a puzzle. Let's walk through a recent bug with CSV mime type validation and go deep down the rabbit hole. Think of a bug like a fun code puzzle (00:00) Don't get stuck for too long (01:22) The confusing CSV bug (02:35) Diffing the files (06:05) Digging deeper into Symfony and PHP (08:07) Getting stubborn about fixing this (11:29) Silly bit (12:26) Why would you validate your MIME types? Learn that and a whole lot more with our val...

Jan 10, 202314 minEp. 65

Thinking about the user, even in the details

User experience is a term we hear a lot as developers, but it can mean different things depending on the context. We discuss a recent project where decisions around which HTTP status code to return was focused on improving the user's experience and trust in the application. 00:16 Why do we write code? 01:39 The importance of user experience 02:54 A specific example of user-focused thinking 04:34 Choosing the most helpful HTTP status code 05:44 What if it’s an API response? 07:17 How much detail ...

Dec 27, 202212 minEp. 64

Why do you write your tests like that?

We discuss two "interesting" patterns we've observed in a number of Laravel projects. Let's take a step back and think about why we write tests the way we do. 1:06 - One weird pattern we’ve seen in Laravel project tests 2:23 - Can you explain why you’re doing this? 3:50 - “It’s more readable” 5:55 - Principle: learn a thing, do a thing, dissect a thing 6:30 - Is it okay to have code duplication in tests? 8:20 - How tests are different from application code 11:16 - Don’t add application code just...

Dec 13, 202215 minEp. 63

Avoid painting yourself into a corner

We've all been there: a thorny piece of code works, but it seems like there must be a better way to simplify it or make it more readable. We share one example when this happened to us, and how code review led to a better solution. Want another set of eyes on your code? We can help! Visit our site and schedule a free call with us today. 00:16 The problem: this code works, but I don't like it 01:17 What we mean by "I don't like this code" 02:22 A specific example of code I didn't like 03:52 Code r...

Nov 29, 202211 minEp. 62

Look before you leap

Hear about some cool new tool or coding technique on Twitter? Great, jump right in and use it on your biggest production app! Or . . . maybe don't. We share some thoughts on how to evaluate things critically for your particular circumstances. Do you want to blindly take our advice? Great idea! Check out our book on Laravel validation rules .

Nov 15, 202211 minEp. 61

Don't plan to do too much

Do you always finish everything you plan on doing? Probably not, very few developers do. The problem isn't always how you work. Some of it is how you plan. We discuss several tips on how to plan for a more successful week. Want to get notified when we release new tools, books, and articles? Sign up for our newsletter !

Nov 01, 202215 minEp. 60

Isolate the problem

What do you do when you're stuck? Aaron shares a tip on how he breaks down a problem when he's feeling stuck. Are you stuck with your Laravel/PHP project? We can help! Book a free call .

Oct 18, 202211 minEp. 59

What should I test?

We all know we should write tests, but what should we test? Is there anything it doesn't make sense to test? We talk through a high-level approach to how we do feature testing in Laravel. Need some help or advice on your Laravel project? We can help !

Oct 04, 202216 minEp. 58

Picking a strategy for translation in Laravel

There are different ways to structure your translation assets in Laravel. We discuss how we approached this on a recent project, and why we chose the method we did. Check out the validation worksheet we built. It may help jump start your Laravel validation rules.

Sep 20, 202214 minEp. 57

Should a factory follow all business rules?

Factories are really useful in tests, but could they give you a false sense of security if they don't generate models exactly like a user of your application would? We talk through some benefits and cautions to think about as you're designing your factories and factory states. Share the love! Tell people on Twitter about the podcast....

Sep 06, 202213 minEp. 56

Understanding different learning styles

What a surprise, Joel and Aaron have a different learning style. We talk through our different approaches to learning, and what we've found useful. Did you like this? We'd appreciate a review or share of the podcast

Aug 23, 202215 minEp. 55

Sometimes it's good to be boring

Do you like to fiddle with settings? Joel doesn't. Find out why, and hear about one example where we like deviating from the defaults. Learn more about Laravel at masteringlaravel.io

Aug 09, 202214 minEp. 54

What was this developer thinking??

Maybe you've inherited a project and just looking at how the code is organized makes your head hurt. Before you go ripping it apart and "making it better", it can be useful to take a step back and use a more measured approach. Want us to work with your team? Book a free call to see if we can help.

Jul 26, 202216 minEp. 53

Should you fix all bugs in a legacy project?

You've inherited a legacy app. It's "running fine" in production, but when you add an error reporting tool, you see hundreds of errors, warnings, and notices logged each day. What do you do? Check out our books and courses at masteringlaravel.io

Jul 12, 202213 minEp. 52

Learning from other communities

Can a Laravel developer learn something from the Rails or Erlang communities? We share some perspective on how to broaden your horizons, and when might be a good time in your career to do that. Download our free ebook 7 Steps to Securing Your Laravel App .

Jun 28, 202212 minEp. 51

Uh-oh, that proof of concept is going into production. Now what?

Many of us have built something we thought was "throw-away" code, only to have someone decide it's good enough to ship to production. How can you prepare for this, and avoid problems when it happens? Check out Aaron's blog and Joel's blog for even more amazing wisdom.

Jun 14, 202217 minEp. 50

The benefits of sharing what you learn

If you are listening to this, you probably enjoy hearing other people share what they've learned. In this episode, we turn the tables and explain why you should consider sharing what you've learned as well. Listening to us is just part of the fun. You can read what we've written too at masteringlaravel.io

May 31, 202210 minEp. 49

How to deal with interruptions

How can you handle an interruption to your work, especially if it is an urgent request for help? We discuss how to do this without derailing your planned work for the day. Let us know if you have a question or topic you'd like to discuss on the show. Contact us with your suggestions, or just to tell us how great we're doing.

May 17, 202210 minEp. 48

Should I write this weird code or is there a Laravel feature I can use instead?

We walk through a recent experience where Joel was about to "burn down the world," as Aaron calls it. Instead, after doing a little exploration of the Laravel framework code, we landed on a much cleaner solution. Want some help to make your Laravel SaaS bette r? Book a free 30 minute call.

May 03, 202216 minEp. 47

Take time to look back and review

It feels good to finish a project, but before you move on, there are benefits to pausing and reflecting on what went well and what could have been better. If you're enjoying the podcast, we'd really appreciate it if you shared it with a fellow developer .

Apr 19, 202212 minEp. 46

The benefits of testing, even under a deadline

We have to ship this feature in 2 weeks! Do we have time to test? In this episode we talk through this scenario and share some benefits of testing even under the pressure of a looming deadline. Free, practical advice on how to improve your Laravel app at masteringlaravel.io

Apr 05, 202212 minEp. 45

When to calculate a value versus when to store it in the database

For some values, it can be tricky to know whether it's better to calculate it on the fly or when to calculate it once and store in the database. We talk through a recent scenario we bumped into, and what factors to weigh when making this decision Download our free Laravel tips ebook .

Mar 22, 202213 minEp. 44

Should I use an event/listener or a model observer?

We share a few rules that help guide us to determine when to manually fire an event versus when to wire up a model observer. Make my phone buzz and download a book to make you a better Laravel developer .

Mar 08, 202213 minEp. 43

How we wrap up a project

Wrapping up our series on how we work, we talk through the end of a project and how to make sure there are no surprises. Download the free security tips ebook from masteringlaravel.io. It's not easy being green

Feb 22, 202212 minEp. 42
Hosted on Transistor
For the best experience, listen in Metacast app for iOS or Android