
No Compromises
154 episodes — Page 3 of 4
Ep 54Sometimes 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
Ep 53What 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.
Ep 52Should 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
Ep 51Learning 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.
Ep 50Uh-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.
Ep 49The 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
Ep 48How 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.
Ep 47Should 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 better? Book a free 30 minute call.
Ep 46Take 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.
Ep 45The 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
Ep 44When 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 decisionDownload our free Laravel tips ebook.
Ep 43Should 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.
Ep 42How 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
Ep 41Don't be afraid to change your mind
You learned a best practice, and it served you well. Is it set in stone? Or should you be open to re-evaluate later?Get those free e-books at masteringlaravel.io
Ep 40The proper way to argue
We've all had disagreements about how to write or organize code, or how a feature should work. We share some tips on how to discuss it productively.Be a Joel, not a Cole: masteringlaravel.io
Ep 39What makes a good staging environment?
Setting up a useful staging environment involves a number of choices. We discuss our preferred strategies and talk about why having a staging environment is a good thing.
Ep 38Your project is not special
This isn't meant to be an insult. It's actually a good thing that your project isn't completely unique, and you can benefit from what other people have already learned.
Ep 37Planning out a week of work
Continuing our series on "how we work", today we finally get to the dev work. How we organize it, plan it, and communicate with the project stakeholders.I heard this site is cool: masteringlaravel.io
Ep 36A few things to watch for with Laravel policies
Aaron shares a few things that he's bumped into with policies in his apps, and we talk through some possible solutions or processes to help avoid them.Tweet @jclermont if there's something you'd like us to discuss.
Ep 35Onboarding a new project
When you inherit a project, how do you draw a balance before making everything nice to work with and delivering value to the stakeholders?Check out masteringlaravel.io
Ep 34Paying down technical debt
Have a question? Want us to discuss a topic? Do you like sending email to random people on the Internet?Contact us at [email protected] for all of the above.
Ep 33Knowing when and how to try something new
You just attended a conference or finished a book/course and you're all excited to try out some new "best practice". We discuss how to balance this enthusiasm with the needs of your team and project.* Check out masteringlaravel.io* Download our free Laravel Tips ebook
Ep 32Wireframe before coding
As developers, coding is the fun part, but we share why we like to slow down and take some time to wireframe before diving into the editor* Download our free Laravel Tips ebook
Ep 31Continuous integration doesn't have to be hard
* Github Actions by Michael Heap (50% discount for podcast listeners)* masteringlaravel.io - get a jump start on validation with our free worksheet
Ep 30Deciding what to build
Check out our new website: MasteringLaravel.io
Ep 29Are your logs too noisy?
The broken window theory of programmingNew site launch! MasteringLaravel.io
Ep 28How we decide whether or not to take on something new
This episode is a little different. We take a peek behind the scenes as to how we qualify projects, and the sorts of things you might think about before deciding whether or not to take on something new.Find out more about Mastering Laravel Validation Rules.
Ep 27Are you allowed to do that?
Roles and permissions are a core part of most applications. Laravel provides some tools for managing and enforcing this, and third party packages provide even more features. Aaron and Joel share their techniques for enforcing roles and permissions, in a way that won't get harder to manage over time.Download our free eBook of Laravel tips: A Little Bit of LaravelOur favorite permissions package: laravel-permission
Ep 26Are you a Laravel developer or a PHP developer?
When you're building a Laravel app, you're writing PHP code, but you're dealing with many patterns and conveniences provided by Laravel. So where do you draw the line between the two? Is it important? We discuss this topic and how you can get the most out of what both PHP and Laravel have to offer.Download our free eBook of Laravel tips: A Little Bit of LaravelFun game to learn/practice regular expression syntax: Regex Crossword
Ep 25Should developers have access to production?
> Developer: "I just need to SSH in real quick"> Server admin: "No"Have you had this discussion? Listen in as Joel and Aaron talk about their experience on teams of different sizes, and how to handle this potential conflict, while still getting your work done.Download our free eBook of Laravel tips: A Little Bit of Laravel
Ep 24Pick a coding standard, any one will do
Where should I place this curly brace? Trailing commas or not? Have you encountered disagreements about coding standards on your team. In this episode we explain the benefits of coding standards, how to adopt them on your project, and discuss the two most popular tools in the PHP community for enforcing them.Download our free eBook of Laravel tips: A Little Bit of Laravel
Ep 23The art of asking and answering questions
We've all been stuck with something we didn't know. Should you ask for help? And how? Or if someone on your team asks you a question, how can you handle it best? We discuss it all.Download our free eBook of Laravel tips: A Little Bit of Laravel
Ep 22Testing 1 ... 2 ... 3, let's talk testing
What are the big 3 types of tests we use on our projects? How do we decide which to use? Listen in as we discuss this and more.Need help improving your testing strategy, or just need help to get your team started with testing? Setup a free consultation call.
Ep 21Guarded vs fillable, fight!
It's no tabs versus spaces, but it's close. Do you use guarded or fillable in your Laravel models? Aaron and Joel share their default approach, as well as several reasons for that choice.Sign up for our Laravel tips newsletter!Find out more about Mastering Laravel Validation Rules.
Ep 20Don't ignore that pain!
It's easy to get used to things that cause us friction or pain in our development process. In this episode, we discuss how to avoid that trap and how to evaluate when to invest time in fixing that pain.Sign up for our Laravel tips newsletter!Find out more about Mastering Laravel Validation Rules.
Ep 19Validation is your friend
Validation may seem boring, but it's a vital part of any Laravel application. Joel and Aaron share some tips on validation along with exciting news about a new resource to master Laravel validation rules.Sign up for our Laravel tips newsletter!Find out more about Mastering Laravel Validation Rules.
Ep 18Always be ready to hand off the project
Why is it important to think about a future project hand-off at the beginning of a client relationship? Aaron and Joel share their approach.Sign up for our Laravel tips newsletter!
Ep 17Finding and fixing a performance issue
Last episode we discussed how to deal with a "slow app" complaint. This episode we discuss some technical approaches to find and fix the issue.Sign up for our Laravel tips newsletter!
Ep 16Someone said my app is slow. Now what?
The dreaded support ticket gets filed: App is slow! Before you get defensive or close as "Won't fix", consider a few tips on how to successfully approach this situation.Sign up for our Laravel tips newsletter!Ed Balls Day wikipedia article
Ep 15How long does it take to get your project running?
Aaron and Joel have joined a fair number of projects over the years. Listen as they share some tips on how to make process less painful for your team.Sign up for our Laravel tips newsletter!
Ep 14Is it a good idea to install that package?
Laravel and PHP have a rich ecosystem, but it's good to weigh the pros and cons before reaching for a new package. We share some things to consider.Sign up for our Laravel tips newsletter!
Ep 13Where do I start making things better?
Where are some good starting points for modernizing and improving a legacy codebase? Joel and Aaron discuss a few ideas where you could start.Sign up for our Laravel tips newsletter!Does anyone read these? Tweet @jclermont if you see this.
Ep 12How long is that going to take?
The eternal question that every developer hears: How long is that going to take? Aaron and Joel discuss some ways to frame that question, and how to provide an estimate that will avoid unnecessary disappointment.00:00 Accurate estimates can be difficult02:00 Disconnect between a developer and a stakeholder03:00 How Aaron approaches an estimate06:05 Pad the estimate? Ranges?07:38 The importance of open communication08:12 Translating "hours" into real world time09:50 Planning not pricing11:56 Silly bitSign up for our weekly newsletter of Laravel tips.
Ep 11Getting 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 base03:05 Starting with unit tests can be hard04:20 Be extra careful with external APIs07:15 Onboarding a new project08:35 Getting more specific on the first few tests10:38 Silly bitSign up for our newsletter of Laravel tips.
Ep 10Why 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 process02:53 Look at it as a learning opportunity04:06 Approaching a pull request to review it06: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 reviewed10:25 Silly bit
Ep 9Are 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 packages04:15 What do you test? How do you write them?06:30 Testing the happy path07:05 Testing the "unhappy" paths08:12 It's less work than you think11:30 Testing a dumb mistake with range validators14:40 Silly bit
Ep 8What 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 controller03: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 important08:45 Silly bit
Ep 7Did 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 learn00:56 Importance of reading docs02:00 Reading versus doing03:45 Be curious when reading05:20 How to get hands-on practice07:30 Learning a new release of an existing tool10:15 Improve the docs!12:15 Silly bitExercises for Programmers from Pragmatic Press
Ep 6Do 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 stuck01:12 What is a "mental model"?02:15 A concrete example of a mental model04:30 Discussing rebase versus merge06:30 A PHP specific example for rebase07:40 Mental models for queue workers10:10 Open source helps us understand11:30 Silly bit
Ep 5The 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 something01:45 Handling a difference of opinion02:33 Staying consistent within a project03:44 Using tools to help consistency06:00 Document your project standards07:37 Keep an open mind11:01 Choose your battles wisely12:25 Involve the whole team in the discussion13:05 Silly bit