Www.rust-lang.org: [meta] Rust 2018 Beta Sprint: Page Overview

Created on 9 Nov 2018  Â·  4Comments  Â·  Source: rust-lang/www.rust-lang.org

Hi! We have 2 weeks left until we put out a beta of the website (26/11/2018). I figured it would be useful to have an overview of the content we currently have, agree on where we want to be 2 weeks from now, and collectively figure out how to get there.

This serves as a first draft, and is intended for a _high level overview_. To discuss individual pages with more granularity it's encouraged to create new issues.

A separate issue should be created to coordinate on overall design; including design direction and making all our pages responsive.

Page Overview

These are the pages we currently have:

| URL | Page Name | Role
| --- | --- | ---
| / | Index | Landing page
| /learn | Learn | Learn Rust, from beginner to master
| /tools | Tools | Showcase Rust's tooling
| /governance | Governance | Standards, Roadmap, RFC process
| /community | Community | Events (meetups, rust bridge, confs)
| /contribute | Contribute | Links to forums, community events
| /what | What | Links to working group pages
| /what/cli | CLI | CLI Working Group Page
| /what/embedded | Embedded | Embedded Working Group Page
| /what/wasm | WASM | WebAssembly Working Group Page
| /what/server | Server | Networking Working Group Page
| /what/language-values | Language Values | ?? (Unclear)
| /what/production | Production | Links to whitepapers & big name companies using Rust in production
| /policies | Policies | Overview of various meta-documents (for lack of a better word)
| /policies/media-guide | Media Guide | Licenses, trademarks, logos and policies around them.
| /policies/security | Security | Security-related disclosure information.
| /policies/license | License | Rust's license
| /policies/code-of-conduct | Code of Conduct | Code of conduct & Moderation.

Page Proposals

Fold "Contributing" page into "Community"

A)n adjustment I'd like to propose is to fold the Contribute and Community pages. It seems like they share a very similar scope, and would make sense to fold into a shared Community page.

Perhaps the only heading left might be "Where to Code", which contains links to Nursery and Rust-lang on GitHub. There's currently talks about folding Nursery + Rust-lang, which would require changing this header either way. Perhaps we can find a natural fit to include a link to the rust-lang org somewhere else.

__Addendum:__ we're linking to /contributing from the "Get Involved" section of the front page. This section seems to be a mix of docs, videos, community events and rust core. I think we shouldn't keep the Contributing page around just for that section, and instead omit also omit it from there.

Rename "Server" page to "Networking"

The name for the networking-related working group is Rust 2018 Networking Working Group, or wg-net for short. We should change the name and description on the site to reflect that.

Fold "Language Values" Page into "Landing"

The language values page was empty, without any descriptions to what it might be. But I assume it's meant to state _Rust's core mission_. During yesterday's text-meeting on Discord @chriskrycho mentioned he felt a mission statement was missing from the landing page, which seemed to resonate with other people.

Due to time constraints I propose we omit this page for now, and instead focus on elaborating on Rust's mission statement on the landing page.

Fold license links in footer into "License", rename to "Licenses"

There are currently very prominent links to icon vendors included in the website's footer. Barring any changes in licensing or vendor that might remove these constraints, I think licensing and attribution would probably make sense to fold into the license page.

If that's the case, license perhaps ought to be renamed to licenses or licensing.

Also worth noting is that the flaticon Terms of Use state nothing about needing to include attribution on the front page, so providing attribution would comply with their terms:

The authorization to use the content in the FreePik Selection or the Flaticon
Selection shall be free provided that any use of the Content in the FreePik
Selection or the Flaticon Selection by the User is credited to the relevant
Website as stated by Freepik Company, S.L. from time to time. In order to
benefit from the Service to use the content in the FreePik Selection or the
Flaticon Selection without the credit to the relevant Website, the User must
purchase a subscription

Page Progress Tier List

This is an overview of the stages pages seem to be in. It's intended to help us prioritize the work that needs done. The tier list is definitely subjective, but I hope everyone can more or less agree on this. There is no ordering _within_ each tier. The tiers are:

  • Tier 1: good enough to release as a beta
  • Tier 2: needs some finishing touches
  • Tier 3: needs more work on
  • Tier 4: exists mostly as a placeholder

_note: I'm defining "good enough to release as beta" here as: "if we were to hit the publish button tomorrow, people would not feel it is unfinished". On a scale of "bad" to "excellent" it's an aggregate category for "everything that's at least good enough"._

