Skip to content

[RFC] Embedded Rust Community Plan #148

Closed
@japaric

Description

@japaric

EDIT: Updated by @jamesmunns. See this comment for more details

The following items have been generally discussed over the past few months, and we would like to come up with a plan for how to support the embedded rust community moving forward. This is an initial collection, but we would love your input on the following:

  • Would you like to see these components?
  • What tools would make sense for these components?
  • Are there any alternatives to these components that could be more valuable?
  • Any other comments you would like to share

Components

1. NEW: A forum

Set up at https://forum.rust-embedded.org. Perhaps powered by Discourse.

Meant for topics slightly larger than a single blog post or IRC communication, but slightly too ephemeral for a wiki post.

Content driven by the community

2. EXISTING: A Chat Room

We currently have two active chat communities:

  • IRC:: #rust-embedded @ irc.mozilla.org.
  • Discord:: #wg-embedded @ rust-lang discord server

Chat is meant for direct questions, random chat, technical questions.

NOTE: This RFC does not intend to propose new or different chat systems

3. NEW: A blog

A static site, set up at https://blog.rust-embedded.org. Static site generator TBD, likely hosted on github pages, probably at rust-embedded/blog github space. Covers posts such as the newsletter, calls to action, and technical posts by guest contributors (they can send in posts by filing a PR to the blog project, reviewed by the resources team.

We should have an RSS feed.

Comments still TBD.

Content driven by the resources team and the community

4. NEW: A Wiki

A wiki page driven by github, probably residing in the rust-embedded/wg repository, which would locate it at https://github.com/rust-embedded/wg/wiki. We could add an alias at https://wiki.rust-embedded.org.

The wiki should cover things like "how does this specific chip work", or "working with these sensors", or "how to debug using a JLink debugger and GDB".

Content created and curated by the community. No guarantees on correctness.

5. MOVED: Our Bookshelf

These are static mdbook projects that will be hosted at https://*.rust-embedded.org. Currently we (will) have:

  • The Discovery Book (learn embedded through rust)
  • The Rust Embedded Book (learn embedded rust)
  • The Embedonomicon (learn the low level details of embedded rust)

These resources should cover general knowledge of embedded rust, e.g. nothing specific to a tool, chip/family of chips, sensors, etc. May cover general basics such as interactions with a CPU, peripherals, etc.

This content is written by anyone, and curated for completeness and correctness by the resources team. We should guarantee correctness, at least with a similar level of guarantee that "The Rust Programming Language" book does.

6. NEW: Two Websites

We will have the following two pages accessible to us:

  • https://rust-embedded.org
  • The WIP new rust site, likely https://rust-lang.org/what/embedded

https://rust-lang.org/what/embedded

I see this as a promotional website. It should have examples and content, however it serves as a landing point for people not currently involved with rust, or embedded rust. We can contribute content here, but we do not "own" this page.

https://rust-embedded.org

I see this as the technical landing page. If someone asks "how do I do embedded rust", this becomes a singular place we can link them to. From here, we can link to all of the spaced I enumerated above, as well our official repositories, and content such as the "Awesome Embedded Rust" list.

This should be a static site, generated similarly with tools similar to above. Would probably live at rust-embedded/website. Hosted at https://rust-embedded.org.

Content here would be written and maintained by members of the whole embedded wg, and maintained by the resources team.

7. EXISTING: Social Media

So far we only have @rustembedded at twitter. Do we need anything else?

More or less reposts everything from the blog, general interactions with the community.

Tooling:

To achieve the items above, we will need the following categories of tools:

  1. A static site, including:
    • a generator, e.g. Jekyll, Hugo, Gutenberg
    • a host, e.g. Github Pages, Netlify
    • CI for the static site, e.g. TravisCI, CircleCI, etc.
    • Should generate RSS feeds
    • Optional: Something for comments? No comments?
  2. A wiki, e.g. Github Wiki, MoinMoin, MediaWiki, Reddit Wiki
    • Optional: Hosting for the Wiki
  3. A Forum, including:
    • Software, e.g. Discord, PHPBB, Subreddit
    • Optional: A Host, either paid subscription, or self hosted
  4. Tooling for "books"
    • Will likely use the same CI and host as our other static sites
    • We currently use mdbook for all of our books.

Metadata

Metadata

Assignees

Labels

RFCT-resourcesfeb-2019-cleanupThese issues are proposed to be closed, as part of a cleanup of issues in February 2019

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions