This approach is reflected in a framework such as Laravel (currently the king of PHP frameworks) or Symfony.
These frameworks are very opinionated as to what you’ll need and how you’ll build an application.
This might seem off-putting at first, but this approach has a host of advantages as well!
For example, you don’t have to think as much about the tooling that you’re going to use.
It’s either provided by default or it’s available in the larger ecosystem.
Hat tip to the Laravel community.
They’ve done an astounding job of creating a wealth of tools and services that integrate beautifully together and cover a significant number of use cases; these include Forge, Vapor, Breeze, Envoyer, and Cashier.
In addition, they provide a host of defaults that work across a range of use cases which suit a broad number of the ones that you’re likely to encounter.
By bringing so many tools under one, proverbial, roof, it helps the documentation to be less disparate.
As a result you can often find the information you need quicker, and in a more cohesive fashion.
By contrast, if you’re working with a host of different packages and tools, you have to move between different documentation silos to find the relevant information.
Yes, after a while you’ll get used to the right places to look, but you’ll likely still be slower at first.
One, potential, downside I see to this approach, however, is that they may limit your exposure to a broad range of tools and approaches.
Out of a combination of necessity, practicality, and pragmatism, these framework espouse a specific way of working and a specific set of tools.
There’s nothing necessarily wrong with that, and it may work perfectly well for you.
However, depending on your career path, you may find yourself at a disadvantage eventually, as you’ve not had exposure to enough tools and ways of working, such that you become somewhat pigeon-holed.
In a way, you end up becoming limited to a certain style of application development.
If, at some point in the future, you want to try something new, it may require a significant investment of time and effort before you can start being effective in that new field.
Join the discussion
comments powered by Disqus