Hi, I’m Jeremy, also known as


How Rick Ellis, CodeIgniter and ExpressionEngine changed my life.

This story originally appeared on Medium. View on Medium »

In the Beginning

It was 2008. I had recently graduated college. My degree was in Information Systems, but I didn't want to work in an I.T. department. I had a job lined up doing corporate communications for a small nonprofit organization where I had worked throughout high school and college. With my position, I hadn't stepped far from the technology background I came from, since managing the organizations website was among my responsibilities. But the web was far from my only priority there.

In college, while interning at same organization, I had attended some web conferences focused on running websites for organizations in the same niche. The web was still young, and there was a huge gap between what the average amateur could do versus a big corporation. But I learned a lot from others in organizations of similar size.

Using PHP skills I had taught myself in college, I miraculously cobbled together a content management system for our multi-national, multi-language site — at a time when the term "content management system" was foreign to me and most other people. It was functional.

At those conferences over several years of attendance, I heard about Moveable Type, then WordPress, Joomla and Drupal, and Ruby on Rails. Without much guidance other than "you should try these things" in a conference session and maybe a quick overview, my experiments with most of these tools failed miserably. I could rarely get myself beyond the installation instructions, let alone to a functional website.

I remember sitting in my hotel room late at night, stumbling through multiple Ruby on Rails tutorials after the sessions ended. Trying. Deleting and starting over. Finding another tutorial. And trying again. I couldn't get it going. But I was so intrigued.

I continued to try again over the coming weeks. And I continued to fail. I came across some other MVC frameworks along the way as well, CakePHP and Symfony to name a couple. Then one day, after probably my 17th time trying to understand how the f*%$ Ruby on Rails works, I came across CodeIgniter.

I downloaded it (shut up, this was before anyone was using SVN, let alone Git) and followed the installation instructions. I had it up and running in minutes. The user guide actually made sense to me as a young, fairly-inexperienced developer. As I started building some half-baked side project, it all just started coming together. Shortly after that, on March 26, 2008 I joined the CodeIgniter forums.

Around that time, I was a strong proponent of Pownce (an early microblogging platform, for you n00bs), but it died hard and fast.

I relented and created an account on its surviving competitor, Twitter. I used some silly handle I had come up with and registered a domain for in college, dreadfullyposh.

Between Twitter and the forums, I was connected to a whole community of people who were using CodeIgniter. When I needed help I could post on the forums and get friendly and helpful replies. I started to get to know some of the other developers (Jamie Rumbelow and Phil Sturgeon to name a couple) in the forums and on Twitter.

Suddenly I was excited about programming again — after a C++ and Java-induced programming hiatus that I started after completing my Computer Science classes in college. I felt like I could actually build something real now.

From Geek to Peak

About a year later I was freshly seated in a new job. Still at a nonprofit organization, I now had a position exclusively focused on the web. I was excited about that change, going back to my roots and my interest in web development that had started when I was still in middle school. While I wasn't in a development role, or even a development department, I was still at the forefront of updating the organization's online presence, and I was involved with it all. It was glorious.

My new employer graciously agreed to send me to South by Southwest Interactive 2009. At that time SXSW was still an event you could expect to learn a thing or two at, not just spring break for adult nerds. I was elated to be attending, and I was scared to death, having never attended a conference alone, let alone one of this magnitude.

Luckily some other Philly-based nerds I'd met through Twitter were meeting up at a bar together before flying to Austin, so I joined in and met a few friendly faces that I would recognize when I landed. I was glad to go into it having met a few people in advance, but I was still quite alone when I got there.

Luckily it wasn't more than a few minutes after arriving at the Austin convention center and heading toward the registration line that a loud guy named Chris Lagasse from Florida by way of Massachusetts introduced himself to me and the other two attendees from Philly that I happened to be with at the time. We became fast friends and spend almost the entire rest of SXSW together. We've been friends ever since.

It was Saturday, March 14, and I didn't know my life was about to be changed. That day I attended Tom Myer's session with Chris. It was a tiny room, but it was packed. We sat on the floor, since there were no chairs left. I remember sharing a power strip I had brought with others to recharge our phones and laptops as we sat in the session.

From Geek to Peak by Tom MyerFrom Geek to Peak by Tom Myer

Tom, was a CodeIgniter developer whose name I recognized from the forums. He and his wife Hope shared their tips to getting started as a freelancer, drawing from the book Tom had recently written, *From Geek To Peak: Your First 365 Days as a Technical Consultant. *I was intrigued. I always had dreamed of running my own business, but I was far from knowing how to get going. I took some notes during the session and made sure to order a copy of the book as soon as I got home.

