diff --git a/blog-site/src/pages/making-tough-content-choices/index.md b/blog-site/src/pages/making-tough-content-choices/index.md new file mode 100644 index 000000000..5205903b8 --- /dev/null +++ b/blog-site/src/pages/making-tough-content-choices/index.md @@ -0,0 +1,122 @@ +--- +title: "Making tough content choices" +authors: +- Ryan Johnson +excerpt: "Fundamental to any content strategy is the process of balancing user needs, business objectives, and workflow requirements. Evaluating those variables leads to the real challenge to come: making difficult content choices." +tags: +- content design +- content strategy +date: "2019-05-16" +--- + +Over the years, I've found the discipline of content strategy to be...malleable. Sure, there are principles that guide the overarching approach, but the day-to-day mechanics of the job are shaped by the organization's culture, its mission, the composition of the team, and the history and trajectory of the product itself, among other variables. + +Common to every content strategy I've developed is an unavoidable reality: we must make tough content choices. + +## A brief history + +[Natural Resources Revenue Data](https://revenuedata.doi.gov/) was originally built by [18F](https://18f.gsa.gov/) to support the United States' participation in the [Extractive Industries Transparency Initiative](https://eiti.org/) (EITI). The site served as an interactive version of the EITI annual report, required by member countries of EITI. + +In practice, here's what that meant for the site's content strategy: + +- The [EITI standard](https://eiti.org/about/how-we-work#implementing-the-standard-nationally) mandates the formation of a multi-stakeholder group to define how EITI will work in the respective country. For the U.S., that meant, in part, that the multi-stakeholder group performed the content governance role for the site. +- The standard requires that each member country supply an independent administrator, a non-governmental entity to help coordinate the implementation of the standard. In our case, it was an outside contractor, the staff for which also developed much of the site's content. +- The scope of data and content under EITI went beyond the federal government's management and regulatory authority over extractive industries and included data and content related to the economic impact of the extractives sector on local economies and Gross Domestic Product. + +Basically, The EITI standard provided the scope, vision, and governance for the site. + +## A new reality + +In late 2017, the [U.S. withdrew from EITI](https://revenuedata.doi.gov/about/#history). The site would live on, but the content strategy would need to change. + +![United States Extractive Industries Transparency Initiative with the United States fading away to white](./useiti-fade.gif) + +Meanwhile, [18F was transitioning the work to our team](https://18f.gsa.gov/2018/05/01/lessons-from-an-18f-product-transition/). We no longer had our governance structure, outside content creators, the developers who built the site, or the EITI standard. + +So what now? 😟 + +## Making tough content choices + +Our problem was a common one: we needed to define our new constraints and evaluate user needs (and our ability to meet them) within those constraints. + +We started by reframing the product vision. + +## Defining our constraints + +I didn't fully realize at the time how important our [product framing](https://github.com/ONRR/doi-extractives-data/wiki/Product-framing) would be later on. It can be difficult to allocate the time to do this critical, illuminating work when you're trying to onboard a new team and continue to ship features. But without it, each decision becomes more difficult and subjective, with no North Star to navigate personal preferences, political pressures, difficult choices, or pain points. + +We took a couple of weeks (a sprint) to redefine our purpose and constraints, which included several elements: + +- [Problem statement](https://github.com/ONRR/doi-extractives-data/wiki/Product-framing#problem-statement) +- [Product vision](https://github.com/ONRR/doi-extractives-data/wiki/Product-framing#our-vision) +- [What we're _not_ trying to do](https://github.com/ONRR/doi-extractives-data/wiki/Product-framing#what-we-are-not-trying-to-do) +- [Product risks](https://github.com/ONRR/doi-extractives-data/wiki/Product-framing#risks) +- [Prioritization scale](https://github.com/ONRR/doi-extractives-data/wiki/Prioritization-Scale) + +With our product framing toolkit assembled, we could now audit and evaluate content against our agreed upon constraints and aspirations. + +## Content auditing + +I'm certain there are people out there for whom auditing content is a dream come true; I am not one of them. I do, however, cherish _the role_ of content audits in the practice of content strategy. You simply can't move forward with a strategic vision without taking into account the existing disposition of site content. + +![Spreadsheet showing content audit with columns for URL, Title, File type, Description, Word count, Reading grade level, Notes, Tags, Maintenance requirements](./screen-content-audit.png) + +The content audit isn't just an inventory of existing content; it endeavors to capture characteristics of the content that impact our decision making. That is, we're not only evaluating content according to alignment with our revised product vision, but also trying to understand the previous and current governance of the content, its relative maintenance requirements, its complexity, its structure, its value to users, and so on. + +A content audit will often reveal the limits of user-centered content design: your team has to be capable of delivering on the user needs you've identified. So that's where we head next... + +## User needs are just part of the equation + +Our team tries to take a holistic approach to identifying user needs. We examine analytics, we interview users, we iterate and conduct more research...our process starts and ends with users in mind. + +But here's a truth that often goes unmentioned in discussions about user-centered design: user needs are only _part_ of the equation, albeit an integral part. Your team's ability to deliver on user needs is an unavoidable constraint. + +So how do we go about weighing user needs relative our team's capacity to deliver on them? + +### Content evaluation and prioritization + +Excuse the use of the word "prioritization" here. It's an overly artful term for which I've struggled to find a sufficient alternative. The point is, you can't do everything. You have to make tough choices. Here's an example. + +In the EITI era, our site contained data and supporting content outside the scope of our revised product vision. Our data included: + +- National and state GDP for the overall extractive industries sector +- Wage and salary data for the overall extractive industries sector +- Case studies for counties with significant economic reliance on extractive industries +- National extractive industries production from all land categories (private, state, and federal) + +While this data was and is available elsewhere (we pulled it in from other government agencies), our analytics showed some users were accessing it on our site. It no longer aligned with our product vision, but it had at least some value to some users, and it provided context for our "core" data. + +Since it didn't neatly align with our product vision, but still had demonstrable user value, I wanted to evaluate it further. + +I developed a simple content evaluation formula to help guide these tricky content decisions, balancing three variables: + +- anticipated or observed user benefit +- alignment with product vision +- anticipated or observed creation and maintenance burden + + +| Score range | Priority | Description | +|-------------|-----------------|----------------------------------------------------------------------------------------------------------------------------| +| 0–10 | low priority | Content isn’t worth the time and effort to produce or will incur too high a maintenance burden relative to its user value. | +| 10–20 | medium priority | Content might be worth the time and effort but should not be first priority. | +| 20–30 | high priority | Content is clearly worth creating and should be first priority. + +Given some of these categories are wildly subjective, I tried to attach specific, quantitative indicators for each range. For instance, for "Anticipated or observed user benefit," I created three indicators for the 0–10 range: + +- We have conducted research that demonstrates at least 80% of sampled current and/or target users would receive no benefit from the content. + +- The content is available elsewhere, where it is more likely to be sought and discovered by users. + +- If content already exists on the site, our analytics show zero referrals and fewer than 5% total pageviews per month. + +While these indicators aren't perfect, they do give us some parameters to evaluate the content against. And even if we don't use the formula to evaluate every single piece of content, it still frames the way we think about our content choices. Simply documenting a process for evaluating content can impact the way a team approaches those tough content choices. + +## Understanding your constraints _is_ user-centered design + +There's no question that a user-centered approach to product design is the way to go, and its introduction to the development of government digital services is a major win for the public. But it isn't the only factor to consider. + +Your ability to deliver user value is always constrained by, well, _your ability to deliver user value_. There are always trade-offs and edge cases. And as the composition of your team changes or your users' needs evolve, you have to be ready to adapt. + +In the end, making these tough content choices _is_ user-centered. Having no content for a certain subject is often better for the user than having outdated, misleading, or erroneous content. + +So find a formula that works for your organization, one that allows you to deliver the highest quality content for your users within your constraints. \ No newline at end of file diff --git a/blog-site/src/pages/making-tough-content-choices/screen-content-audit.png b/blog-site/src/pages/making-tough-content-choices/screen-content-audit.png new file mode 100644 index 000000000..151a4ca73 Binary files /dev/null and b/blog-site/src/pages/making-tough-content-choices/screen-content-audit.png differ diff --git a/blog-site/src/pages/making-tough-content-choices/useiti-fade.gif b/blog-site/src/pages/making-tough-content-choices/useiti-fade.gif new file mode 100644 index 000000000..03df68f87 Binary files /dev/null and b/blog-site/src/pages/making-tough-content-choices/useiti-fade.gif differ diff --git a/gatsby-config.js b/gatsby-config.js index b7a05d78c..6f9683190 100644 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -16,7 +16,7 @@ let config = { siteMetadata: { title: 'Natural Resources Revenue Data', description: 'This site provides open data about natural resource management on federal lands and waters in the United States, including oil, gas, coal, and other extractive industries.', - version: 'v5.2.0', + version: 'v5.2.1', googleAnalyticsId: GOOGLE_ANALYTICS_ID, }, plugins: [ diff --git a/gatsby-node.js b/gatsby-node.js index 4070345bf..3e171d0a6 100644 --- a/gatsby-node.js +++ b/gatsby-node.js @@ -98,8 +98,8 @@ const createHtmlAstFromFrontmatterField = (createNodeField, pathPrefix, node, fi exports.createPages = ({ boundActionCreators, graphql }) => { const { createPage, createRedirect } = boundActionCreators; - createRedirect({ fromPath: '/how-it-works/federal-revenue-by-company', toPath: '/how-it-works/federal-revenue-by-company/2017', redirectInBrowser: true }); - createRedirect({ fromPath: '/how-it-works/federal-revenue-by-company/', toPath: '/how-it-works/federal-revenue-by-company/2017', redirectInBrowser: true }); + createRedirect({ fromPath: '/how-it-works/federal-revenue-by-company', toPath: '/how-it-works/federal-revenue-by-company/2018', redirectInBrowser: true }); + createRedirect({ fromPath: '/how-it-works/federal-revenue-by-company/', toPath: '/how-it-works/federal-revenue-by-company/2018', redirectInBrowser: true }); return Promise.all([ createStatePages(createPage, graphql), diff --git a/src/components/sections/WhatsNew/WhatsNew.js b/src/components/sections/WhatsNew/WhatsNew.js index 7afdfeafe..109530a7b 100644 --- a/src/components/sections/WhatsNew/WhatsNew.js +++ b/src/components/sections/WhatsNew/WhatsNew.js @@ -7,7 +7,11 @@ const WhatsNew = props => (

What's new

-

In our latest release on May 15, 2019, we made the following changes:

+

In our latest release on May 16, 2019, we made the following changes:

+ +

In our release on May 15, 2019, we made the following changes:

-

Federal revenue by company

-

See federal non-tax revenues from natural resource extraction on federal land in 2017 by commodity, revenue type, and company.

+

Federal revenue by company

+

See federal non-tax revenues from natural resource extraction on federal land by commodity, revenue type, and company.

See revenue by company

diff --git a/src/pages/explore/revenue/index.js b/src/pages/explore/revenue/index.js index 90966cc29..194da5a33 100644 --- a/src/pages/explore/revenue/index.js +++ b/src/pages/explore/revenue/index.js @@ -397,11 +397,11 @@ class FederalRevenue extends React.Component { When companies lease lands to extract natural resources on federal lands and waters, they pay fees to lease the land and on the resources that are produced. This non-tax revenue is collected and reported by the Office of Natural Resources Revenue (ONRR).
- Leasing
+ Leasing
Companies bid on and lease lands and waters from the federal government. They pay a bonus when they win a lease and rent until resource production begins.
- Production
+ Production
Once enough resources are produced to pay royalties, the leaseholder pays royalties and other fees to the federal government.
diff --git a/src/styles/_variables.scss b/src/styles/_variables.scss index f749f3459..31330ebc2 100644 --- a/src/styles/_variables.scss +++ b/src/styles/_variables.scss @@ -1,7 +1,7 @@ @import 'lib/font-awesome/font-awesome/variables'; // Logos -$nrrd-logo-width: 350px; +$nrrd-logo-width: 400px; // Typography $weight-light: 400; // (Lato Regular) use diff --git a/src/styles/blocks/_header.scss b/src/styles/blocks/_header.scss index c8b01d3cc..4b8919d5a 100644 --- a/src/styles/blocks/_header.scss +++ b/src/styles/blocks/_header.scss @@ -37,11 +37,10 @@ } .header-image { - max-width: 350px; width: $nrrd-logo-width; @include respond-to(tiny-down) { - width: 220px; + width: 225px; } } diff --git a/src/templates/how-it-works-revenue-by-company.js b/src/templates/how-it-works-revenue-by-company.js index 5b683274a..f3201a278 100644 --- a/src/templates/how-it-works-revenue-by-company.js +++ b/src/templates/how-it-works-revenue-by-company.js @@ -143,9 +143,9 @@ class HowItWorksRevenueByCompany extends React.Component {

All revenue - from + {' '}from{' '} all commodities - extraction on federal lands and waters ({reportYear}) + {' '}extraction on federal lands and waters ({reportYear})