Anyway, the basic points of that article still stand, but if you’re working on a variety of projects and some of them require different configurations, settings, and standards, then the way you go about installing and configuring PHP CodeSniffer may be different than how you configure it on a system-level.
Every friend I have with a job that involves picking up something heavier than a laptop more than twice a week eventually finds a way to slip something like this into conversation: “Bro,1 you don’t work hard. I just worked a 4700-hour week digging a tunnel under Mordor with a screwdriver.”
They have a point. Mordor sucks, and it’s certainly more physically taxing to dig a tunnel than poke at a keyboard unless you’re an ant. But, for the sake of the argument, can we agree that stress and insanity are bad things? Awesome. Welcome to programming.
This hit home. Programming can be a grueling task on it's own and if you are doing it on the support or agency side of things the pace can be break neck more often than not. Burn out is real and the amount of things we are required to "think" our way through can be so taxing, mentally. Some days I just have nothing left after work. There's more I want to do but I'm just spent. This weekend I took naps, went to be early and slept in all weekend! If you know me that's highly unusual. But the last few weeks have been tough on a personal level and super busy on the coding / job level. So I've needed a break and got some rest. It's ok to slow down and take time for yourself. I'm just saying that out loud to remind me to it more often.
WP CLI is pretty slick as is but Alain Schlesser has this curated list of excellent addons/plugins for WP CLI. I had to write my own version of a WP CLI years ago when I ran nearly 400 WordPress sites for 451 Press. I'm glad that this is now part of WP Core there's some really cool extras in this collection.
Our head of Engineering at WebDevStudios posted this slick tool for creating shape dividers for your design. This is pretty damn cool!
Tom McFarlin writes about setting up a git workflow for creating a built release. Good strategy for creating a distro that has your required components and assets so that it's ready for install.
Named arguments allow passing arguments to a function based on the parameter name, rather than the parameter position. This makes the meaning of the argument self-documenting, makes the arguments order-independent, and allows skipping default values arbitrarily.
Another RFC proposed for PHP 8. Not sure exactly how I feel about this one yet. I like the idea but Jeremy also pointed out that then params become part of the public API. Need to think about this one some more. -Chrispian
A few months ago, I reluctantly started to try out using the dark theme that comes with macOS and iOS. I’d already been using a similar theme in my IDE and my terminal, so why not take the plunge for the whole experience across the OS?
I've got pretty strong preferences on my IDE / UI stuff but I might have to check this one out. Looks pretty slick and I do like the idea of a more unified look and feel for everything. -Chrispian
Short circuiting refers to skipping the evaluation of an expression based on some given condition. Two common examples are the operators && and ||. There are three ways the nullsafe operator ?-> could implement short circuiting. We’ll look at the same code snippet for every option.
I like this idea. I usually don't like things that makes code less easy to understand and favor being more verbose. In this case I think this one actually makes it easier to read and might make it a little easier to avoid making silly mistakes. -Chrispian
Remember the first time you solved an algorithmic challenge by yourself without looking up the solution, only to be told to solve it again using a recursive function?
As this appears to be a common scenario, especially in a tech interview setting, I am putting together a list of classic algorithm challenges to help flex our recursive brain muscles, as this appears to be a common scenario, especially in a tech interview setting.....
While I try to support all the core blocks in the themes I build, sometimes it makes sense to remove a few.
Typically it’s because I built a custom block that’s similar to a core block while addressing the design and functional requirements of the theme. Most of my themes include a “Content and Image” block that’s similar to the “Media & Text” block but it uses the theme’s grid layout
In PHP, list or  is a so called "language construct", just like array(). This language construct is used to "pull" variables out of an array. In other words: it will "destructure" the array into separate variables.