Interview with Jason Coward (aka OpenGeek) – MODx Co-Founder & Lead Architect
In this interview, I talked to Jason Coward, MODx Co-Founder and Lead Architect and he gives us some insights about himself, the MODx project, and what’s coming. Enjoy 🙂
My name is Jason Coward, and I am 38 years old. I am one of the original founders of the MODx project, founder of the xPDO project, and CTO of Collabpad, the company which supports the MODx Founders and makes the MODx project and community possible. I work from my home office on a mountain just outside of Taos, New Mexico, where I have recently relocated. I have a wonderful girlfriend, Christina, who I’ve been with for the past 16 years, and three male cats. I’ve been a drummer for over 25 years, playing a variety of styles including jazz, country, rock, and Americana. Pool is my game of choice, especially 9-ball. I also enjoy hiking, camping, and digital photography.
2. What is your development background? When did you start programming, what languages have you worked with?
3. I know you’re one of the cofounders of MODx. Can you tell us a bit more about that? How did you get involved with the MODx project? Have you worked with other CMS/F projects before?
As I mentioned, I worked at two enterprise portal startups around 2000 and then started freelancing. I tried some of the early PHP CMS systems like phpNuke, PostNuke, etc. shortly thereafter, but when I stumbled upon Etomite in 2003, I knew right away that this was a totally different approach from the other offerings. One that gave me the freedom I was lacking when trying to apply custom designs in awkward theme templates or when customizing the behavior of the cookie-cutter modules that were available for those systems. I had never gotten involved with a PHP development project before then, but was interested in getting involved in Etomite. However, some 3rd party mods that I was using in some of my sites made the developer of Etomite feel threatened in some way, chaos ensued, code and history was deleted, and MODx was born. The developer of those mods, Raymond Irving, along with Ryan Thrash, and myself, immediately started creating a home for our newly forked project.
4. About how many developers are working on/responsible for the MODx core? Would you like that to change? And how?
The number of active developers at one time fluctuates, but we have approximately 20 committers that have contributed directly to the core code base in it’s history, though MODx Revolution is primarily the work of Shaun McCormick and myself. I would love for the number of active committers to increase, especially once Revolution is released for general availability, though I think what is much more important is the number of component developers we attract to the framework. IMO, change to a core framework should be slow and methodical, and based on experience with an active component development community.
5. One of the new things about Revolution is xPDO, can you explain to us a bit about what xPDO is and why it’s exciting?
xPDO came about after I built a prototype of an object-oriented implementation of the MODx core engine on top of a popular PHP O/RM called Propel. When I could not achieve the performance I wanted with Propel, and could not find any viable alternatives, I decided to create my own O/RM and xPDO was conceived. The main goal of this prototype was to abstract the SQL persistence layer so MODx could eventually be easily ported to and maintained across multiple database engines, but it also helps to quickly construct secure and consistent domain models for web applications or can just help you gain quick and dirty CRUD access to any MySQL data model. Over the coming months, xPDO support for PostgreSQL and MS SQL Server will be on top of the agenda, and MODx distributions for those database engines will follow.
6. What do you see as the important and exciting things that the MODx community has to look forward to?
The release of Revolution and the arrival of commercial support and partnerships should help rejuvenate the project and community this year. Though we’ve never really experienced a sustained decrease in activity since the project started, I’m hoping these will help launch the project to the next level and start to foster a more robust component development community.
7. Can you give us a tentative timeline regarding the final release of the GA version of Revolution?
We are working hard to have a GA release available by Spring of this year.
8. What are the copyright policies around MODx? For example, can a developer build their own brand around MODx CMS? Does every project need to be identified as having been built with MODx? Can someone bundle something built on the MODx core as a commercial product?
I’ll keep it simple and say our policy is simple: quid pro quo. A developer or development team can certainly build a brand around MODx by developing 3rd party components with a consistent approach, or providing direct customer support for MODx sites. No project must be identified as having been built with MODx, though the manager UI does need to retain licensing and credits to the MODx project. And being GPL, you can’t distribute commercial code with MODx bundled, but you can certainly sell commercial licenses for 3rd party components targeted at the platform, or support contracts for GPL code you (or someone else) may have released on the platform. But as a platform, MODx can potentially support an entire ecosystem of business partners, freelancers, and customers. And I hope that is where we are heading with this project.
9. If you could give one piece of advice to someone who is just starting out with MODx, what would it be?
If MODx is right for you, you’ll either know it pretty quickly, or you should be prepared to patiently start learning the system by reading some of the documentation, participating in the forums, and just trying things out. Experimentation is the key, and the more you do it, which is very easy to do on MODx anyway, the more you will understand the inner workings of MODx and be able to make the most of it.
10. Any closing thoughts?
MODx has been developed with a few key principles in mind, including the ability to do rapid prototyping of presentation directly in the system, making sure the system stays out of the way of web standards, and supporting proper separation of presentation and logic in components developed for the platform. Ultimately, it is at it’s best when it is used by web professionals to develop custom content management solutions for specific client needs. If you expect a point and click system, you may not be an appropriate candidate for adopting MODx directly, but you might be a perfect candidate to be a client of a MODx professional who can tailor a solution to your requirements and skills.
I would like to say thank you again Jason for taking the time to answer these questions for us and to share your knowledge, and thank you for the work you do on MODx. You can find Jason at the MODx forums under the username OpenGeek and follow him on Twitter.