Tier 1

  • __Code of Conduct__ looks great.
  • __License__ looks great. (Possibility of being renamed to "Licenses"; see note above).
  • __Media Guide__ looks great.
  • __Security Policy__ looks great.

Tier 2

  • __Embedded__ needs some final touches regarding CSS, and then it should be good! It mostly seems to be issues around vertical rhythm, and mobile support.
  • __Landing__ feels like it mostly needs some styling tweaks (responsiveness, virtual rhythm, some bugs), and copy edits. But that feels more like an ongoing process than a blocker for a preview.

Tier 3

  • __Learn__ has placeholder images, placeholder text, and not much polish. Needs substantial work.
  • __Tools__ is missing styling, making it look different from all other pages. Copy has a few "TODOs" printing still.
  • __Governance__ is missing styling, images, copy.
  • __CLI__ is missing styling, and copy feels unpolished. However work to improve this seems to be ongoing.
  • __WASM__ is missing styling, has broken image links, and is missing copy.
  • __Production__ is missing some copy, has dead links. Styling seems "OK", but doesn't feel nearly as polished as the pages in Tier 1. Probably needs some amount of work.
  • __Policies__ has links to all its sub pages so it does its job, but other than that it only consists of placeholder copy.

Tier 4

  • __Community__ is missing styling, and all copy. It has a general structure, but it needs filling in. The pictures are cool though!
  • __Contribute__ a general structure was established, but nothing else. We propose merging this with "Community" (see proposal above).
  • __What__ it has links to all sub-urls, but has no styling, and no copy. On the flip side: it doesn't seem like it would need much of either to make it acceptable.
  • __Server__ has a general outline, but is missing copy, styling, and currently mostly seems to be a skeleton of a page.
  • __Language Values__ the page is entirely empty. See proposal above what to do about this.
A-Meta

Most helpful comment

Thanks so much @yoshuawuyts. I pretty much agree with everything laid out here. In particularly it has also felt like overkill to me to have all three of Governance, Community, and Contribute pages.

One thing that I didn't see mentioned: a page we're missing over all is "Getting started", that walks you through getting Rust and tools set up and points you to resources for starting quickly. This is obviously a pretty important page :-)

All 4 comments

Thanks so much @yoshuawuyts. I pretty much agree with everything laid out here. In particularly it has also felt like overkill to me to have all three of Governance, Community, and Contribute pages.

One thing that I didn't see mentioned: a page we're missing over all is "Getting started", that walks you through getting Rust and tools set up and points you to resources for starting quickly. This is obviously a pretty important page :-)

One other high-level front page thing I'd note besides the excellent points raised above: the front page lacks a major call to action (CTA) besides "Install Rust" – in particular, it's lacking any example of what it looks like to get started.

My suggestion here would be a “Get Started!” CTA after a few of the other items – preferably with rustup instructions and possibly a hello world example including cargo run, and below it a “learn more!” link that takes you to the Learn page.

That gives people a tiny taste of code (which I always look for; I want to have at least a little idea what this language looks and feels like), and has them able to start immediately, and tells them where to go next to keep learning (presumably the "getting started" page Aaron suggests).

This is particularly important to me because when I go look at a new language, I want some idea of what it looks and feels like. Those things are not deal-breakers or -makers for me, but they do matter, and I suspect I'm not alone in that. The old website's code sample was a good thing to have; the main problem with it was that it wasn't part of a broader story (which the new page _does_ have).

I'd love to come up with one slightly interesting example that uses threading or something to hint at the ways that Rust is super powerful – hello world on every core? I have no good ideas, alas – but even just the bog standard fn main() { println!("Hello, world!"); } would be grand if it included examples of using cargo.

In terms of where, I think we should add that CTA block between the Rust in Production and Get Involved blocks. By the point we're through the Rust in Production section, our hypothetical new developer user is thinking "Okay, but show me the code!"

@chriskrycho Excellent points! Perhaps it'd be useful to open a separate issue about the landing page so we can explore direction in-depth there. That would allow us to track the overall progress for the 2018 beta in this issue. Would you be open to creating an issue about the landing page?

Will do!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Zaechus picture Zaechus  Â·  4Comments

Aloso picture Aloso  Â·  4Comments

eignnx picture eignnx  Â·  3Comments

kolloch picture kolloch  Â·  5Comments

camelid picture camelid  Â·  4Comments