That evening I attended a gathering held by EllisLab, the creators of CodeIgniter, and their content management system, ExpressionEngine. At the party I remember meeting Rick Ellis and Derek Allard in person for the first time. It was exciting. They were personable. Derek and I had connected through the forums and he knew who I was immediately. It was like meeting your childhood hero.

Still very new to the community, I didn't really know many other people at the party and was very unsure of my standing.

Shortly after returning from SXSW, and newly emboldened by my run-ins with giants, I started to look for freelance work on Twitter. Through another CodeIgniter developer, I was connected with my first client, a small web agency called Inovāt. After a few months of informally trying some freelance work, I knew I was on to something. I was getting steady work, and it felt good to be running a business on my own outside of my day job.

At the end of 2009, it was time to make things official, so I incorporated Conflux Group.

EECI 2010

By mid-2010 Conflux Group was humming along nicely. I had found some new clients and continued to grow my business.

I heard about ExpressionEngine CodeIgniter Conference (EECI) which was coming to San Francisco at the end of May after starting in Europe the year before. I made plans to attend.

Phil Sturgeon (left) and Jamie Rumbelow (right) at EECI 2010Phil Sturgeon (left) and Jamie Rumbelow (right) at EECI 2010

Jamie Rumbelow, whom I knew from the forums and Twitter and was becoming friends with was speaking. I was excited to finally meet him in person alongside a number of other attendees, including Phil Sturgeon, Zack Kitzmiller and Tom Myer and Hope Doty, who I'd seen, but not interacted with at SXSW the year before.

It was a strange experience meeting people who only knew me, and introduced me to others as dreadfullyposh. But it was intoxicating.

At that point my experience was mostly with CodeIgniter so I planned to attend that track of the conference, but things were changing in the ExpressionEngine world. ExpressionEngine 2 was underway and being completely rebuilt on top of CodeIgniter. This move helped CodeIgniter developers to jump into the ExpressionEngine community by developing add-ons.

Additionally, EllisLab announced a new product at the conference. Also built on CodeIgniter, it was called MojoMotor. There was a mad rush to register Mojo-related domain names that day. And many of the CodeIgniter developers in attendance got excited about the idea of creating add-ons for the brand new, untapped MojoMotor add-on ecosystem. A number of us gathered together that evening at EECI and discussed the possibilities.

Becoming the MojoAddons Guy

After returning from EECI, I quickly jumped into action. I had a designer friend of mine start to design a site around the MojoAddons.com domain name I had registered while at the conference.

I envisioned something bigger than just the add-ons I could develop myself, still being a relative novice. So I reached out to several other developers and made arrangements for MojoAddons to become a marketplace for MojoMotor add-ons.

I pushed hard, alongside a group of other developers, to get both the site read and add-ons built to sell on the site.

The site launch was planned to coincide with the release of MojoMotor, and we successfully went live with our add-on store on the same day MojoMotor was released.

For a brief and shining moment, I was the MojoAddons guy. But MojoMotor was short-lived, so I continued to move forward.


It was early January 2011. Conflux Group had been in business for a year now. MojoAddons was up and running and making a consistent number of sales. I had steady work coming in. But my work had shifted to primarily focus on developing sites and custom add-ons for ExpressionEngine rather than CodeIgniter projects. The shift felt good and more in line with what I wanted to be doing.

I was still at my nonprofit day job, which I enjoyed it a lot. But, I wasn't able to work as close to the development side of the operation as I would have liked.

And then I saw this tweet.

I was intrigued. As I told Matt in my first email, I wasn't really looking for a new job at that moment, but the opportunity to work with ExpressionEngine and in New York were enticing.

Not long after that initial email thread, I was on a train to New York to meet with Matt and Lee, Vector Media Group's co-founders. They seemed impressed with my work. But I recall Matt was not impressed with my inability to finish a burger from his favorite burger joint when the pair took me out to lunch afterwards.

A few weeks later Matt offered me the job at Vector. I was in shock. I had gone from a complete novice to being offered a web developer position at an agency in New York in just a couple short years.

Unfortunately things didn't come together for me to take that position right then. But Matt and I kept in touch, and I ended up working on a number of projects over the years with him and the Vector team as a contractor.

Continuing the Momentum

As the spring of 2011 came closer, I knew I had to go to South by Southwest again. In the year since I had officially launched Conflux Group, the business was growing, and I was getting larger and larger projects and clients. It was an exciting time for me.

I remember sitting on the floor of the Austin Convention Center launching one of my biggest client projects to date.

