Blog

Avatar photo

This Saturday, I will be presenting “Modernizing WordPress Search with Elasticsearch,” focused on ElasticPress, at WordCamp Nashville. 10up’er Zack Rothauser will also be in attendance.

Up in New England at WordCamp Maine, CEO John Eckman presents, “The Four Agreements and Client Services,” covering core tenets from the popular self-help book (The Four Agreements). Jason Clarke and Jason Boyle will also be attending.

Markup, CSS, and Project Structure Best Practices

front end standards

We’re proud to announce the release of Markup, CSS, and Project Structure sections for our Engineering Best Practices.

When it comes to CSS and Markup, our industry offers a vast landscape of choices and philosophies, illustrated by the number of frameworks and preprocessors available. While our Front End Engineering team always pushes the boundaries of these platforms, our Best Practices set a standard bar for the techniques, functionality, tools, and libraries we use.

As we focus on practical business application of technology, our philosophies are guided by a mandate to ensure consistent, reliable, and predictable experiences for website visitors. Many CSS attributes and HTML5 features are amazing, but are also dependent on unreliable polyfills for compatibility with some popular web browsers. In addition to avoiding known technical pitfalls, standardizing our tools, style, and structure improves efficiency, collaboration, and overall quality of work.

Consistent with our support for an open web, our Engineering Best Practices are open and available on Github. We encourage any and all contributions!

ElasticPress and 10up at WordCamp Paris

ElasticPress is coming to Paris this weekend. I will be speaking at WordCamp Paris on January 23, 2015. Day one of the camp is being held at MAS Paris, and day two is at the EEMI school.

My session, occuring Friday at 3pm, is titled “Modernizing WordPress Search with Elasticsearch”. I will describe the limitations of WordPress search and present an alternative, Elasticsearch and ElasticPress. I will explain some basic Elasticsearch cluster configuration tips, run through ElasticPress setup, and demonstrate some really interesting queries that can be achieved with the plugin.

Whether you are a novice WordPress developer or an expert systems engineer with Elasticsearch experience, my session will demonstrate the power of WordPress and ElasticPress and hopefully spark some ideas on how you can improve your site’s search experience.

If you are attending WordCamp Paris, please come say hello! 10up is hiring, and I am always happy to chat about opportunities.

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!

Avatar photo

WordCamp Montreal 2013This weekend I’ll be traveling to Montreal, Canada for the first time to speak at WordCamp Montreal, which is also being sponsored by 10up. I’ll be reprising “What You Missed in Computer Science”, which applies some key Computer Science tools to WordPress. Team 10up has had the pleasure of collaborating with a number of Canadian partners, helping Postmedia launch the new Canada.com and more recently working with Shaw Media to relaunch Global News. We’re proud to give back to the Canadian community through our sponsorship and support. I’m personally looking forward to Matt Mullenweg’s town hall and WordPress.com VIP wrangler Mo Jangda’s presentation.

Reflections: WordCamp San Francisco & 10up’s Annual Meeting

Last weekend I had a blast attending WordCamp San Francisco, the original and largest WordCamp. For the price of one incredibly cheap entry ticket (well, plus travel from my home base in Washington DC…), I saw interesting speakers, ate great food, met friendly people, listened to live jazz, and was given complimentary WordPress gear. The conference was filled with WordPress users, enthusiasts, developers, and everyday people who just wanted to learn more about the platform, bonded by an affection and appreciation for the open-source WordPress project. Tied in with our annual company meeting, all of team 10up was flown into San Francisco for the purpose of attending the WordCamp and having some time for team bonding.

The most anticipated WordCamp event was, of course, Matt Mullenweg’s “State of the Word” – a light-hearted expression of his aspirations for and reflections on the current and future state of WordPress. As a web developer and plugin maker, Matt’s thoughts on unit tests for plugins stood out. Matt underscored the importance of elevating the quality of plugins in the official repository; units tests would be a great way to start this process off.

Read More on Reflections: WordCamp San Francisco & 10up’s Annual Meeting