Skip to content

Latest commit

 

History

History
210 lines (160 loc) · 9.84 KB

community.md

File metadata and controls

210 lines (160 loc) · 9.84 KB
layout title
default
The Rust Community · The Rust Programming Language

The Rust Community

Rust is an amazing programming language, but its greatest strength is its kind and inclusive community.

We are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, disability, ethnicity, religion, or similar personal characteristic. Our code of conduct sets the standards for behavior in all official Rust forums.

If you feel you have been or are being harassed or made uncomfortable by a community member, please contact any of the Rust Moderation Team immediately. Whether you are a regular contributor or a newcomer, we care about making the community a safe space for you.

Getting Started

The most important community resources for those new to Rust are:

  • #rust-beginners, an IRC channel that loves answering questions at any depth.
  • The Users Forum, for discussion of all things Rust.

You may also find help on the question and answer site, Stack Overflow.

News

This Week in Rust collects the latest news, upcoming events and a week-by-week account of changes in the Rust language and libraries. The Rust Blog is where the Rust team makes announcements about major developments. And nearly everything happening in Rust is discussed on the unofficial subreddit, /r/rust.

We also have a Twitter account.

IRC Channels

Rustaceans maintain a number of friendly, high-traffic IRC channels on Mozilla's IRC network.

The #rust channel is a venue for general discussion about Rust, and a good place to ask for help. You'll find people willing to answer any questions about Rust, and responses are typically fast.

Rust's developers coordinate in #rust-internals. It is for real-time discussion about hacking on Rust itself. It is also the channel to ask questions about contributing to Rust.

Main channels

Topical channels

  • #rust-beginners is a space for those new to Rust, lower traffic than #rust
  • #cargo is for discussion of Cargo, Rust's package manager
  • #servo is for discussion of Servo, the browser engine written in Rust
  • #rust-offtopic is for general chit-chat amongst Rustaceans
  • #rust-crypto is for discussion of cryptography in Rust
  • #rust-osdev is for people doing OS development in Rust
  • #rust-webdev is for people doing web development in Rust
  • #rust-gamedev is for people doing game development in Rust
  • #rust-networking is for people doing computer networking and development in Rust
  • #rust-bots notifcations about Rust from a selection of bots

Discussion Forums

We have two forums for asynchronous discussion:

  • The Users Forum, a space for asking questions, posting code snippets, talking about Rust projects, and so on.

  • The Internals Forum, a space dedicated to design and implementation discussion about Rust itself (which includes Cargo, the standard library, and other core bits of infrastructure).

User Groups and Meetups

There are more than 50 Rust User Groups worldwide in over 20 countries totaling over 7,000 members. Rustaceans meet periodically in Rust User Groups. Its a great introduction to the community and a great way to learn and socialize with other people with a similar interest. Meetings are usually held monthly and very informal. Meetings are open to everyone.

There is a global calendar for keeping up with Rust events. Contact the community team to add your own.

The Rust Team

Rust has a community-driven development process where most decisions are made through open discussion and consensus, under the stewardship of various teams:

  • The Core Team is responsible for steering the design and development process, overseeing the introduction of new features, and ultimately making decisions for which there is no consensus (this happens rarely).

  • The Language Design Team is responsible for the design of new language features.

  • The Library Team is responsible for the Rust standard library, rust-lang crates, and conventions.

  • The Compiler Team is responsible for compiler internals and optimizations.

  • The Tooling and Infrastructure Team is responsible for official tools like Cargo, multirust, rustfmt, as well as the CI Infrastructure for the project.

  • The Community Team is responsible for coordinating events, outreach, commercial users, teaching materials, and exposure. They can also direct inquiries to the correct parties when its not clear who to contact about something Rusty.

  • The Moderation Team is responsible for helping to uphold the code of conduct.

In addition to the official team rosters, most teams also have a larger set of reviewers who are knowledgeable about the area and can sign off on code. If you're interested in getting involved in one of these teams, feel free to reach out to the team leader or any other member, who can help get you started.

Rust Development

Rust has had over 1,200 different contributors, a number that grows every single week. We'd love for you to join that list!

As mentioned above, the Rust Internals Forum is dedicated to discussing the design and implementation of Rust. A lot of discussion also happens on Github:

  • The main repository and issue tracker are the front lines of the implementation work. Our reviewers strive to be friendly and to help mentor newcomers, so don't hesitate to open a pull request!

  • The RFC repo tracks our Request for Comment process, the main pathway through which the Rust community and the teams reach consensus on new features proposed for the language and official libraries and tools.

Roughly weekly, the Rust teams produce team reports tracking team business, including the progression of proposals through the RFC and implementation process.