What is WordPress?

The inaugural WordCamp US has been quite an experience.

The Sessions

There’ve been the sessions, of course: some technical, some business; some abstract, some comedic. The sessions I was most keenly interested in were those that dealt with the question, “Where is WordPress headed?” This was the underlying current of many talks, which is befitting of this inaugural, record-setting conference.

Zack Tollman and Aaron Jorbin shared the future stack on which WordPress can/will run.
Matías Ventura and Gregory Cornelius vouched for the use of React in Calypso, and foreshadowed what could/is to come with Calyspo/.com/.org.
And more: David Bisset on next-gen BuddyPress; RC Lations on WP + IoT; Rachel Baker on API-driven themes.

One of my favorite sessions (for a number of reasons) was Rami Abraham’s “WordPress: The Next Generation – A Look Into WordPress Sites 5, 20, and 50 Years into the Future”.

Rami has quite the talent for making comical video productions, cracking dry jokes, and putting together engaging slides. Rami helped us imagine what WordPress could look like in years to come–some ideas far-fetched, some immediately imaginable.

My biggest takeaway was the most basic part of his session–the subject: What is WordPress in the next decade, or few? Putting specific numbers on WordPress’s future begs for the question to be seriously considered. This was the question I wanted answered at WCUS’15; only at the post-conference events of this evening were my thoughts shepherded into cohesion.

After the Conference

First, I joined several (15 or so) coworkers of mine for dinner. I sat across from our CEO, John Eckman; he, I, and those sitting adjacent entertained conversations about WordPress in the enterprise, Calypso, Automattic, and so on. Highlight: WordPress has plenty of room to expand its presence in the enterprise space. John is keenly interested in making strides there.

Afterwards, some of us made our way to the official after-party held on 2 floors of Lucky Strike, a bowling alley nearby. There, I had two unique experiences:

I observed the sizable crowd attending the after-party, sometimes meandering around; sometimes sitting; sometimes just pausing.

It’s hard to describe the feeling of witnessing hundreds of people in unique conversations, especially when you get the feeling that any one of them would be happy to have you join in.

Of course, many conversed about WordPress–designers, developers, project managers, sales reps, CEOs, owners, freelancers, bloggers, photographers, et al. Some knew each other intimately; some met face to face for the first time; some met new faces. Not every conversation was thrilling or had some miraculous, world-changing conclusion. However, the constant hum of ideas and jokes and chuckles and cheers and introductions and goodbyes gave me a new appreciation, understanding, and love for the community that is WordPress.

Second, I got to meet Matt, and ask him an intriguing question: “Is the WordPress community decoupled enough from the traditional WordPress stack to separate the two–and make the latter theoretically arbitrary and replaceable?” Matt’s reply: “Isn’t that what we’ve done with Calypso?”

This is the answer I hoped to hear. I’m excited that Matt isn’t blindly trying out cool, new technologies for the sake of doing so; he is considering the impact these decisions and changes have on the community. Matt has full knowledge of what Calypso says about the WordPress community. He considers the community mature and stable enough that such a large change could be generally well received. The community is an entity of its own, one which I’m confident will thrive no matter what relationship Calypso and .org end up having.

So: What is WordPress?

Had I been asked that a couple weeks ago, I would have said something along the lines of it being the #1 software for content management.

In light of recent events (Calypso’s release, WCUS’15, my conversation with Matt), I now have a significantly different answer: WordPress is a community of individuals who care deeply about creating the best possible means for people to hear and be heard, and who care deeply about each other.

I’m now fully convinced that WordPress transcends any particular technology, place, language, or demographic. It transcends even any particular software philosophy. What really matters is that the vision of providing a means for powerful communication is upheld, and that we continue to care deeply about each other.

I look forward to seeing WordPress do just that in 5, 10, 25, and 50 years from now.

Hechinger Report

My first few weeks at Upstatement landed me in the QA/enhancement phase of the Hechinger Report.

This meant that I wasn’t heavily involved in development from the ground up; I was instead responsible for bug fixing/finding, fulfilling last-minute feature requests, and being an advisor on the project in a WordPress capacity. I was also responsible for pre-launching the site (everything but the path map switch). This included building/running content transformation scripts to massage old data into new formats (such as taxonomies, metadata, and links), and migrating the database (made easy thanks to the lovely WP Migrate DB Pro).

I’m proud to have worked with the Upstatement team on the site; the branding, typography, overall design, and the front-and-back-end dev combined to make one beautiful site.

Check out the full announcement post on Upstatement’s blog, or check out the site itself!

Motorsports Web Source

During my time at Codeable, I was contracted by Chris of Motorsports Web Source. I helped Chris launch his dealer website business by building a custom inventory search engine with FacetWP, and custom inventory templates. All work was done with responsive-ness in mind, so the dealer sites look great no matter who-or-what is looking at them!

