rust-lang / www.rust-lang.org

The home of the Rust website
https://www.rust-lang.org
Apache License 2.0
370 stars 290 forks source link

Content: technical features of Rust #445

Open KiChjang opened 5 years ago

KiChjang commented 5 years ago

Content Feature Request

Summary

Re-add the laundry list of technical features to somewhere accessible

Motivation

While it is important that we focus on solving the firecracker problem, the beta site currently suffers from the inability to attract the more technical crowd. We've answered "Why Rust?" in general, but we're missing out on the more elaborate details of the reason.

Drawbacks

It may increase the amount of information present on the site and details that do not matter to a portion of the audience.

Rationale and alternatives

Instead of providing the list directly on the front page itself, I propose that we add a navbar link, or a small section on the front page devoted to explaining the technical features of the language itself (and then adding a link to a more dedicated page). This would minimize the amount of information presented to the general audience, while being able to redirect the technical crowd to a place where it is more suited to answer their questions.

We can also leave the site as-is, and link our audience to the book if they want more information, but this feels like we're regressing to the attitude of "read the manual if you're not clear on what technical benefit that Rust provides".

While being a Rustacean myself, I do not think it is a good idea to assume that we are already very successful so much so that we can completely leave out introducing the technical features that Rust provides.

Maintenance

There should be minimal maintenance overhead as we've been providing this list in previous iterations of the website.

Unresolved Questions

Should an FAQ page also be added somewhere on the main site?

aturon commented 5 years ago

I definitely agree that we should look at ways to reach a better balance here! Our original plan was to have a dedicated page much along the lines you suggest here, but it wasn't ready to go in time for beta.

I'm going to tag this under the Edition Release milestone for now, and will try my best to get this material together before next week!

dan5sch commented 5 years ago

Agreed that this information is highly valuable to systems developers coming from, e.g., C/C++ who want to find a brief technical description of how Rust does things differently.

Proposed location for a link to such a "laundry list" page: at the bottom of the "Why Rust?" section, beneath the "Performance," "Reliability," and "Productivity" items. The first two items hint at the language's technical details and the motivation for these design decisions; and the last item hints at the technical details of the tooling for the Rust language.

At the end of "Why Rust?", a button labeled something like "Technical Overview" could lead to the "laundry list" page expanding on those three bullet points. (Notably, that section is the only one without a button leading to more information.)

aturon commented 5 years ago

@dan5sch that's pretty much exactly what I was thinking as well, and good point about there being no button there yet either!

dan5sch commented 5 years ago

This discussion and the one on #351 seem to be converging, fwiw.

dogweather commented 5 years ago

For how to present this technical content: how about the strategy of different "tracks" for the different audiences? This is a common technique when there's both a business case to make as well as a technical case.

chriskrycho commented 5 years ago

@dogweather in a lot of ways, that's actually how the current content and structure is designed already, and #351 will give a straight shot into the "just give me the technical bits" as those pieces land.