At South by Southwest during our “ExpressionEngine 2.0 sneak peek” I got a chance to reveal some big news about the future of ExpressionEngine that I wanted to explore in some more detail here for anyone who wasn’t able to attend.
ExpressionEngine 2.0 is built on CodeIgniter.
CodeIgniter (http://www.codeigniter.com) is our Open Source PHP based framework. You can learn more at CodeIgniter.com, but in a nutshell it’s the toolkit that many powerful applications are built on, and now we can add ExpressionEngine to that list.
This is great news if you’re an ExpressionEngine user, a CodeIgniter user, or both. As an ExpressionEngine developer you will have a greatly expanded community of talented developers working with you, and for you. I said during my talk, “The nerds are excited, and you should be excited that the nerds are excited”. As a dyed in the wool nerd, I stand by this!
This is the biggest thing that I feel ExpressionEngine 2 is bringing to the table. As a ExpressionEngine and a CodeIgniter User, I’ve been wishing for some more integration between them - and now (almost) we have it! This will just mean rewriting my apps to utilize both.
Here’s a question. If you have a client that wants to offer rudimentary journaling to their users, and you write that functionality in CodeIgniter, would it still be against the EE terms of use to use EE for the CMS of the site?
I am getting slightly excited. I just wish I was a true coder at heart.
So (for example) a client wanted a training and exam app built and this included forums and memberships, could this now be built using CI then dropped into an EE interface? If so then I am a little bit more excited…
Sounds great… Can’t wait especially the jquery integration. I hope you plan on using jquery in noConflict mode or have a simple way to set it this way for those of us who are using more than 1 javascript library in our app already.
Exciting times indeed. If you are PHP coder CI seems pretty straightforward and indeed has many methods that make things easier than coding from scratch.
For me the post throws up the old debate about where Javascript should sit in an Application. For flexibility I would prefer it to be in its own behavioral layer outside of the logic. Mixing it up with the PHP is less than optimal in my opinion but perhaps you have good reason to put it there? Specificaly I don’t think a framework should output inline Javascript and it should also work without Javascript.
This is huuuuuuge! Finally! I use CI exclusively and I’ve build my own CMS functionality layer. But I’d abandon that in a heartbeat for a CI powered EE.
Now, when can I download it? I need to get started with this.
Juergen
P.S. Does this mean that EE is now actually a CMF????
Here’s a question. If you have a client that wants to offer rudimentary journaling to their users, and you write that functionality in CodeIgniter, would it still be against the EE terms of use to use EE for the CMS of the site?
I see no reason why it would be. You build something in CI, it is still built in CI, which is Open Source. Even if you use EE in tandem with it, there is nothing in the EE license to prevent you from using another application with EE or to expand EE using another application.
So (for example) a client wanted a training and exam app built and this included forums and memberships, could this now be built using CI then dropped into an EE interface? If so then I am a little bit more excited…
Indeed it could. There would definitely have to be some EE specific integration, but it would be possible to write a separate CI application and then create a module bridge between it and EE.
Mixing it up with the PHP is less than optimal in my opinion but perhaps you have good reason to put it there? Specificaly I don’t think a framework should output inline Javascript and it should also work without Javascript.
The framework does not force any outputting of jQuery, JavaScript, or even data. You choose what you want to output. What the Javascript library does is makes it easier to create effects and use the library, with simple PHP commands, instead of having to write it all out yourself in the View files.
To add to this, outputting script in another controller is effectively creating an external script which gets cached and has all the advantages of separating presentation from behaviour. I’ll start releasing more details over time, but I want to assure everyone that the Derek’s and Paul are very much in tune with these issues.
Can anyone tell me what software was used to create the “Sneak Preview” video? I really like how the video set focus via the circle and shaded background. Thanks.