The Myth of the “Free”-lancer

Today, I planned on working. I planned on having a full day to focus on finishing up some projects. In fact, I planned on using most of this week for that purpose, though obviously Christmas was excluded—that day is always reserved for family!

So today I sat down at the coffee shop, flipped open my laptop, and fired off a few emails. I fixed a bug that was holding up a project’s completion. I started syncing a remote site to local, then hopped on Twitter to pass the time. Then I noticed a tweet from Ryan Sullivan from WP Site Care:

I’ve noticed a decent amount of posts lately that laud the seemingly infinite benefits of freelancing. Who wouldn’t enjoy making their own schedule? Who doesn’t want to define the limits of their income? No more putting in “time-off” requests three weeks ahead of time to make it to your future child’s ultrasound—just shut down your station, and go!

These are the benefits I’ve had (and questioned) for the past year and a half. 2014 marked the first full year I’ve worked for myself. Previously, I’ve flipped burgers, sold Kias, and been an Atlas-like employee at a (now dissolved) WordPress agency.

This last position was the one responsible for my lust for the “free” in freelancer. I was tired of company bureaucracy, politics, bosses, project managers, hectic deadlines, sales people who didn’t understand what they were selling; the list goes on. In short, I was burnt out. To me, freelancing seemed to be the answer—albeit a frightening one. I was not unaware of the added responsibility and possibility of failure that comes with self-employment. To me, though, the benefits far outweighed the risks. I felt I had the chops to solely manage the process I’d seen go so wrong. I didn’t need a sales person to sell, especially when they usually over-(or under-)sell. I didn’t need a project manager when I could use an App For That™.

I’ve been talking about all of this in the past tense, so I know you must expect what comes next: I’m ready for a change. Some might call it a regression, though I’d have to disagree. Quite simply, the boots I’ve put on are a bit too big. I have some growing up to do, and I’ve been too stupid, too afraid, or too prideful to admit it.

As I sat down today to work, I realized just what I was doing: working the day after Christmas. I also worked the Eve of, until around 6:00 PM. It hit me today, what I had traded for this. I asked for the “freedom” of managing my schedule. But this means I’m wholly responsible for my income. In my current state as a freelancer, a day lost = income lost—no if, ands, or buts about it. I have greatly enjoyed the ability to drop work at a moment’s notice, but I’ve been fooling myself. All I’ve done is shift my work to later nights, to more weekends, and the day before and after Christmas.

That is the first reason I’m ready for a change—to be able to turn work off. Not at a moment’s notice or on a whim, not when I just don’t feel like it, but at a predictable time, on predictable days. When I transitioned to freelancing, I thought I was trading rigid constraints for flexibility; I feel that I’ve really traded reliable structure for wild unpredictability.

Besides what I hope to gain in predictability, there are a few other key things that have convinced me to give up the reigns:

– Experience with a team will make me a better employee and a better person. I feel like I have a decent handle on working in a team, but in general I have never had a good experience working with a team larger than 2 on web projects. I need to see a project handled *correctly* from start to finish. I need to learn how to fill one role and rely on everyone else’s capacity to fill theirs.

– Job stability will give me the time—more importantly the passion—to ship stuff I’ve been waiting to ship. Obviously I’m not gaining more hours than are in a day. But when my income is a direct result of the time I put into client work every day, side projects without guaranteed (or immediate) return quickly fall to the wayside. Not only this, spending all day finding work and working burns me out. I don’t have any passion for working on side projects because my day saps me dry.

The last reason is a little more selfless than the rest:

– I don’t know much about business. Sure, I took some finance and business classes at college in pursuit of a BSBA in CIS (whew!). But I’ve realized that at this time, wearing the hats of project manager, sales person, and developer may be doing a disservice to my clients. Trying to learn how to run a business as I go is not only unfair to my clients, it greatly adds to the stress of my day. Of course, I’m not saying that one has to know everything before freelancing. I am saying that it’s not as easy as it is advertised, and those that urge you to jump into it without first evaluating your ability are giving foolish advice. I’m also not saying that one cannot successfully bear multiple roles; some are able to do this, and distributing those roles to your own team can alleviate those pressures and responsibilities to a degree.


Part of this post is an announcement (and thank you for reading this far, I’m almost done!): I’ve been selected for an apprenticeship at Upstatement. I leave in a few days (the 30th), and start on the 5th of January. I’m very excited about the opportunity, but I’ve been very quiet about it. I think I now know why: I’ve sat on this blog post since the moment I received the news of selection, because the apprenticeship comes with the possibility of an offer of employment.

