The last few years of my developer career have been a rollercoaster of revelations. It's been quite the experience but these are some of the main phases went through:
Cautiously using Laravel magic and retaining some sense of control
Young and naive, maybe, but this stage involved avoiding facades like the devil (I'd heard one chap once say they were untestable!) but openly use Eloquent like it's going out of fashion.
I solo-built some of my largest projects in this phase, they are still chugging away happily.
Fuck Laravel, all the codez are mine
This stage was actually super interesting and, given, I did learn a lot.
Inject all the things, no joke, everything is to be injected, no facades, limit static method calls, this precedes the 'unit test everything' phase too, when unit testing be super strict, mock anything and everything.
It was a weird time, I had great confidence in my code because of all the unit tests but it was hard, things took a long time to build and of course things were brittle.
This also coincided with my first year at a start up, and probably one of the most complicated codebases I've worked with, I joined during a huge switch to a V2 of the app and the maintenance of a V2 and legacy system probably amplified everything that happened during this time.
The huge 360° pivot to Laravel's magic is actually amazing
This is where I am now. I want my developer experience to be as easy as possible. Less concerns, less complexity and if that way is a little magical, I'm down.
In fact once you understand what is happening, it's not really that magical.
Embracing Laravel, and it's ecosystem, is probably the best thing I've done for my mental health recently (strange, right?), our lives are so busy, everything is already complicated enough. I'm searching for simplicity and Laravel offers this with open arms.