That year, Marc Debiak and his brother Jason from Paper Tiger organized a small gathering during the SXSW. Of course I was excited to connect deeper with the ExpressionEngine and CodeIgniter communities. There I met more people from the community and my network continued to grow.

In the fall of 2011, EECI was held in Brooklyn. I attended again. And much like SXSW, I continued to expand my network and meet new faces — including some of the big names in the community.

The birth of the rainbow sailorThe birth of the rainbow sailor

That conference was the first time I met Kyle Cotter in person. We had become fast friends on Twitter, playing off each other's snark, and the same antics continued in person.

This in-person meeting forged the beginning of yet another long term business relationship and friendship.

EECI 2011 was also when I started really noticing that others in the community were starting to recognize me. I remember sitting in the bar at the after party and having Rob Sanchez come up to talk to me and even compliment my work (and artisan snark).

It was my first taste of fame, if you want to call it that. It was such an odd feeling to have people who I didn't even know, who I hadn't even met recognize me from across the room and come to talk to me. I can't say it didn't go to my head just a little bit.

It also marked the birth of my occasional nickname, "Rainbow Sailor," thanks to Matt Weinberg.

A Heck of a Party

When SXSW came around in 2012, I was eager to attend again.

This year, I teamed up with Marc and Jason from Paper Tiger for a bigger and better ExpressionEngine and CodeIgniter gathering than we had 2011 — a real party.

A very poor photo of the sponsor banner at SXSW 2012.A very poor photo of the sponsor banner at SXSW 2012.

I worked closely with them to get sponsorships for the party from some the industry.

I made some big connections while securing sponsorships for the party, including Eric Lamb of Mithra62, who was just breaking into the ExpressionEngine community and Matt Weinberg from Vector Media Group. (👋 Matt)

We secured sponsorships from EllisLab and Pixel & Tonic as well.

Conflux Group threw some money in for sponsorship too alongside my efforts put into helping to organize, and I got to have my company's logo on the event's banner and marketing materials.

News of our party traveled fast. We even had to institute and screen a guest list to ensure we weren't going to be overrun with crashers, as is common at SXSW-adjacent parties. And we got some pretty big names on our list, including the fine folks from Happy Cog.

The turnout was huge — perhaps too huge. The bar had continued to give away drinks on our tab well beyond the original budget we had set. Luckily, while Marc, Jason, and I were sweating bullets figuring out how to foot the bill, Brandon Kelly from Pixel & Tonic picked up the balance of the tab.

Besides throwing an epic party, co-hosting and sponsoring gave me the opportunity to grow my network even more.

More Building Blocks

In the fall I was back in Austin* for EECI 2012. It wasn't really in Austin, due to a scheduling snafu, but that's a story for another time. The distance from Austin gave me the change to carpool with some other attendees, Chad Crowell and Casey Reid.

The conference format was pretty similar to previous years, except I knew more people, and more people knew me. I had made a name for myself by this point, for better or worse, depending how you feel about my sense of humor.

But the big news at EECI that year wasn't about ExpressionEngine, or CodeIgniter or even MojoMotor at all.

Rather, Brandon Kelly had invited a select group of attendees to a secret dinner party in one of the hotel's conference rooms. Somehow I received an invitation.

It came into my inbox and read like the mysterious invitations received by the characters of the 1985 movie Clue. However, always down for a caper (and some free food and drinks), I put it on my calendar.

The group was intimate and consisted of some of the biggest influencers in the ExpressionEngine community. Few if any knew what was going to happen that night.

First, Brandon and his team demonstrated a new version of Assets, their ExpressionEngine file manager add-on. The group oohed and ahhed as they saw the new features being demonstrated.

But that wasn't why we were all gathered there.

Next Brandon showed us something completely new. A new CMS. A CMS that followed a similar pattern to ExpressionEngine but was entirely new, fresh, and modern. It was called Blocks.

As we sat in the room watching the demo, his team launched the Blocks website.

It was new, shiny, and scandalous. And with that the small group of insiders dispersed back to the conference party, free to tell the world about what we had experienced.

I remember sitting with Kyle Cotter, watching Brandon tell Derek Jones about what he just unveiled in the distance. Together we mused about what the two were saying to each other.

More Changes

Back at home, things were changing. Yet another reorganization was taking place at my nonprofit job. My old boss was laid off. Our previous department was dismantled.

I was given a new management position and the opportunity to build an integrated web design, development, and marketing team. I laid out a plan to hire a developer and replace our failed Drupal installation with a platform I knew well — ExpressionEngine.

Leadership thought I was insane, but they let me proceed. I hired a remote ExpressionEngine developer. And together with our designer and project manager, we rebuilt the CMS and refreshed the design of the organization's main website in less than a month.