When I first heard this, I thought, “No way! I’ll never be an employee again.” However, as I started thinking more about it I realized that I’ve never experienced long-term enjoyment at a workplace (thankfully I’ve relatively only just begun!).  Since spending more time in the WordPress community, I’ve become aware of the many generous, good companies in existence here. Places and people who want to foster their employees’ happiness as much as their business’ income. There are places that my talents can be used as they are and honed to be something better, without having to don all the hats I’ve been wearing.

So, I’ve decided to whether or not an opportunity awaits me at Upstatement when my apprenticeship comes to an end, I will soon be entering the market and looking for opportunities as an employee.

All of my thoughts boil down to this: I want to work somewhere I can best be used and shaped. If that eventually leads me back to where I started (freelancing) then so be it; that time is not now, but it may be a part of my future.

“Lots of seasons in life too.” I’ve seen only a couple. I believe it’s time for a new one.

Creating Capital

I had the privilege of working with Personal Capital on an initiative they formed called CreatingCapital.

“Creating Capital is the brainchild of the women of Personal Capital, inspired by a group of women who take time on a monthly basis to help each other with their money.
By joining, you’ll get access to the tools that will help you on a path to financial independence: lesson plans for group discussions and award-winning financial apps.”

My involvement was working with their in-house designer—Kiem Vu, integrating his design visions for the site as well as integrating back-end services, including:

  • Social log-in/registration/sharing
  • Custom form logic
  • Event calendar integration
  • Custom HTML email wrapping API
  • Use of a custom post type for the primary function of the site—Lesson Plans

Check out Personal Capital’s announcement post to read more about it.

A Modern Design Process

I had a fabulous time attending and speaking at WordCamp Raleigh 2014. My thanks go out to Steve Mortiboy and the other organizers and volunteers; the speakers; sponsors; and attendees!

Great conversations were had across the three days I spent in Raleigh; I learned a great deal and hopefully (in some small way) helped someone else do the same!

My session consisted of information I’ve learned in my years in this industry: working for and with agencies and in my current partnership.

I covered a range of topics, including:

  • Managing client feedback and expectations
  • Improving design and development workflow and communication
  • Designing in the browser
  • The pitfalls of Photoshop and a few tools that are more appropriate for web design
  • Designing modularly

Without further ado, here are my slides!
Note that the speaker notes are good for context; click the settings icon or the “S” key on your keyboard once you’ve clicked inside the slides.

WordPress e-commerce… eCommerce… Ecommerce?

I was a speaker at Asheville’s first WordCamp! I spoke in the “User” track on WordPress + ecommerce. The session was basically a “101”-type course, offering a wide range of advice in hopes of allowing potential ecommerce site owners to grasp what they need to know to launch a successful, secure ecommerce website. Here’s a description of and link to the video:

“With WordPress powering over 20% of all known websites, one would assume that it’s used for more than just blogging. WordPress is used for corporate websites, mobile apps, social networks, e-commerce, and more. This session includes guidance on setting up, hosting, securing, theming, and customizing a WordPress e-commerce website. Criteria is shared for selecting an e-commerce plugin, while parts of the talk will focus on a particular plugin for the purpose of illustration. The session is most helpful to those who are interested in or in need of an e-commerce website, but could use some guidance in getting off the ground. The talk delves into moderately technical subjects, but not in a way that would prevent beginners from gleaning important information.”

Check it out!


Chef Jamie Smith started Foodsmith to make it easier families and working adults to eat healthy. I helped them meet this goal with a number of custom plugins and integrations.

Chef Jamie Smith started Foodsmith to make it easier families and working adults to eat healthy. I connected with the Foodsmith team when they were looking for a developer to help them integrate a subscription e-commerce solution with their WordPress website. I selected WooCommerce + the WooCommerce Subscriptions plugin for the job. Some customization (order/delivery dates) was required with their specific ordering process, which I built as well.

On top of this, I built a custom plugin for Foodsmith that allowed customers to pick a location for picking up their meals from an interactive map. I used Leaflet’s Javascript framework for this, as well as Geocoder for geocoding the addresses. The end result was a solution that made it easy for the Foodsmith team to add locations and for customers to pick where to pick up their delicious, healthy meal!

Future work is underway that will further enhance the user experience for customers, giving them an even more seamless meal ordering service.

WordPress Attachment “Alt” Text Priority

Today  I was muddling around with gallery images’ captions/alt text/descriptions. I came to realize that I had no clue in what order WordPress retrieved the alt text for attachments; I knew from experience that it checked several places. The order is:

  1. Use Alt field first
  2. If not, Use the Caption
  3. Finally, use the title

This comes straight from the comments of `wp_get_attachment_image` as of WP 3.7 RC2.