Blog

WP Engine Mercury: Building a WordPress Jet Engine

WP Engine MercuryPutting problem solving before technology often means figuring the technology out – sometimes as we go. From push notifications and search to standardizing local development, we’re most proud of contributions that advance markets and platforms, not just 10up.

Months ago, WP Engine, a market leader in managed WordPress hosting, reached out to us for candid feedback with an eye toward the platform’s future. The Labs team was determined to invent not only the future of WP Engine, but the future of WordPress hosting; to be as disruptive as WP Engine was in its earliest days. From better hardware and developer tools to bleeding edge performance technology, the vision was compelling, and it was clear that from CEO Heather Bruner to Founder & CTO Jason Cohen, they were all in.

Its 10up’s position that a rich, forward-looking ecosystem of managed hosting choices is vital to the success of a web platform; we’re only as strong as the weakest part of our stack. Membership, integrated social engagement – even e-commerce – are increasingly entangled with content and publishing, and there are, unsurprisingly, a dearth of hosted WordPress choices tackling these use cases. As the fail-whale oft-reminded us, these cases are very hard to scale, particularly with run-time languages like PHP atop traditional SQL databases. Just ask Facebook. (Actually: we did. Read on.)

WP Engine wanted to tackle this problem. They had us at “do you want to help us build it?”

Read More on WP Engine Mercury: Building a WordPress Jet Engine

10up Engineering Best Practices

At 10up, we build custom publishing experiences. We take great pride in all aspects of building websites, from user interaction design to code performance. Security, style, workflow, design patterns, performance, and even tools all influence that publishing experience. We use the term “engineer” rather than “develop” because of the amount of skillful strategy and true craftsmanship involved in what we build.

With over 90 full time employees, 10up has a diverse team of strategists, project managers, designers, and a few dozen incredibly smart, diverse engineers. Standardization in engineering is increasingly important with such a large team. Over the past few months we collaborated as a company to document how we engineer and why. We spent a great deal of time considering various things such as WP_Query performance recommendations, workflows to maximize efficiency, and tools we want to use and maintain as a team.

We are proud to open source our Engineering Best Practices as a public project on GitHub. WordPress is an open-source project and so are our Engineering Best Practices. We believe WordPress has continued to grow because of its embracement of open source philosophies. We want our Best Practices to follow that model. We know there are opportunities to keep improving, and want to welcome community contributions that are in tune with our philosophies.

Meet ElasticPress

We are proud to announce the release of a new plugin, ElasticPress, to the WordPress community. The project started as an internal initiative to meet a particularly common yet difficult client request: improved WordPress search.

ElasticPress

ElasticPress integrates WordPress search with Elasticsearch which has become increasingly prominent powering search on major enterprise websites such as Github and WordPress.com. Elasticsearch is a scalable, peformant, and open source standalone search server based on a technology from Apache called Lucene. Besides being fast and scalable, Elasticsearch can do things like relevant results, autosuggest, geographic search, fuzzy matching, data weighting, and more.

ElasticPress ties your Elasticsearch instance to WordPress. It is a lightweight plugin that overrides the WP_Query object to return posts from Elasticsearch instead of MySQL. There are a number of special WP_Query parameters that the plugin supports to do things like meta, taxonomy, and author searches. ElasticPress can also handle cross-blog search on WordPress multi-site installations.

Full documentation and usage instructions for the plugin are on Github. ElasticPress requires WP-CLI as it is preferable to handle things like bulk indexing through PHP CLI.

Please reach out on Github with any questions. We are happy to help and greatly appreciate contributions.

10up at WordCamp Providence 2014

wcprovlogo_1xOn September 26-27, John Eckman and I will be attending WordCamp Providence at the University of Rhode Island. The excitement continues around the JSON REST API slated for core integration in the near feature. (I participated on the WP API team, along with fellow 10up’er Rachel Baker). A huge amount of work has gone into the API, and we are all super excited to present on it at WordCamps around the world.

I’ll be giving a talk covering the need for the API, cover REST basics, and teach developers to use the API. Having been the lead contributor to the Backbone client, I will be talking about how developers can use JavaScript to interact with the API. There are already some awesome JavaScript implementations of the API popping up such as my own _s_backbone.

If anyone is interested in talking about the API, working for 10up, or just generally chatting feel free to pull me aside!

Meet a few WordPress filters (and folks) in Albuquerque

WordCamp Albuquerque logoAfter a rare couple of weekends in a row with no 10uppers speaking at a WordCamp (largely because there were none in session!), we’re back in action this weekend at WordCamp Albuquerque, happening Friday through Sunday, September 13-15. Located in downtown Albuquerque, New Mexico, this particularly packed WordCamp features three days of programming, including a Sunday Hackathon and a WordPress for Kids session. Not to mention, a new talk by yours truly!

On Saturday morning, I’ll be presenting There’s a Filter for That, focusing on the ins and outs of the WordPress Filters API. In this developer-focused talk, I’ll introduce some common (and uncommon) filters designed to spark discussion.

The timing of this talk is exciting for me, in part due to my heavy involvement in the inline-docs initiative planned for WordPress 3.7. In this new and, frankly, huge undertaking, the team is attempting to document all actions and filters in WordPress core in the new WordPress Developer Resources announced at WordCamp San Francisco this year. This talk also goes hand-in-hand with the Filters of the Day blog series I started earlier this summer.

There are still a few tickets left, so come out to the beautiful Duke City this weekend and catch me and my fellow community members at WordCamp Albuquerque!

WordPress Providence Meetup Kicks Off

Inspired by a few WordCamps that built themselves up from local WordPress meet ups, I finally got a few locals together at the beginning of April (Ken DeBlois of Brown and Suzanne McDonald, a freelance writer) to help organize a Providence Meetup. A couple of planning meetings, a new website, a Twitter account, and some local marketing later, we had our first meet up on April 26th.

I’ll be blogging over at the WordPress Providence website, so I won’t say too much about it in this forum, but the headline is that I was thrilled by the turn out and energy at our first event. We had about 30 attendees, a lot of buzz during the hour of networking, a nice and short presentation by DandyID (a local firm with a popular plug-in), and a great after-presentation brainstorming / discussion session.

Read More on WordPress Providence Meetup Kicks Off