In the early 2000s, LiveJournal dominated the blogging world. While known as a pioneer in the world of online communities, many may not be aware that its creators are also responsible for one of the most important caching technologies currently powering the web: memcached (pronounced “mem-cache-dee”). Memcached is the caching engine behind Facebook, Twitter, and, a favorite at 10up, WordPress.com. Even though memcached is a stable and mature caching system, it has subtle nuances that can make it difficult to tame. Given that our work at 10up frequently involves development within memcached environments, we have become quite familiar with the ins and outs of the tool. In this article, I share some of my insights, cautions and thoughts on developing in a memcached environment.
On May 19th, I will be speaking at WordCamp Seattle. My talk is entitled: “There’s a Function for That: Doing More for Less with Core Functions”. It is exciting to have the opportunity to geek out about some of the hidden gems in WordPress Core.
I plan to curate a plethora of interesting, obscure and powerful WordPress functions to give them the attention and love that they need. Drawing from my experience with complex WordPress projects, I will introduce developers to exciting WordPress functions. WordPress Core has had so many brilliant developers contribute to it. Part of those contributions have led to an extensive catalog of powerful functions that are waiting to make developer’s lives easier. I hope to shed light on these functions to make developer’s work more agile, allow developers to do things the “WordPress way,” and help contribute to the cannon of poetic code in the world.
WordPress’ cron implementation is a powerful tool for scheduling events in WordPress projects. Its usefulness at times is only matched by the frustration inherent in debugging issues with cron. After my most recent frustrations implementing a WordPress scheduled event, I decided to build Debug Bar Cron, an extension for the fantastic Debug Bar that adds a panel of information about registered events. With 10up teammate Helen Hou-Sandi’s UI love, this plugin helps you easily visualize all of the WordPress scheduled events information to quickly see what is happening with these events.
The plugin focuses on providing developers with the most pertinent information regarding their scheduled events as easily as possible. The “dashboard” shows how many events are scheduled, whether or not WordPress cron ran on the current request, when the next event is scheduled to occur, and the current time for easy comparison for the event times.
Tonight, I will be speaking about how to find a good WordPress developer talk at the Portland WordPress User Group meetup. My goal is to help educate end users about what to look for in a developer. Additionally, I will be leveraging my psychology background in discussing the importance of the relationship between user and developer with regard to accomplishing goals.
I am privileged to have the opportunity to talk about caching for WordPress sites during WordCamp San Diego 2012. My talk, titled “Caching for Coders: How, What and When to Cache in WordPress”, will introduce WordPress developers to core concepts for deploying successful caching strategies in WordPress. There will be an emphasis on getting rid of a “cookie cutter” approach to caching design patterns in favor of building caching patterns that fit the needs of specific WordPress sites. I am most excited to discuss the often neglected topic of “when” to cache in WordPress projects. Not all caching strategies are created equal and I will be addressing some of the more successful caching approaches inspired by my work at 10up LLC.
This talk also gives me the opportunity to try out a new model for developing slides for a presentation. I am using HTML5 slides, which I am managing on a GitHub repo. Hosting these slides on GitHub allows me to effectively “open-source” the talk. Having GitHub as the center of development and discussion of these slides will allow others to contribute to the talk and hopefully let it evolve over time. Who knows what will happen, but I am excited for the potential that this idea has.