Estimates and estimation

“In preparing for battle I have always found that plans are useless, but planning is indispensable.”
Dwight D. Eisenhower

Why we estimate

Suppose you’re preparing for a trip and deciding which suitcase to take. You have a small suitcase that you like because it’s easy to carry and will fit into an airplane’s overhead storage bin. You also have a large suitcase, which you don’t like because you’ll have to check it in and then wait for it at baggage claim, lengthening your trip. You lay your clothes beside the small suitcase, and it appears that they will almost fit. What do you do? You might try packing them very carefully, not wasting any space, and hoping they all fit. If that approach doesn’t work, you might try stuffing them into the suitcase with brute force, sitting on the top and trying to squeeze the latches closed. If that still doesn’t work, you’re faced with a choice: leave a few clothes at home or take the larger suitcase. —Steve McConnell, Software Estimation: Demystifying the Black Art

As an engineer, nothing pleases me more than rolling up my sleeves and writing code. But before doing that, a sense of how to approach a task and the required resources (people, time, software licenses, third-party API access) need to be determined. These details support clear project expectations, which are foundational to the great client experiences we strive to create. Estimates, give all project stakeholders—internal and external—a chance to agree on a few key things before work is begun:

  • That we understand what is being asked for;
  • That we have a plan to efficiently deliver quality results;
  • That we’ve asked (and answered) all project team questions;
  • That we’ve considered all the risks, edge cases, and alternatives;
  • That we’ve considered the effects on usability, accessibility, and SEO;
  • That the available budget and desired timeline support the approach.

Read More

Get to know New Relic Reporting for WordPress

New Relic is a SaaS product that offers application performance monitoring (APM), which provides developers with real-time data for use in proactive diagnostics as well as debugging. This data—including basic information about WordPress hooks, plugins, and themes—can be queried and visualized using the New Relic Insights dashboard.

Seeing an opportunity to maximize the utility of APM and Insights, we created New Relic Reporting for WordPress, which supplements out-of-the-box data collection with additional WordPress-specific information.

Read More

Introducing WP Docker

Back in 2013, 10up introduced Varying Vagrant Vagrants (VVV), a project led by then 10upper Jeremy Felt. One of the first popular WordPress development environments based on Vagrant, VVV has since been moved out of 10up’s GitHub and into its own, where it continues to thrive as a community-led project.

Now, Docker and container-based server architectures have emerged as powerful tools for creating and managing development environments. Last year, we partnered with Joyent to release a scalable, production-ready Docker environment for WordPress. Today, we’re proud to release WP Docker: an open source Docker configuration optimized for local WordPress development.
Read More

Meet ElasticPress.io: a hosted search and query engine for ElasticPress

We’re proud to announce ElasticPress.io: a hosted service that integrates with ElasticPress, our popular plugin, to provide a fast and flexible search and query engine for WordPress.

We built ElasticPress to overcome higher-end performance and functional limits posed by the more traditional, structured (SQL) database underpinning WordPress. Storing content in a modern (noSQL) query engine like Elasticsearch empowers us to produce superior keyword search and related content results, and supercharge the performance of complex queries like a filter on multiple product properties or a location. Smarter and faster content makes for a better web and, not accidentally, is important to search engines and visitor retention / conversion.

While our plugin made it simple for WordPress-savvy engineers to talk to Elasticsearch, the need to manage Elasticsearch hosting added friction and complexity, at odds with the simple user experience 10up strives for. As we prototyped exciting use cases involving private content, we realized that end-to-end security added even more complexity.

ElasticPress.io solves all of that—making it dead-simple to start using enterprise-caliber search and query technology with WordPress. It enables innovative features like accelerated admin performance that require end-to-end control and security.

Read More

10up client FiveThirtyEight publishes top story of 2016

10up client FiveThirtyEight’s political coverage earned the stats-minded publisher four spots in ChartBeat’s top 25 most engaging stories of 2016, including #1 for their 2016 election forecast. This interactive feature provided predictions in the US presidential race, as well as 34 Senate contests nationwide, leading up to the November elections.

We love seeing clients like FiveThirtyEight topping the charts alongside long-established publishers like BBC, the New York Times, and NPR.

WAMU.org launches, powered by React.js and the WordPress REST API

Yesterday, Washington, D.C. NPR regional affiliate WAMU released a fully reimagined website in partnership with 10up. Designed to elegantly present written and audio content, we engineered a cutting-edge WordPress implementation that leverages React.js and the WordPress REST API to create an immersive single-page app experience. Visitors can listen to audio content using the player bar pinned to the bottom of the screen, without interruption, as they browse the site on a phone, tablet, or desktop browser.

wamu

Read More

Reintroducing Windows Azure Storage for WordPress

When collaborating with Microsoft, we are often responsible for making WordPress work seamlessly with Microsoft’s own offerings, including their Azure cloud service platform. An ideal Azure hosting configuration leverages Azure Blob Storage to store and deliver uploaded media assets and attachments. Microsoft’s existing, open source solution, Windows Azure Storage for WordPress, had been neglected for years; we stepped up to overhaul the plugin.

The 4.0 release addresses legacy SDK dependencies and features a refactored code base, bringing it in line with our WordPress Best Practices.

Read More

Introducing Twenty Sixteen React and NodeifyWP

twentysixteenreact
As web technologies and mobile devices improve and global internet speeds increase, consumers increasingly expect taps and clicks to deliver results nearly instantaneously; the “app-like” experience has become an expectation in web browsers. To this end, we’ve seen huge strides forward in web platforms and frameworks.

Among its most notable relevant advancements, WordPress introduced a JSON REST API, which opens up new, compelling use cases as a framework and content storage engine, such as headless publishing workflows. However, since WordPress runs on PHP, it can’t be used in conjunction with an important breakthrough: isomorphic applications.

Isomorphic web applications run the same code on the server and client (web browser), providing the flexibility, extensibility, and consistency to build the most modern “app-like” experiences on the web. JavaScript and Node.js are used to create isomorphic applications, since JavaScript runs natively in the web browser and is the foundation for server-side Node.js. (Learn more about isomorphic applications.)

Since we can’t run PHP in the web browser, we have a few options for creating JavaScript-powered “app-like” experiences in WordPress.

Read More

Meet ElasticPress 2.0

elasticpress-square

ElasticPress 2.0 is a major update, with improvements to search result weighting, expanded query parameters, and better metadata syncing.

Tweaks to the search algorithm’s fuzzy matching limit unwanted results (i.e. searches for “yell” previously returned results for “yeti,” since the terms are only two characters apart) while still correcting for misspellings. Results are more intelligently weighted, with documents containing all search terms boosted 2x, and another 2x boost for documents matching the order of searched terms.

Read More

10up and ESPN launch The Undefeated

tu-logo
On May 17, 10up launched The Undefeated, the latest project in our longstanding partnership with ESPN. Like Grantland and FiveThirtyEight before it, The Undefeated examines our world through a unique lens, exploring the intersections of race, sports, and culture through “innovative storytelling, original reporting, and provocative commentary.” We’re thrilled to celebrate the release of The Undefeated, which is receiving accolades and high engagement with its community feature, You Got 99 Words.