Posts tagged with best practices

Streamlining Laravel

jasonmccreary.me

JMac, the creator of Laravel Shift, has a few interesting ideas on how to make the framework better.

Every so often a revolutionary change is required. This provides a chance to revisit goals. One of the primary goals of Laravel is developer experience. And maintainability, freshness, and approachability all improve developer experience. So, with all this in mind here are the top five things I would change in Laravel.

Read more [jasonmccreary.me]

Name the Date

medium.com

Kevlin Henney wrote a good post on the importance of naming things well.

Good naming is part of design. It sets expectations and communicates a model, showing how something should be understood and used. If you mean to tell the reader getMillisSince1970, don’t say getTime.

Read more [medium.com]

Join 9,500+ smart developers

Get my monthly newsletter with what I learn from running Spatie, building Oh Dear, and maintaining 300+ open source packages. Practical takes on Laravel, PHP, and AI that you can actually use.

No spam. Unsubscribe anytime. You can also follow me on X.

Crafting maintainable Laravel applications

jasonmccreary.me

At Laracon AU, Jason McCreary gave an excellen talk on how to create maintainable Laravel apps. On his blog he published a written down version of the talk.

Being the author of BaseCode and creator of Shift gives me a unique insight into writing Laravel applications. I combined 20 years of writing code with supporting over 20,000 Laravel upgrades into 10 tips for crafting maintainable Laravel applications.

Read more [jasonmccreary.me]

Writing open source software, and staying sane while at it

sebastiandedeyne.com

My colleague Seb lists a few very good actionale tips that help you maintaining open source software.

In the 4.5 years I’ve been a developer at Spatie, over 200 packages have been built and released by our team. I’ve done quite some authoring and maintenance over the years, and I’d like to share 8 actionable tips on writing and maintaining open source software without going insane.

Read more [sebastiandedeyne.com]

Software Architecture is Overrated, Clear and Simple Design is Underrated

blog.pragmaticengineer.com

Gergely Orosz argues that you should start with a simple design and try your best to keep it simple. I don't necessarily agree with everything in the post, but it's an interesting opinion nonetheless.

Software architecture best practices, enterprise architecture patterns, and formalized ways to describe systems are all tools that are useful to know of and might come in handy one day.

Read more [blog.pragmaticengineer.com]

An alternative way to organize the Laravel directory structure

stefanbauer.me

I don't necessarly agree with every detail in this post, but it's very interesting to see how others structure larger projects.

In this article, I would like to show you an alternative way to organize your Laravel directory structure. I think the default structure is fine for the most projects. But when it comes down to larger projects I was looking for a different structure.

Read more [stefanbauer.me]

Reducing Complexity with Guard Clauses in PHP and JavaScript

engineering.helpscout.com

In this old, but still relevant, blog post Craig Davis explains what guard clauses are and how they can be used to clean up your code.

We’ll first explore several versions of a sample method from a hypothetical billing system. For these purposes, we’ll assume this is code in an existing system and we’ll look at refactoring it to reduce complexity and make it easier for a programmer to understand. The first example will be trivial enough to easily understand, but we’ll build on it in the final examples.

Read more [engineering.helpscout.com]

10 rules to code like NASA (applied to interpreted languages)

dev.to

Here a some great tips on how to write robust software.

NASA's JPL, which is responsible for some of the most awesomest science out there, is quite famous for its Power of 10 rules (see original paper). Indeed, if you are going to send a robot on Mars with a 40 minutes ping and no physical access to it then you pretty damn well should make sure that your code doesn't have bugs.

Read more [dev.to]

Laravel and Murphy’s Law

medium.com

Patrick Brouwers, the creator of Laravel Excel, explains how to handle failing jobs in Laravel

When designing software, don’t only think about the happy path. Write down (preferably with (unit) tests) what all the things are that could go wrong. Then design your solution to be able to recover those situations. (Wether or not automatic.) There isn’t a single solution to rule them all, some processes might need to have specific failure handling while others are fine with the default approach.

Read more [medium.com]

Some Shifty Bits

jasonmccreary.me

Laravel Shift creator JMac did a write up of the talk he gave at this year's Laracon US

I received a lot of valuable feedback from these talks. So I combined them by using analytics from Shift to identify underutilized features of Laravel and demonstrate them with code.

Read more [jasonmccreary.me]

Forget about component lifecycles and start thinking in effects

sebastiandedeyne.com

In a new blogpost, my colleague Seb explains why you should and how you can use useEffect.

React recently introduced a new way to deal with side effects: the useEffect hook. Translating lifecycle methods to useEffect calls can be confusing at first. It’s confusing because we shouldn’t be translating imperative lifecycle methods to declarative useEffect calls in the first place.

Read more [sebastiandedeyne.com]