I was re-energized — finally able to work more closely to my area of passion in my day job.

I drew up a plan for a suite of core sites for the organization, instead of one giant monolith. I knew I could deliver on my plan with ExpressionEngine.

Over the next few years I was able to continue to grow my team, and I turned my focus to go beyond design and development into an inbound marketing operation. The team built out a blog platform and worked with writers to produce content. The blog platform morphed into a content marketing engine, inspired by a talk from another ExpressionEngine Conference (formerly EECI Conf) speaker. We amassed thousands of visitors every day to our sites and over 100,000 email addresses on our mailing list.

In that time, my depth of knowledge in ExpressionEngine and web development continued to deepen, and my knowledge of marketing and SEO broadened.

Crafting the Future

Meanwhile Blocks, the CMS the was introduced at EECI 2012, became Craft CMS. It became wildly popular very quickly. It scratched the itch of many ExpressionEngine developers who long felt neglected by ExpressionEngine's pace of development and feature set.

Since I had been brought in at the beginning, I followed along with its development and started using it as soon as a public release was available.

The fit was natural, with many similarities to ExpressionEngine. While my day job was firmly rooted in ExpressionEngine, I dug in deep into Craft on my own and started to shift my clients at Conflux Group over to this new platform.

I participated in the StackExchange site for Craft and started, again, to build my reputation with the new platform.

In retrospect, I'm glad I have kept my feet in both camps, when many developers took sides and chose one or the other.

Vector, again

Despite all the success my team experienced and the excitement we all felt, everything has to come to an end some time. The tide of the organization I worked at for nearly 10 years shifted, and in December of 2017, I found myself ready for a new opportunity.

After my first job offer from Vector Media Group, Matt Weinberg and I had stayed in touch. He jokingly (or perhaps not so much) continued to ask if I was ready to come work for him at least once or twice a year since that first encounter.

That December I emailed him and told him I was ready.

I had several calls and email threads with Matt and Ben, Vector's Director of Technology. We discussed what my goals were, what their needs were and what it might look like for me to join the team. A few weeks later, the unthinkable happened, and I received another job offer from Vector.

A few short weeks later I was back on the train to New York City to meet the team on my first day as Web Services Manager for Vector Media Group. The company has grown tremendously from the three-person team I saw in 2011.

My first few weeks I spent working as a developer on a number of projects. Jumping in to such a fast paced company with such talented developers was daunting, but having to work directly on projects really helped me get the feel for how the company worked, their processes and practices.

Soon I started easing into other responsibilities helping to provide leadership to the development team. And in that process I started to invest heavily in learning a number of technologies that were new to me, including Docker.

Coming Full Circle

In April I submitted a proposal for a talk on Docker to be considered for ExpressionEngine Conference. I was selected.

October came, and I was in Nashville for the conference. The crowd is different now. Sure, there are still familiar faces. But many of the old guard from prior years have moved on to other platforms and technologies, or other conferences, or have completely dropped off the grid.

But ExpressionEngine Conference still attracts a new flock of developers, eager to learn how to use ExpressionEngine better. With all the changes in the industry, I always wonder if this conference will be the last one, but each year I come back still inspired and energized and encouraged that there is still an active developer community.

Me, presenting at ExpressionEngine Conference 2018Me, presenting at ExpressionEngine Conference 2018

I got up in front of that crowd and gave my talk. Of course, being a talk about Docker, the audiences eyes glazed over, but it was otherwise well received. It was a surreal experience, standing in front of a group of people, with the lights shining in my face and my avatar larger than life on the screen behind me. I only dropped one F bomb (oops).

Toward the end of the conference Rick Ellis got up and spoke. It had been a while since he had been at one of the conferences, and he was probably an unfamiliar face to many there who had never met him before. He recounted his story of how he came to create the precursor to ExpressionEngine. I've heard the story before and I often joke about it with my friends in the industry.

But the thing is, his product, which may have in recent years lost some of its prior luster, was monumental for so many people, including me. It helped build our skills, our careers, our networks, and our businesses. I never would have thought that 10 years later I'd be one of the industry veterans presenting at this (or any) conference.

But here I am. I'm Jeremy. And I wouldn't be where I am today if it wasn't for Rick Ellis, CodeIgniter, and ExpressionEngine.

Get in Touch With Jeremy

The majority of my time is spent working for Happy Cog, however I do take on occasional consulting and speaking gigs.

Get in touch with me:

Recruiters, please do not contact me. I’m not looking for employment at this time.

©2024 Dreadfullyposh LLC. All rights reserved.