A public channel broadcasts to anyone who subscribes, which is fine for a status page and wrong for anything showing a user their own data. The channel authorisation…
Storing money as integer cents or a status as a string means every read needs converting, and the accessor pattern spreads that conversion across the model until nobody…
Installing without dev dependencies and then generating an optimised autoloader in two steps is the ordinary deploy sequence, and doing it in the wrong order produces a class…
The front-controller pattern gets written as a rewrite with a regular expression roughly as often as it gets written correctly, and try_files expresses the same intent as a…
A config file dropped into config/ in Lumen is simply not read, and config(‘services.stripe.key’) returns null with no error — which costs an hour the first time. This…
Arrays have allowed a trailing comma since forever and calls did not, which is why a multi-line call always produced a two-line diff when an argument was added.…