Developers, Developers, Developers
As you might have heard, ExpressionEngine is Dead and we intend to bury it with full programmatic honors. Sadly, we forgot to send a memo to Rick to inform him that there will actually be one more version in the much loved 1.x series of ExpressionEngine. While Derek worked on a Discussion Forum update, it was determined that there was no way around requiring another release of ExpressionEngine to handle some of the core changes. Alas. So, we have been adding a few more features and bug fixes with a release hopefully later this month. At least one of you will be extremely pleased (I hope) because I happened to take three of his feature requests and added them over the course of a single day. Granted I stayed up past 1am to finish one of those features, but I was still awake so it still counts as one day for me.
As Rick mentioned in his entry above, 2.0 is a really ambitious project. Frighteningly so. Three years ago this month, I had finished a new version of pMachine Pro and Rick started showing me what would eventually become ExpressionEngine. I was not even a full time employee at that point (still working at Reed College) and we were still two months away from incorporating, so I was still getting my legs with PHP coding and developing for a widely used program. And here was a new program with a totally different approach to running websites and it was all object oriented code. Crazy times and a great deal of stressing over how everything should work and how it should be presented to you, the pMachine Community.
Seems to have worked out well for us though, I would have to say. I really never expected to become a CTO at twenty four and the growth we have seen since ExpressionEngine’s public beta has been rather incredible. Especially when you consider us never taking any funding and the only real advertising for the program is done by you, the users. Of course, things have changed and we have learned a great deal more about developing in PHP (and using MySQL). Staggering amounts of information and experience are now sitting around in our brains playing cards and shooting darts waiting to be used. Sounds like the perfect time to rewrite the whole darn program, no?
I mean that rather literally too. Everything underneath the hood of ExpressionEngine is going to be rewritten and improved. The core libraries in particular are going to be far easier for us and developers to use when writing code. While there are many bloggers still using ExpressionEngine to run their sites, developers and experienced designers are those pushing the boundaries of what ExpressionEngine can do. We are going to focus more on catering to that group and pushing what I am calling the ExpressionEngine platform. A moldable set of scripts that can run any website but also create web applications. There are examples of this already with ExpressionEngine, but it shall be easier and even more capable.
Thanks to tinkering and testing we have been doing with other projects, the Control Panel is being redone in a different approach. While it works for most purposes now, it is not fully customizable and does not have an easy way to use technologies like javascript to create smooth AJAXy goodness. While the web was not meant to be the arena of applications, that is exactly what it has become in the past few years. Interaction without page loads and using effects has become the way of managing all manners of content. I have stated my position on not letting AJAX control the way an application must be built, but there are quite a number of ways in which it will improve the usage of our software. Might even give the Control Panel a bit of a new look. Is blue still cool?
Let us not forget the modules. Since the Template parser will be receiving some Six Million Dollar Man surgery, there will be a need to rewrite the modules in order to interact with it seamlessly. The end all effect should be to make things more efficient and perhaps allow some tools that will make module writing easier than it is currently. Have no fear, third party developers. Even if your module is not rewritten for 2.0, we still intend to allow a site to continue using any current 1.x modules. Like Mac OS X, we intend to have a Classic mode to make sure no module stops working.
Work is just gearing up for this monstrosity of coding and we are mostly building components and trying things out right now. Designs are being sketched out and presented to the group (blue?! again?!) and the developers are bouncing code around to each other. Unlike the first series of ExpressionEngine, this time we have a development team working on specific areas. As usual there is not even a guideline when this version will be released, but we are allowing sufficient time to complete all of the items on our list. We might even release a certain module in the mean time to keep you busy.

