ExpressionEngine, as a platform and a community, has seen a lot of growth recently. While there are some nice roundups out there about EE resources I thought it was time for a more relevant and up-to-date article to hit the streets. If you're getting started, this set of resources will get you moving in the right direction. After all, I've walked this path myself thus far.
Before diving into the resources I should provide a bit of context to my approach to learning EE. I first looked at the software a few years ago and totally didn't get it. I was already using the PHP framework CodeIgniter, made by the same company, and I saw no need to use EE if I could just build a CMS to do exactly what I needed. Regardless, I wanted to download and test out the software.
Straight out of the gate, I didn't get it.
I was used to either WordPress or writing my own logic. ExpressionEngine installed with a bunch of "modules" and a few "custom fields" in which I could insert my data. I took a look at the official documentation and didn't really understand how or why it was a powerful tool. After about 5-10 days of kicking the tires I just put it aside.
Jump ahead two months, and I find myself back to testing out ExpressionEngine. This time, it was due to finding a series of tutorials on building a church website in EE. After reading the articles, I started to learn how EE was setup "out of the box" and where I could take it. Since reading those tutorials I haven't put EE down and would consider myself an EE evangelist these days.
During my EE journey, I've discovered quite a few excellent resources and taken note of a few community leaders. Let's dive in and see how they can help you learn ExpressionEngine 2.
(Possibly) Changing Mindsets
When I first dove into EE, I, as mentioned above, simply didn't "get it." Coming from WordPress, I was accustomed to working with a
Body and some extremely basic
Custom Fields. I'd worked a lot with WP's
Widgets, and was used to 1-click installs of templates and auto-updating software. EE is quite different...but I love almost every difference.
I won't venture into explaining how things work in EE, but there are some great articles to check out. Firstly, I'd suggest reading "Switching Mindsets: From WordPress to ExpressionEngine," by Mindy Wagner at Viget Labs. Her story is similar to mine in particular. Next I'd say, check out WordPress vs. ExpressionEngine: Apples and Oranges? by Marcus Neto. He talks about how the two handle content differently and provides excellent examples.
Okay, now that you're eager to debate why one piece of software is "better" than the other, let's change the topic slightly.
This year EllisLab, makers of ExpressionEngine and CodeIgniter, did something awesome. They welcomed some EE fan sites into the EllisLab family by making them "official community partners." The sites collectively supply the EE community with the latest EE community news, short tips on using EE, a gallery of great EE-powered sites, articles on projects, the official repository of add-ons & more. Take a look at the community sites here:
And some great un-official community EE sites:
Official & Un-official Support
What I really love about the forums is the unofficial support.
EllisLab offers official support from their dedicated staff for any license holder of ExpressionEngine. If you're having a problem with your site and can't figure out what's gone awry, they are good at helping figure things out. They provide this support, via their forums at ExpressionEngine.com. Official support is quite nice for software like this.
What I really love about the forums is the unofficial support. The community of EE users is awesome and I've learned a lot from other developers via the official EE Forums. I've been a fan of forums since my moderating days at Flashkit; so I naturally jumped into learning about EE there.
I can't help but give Train-EE a section of its own here. If you'll remember from this article's introduction, I turned away from EE rather quickly, at first. It wasn't until I read through a tutorial series on Building a Church Site that I really started to understand how to use EE.
Long time EE user Michael Boyink created Train-ee when he saw a void in the EE learning process. Since creating Train-ee, Mike has written two EE books, published numerous online text and video tutorials and created the only to-date classroom training course for EE. Mike is also working with EllisLab to make the process of learning EE more seamless and formalized.
In short, Train-ee is an excellent learning resource for ExpressionEngine. Start with some of the free stuff, but definitely purchase some of the commercial goods. The small amount you spend on training is probably nothing compared to the time you'll save slaving through EE without it.
Other Free and Paid Learning
Train-ee, of course, isn't the only place in town for learning EE. Here are a few more ways to learn EE both on and off the web.
I personally got a lot out of the EE Screencasts series by Ryan Irelan. He's also working with other developers on premium tutorials that go beyond the basics. Keep your eyes on his site for additional videos down the road.
Speaking of Ryan, he has his hands in a lot of EE resources. He also runs official community partner site EE Insider where you can get all the latest EE news and quick tips. They do a great job of keeping the community informed. EE Insider also hosts a weekly ExpressionEngine chat most Wednesdays. It is an open chat where you can come and ask questions and give ideas.
Ryan also co-hosts the EE Podcast with Lea Alcantara. This is a weekly podcast where Ryan and Lea and the occasional guest dive deeper and discuss topics like "E-Commerce and ExpressionEngine" and "SEO, Search Engine Optimization, ExpressionEngine". The EE Podcast is definitely a great way to stay informed on EE techniques.
If you're looking to extend what EE can do out of the box, then the place to go is Devot:ee created by Ryan Masuga. They provide a catalog of nearly all public EE add-ons to date and even offer simple software support and commercial sales to developers who might not want to host that on their own. Devot:ee is the first place I go when looking to extend EE. If the add-on exists, they probably know about it.
There are numerous opportunities to learn EE live and in person. For starters, there is the EECI conference, which just saw its 3rd occurrence (photo courtesy of Nate Croft, FortySeven Media). It's the largest gathering of EE nerds that I'm aware of. The speakers are top notch, and it's a big heap of fun. The next iteration is in New York in October of 2011.
Aside from the big EECI, there are other conference opportunities out there. Just last week, there was EE Camp in Denver, Colorado. This week, there is the online ExpressionEngine conference EngineSummit 2. Numerous cities also have meetups for ExpressionEngine, which are great ways to share and learn in a small, informal atmosphere.
A slightly different approach to in-person learning is hiring a professional consultant. It's a service typically used by companies with in-house teams working with EE. For example my company, Focus Lab, LLC, often does private training and consulting on EE topics. If you find yourself in need of a private instructor, the ExpressionEngine community certainly has those resources available.
Buy a Book
The last place I want to touch on offline learning is published books. There are a few to choose from and it would be silly not to mention them. The aforementioned Michael Boyink and Ryan Irelan both have published books on ExpressionEngine 2. There is also a book by Leonard Murphey, which is published by Packt Publishing. Certainly consider checking them out if you're a book reader.
- Building an ExpressionEngine 2 Site - Small Business (EE2 focused)
- ExpressionEngine 2: A Quick-Start Guide (EE2 Focused)
- Building Websites with ExpressionEngine 2 (EE2 focused)
- Building an ExpressionEngine Site - Small Business (EE1 focused, now a free eBook)
- Building Websites with ExpressionEngine 1.6 (EE1 focused)
Dive in to the Community
EllisLab, themselves, have said their favorite feature of EE is the community. I have to agree! They have two full time staff members dedicated to the community; so that should tell you a little about them. Getting involved in the EE community is easy. For me, it began on the official EE forums. From there, I started tweeting a lot about EE and then publishing some of my add-ons publically on GitHub. Here are a few places you can look out for EE'rs.
- Official forums again
- on Twitter (hash tag #eecms is most commonly used & follow @ee_hub and/or @codeignitee for relevant re-tweets)
- on GitHub
- on Dribbble (tags EE or eecms often)
- on the aforementioned Weekly EE Chat
Who to Follow
Since you're ready to dive into ExpressionEngine 2, I thought it'd be nice to share some developer names with you. You know, the guys who are consistently doing awesome work and sharing ideas with others. This is by no means meant to be a complete list, but here are a few developers to keep your eyes on:
- ExpressionEngine Blog - the official EE Blog from EllisLab
- Pixel & Tonic - 3rd Party Add-ons
- Newism - 3rd Party Add-ons & general EE development
- Solspace - 3rd Party Add-ons & consulting
- Lodewijk Schutte - 3rd Party Add-ons and general EE development
- Mike Boyink - Writer, Teacher, Speaker & Consultant
- Ryan Irelan - Developer, Writer, Speaker
- Me, Erik Reagan! - Consultant and Teacher </shamelessplug>
To preserve your precious mouse index finger's strength today I've provided you with a roundup of the primary links here:
- Article: From WordPress to ExpressionEngine
- Article: WordPress vs. ExpressionEngine: Apples and Oranges?
- Site: EE Insider
- Site: Devot:ee
- Site: Show-ee
- Site: Director-ee
- Site: EE Hash
- Site: Dev-ee
- Online Learning: Official ExpressionEngine Forums
- Online Learning: Train-ee
- Online Learning: "EE Screencasts"
- Online Learning: Weekly EE Chat
- Online Learning: EE Podcast
- Add-ons: Devot:ee
- Conference: EECI Conference
- Conference: EE Camp
- Conference: EngineSummit 2
- Book: Building an ExpressionEngine 2 Site - Small Business
- Book: ExpressionEngine 2: A Quick-Start Guide
- Book: Building Websites with ExpressionEngine 2
- Community: Twitter Search
- Community: GitHub Search
- Community: Dribbble search 1 and 2
I've overloaded you with resources. Now go forth and learn ExpressionEngine!
Already a Seasoned EE Pro?
If you're already a seasoned Expression Engine pro, did you know that Envato's rapidly growing marketplace for code, CodeCanyon, very recently launched a new ExpressionEngine extensions category? We've launched with a handful of seed extensions, however, we're actively seeking new authors and contributions.
There's no better time to join, as we've recently increased our author rates, once again, to 50-70% of every sale. With countless authors making four+ figures in income every month, now is the perfect time to jump in. If you have any questions, leave a comment in this thread, and I (Jeffrey) will get back to you ASAP.
- Mapper: Display Google Maps on your site with ease.
- Widgets: Widgets is a ExpressionEngine 2.1 module that allows even your least experienced client or to manage chunks of intelligent content on there site without needing to learn loads of tags, HTML or call you in to help.
- Multi-Language Support: This extension provides the foundation for multi-language support in your website.