PHP Web Dev Workflow
Just the way I do things
I've always been intrigued by the way people work, what editors they use, any cool workflow apps, which version control system they're using and why? So I thought I'd share the way I do things.
These are my opinions; Some of you may find them useful, some might agree and share similar opinions and others may downright disagree or hopefully be willing to share their thoughts and maybe show me how I can improve or even advance my current setup.
I’m able to develop in multiple languages, though my specialist area is web development using PHP, so that'll be my focus.
Whenever this topic comes up theres always the fanboys, and I'm just going to lay it down nice and easy. I use Sublime Text, I've used other editors over the years but I've found a sweet spot with this one! It provides loads of great features and allows for some incredibly good plugins and themes.
I’m sure one day there will be an even better text editor around, one that will for sure take my fancy. See I'm quite fussy and to be honest; my ideal editor doesn’t exist (As far as I'm aware). Ideally I'd love the minimalism, power and customisation that text editors like Sublime hold but make use of auto-completion and automatic error checking that more powerful yet bloated IDE’s provide, such as Eclipse. (Which is funnily enough my favourite IDE for Java and C++ programming)
It wasn't until recently that I started focusing on the use of package managers, yeah my linux box has one and when I've played around with NodeJs I've used npm. But I’m talking more specifically about PHP package managers.
Now for me Composer is the one and only choice for this category, It has a really simple structure and is even great to use just for auto-loading your PHP files. Adding extra libraries within your project is a breeze, and it’s supported by some big frameworks!
Which leads me right onto my next area of discussion.
This area is also fairly new to me! I know of their importance, especially within big companies and the industry. But I've never felt the need to use or learn one. Until now!
None of my projects have ever been large enough to require such a solid platform to run on, anything I’ve been required to do I've been able to implement myself within a few hundred lines of code. This though did have it’s downsides.
This meant I was required to debug all the time! Fix problems I didn't realise existed until 3 months after release. It was a fun learning curve but it’s not for professional use unless it’s definitively required to develop a bespoke framework for a system you're building, but let’s face it: in the web application world that is going to be a rarity.
Then Laravel caught my eye, and I can now say for sure I am a fanboy. It’s changed how I think about the structure of my projects, it’s taught me simpler ways to build my apps. And I can now sit down and implement a feature within a few hours. Giving me more time to test and reinforce the application further. It’s super smooth to develop with and provides you with a highly detailed set of error messages when something goes wrong.
If you're not already using it, no matter the size of your project: I highly recommend you do!
Don't take what I've said as concrete! I'm just suggesting and sharing my opinions. If you have anything that you feel I should check out, just leave a comment here!
Thanks for reading!