Target release
Epic
Document status
DRAFT
Document owner
Designer
Developers
QA

Resources

WordPress themes under consideration

Goals

  • Responsive layout
    The first requirement is that the page layout is responsive.  That's a a technical term of art that specifically implies that with a single set of HTML markup we can create web pages that work equally well on wide, high definition, desktop browsers as well as lightweight small screen mobile browsers. Both have different capabilities. So, for example, a mobile browser typically has a touch interface, whereas the desktop typically has a mouse interface.  So when I say responsive, that's what that implies that with a single set of markup we can choose all means of display.

  • Lightweight pages
    The second requirement -- lightweight -- is critical in that it ensures the browser don't use much energy to display the page and that it downloads very quickly. A page should render quickly and there are two reasons for that. One is because some people pay for bandwidth, especially in emerging economies. All of the mobile plans that they have are actually based on the data rate. So the more lightweight we can make the pages, the more we can respect people in emerging economies that may be in our community. The second is speed, and the reason why speed is so important. They say that typically a human can notice a difference of about 200 ms and people typically expect a web page to begin rendering (first paint) in slightly under 200 ms. So the key is, while you may not be able to, on a high speed connection, try to render the whole page that quickly. It may take a full two seconds to render the full page.  But at the very least first paint, meaning the first drawing of something on the page, should happen within the first 200 ms. So when I say lightweight, i'm referring to those two concepts: respecting the visitor's bandwidth and drawing the page rapidly.

  • Accessible page interactions and site navigation
    The third requirement is accessibility. This is not only about making sure our site is readable by people that may have issues with contrast that may have issues reading small text that may use a screen reader.  So that's one aspect of accessibility, but the other is people with different abilities may have different input devices. So someone may browse the website, using only the keyboard, for example, they may not use a a mouse or a touch screen. So we would need to make sure, for example, that you can tab between links on the and that it doesn't take tabbing 200 times, just to get to the content of the page. You know things like that. That's something we discovered in weather.com. We had a huge navigation bar at the top of our markup, and it turned out. People browsing with the keyboard had to tap through the whole navigation before they got to the bottom of the page, so we were able to change the tab index, the tab ordered and solve that problem. But the other aspect of accessibility is making sure it's actually readable by machines, and that will help us with SEO as well as other tactics. So accessibility really helps us out in several different ways.

  • Pre-generate content
    And the fourth requirement is that the server attempt to statically pre-generate as much of the site as practical. What that means to imply is that typically there are two ways of generating websites: static and dynamic. And by that what we mean is does it require a program to build the page every time you hit the URL, or is the page only built once? And then when you hit the URL, it pulls the already complete document out of storage and gives them to you. And that really speaks to performance. And secondarily, how long it takes to deliver the page. So we it's always a good idea as much as possible to pre generate the web pages. and that's something we do with GitHub pages in our documentation website. Likewise, with this marketing website. If the content doesn't change very often, there's typically no reason to dynamically generate the web page. We can pre generate it. especially if there's a handful of pages there's less than let's, say 200 pages on a website on weather.com, where you have over a billion web pages. No, you don't want to statically generate them. But in the case of our marketing website not a problem.

Background and strategic fit

Assumptions

Requirements

#TitleUser StoryImportanceNotes
1
2



User interaction and design

Speaker's Bureau

  • Resources (talks, transcripts, decks)
  • Schedule, Events, Speakers
  • Request a speaker for your event
  • Apply to be a speaker, take speaker training


Adopters

  • Who is using Open Horizon, use cases, resources
  • Report your organization as an Adopter of Open Horizon


Training

  • Workshops
  • Self-paced training
  • Short courses
  • Badges
  • Mentorships


Events

  • Conferences
  • Meetups
  • Attending


Project Partners

News/Media

  • Press releases
  • Blog posts
  • Open Horizon in the news
  • Videos


Ecosystem

  • Works with Open Horizon


Download and run

Documentation

Project Meetings/Get Involved

Organization governance/information/structure

Communicate with us

About the project

  • History
  • Purpose
  • Maturity


Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome

Not Doing