I would like to ask the community and the core team about what's next for modx.
How do they want their favorite tool to evolve ?
How will it handle the fast paced evolution of web development using PHP as main language ?
How will modx fit as a modern CMF compared to other solution's who embrace the future of PHP who lean toward standardization ?
First let's take a look at the current roadmap:
- Many Package Management improvements
- Transport Package dependencies - IOW, if a Transport Package specifies a dependency of another, then the package will attempt to "retrieve" the needed package from its Provider before installing.
- Extras Provider to PHP/REST with public API
- Auto-loading of xPDO Package classes
- Uninstall Options (similar to setup options)
- Deprecate modAction and move to file-based controller pages
- Make modNamespace a first-class citizen for development, tie it to Extra and version of Extra, etc
The main point of interest for me as a developper is Package Dependencies.
The industry seems to welcome Composer + Packagist, as THE way to manage librairies dependencies and/or whole CMS distribution.
Most of Modx adversaries embrace it as well, we can already see some of them relying on it for distribution and package management :
- Silverstripe (
http://doc.silverstripe.org/framework/en/installation/composer)
- Drupal (
http://drupal.org/project/composer)
- Joomla (
https://packagist.org/packages/joomla/joomla-platform)
Which in turn facilitate greatly integration with other packages as well, like a forum :
- FluxBB (
https://github.com/fluxbb/installer)
- PhpBB (
http://area51.phpbb.com/phpBB/viewtopic.php?f=81&t=42757)
Does Modx have any plan to be a part of this at some point ?
Or will it develop it's own way of doing thing appart ?
This would be a shame.
Composer + Packagist are widely recognized, setting up a packagist server is easy to do, and it would allow people to have access to thousands of librairies cross platform as well.
Which leads to another important point : namespaces and autoload.
Will modx plan to use native PHP namespaces (instead on relying on heavy prefixing) ?
What about CMS wide autoloading ?
Will modx follow PHP-FIG (PSR-0/1/2) recommendation's too ?
Adversaries also started conversion steadily : Joomla, PyroCMS, Drupal...
This would allow the platform to use a widely accepted standard and probably better code reuse/adaptation when/if needed in the long run
I must be honest, if modx misses those 3 particular points, for me, it will be placed in the same place as Wordpress (or codeigniter) : an old tool who was once a cool kid, and has grown to be a tool who does not embrace innovation and in the end, actually makes me lose more time compared to what other "modern" platform can offer me.
It's not a rant, i understand the need with backward compatibility either with previous Modx version and API, or old php version.
They are definitively legitimate concerns, if you like Modx as it is and it does everything you need, that's cool for me. I'll move on.
That's not all
At the time when modx came out, Jason did review a lot of tools before choosing to do it's own "better" tool.
I believe that he was right at the time, xPDO was a very cool tool, and imo better than the alternative.
But now, in 2013, xPDO feels like yesterday's Doctrine for me.
Today i can use a complete ORM without having to build a schema, generate maps, while being less verbose and more straight forward than with xPDO.
Does MODx still evaluate what it could gain by using 3rd party codes for the core ?
Like using some of the Symphony 2 components (yes this is linked to composer usage).
Since Modx seems to evolve toward the cloud, i have a feeling that the CMS/Framework/ORM will have less "hands" to work on it, and therefore will not be able to evolve as fast as it would like to be.
Why trying to play catch up indefinitely (and reinventing the wheel) when you don't have the time (or the money i guess) to do it on your own ?
Maybe take a 3rd party tool as a strong base, a maintained API, with having lots of support and industry recognition is not such a bad move ?
And voilà, what do you guys think ?