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.
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.
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.
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.
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.
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
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:
_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"._
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!
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 :-)