├── .gitignore ├── img └── camprust.png ├── src ├── slides │ └── 2021-11-22_-_Rust_CTCFT_-_Rust_for_Linux.pdf ├── internets.md ├── SUMMARY.md ├── meta.md ├── meetings │ ├── 2022-06-27.md │ ├── 2022-10-17.md │ ├── 2022-01-17.md │ ├── 2022-02-21.md │ ├── 2021-10-18.md │ ├── 2021-09-20.md │ ├── 2021-11-22.md │ ├── 2022-05-16.md │ ├── 2022-03-21.md │ ├── 2022-04-18.md │ ├── 2021-05-17.md │ ├── 2021-07-19.md │ └── 2021-06-21.md ├── welcome.md ├── meetings.md ├── coc.md └── faq.md ├── README.md ├── .github ├── ISSUE_TEMPLATE │ ├── proposed-theme.md │ ├── april.md │ └── talk-proposal.md └── workflows │ └── main.yml ├── book.toml ├── LICENSE-MIT └── LICENSE-APACHE /.gitignore: -------------------------------------------------------------------------------- 1 | book 2 | -------------------------------------------------------------------------------- /img/camprust.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rust-lang/ctcft/HEAD/img/camprust.png -------------------------------------------------------------------------------- /src/slides/2021-11-22_-_Rust_CTCFT_-_Rust_for_Linux.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rust-lang/ctcft/HEAD/src/slides/2021-11-22_-_Rust_CTCFT_-_Rust_for_Linux.pdf -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # [Cross-Team Collaboration Fun Times](https://rust-lang.github.io/ctcft/) 2 | 3 | [![camprust](https://raw.githubusercontent.com/rust-lang/ctcft/main/img/camprust.png)](https://rust-lang.github.io/ctcft/) 4 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/proposed-theme.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Propose a theme for a future month 3 | about: Suggest an theme for a future meeting agenda 4 | title: '' 5 | labels: proposed theme 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Idea**: *What is the general idea of theme? A brief paragraph is good.* 11 | 12 | -------------------------------------------------------------------------------- /book.toml: -------------------------------------------------------------------------------- 1 | [book] 2 | authors = ["Niko Matsakis"] 3 | language = "en" 4 | multilingual = false 5 | src = "src" 6 | title = "Cross-Team Collaboration Fun Times" 7 | 8 | [output.html] 9 | site-url = "/ctcft/" 10 | git-repository-url = "https://github.com/rust-lang/ctcft" 11 | 12 | [output.html.fold] 13 | enable = true 14 | level = 0 15 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: Deploy mdBook 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v2 13 | - uses: XAMPPRocky/deploy-mdbook@v1.1 14 | with: 15 | token: ${{ secrets.GITHUB_TOKEN }} 16 | -------------------------------------------------------------------------------- /src/internets.md: -------------------------------------------------------------------------------- 1 | # Internets 2 | 3 | ![Schitt's Creek Image](https://media.giphy.com/media/l0IyhuGIkIfxfLL0I/source.gif) 4 | 5 | Here are links to various Rust CTCFT related internet things: 6 | 7 | * [@RustCTCFT on Twitter!](https://twitter.com/rustctcft) 8 | * [rust-lang/ctcft on Github](https://github.com/rust-lang/ctcft/) 9 | * [RustCTCFT Calendar](https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com&ctz=America%2FNew_York) 10 | 11 | 12 | 13 | (Yes, this page was mostly an excuse to embed that GIF.) 14 | -------------------------------------------------------------------------------- /src/SUMMARY.md: -------------------------------------------------------------------------------- 1 | # Summary 2 | 3 | - [👋🏽 Welcome](./welcome.md) 4 | - [👨‍👩‍👧 Meetings](./meetings.md) 5 | - [2022-10-17](./meetings/2022-10-17.md) 6 | - [2022-06-27](./meetings/2022-06-27.md) 7 | - [2022-05-16](./meetings/2022-05-16.md) 8 | - [2022-04-18](./meetings/2022-04-18.md) 9 | - [2022-03-21](./meetings/2022-03-21.md) 10 | - [2022-02-21](./meetings/2022-02-21.md) 11 | - [2022-01-17](./meetings/2022-01-17.md) 12 | - [2021-11-22](./meetings/2021-11-22.md) 13 | - [2021-10-18](./meetings/2021-10-18.md) 14 | - [2021-09-20](./meetings/2021-09-20.md) 15 | - [2021-07-19](./meetings/2021-07-19.md) 16 | - [2021-06-21](./meetings/2021-06-21.md) 17 | - [2021-05-17](./meetings/2021-05-17.md) 18 | - [⚙️ Meta: for the organizers](./meta.md) 19 | - [🤔 FAQ](./faq.md) 20 | - [🔗 Internets](./internets.md) 21 | - [💖 Code of conduct](./coc.md) -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/april.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "Propose a talk for April's theme: Learning" 3 | about: Suggest a talk for 2022-04-18 CTCFT 4 | title: '' 5 | labels: ["suggested agenda item", "2022-04: Learning"] 6 | assignees: '' 7 | --- 8 | 9 | **Who:** *List github user names for folks who would present the item -- or just regular names* 10 | 11 | **General idea:** *What is the general idea of what you want to present? A brief paragraph is good.* 12 | 13 | **Theme**: Learning 14 | 15 | **Which of the following categories apply:** (You can pick more than one!) 16 | 17 | * [ ] Status update of broad interest 18 | * [ ] Experience report with insights to share 19 | * [ ] Proposal for discussion 20 | 21 | **What Rust teams would be intereted in this and why?** 22 | 23 | **What kind of feedback are you looking for from the audience (if any)? Are there specific questions you'd like to ask?** 24 | -------------------------------------------------------------------------------- /src/meta.md: -------------------------------------------------------------------------------- 1 | # ⚙️ Meta: For the organizers 2 | 3 | This page documents the procedures that we use as CTCFT organizers. It's mostly for our own reference! 4 | 5 | ## Week before CTCFT 6 | 7 | * Check in with speakers 8 | * Encourage people to put their slides in the hackmd page 9 | * Create the agenda slide deck 10 | 11 | ## Day of CTCFT 12 | 13 | * Tweet from CTCFT account 14 | 15 | ## Orientation emeting 16 | 17 | The week after each CTCFT, we hold an **orientation meeting** with the following agenda: 18 | 19 | * Brief retro: How did that CTCFT go? 20 | * For next month: 21 | * If not enough talks have been submitted to make an agenda, brainstorm people to ping. 22 | * For über-next month: 23 | * Select theme and time 24 | * Create a page for it on the CTCFT repository 25 | * Create calendar event 26 | * Create github label 27 | 28 | *Definition:* The über-next month of March is May. 29 | 30 | ## After each CTCFT 31 | 32 | * Post video to YouTube playlist, update page with link 33 | * Get slides from people, if none were submitted, and link to them 34 | * Tweet about it -------------------------------------------------------------------------------- /src/meetings/2022-06-27.md: -------------------------------------------------------------------------------- 1 | # 2022-06-27 2 | 3 | | Info | | 4 | |------------------------------------------------|-------------------------------------------------| 5 | | Time | 13:00 US Eastern Time ([see in your time zone]) | 6 | | Social hour calendar event (with Zoom details) | [link][calsh] | 7 | 8 | [see in your time zone]: https://everytimezone.com/s/91fc41e2 9 | 10 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=Nm9ydmdlYnEzMzVodm85azV1a3JkODU3azUgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 11 | 12 | ## Social hour 13 | 14 | This month, there won't be a full CTCFT meeting. Instead, we'll just be holding 15 | a Social Hour. The idea is really simple: we will create breakout rooms in Zoom, 16 | and you can join any breakout room you like and hang out. 17 | 18 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 19 | -------------------------------------------------------------------------------- /src/meetings/2022-10-17.md: -------------------------------------------------------------------------------- 1 | # 2022-10-17 2 | 3 | | Info | | 4 | |------------------------------------------------|-------------------------------------------------| 5 | | Time | 12:00 US Eastern Time ([see in your time zone]) | 6 | | Social hour calendar event (with Zoom details) | [link][calsh] | 7 | 8 | [see in your time zone]: [https://everytimezone.com/s/768b8293](https://everytimezone.com/s/0c91f29d) 9 | 10 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NTc1NTBlZTU2N3NjbzJlZDFrbTNjazU1a2IgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 11 | 12 | ## Social hour 13 | 14 | This month, we'll only be running the Social Hour. The idea is really 15 | simple: we will create breakout rooms in Zoom 16 | with different themes. You can join any breakout room you like and hang out. 17 | 18 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 19 | -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 rust-ctcft 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/talk-proposal.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "Propose a talk for a future month" 3 | about: Suggest a talk for a future meeting agenda 4 | title: '' 5 | labels: talk proposal 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Who:** *List github user names for folks who would present the item* 11 | 12 | **General idea:** *What is the general idea of what you want to present? A brief paragraph is good.* 13 | 14 | **Theme**: *Which [currently suggested theme] could your talk fall under and how does it relate to that theme? You may select multiple potential themes. If you're not sure, or it doesn't fit any theme, that's ok too.* 15 | 16 | **Which of the following categories apply:** (You can pick more than one!) 17 | 18 | * [ ] Status update of broad interest 19 | * [ ] Experience report with insights to share 20 | * [ ] Proposal for discussion 21 | 22 | **What Rust teams would be intereted in this and why?** 23 | 24 | **What kind of feedback are you looking for from the audience (if any)? Are there specific questions you'd like to ask?** 25 | 26 | [currently suggested theme]: https://github.com/rust-lang/ctcft/issues?q=is%3Aissue+is%3Aopen+label%3A%22suggested+theme%22 27 | -------------------------------------------------------------------------------- /src/meetings/2022-01-17.md: -------------------------------------------------------------------------------- 1 | # 2022-01-17 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Social Hour calendar event (with Zoom details) | [link][calsh] | 7 | 8 | [timezone]: https://everytimezone.com/s/49dddd18 9 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NnBxdnZwNzJiYzY0ZzgzOHFoMHIydDNtYTIgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 10 | 11 | ## Agenda 12 | 13 | This month, there will not be a regularly scheduled CTCFT meeting. However, 14 | the Social Hour will proceed like normal! 15 | 16 | ## Social Hour 17 | 18 | The idea of the Social Hour is really simple: for the hour after the meeting, we 19 | will create breakout rooms in Zoom with different themes. You can join any 20 | breakout room you like and hangout. 21 | 22 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 23 | -------------------------------------------------------------------------------- /src/welcome.md: -------------------------------------------------------------------------------- 1 | # 👋🏽 Cross-Team Collaboration Fun Times 2 | 3 | ## Fostering cross-team collaboration in the Rust project 4 | 5 | ![Logo](https://raw.githubusercontent.com/rust-lang/ctcft/main/img/camprust.png) 6 | 7 | ## What is this meeting about? 8 | 9 | The Rust teams and working groups have proven to be a really effective way to scale the project. As the teams have grown, though, they have come to operate more and more independently, and we need mechanisms for the whole project to stay in sync. The "Cross-Team Collaboration Fun Times" meeting (CTCFT for short) aims to be one of those mechanisms. 10 | 11 | ## What are the goals of the meeting? 12 | 13 | * 🎉 To celebrate and raise awareness of what is happening in the project. 14 | * ✅ To track progress on important efforts and communicate requests between teams. 15 | * 💬 To give a forum for cross-team discussion and collaboration. 16 | 17 | ## When's the next meeting? 18 | 19 | The [meetings](./meetings.md) section gives more details about the meeting, along with the agenda for upcoming meetings and links to the slides (which are hosted on our [hackmd team]). You can also check out the [CTCFT Calendar] which lists all our meetings and has Zoom links and the like. 20 | 21 | [hackmd team]: https://hackmd.io/@rust-ctcft 22 | 23 | ## Are there minutes and recordings? 24 | 25 | Yes! We typically record the meetings and link to the recordings in the meeting minutes that are published on this site. 26 | 27 | ## Can I come? 28 | 29 | Yes! This meeting is open for anyone to come and observe. Even though the meeting is primarily meant as a forum for the members of the Rust teams, it can be hard to define the borders of a community like ours. We'd love to have people who work on major Rust libraries in the ecosystem, for example, or who work on the various Rust teams at different companies. 30 | 31 | [CTCFT Calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com&ctz=America%2FNew_York 32 | -------------------------------------------------------------------------------- /src/meetings.md: -------------------------------------------------------------------------------- 1 | # 👨‍👩‍👧 Meetings 2 | 3 | 4 | 5 | Every CTCFT Meeting has its own page, found on the left. The page contains the agenda and, after the meeting takes place, it is updated with notes and links to a recording (if any). Meeting agenda items are always announced at least one week in advance of the next meeting (often more). 6 | 7 | ## Meeting slides 8 | 9 | You can find the slides for the various presentations on our [hackmd team page](https://hackmd.io/@rust-ctcft). 10 | 11 | ## Meeting recordings 12 | 13 | Meetings will be recorded and those recordings will be posted publicly. We may even attempt to stream them. Recording the meetings serves several purposes: 14 | 15 | * It makes the meetings accessible to folks who cannot attend in person or who must miss a week. 16 | * The recordings of the meetings become another channel for people to follow along with what is happening in Rust. 17 | 18 | ## Rules for participation 19 | 20 | * The meeting is open for anyone to observe ([read more](./faq.html#who-can-attend-the-meeting)). 21 | * We will use a **meeting queue** to ensure everyone who wants to speak has a chance. The queue is managed by the MC. 22 | * To add yourself to the queue, write `o/` in the chat. 23 | * To remove yourself from the queue, write `nm` in the chat. 24 | * If you you prefer, you can also ask a question for the speaker in the chat and the MC can read it out loud. 25 | * Please keep your **video off** unless you are expecting to speak. 26 | * If you are enqueued or expect you may well enqueue yourself soon, then feel free to turn it on. 27 | * This way the set of folks visible reflects who is actively participating at that moment. 28 | * Stay **muted** when not speaking. 29 | * Please **avoid extensive conversations in the chat** -- quick Q&A is ok. 30 | 31 | ## Timing of the meeting 32 | 33 | The meetings are targeted for the third Monday of every month. The timing of the meeting varies month-to-month in an attempt to capture more time zones (and to accommodate the speakers). See the [CTCFT Calendar] for details. 34 | 35 | -------------------------------------------------------------------------------- /src/coc.md: -------------------------------------------------------------------------------- 1 | # 💖 Code of conduct 2 | 3 | ## Rust code of conduct 4 | All participants in the CTCFT meeting are expected to observe the [Rust code of conduct](https://www.rust-lang.org/policies/code-of-conduct). 5 | 6 | * We are committed to providing a friendly, safe and welcoming environment for all, regardless of level of experience, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, nationality, or other similar characteristic. 7 | * Please avoid using overtly sexual aliases or other nicknames that might detract from a friendly, safe and welcoming environment for all. 8 | * Please be kind and courteous. There’s no need to be mean or rude. 9 | * Respect that people have differences of opinion and that every design or implementation choice carries a trade-off and numerous costs. There is seldom a right answer. 10 | * Please keep unstructured critique to a minimum. If you have solid ideas you want to experiment with, make a fork and see how it works. 11 | * We will exclude you from interaction if you insult, demean or harass anyone. That is not welcome behavior. We interpret the term “harassment” as including the definition in the [Citizen Code of Conduct](https://github.com/stumpsyn/policies/blob/master/citizen_code_of_conduct.md); if you have any lack of clarity about what might be included in that concept, please read their definition. In particular, we don’t tolerate behavior that excludes people in socially marginalized groups. 12 | * Private harassment is also unacceptable. No matter who you are, if you feel you have been or are being harassed or made uncomfortable by a community member, please contact `moderation@ctcft.com` immediately. Whether you’re a regular contributor or a newcomer, we care about making this community a safe place for you and we’ve got your back. 13 | * Likewise any spamming, trolling, flaming, baiting or other attention-stealing behavior is not welcome. 14 | 15 | ## CTCFT Rules for participation 16 | 17 | Please observe the [meeting rules for participation](./meetings.md#rules-for-participation). 18 | 19 | ## Moderation contact 20 | 21 | Please contact `moderation@ctcft.com`. -------------------------------------------------------------------------------- /src/meetings/2022-02-21.md: -------------------------------------------------------------------------------- 1 | # 2022-02-21 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/820f8d47 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=Nm02YW04bm1lbG5mcDMxYzNwMmEyNGxrcGQgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=MWEzM2pibGdwdTV0ajhodmRlc2FtbzMzZXYgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [watch]: https://youtu.be/bJS8St52k3M 14 | 15 | ## Agenda 16 | 17 | For this month's CTCFT meeting, the theme is "planning for 2022". We'll hear 18 | about the results of the 2021 Rust survey, and updates happening in the Async 19 | Working Group and the Compiler Team. 20 | 21 | - (5 min) Opening remarks 👋 ([angelonfira]) 22 | - (20 min) Rust 2021 Survey Results ([nrc]) 23 | - Nick will summarise the results of the survey, highlight findings which 24 | might be of interest to Rust teams, and outline how teams can request more 25 | in-depth analysis. 26 | - (20 min) Compiler team ambitions ([pnkfelix], [wesleywiser]) 27 | - (5 min) Closing ([angelonfira]) 28 | 29 | [angelonfira]: https://github.com/angelonfira 30 | [nrc]: https://github.com/nrc 31 | [pnkfelix]: https://github.com/pnkfelix 32 | [wesleywiser]: https://github.com/wesleywiser 33 | 34 | ## Social hour 35 | 36 | Like always, we'll be running a social hour after the CTCFT. The idea is really 37 | simple: for the hour after the meeting, we will create breakout rooms in Zoom 38 | with different themes. You can join any breakout room you like and hangout. 39 | 40 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 41 | -------------------------------------------------------------------------------- /src/meetings/2021-10-18.md: -------------------------------------------------------------------------------- 1 | # 2021-10-18 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/b65371cd 11 | [cal]: https://calendar.google.com/calendar/u/0/r/eventedit/copy/MG45cWpyNXU0Z25kYmttbzhpbHU2a2k1ZDEgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw 12 | [calsh]: https://calendar.google.com/calendar/u/0/r/eventedit/copy/MGUxdXFvY3A5ZmVvY2szM204cmZldHNhZXIgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw 13 | [watch]: https://youtu.be/n8FW-WcFewo 14 | 15 | ## Agenda 16 | 17 | The theme for this meeting is exploring ways to empower and organize contributors. 18 | 19 | - (5 min) Opening remarks 👋 ([nikomatsakis]) 20 | - (20 min) Sprints and groups implementing the async vision doc ([tmandry]) 21 | - (15 min) rust-analyzer talk ([veykril]) 22 | - The `rust-analyzer` project aims to succeed RLS as the official language server for Rust. We talk about how it differs from RLS, how it is developed, and what to expect in the future. 23 | - (<5 min) Community Metrics ([estebank]) 24 | - (<5 min) CTCFT update ([angelonfira]) 25 | - (10 min) Contributor survey ([yaahc]) 26 | - Introducing the contributor survey, it's goals, methodology, and soliciting community feedback 27 | - (5 min) Closing ([nikomatsakis]) 28 | 29 | [nikomatsakis]: https://github.com/nikomatsakis 30 | [angelonfira]: https://github.com/angelonfira 31 | [yaahc]: https://github.com/yaahc 32 | [tmandry]: https://github.com/tmandry 33 | [estebank]: https://github.com/estebank 34 | [veykril]: https://github.com/veykril 35 | 36 | ## Social hour 37 | 38 | Like always, we'll be running a social hour after the CTCFT. The idea is really 39 | simple: for the hour after the meeting, we will create breakout rooms in Zoom 40 | with different themes. You can join any breakout room you like and hangout. 41 | 42 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 43 | -------------------------------------------------------------------------------- /src/meetings/2021-09-20.md: -------------------------------------------------------------------------------- 1 | # 2021-09-20 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/6f28d1ba 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NnFuaGwxdGg3YjFqaWlhOTZlNnA3ODNiNXMgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=MGR1cDJ1a292aGg2dWJqczM5bjFodHJtYTUgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [watch]: https://youtu.be/ruStOudV2T0 14 | 15 | ## Agenda 16 | 17 | [All slides](https://hackmd.io/@rust-ctcft?tags=%5B%222021-09-20%22%5D) 18 | 19 | - [Announcements](https://hackmd.io/@rust-ctcft/ryp7wMLmt) 20 | * [Future of the CTCFT](https://hackmd.io/@rust-ctcft/rJmhsGIXK) ([nikomatsakis]) 21 | - [Interest group panel discussion](https://hackmd.io/@rust-ctcft/rJNHufIXK) 22 | - [Minutes](https://hackmd.io/@rust-ctcft/HkKq_MLmK) 23 | - [Closing](https://hackmd.io/@rust-ctcft/ryB2FfIXt) 24 | 25 | We're going to try something a bit different this time! The agenda is going to focus on Rust interest groups and domain working groups, those brave explorers who are trying to put Rust to use on all kinds of interesting domains. Rather than having fixed presentations, we're going to have a panel discussion with representatives from a number of Rust interest groups and domain groups, led by [AngelOnFira]. The idea is to open a channel for communication about how to have more active communication and feedback between interest groups and the Rust teams (in both directions). 26 | 27 | [AngelOnFira]: https://github.com/AngelOnFira 28 | 29 | ## Social hour 30 | 31 | Like last time, we are going to try an experimenatal social hour after the CTCFT. The idea is really simple: for the hour after the meeting, we will create breakout rooms in Zoom with different themes. You can join any breakout room you like and hangout. 32 | 33 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 34 | [nikomatsakis]: https://github.com/nikomatsakis/ 35 | -------------------------------------------------------------------------------- /src/meetings/2021-11-22.md: -------------------------------------------------------------------------------- 1 | # 2021-11-22 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/91c9791f 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NnVibTVzcmEwdnZxMTBtYjZ0ZmZxaWtyYXQgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NGd2N2FzYjBnMHFiNXA4dWdtYWZ2ZmxobmwgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [watch]: https://youtu.be/azcrUzeY3Pw 14 | 15 | ## Agenda 16 | 17 | This meeting we've invited some of the people working to integrate Rust into the 18 | Linux kernel to come and speak. We've asked them to give us a feel for how the 19 | integration works and help identify those places where the experience is rough. 20 | The expectation is that we can use this feedback as an input when deciding what 21 | work to pursue and what features to prioritize for stabilization. 22 | 23 | - (5 min) Opening remarks 👋 ([nikomatsakis]) 24 | - (40 min) Rust for Linux ([ojeda], [alex], [wedsonaf]) [slides] 25 | - The Rust for Linux project is adding Rust support to the Linux kernel. While 26 | it is still the early days, there are some areas of the Rust language, 27 | library, and tooling where the Rust project might be able to help out - for 28 | instance, via stabilization of features, suggesting ways to tackle 29 | particular problems, and more. This talk will walk through the issues found, 30 | along with examples where applicable. 31 | - (5 min) Closing ([nikomatsakis]) 32 | 33 | [nikomatsakis]: https://github.com/nikomatsakis 34 | [ojeda]: https://github.com/ojeda 35 | [alex]: https://github.com/alex 36 | [wedsonaf]: https://github.com/wedsonaf 37 | [slides]: ../slides/2021-11-22_-_Rust_CTCFT_-_Rust_for_Linux.pdf 38 | 39 | ## Social hour 40 | 41 | Like always, we'll be running a social hour after the CTCFT. The idea is really 42 | simple: for the hour after the meeting, we will create breakout rooms in Zoom 43 | with different themes. You can join any breakout room you like and hangout. 44 | 45 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 46 | -------------------------------------------------------------------------------- /src/meetings/2022-05-16.md: -------------------------------------------------------------------------------- 1 | # 2022-05-16 2 | 3 | | Info | | 4 | | ---------------------------------------------- | ----------------------------------------------- | 5 | | Time | 11:00 US Eastern Time ([see in your time zone]) | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [see in your time zone]: https://everytimezone.com/s/6c2a0d08 11 | 12 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NGdqbWhiYnY1bDdxdjVsajNyaTNncTdvZjMgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=M3Nwdm5qbXZpMmgzdGRrcnJvYWp0Y3U2ZWQgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 14 | [watch]: https://youtu.be/MfG7OvfVYQY 15 | 16 | ## Agenda 17 | 18 | The theme for this month's CTCFT is **Embedded Rust**. We'll hear from some 19 | members of the Rust Embedded Working Group about the state of the ecosystem, as 20 | well as how async Rust is working for embedded systems. We also have some people 21 | coming in from the automotive industry to talk about how Rust use is starting to 22 | progress. 23 | 24 | - (5 min) Opening remarks 👋 ([angelonfira]) 25 | - (15 min) A whirlwind tour of Embedded Rust ([jamesmunns]) 26 | - A brief history of the embedded-wg and use of Rust for embedded 27 | - A look at how developing embedded Rust looks like today 28 | - A sample of patterns that are special to embedded Rust, or differences from 29 | "desktop" Rust 30 | - (15 min) Async Rust for Embedded Systems ([Dirbaio]) 31 | - We'll explore how concurrency is traditionally handled in embedded, and how 32 | Rust's async makes it significantly easier while still requiring no runtime, 33 | no OS, and no allocation, and what Rust improvements could make it even more 34 | awesome. 35 | - (15 min) Rust in Automotive ([cpetig], [skade]) 36 | - We'll look at Rust from a Functional Safety perspective, and continuing to 37 | the AUTOSAR architecture. We'll also look a bit at what Ferrocene's role is 38 | in all this, and look at the AUTOSAR Rust bindings. Finally, we'll see 39 | what's next for this space. 40 | - (5 min) Closing ([angelonfira]) 41 | 42 | [angelonfira]: https://github.com/angelonfira 43 | [jamesmunns]: https://github.com/jamesmunns 44 | [Dirbaio]: https://github.com/Dirbaio 45 | [cpetig]: https://github.com/cpetig 46 | [skade]: https://github.com/skade 47 | 48 | ## Social hour 49 | 50 | Like always, we'll be running a social hour after the CTCFT. The idea is really 51 | simple: for the hour after the meeting, we will create breakout rooms in Zoom. 52 | You can join any breakout room you like and hang out. 53 | 54 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 55 | -------------------------------------------------------------------------------- /src/meetings/2022-03-21.md: -------------------------------------------------------------------------------- 1 | # 2022-03-21 2 | 3 | | Info | | 4 | | ---------------------------------------------- | --------------------------------- | 5 | | Time | [See in your time zone][timezone] | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/d733869e 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NnFqbGt2bHFpOTZjOW9pZWZiczNrc285a2wgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NzUxcGUwNzFwZ2dzMGw5dW9ub2VraDFqOWogN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [watch]: https://www.youtube.com/watch?v=GJp0W_Pg-1g 14 | 15 | ## Agenda 16 | 17 | For this month's CTCFT meeting, the theme is "planning for 2022". Rebecca 18 | Rumbul, the CEO of the Rust Foundation, will give some insight into the Foundation's 19 | mission. Niko Matsakis and Josh Triplett will go over the lang team's roadmap 20 | of the priorities for Rust 2024. 21 | 22 | - (5 min) Opening remarks 👋 ([nikomatsakis]) 23 | - [slides](https://hackmd.io/@rust-ctcft/r1nncxIf9#/) 24 | - (15 min) Planning for Rust 2024 ([nikomatsakis], [joshtriplett]) 25 | - Now that Rust 2021 is behind us, it's time to start thinking about Rust 26 | 2024! The lang team has been working on a roadmap that proposes various 27 | priorities for Rust 2024 and discusses some of the language changes that can 28 | help support those priorities. [@nikomatsakis][nikomatsakis] and 29 | [@joshtriplett][joshtriplett] will discuss the contents of that document. We 30 | would love feedback, both on the document and on whether it can be broadened 31 | to include other teams' efforts as well. 32 | - [slides](https://hackmd.io/@rust-ctcft/HJ8NPWLf5) 33 | - (15 min) Rust Foundation 2022 ([Rebecca Rumbul]) 34 | - Bec will give an overview of the Foundation's current thinking on its 35 | mission and how to achieve it, and talk a little about some of the bigger 36 | questions that need to be addressed for the future. This will include more 37 | detail on the work programs that the Foundation is currently pursuing (such 38 | as the Community Grants Program), and some potential gaps / areas that the 39 | Foundation is considering in terms of what support and resources it could 40 | provide. Bec will also talk about the more operational/practical side of the 41 | Foundation, outlining how the organisation is growing and how the split of 42 | responsibilities between board and staff is working. 43 | - (5 min) Closing ([nikomatsakis]) 44 | 45 | [Rebecca Rumbul]: https://twitter.com/rebeccarumbul 46 | [nikomatsakis]: https://github.com/nikomatsakis 47 | [joshtriplett]: https://github.com/joshtriplett 48 | 49 | ## Social hour 50 | 51 | Like always, we'll be running a social hour after the CTCFT. The idea is really simple: for the hour after the meeting, we will create breakout rooms in Zoom. You can join any breakout room you like and hang out. 52 | 53 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 54 | -------------------------------------------------------------------------------- /src/meetings/2022-04-18.md: -------------------------------------------------------------------------------- 1 | # 2022-04-18 2 | 3 | | Info | | 4 | | ---------------------------------------------- | ----------------------------------------------- | 5 | | Time | 21:00 US Eastern Time ([see in your time zone]) | 6 | | Calendar event (with Zoom details) | [link][cal] | 7 | | Social hour calendar event (with Zoom details) | [link][calsh] | 8 | | Recording | [link][watch] | 9 | 10 | [see in your time zone]: https://everytimezone.com/s/497ef0a9 11 | 12 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=MzNnbWI1ODJoZDYyaG51cm4zZDgxY2I4ZGsgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 13 | [calsh]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NWltcW8ybDlhNTV1YWF0aThnYzdpbXBibWwgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 14 | [watch]: https://youtu.be/xOkI7xZ35fE 15 | 16 | ## Agenda 17 | 18 | The theme for this month is **Learning**. [Please submit talk proposals!](https://github.com/rust-lang/ctcft/issues/new/choose) 19 | 20 | The theme of April's CTCFT is "learning". Doc Jones will speak about the Rustc 21 | Reading Club Phase II, and what was learned from the first iteration of the 22 | club. Jon Gjengset will talk about teaching advanced Rust concepts. 23 | 24 | - (5 min) Opening remarks 👋 ([angelonfira]) 25 | - (20 min) Rustc Reading Club Phase II ([doc-jones]) 26 | - The Rustc Reading Club has two goals. First, to produce confident new 27 | contributors to rustc. Second, to deepen understanding of rustc for mid 28 | level contributors. The structure of RRC enables participants to gain 29 | experience working with other contributors making their future 30 | collaborations easier. [Phase I of the Rustc Reading Club] is complete and 31 | now we are ready to launch Phase II based on what we've learned. Phase I 32 | focused solely on rustc's name resolver module. We plan to expand and 33 | "read" other areas of the compiler in Phase II. 34 | - [slides](https://hackmd.io/@rust-ctcft/HyuAxirE9#/) 35 | - (20 min) Teaching Intermediate Rust ([jonhoo]) 36 | - Over the past few years I've spent a lot of time trying to teach Rust 37 | "beyond the basics", focusing my attention on the problems that developers 38 | who have read all the introductory materials run into when they sit down 39 | to actually use Rust "for real'. In this session I'll talk about some 40 | recurring patterns I've seen while doing this, in the hope that they may 41 | spawn interesting discussion about possible solutions. 42 | - [slides](https://hackmd.io/@rust-ctcft/SykItuEX9#/) 43 | - (5 min) Closing ([angelonfira]) 44 | 45 | [angelonfira]: https://github.com/angelonfira 46 | [doc-jones]: https://github.com/doc-jones 47 | [jonhoo]: https://github.com/jonhoo 48 | 49 | [Phase I of the Rustc Reading Club]: https://mojosd.medium.com/rrc-phase-i-retrospective-74141fb246e4 50 | 51 | ## Social hour 52 | 53 | Like always, we'll be running a social hour after the CTCFT. The idea is really 54 | simple: for the hour after the meeting, we will create breakout rooms in Zoom. 55 | You can join any breakout room you like and hang out. 56 | 57 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 58 | -------------------------------------------------------------------------------- /src/meetings/2021-05-17.md: -------------------------------------------------------------------------------- 1 | # 2021-05-17 2 | 3 | | Info | | 4 | | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | 5 | | MC | [nikomatsakis] | 6 | | Time | [See in your time zone](https://everytimezone.com/s/675bc61f) | 7 | | Calendar event (with Zoom details) | [link](https://calendar.google.com/event?action=TEMPLATE&tmeid=N2tpNjVkamZjdmdzbGhlNWxmaWIzMXF1Z3IgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com) | 8 | | Recording | [link](https://youtu.be/Ti63jvWjYFY) | 9 | 10 | ## Agenda 11 | 12 | You can find the [presentations on hackmd](https://hackmd.io/@rust-ctcft?tags=%5B%222021-05-17%22%5D), or linked below. 13 | 14 | * (5min) [Welcome](https://hackmd.io/@rust-ctcft/H1VIQToO_) 15 | * (10min) **Exciting developments** 🎉 16 | * [Rust 2021 Edition](https://hackmd.io/@rust-ctcft/H1VIQToO_) -- [nikomatsakis] 17 | * [Error handling working group](https://hackmd.io/@rust-ctcft/H1VIQToO_) -- [yaahc] 18 | * (15min) **[Vision²: so you want to visioneer](https://hackmd.io/@rust-ctcft/Bysao3tu_)** ([nikomatsakis], [tmandry]) 19 | * The Async Vision Doc is a recent experiment to develop an overall framing that goes beyond individual RFCs. Async foundation co-leads [nikomatsakis] and [tmandry] will discuss the ideas behind the vision doc, its current status, as well as what worked and didn't work. Vision docs could potentially be helpful in other areas of the project as well. 20 | * (15min) **[Compiler team sprint retrospective](https://hackmd.io/@rust-ctcft/HyrllhFud#/)** ([wesleywiser], [pnkfelix]) 21 | * In March, Compiler team conducted an experimental [development sprint](https://blog.rust-lang.org/inside-rust/2021/02/15/shrinkmem-rustc-sprint.html). The goal was to drive engagement from contributors by offering people the chance to work in a focused fashion over a short period of time, rather than in small bursts over a long period of time. Compiler team co-leads [wesleywiser] and [pnkfelix] will discuss the experience and the lessons they took away from it. 22 | * (5min) **[Let the fun times roll](https://hackmd.io/@rust-ctcft/BkHae6sOu)** ([nikomatsakis]) 23 | * Thanks for coming to the first CTCFT! [nikomatsakis] will present the plan for future meetings going forward. 24 | * (5min) **Open floor** 25 | * Time for people to make short announcements, ask questions, whatever. 26 | 27 | [CTCFT Calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com&ctz=America%2FNew_York 28 | [nikomatsakis]: https://github.com/nikomatsakis/ 29 | [rylev]: https://github.com/rylev/ 30 | [m-ou-se]: https://github.com/m-ou-se/ 31 | [pnkfelix]: https://github.com/pnkfelix/ 32 | [wesleywiser]: https://github.com/wesleywiser/ 33 | [yaahc]: https://github.com/yaahc/ 34 | [tmandry]: https://github.com/tmandry/ 35 | -------------------------------------------------------------------------------- /src/meetings/2021-07-19.md: -------------------------------------------------------------------------------- 1 | # 2021-07-19 2 | 3 | | Info | | 4 | | ---------------------------------- | --------------------------------- | 5 | | MC | [nikomatsakis] | 6 | | Time | [See in your time zone][timezone] | 7 | | Calendar event (with Zoom details) | [link][cal] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/0b504718 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=MmNqaGg4Y3U1c3IzMXNrdHY3bWYydmwzZm8gN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [watch]: https://youtu.be/9CEgmlfCVa0 13 | 14 | ## Agenda 15 | 16 | As they are prepared, you will be able to find the [presentations on hackmd](https://hackmd.io/@rust-ctcft?tags=%5B%222021-07-19%22%5D), or linked below. 17 | 18 | - Opening remarks (nikomatsakis) 19 | - [Mentoring](https://hackmd.io/@rust-ctcft/BywLCHqpd#/) ([doc-jones]) 20 | - The Rust project has a number of mechanisms for getting people involved in the project, but most are oriented around 1:1 engagement. Doc has been investigating some of the ways that other projects engage contributors, such as Python's [mentored sprints](https://www.mentored-sprints.dev/). She will discuss how some of those projects run things and share some ideas about how that might be applied in the Rust project. 21 | - [Lang team initiative process](https://hackmd.io/@rust-ctcft/H1ZV1U5pd#/) ([joshtriplett]) 22 | - The lang team recently established a new process we call _initiatives_. This is a refinement of the RFC process to include more explicit staging. Josh will talk about the new process, what motivated it, and how we're trying to build more sustainable processes. 23 | - [Driving discussions via postmortem analysis](https://hackmd.io/@rust-ctcft/SJOd3Sqad#/) ([pnkfelix]) 24 | - Innovation means taking risks, and risky behavior sometimes leads to process failures. An example of a recent process failure was the Rust 1.52.0 release, and subsequent [1.52.1 patch release][] that followed a few days later. Every failure presents an opportunity to learn from our mistakes and correct our processes going forward. In response to the 1.52.0 event, the compiler team recently went through a ["course correction" postmortem process][fingerprint coe] inspired by the "Correction of Error" reviews that pnkfelix has observed at Amazon. This talk describes the structure of a formal postmortem, and discusses how other Rust teams might deploy similar postmortem activities for themselves. 25 | - Open floor 26 | - Open time for comments or questions. 27 | 28 | [1.52.1 patch release]: https://blog.rust-lang.org/2021/05/10/Rust-1.52.1.html 29 | [fingerprint coe]: https://hackmd.io/DhKzaRUgTVGSmhW8Mj0c8A 30 | 31 | ## Social hour 32 | 33 | Like last time, we are going to try an experimenatal social hour after the CTCFT. The idea is really simple: for the hour after the meeting, we will create breakout rooms in Zoom with different themes. You can join any breakout room you like and hangout. 34 | 35 | The themes for the breakout rooms will be based on suggestions. If you have an idea for a room you'd like to try, you can post it in a [dedicated topic on the #ctcft Zulip stream](https://rust-lang.zulipchat.com/#narrow/stream/286036-ctcft/topic/social.20hour.202021-06-21). Or, if you see somebody else has posted an idea that you like, then add a 👍 emoji. We'll create the final breakout list based on what we see there. The breakout rooms can be as casual or focused as you like. You might, for example, talk about your favorite crates, or we might continue some of the discussions from the meeting. 36 | 37 | [ctcft calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 38 | [nikomatsakis]: https://github.com/nikomatsakis/ 39 | [rylev]: https://github.com/rylev/ 40 | [m-ou-se]: https://github.com/m-ou-se/ 41 | [pnkfelix]: https://github.com/pnkfelix/ 42 | [wesleywiser]: https://github.com/wesleywiser/ 43 | [yaahc]: https://github.com/yaahc/ 44 | [doc-jones]: https://github.com/doc-jones/ 45 | [joshtriplett]: https://github.com/joshtriplett/ 46 | -------------------------------------------------------------------------------- /src/meetings/2021-06-21.md: -------------------------------------------------------------------------------- 1 | # 2021-06-21 2 | 3 | | Info | | 4 | | ---------------------------------- | --------------------------------- | 5 | | MC | [nikomatsakis] | 6 | | Time | [See in your time zone][timezone] | 7 | | Calendar event (with Zoom details) | [link][cal] | 8 | | Recording | [link][watch] | 9 | 10 | [timezone]: https://everytimezone.com/s/5f09e412 11 | [cal]: https://calendar.google.com/event?action=TEMPLATE&tmeid=NzVwZ3Izb2F1MWpxY3UyN2k0cmcwamhtY2cgN24wdnZvcWZlMGtibms2aTA0dWl1NTJ0MzBAZw&tmsrc=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com 12 | [watch]: https://youtu.be/ksSuXNmGZNA 13 | 14 | ## Agenda 15 | 16 | As they are prepared, you will be able to find the [presentations on hackmd](https://hackmd.io/@rust-ctcft?tags=%5B%222021-06-21%22%5D), or linked below. 17 | 18 | * (5min) **Welcome** 19 | * (5min) **About the social hour** -- [yaahc] 20 | * [yaahc] will present her plans for a social hour that follows the CTCFT (see below). 21 | * (15min) **Turbowish and Tokio console** -- [pnkfelix] and [Eliza (hawkw)] 22 | * Rust programs are known for being performant and correct -- but what about when that's not true? Unfortunately, the state of the art for Rust tooling today can often be a bit difficult. This is particularly true for Async Rust, where users need insights into the state of the async runtime so that they can resolve deadlocks and tune performance. This talk discuss what top-notch debugging and tooling for Rust might look like. One particularly exciting project in this area is [tokio-console](https://github.com/tokio-rs/console), which lets users visualize the state of projects build on the tokio library. 23 | * (20min) **Guiding Principles for Rust** -- [nikomatsakis] 24 | * As Rust grows, we need to ensure that it retains a coherent design. Establishing a set of "guiding principles" is one mechanism for doing that. Each principle captures a goal that Rust aims to achieve, such as ensuring correctness, or efficiency. The principles give us a shared vocabulary to use when discussing designs, and they are ordered so as to give guidance in resolving tradeoffs. This talk will walk through a draft set of guiding principles for Rust that [nikomatsakis] has been working on, along with examples of how they those principles are enacted through Rust's language, library, and tooling. 25 | * (10min) **Open floor** 26 | * Time for people to make short announcements, ask questions, whatever. 27 | * (5min) **Closing** -- [nikomatsakis] 28 | 29 | ## Social hour 30 | 31 | After the CTCFT, we are going to try an experimental social hour. The idea is really simple: for the hour after the meeting, we will create breakout rooms in Zoom with different themes. You can join any breakout room you like and hangout. 32 | 33 | The themes for the breakout rooms will be based on suggestions. If you have an idea for a room you'd like to try, you can post it in a [dedicated topic on the #ctcft Zulip stream](https://rust-lang.zulipchat.com/#narrow/stream/286036-ctcft/topic/social.20hour.202021-06-21). Or, if you see somebody else has posted an idea that you like, then add a 👍 emoji. We'll create the final breakout list based on what we see there. 34 | 35 | The breakout rooms can be as casual or focused as you like. For example, we will have some default rooms for hanging out -- please make suggestons for icebreaker topics on Zulip! We also plan to have some rooms where people are chatting while doing Rust work: for example, [yaahc suggested](https://zulip-archive.rust-lang.org/286036ctcft/69346socialhour20210621.html#243077876) for folks who want to write mentoring instructions. 36 | 37 | [CTCFT Calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com&ctz=America%2FNew_York 38 | [nikomatsakis]: https://github.com/nikomatsakis/ 39 | [rylev]: https://github.com/rylev/ 40 | [m-ou-se]: https://github.com/m-ou-se/ 41 | [pnkfelix]: https://github.com/pnkfelix/ 42 | [wesleywiser]: https://github.com/wesleywiser/ 43 | [yaahc]: https://github.com/yaahc/ 44 | [tmandry]: https://github.com/tmandry/ 45 | [Eliza (hawkw)]: https://github.com/hawkw 46 | -------------------------------------------------------------------------------- /src/faq.md: -------------------------------------------------------------------------------- 1 | ## Frequently Asked Questions 2 | 3 | ### Who can attend the meeting? 4 | 5 | This meeting is open for anyone to come and observe. Even though the meeting is primarily meant as a forum for the members of the Rust teams, it can be hard to define the borders of a community like ours. We'd love to have people who work on major Rust libraries in the ecosystem, for example, or who work on the various Rust teams at different companies. 6 | 7 | ### I have 222+ unread Github notifications in rust-lang/rust. Why is this meeting worth my time? 8 | 9 | This meeting is meant for busy people. It's not just a bunch of random status updates. It's a carefully selected set of topics meant to spark both discussions and new ideas for how the Rust teams operate, and a place for us to coordinate on cross-cutting technical projects. 10 | 11 | One other point: because the agenda will be circulated in advance, it may be that you pick and choose which meetings to attend based on whether this is a discussion topic that you have a lot of interest in. 12 | 13 | ### Who will MC and who will assemble the meeting agenda? 14 | 15 | To start, [nikomatsakis] plans to do those things. Assuming the meeting is a success, we'll figure out next steps then. 16 | 17 | ### What kinds of things would be a good fit for the agenda? 18 | 19 | We're looking for three kinds of things: 20 | 21 | * Status updates on projects that could affect multiple teams; 22 | * Experience reports with insights to share; 23 | * "Rough draft" proposals that are ready to be brought before a wider audience. 24 | 25 | ### How can I propose an agenda item? 26 | 27 | [Open an issue on the CTCFT repo to let nikomatsakis know about it!](https://github.com/rust-lang/ctcft/issues/new/choose) 28 | 29 | ### What if I have something sensitive to discuss? 30 | 31 | For sensitive items, this is likely not the right meeting, but you can reach out to nikomatsakis privately to discuss it. 32 | 33 | ### Does this really have to be synchronous? 34 | 35 | Yes. For this to work, we need people to pay attention for an hour. We're all really busy, and asynchronous communication is all too easy to ignore. 36 | 37 | ### What can we do to make this accessible to people around the globe? 38 | 39 | The Rust project includes people from all over the world, and some time zones are just plain incompatible. We've put some thought into how to structure the meeting to make it accessible to folks from different time zones: 40 | 41 | * We will alternate between different times so that folks in different time zones can more readily attend. 42 | * We will also distribute recordings of the meeting (and perhaps consider livestreaming as well) so that people can watch. 43 | * Per Rust's 'No new rationale' principal, we will not use the meeting to *make decisions*, particularly on controversial issues, but rather to generate discussion and distribute information. (See the next question.) 44 | 45 | ### What if I can't make some meeting or other? Am I going to miss out on key decisions? 46 | 47 | Per Rust's 'No new rationale' principal, we will not use the meeting to *make decisions*, particularly on controversial issues, but rather to generate discussion and distribute information. This means that folks who couldn't attend the meeting can watch the recordings and then participate in the follow-up discussion. 48 | 49 | ### How will this be better or different than the project leadership sync meeting? 50 | 51 | Some time back we attempted a [Project Leadership Sync Meeting](https://internals.rust-lang.org/t/project-leadership-sync-meeting/10552). The structure was basically status reports and -- after a time -- it petered out in favor of (sparsely used) Zulip streams. 52 | 53 | This meeting has a different structure. To start, it will have more active curation of the agenda, and it will not have a "round robin" format. We'll not be looking to find out what is going on, but rather to *distribute* the key points of that information, and to focus conversation on interesting agenda items that merit discussion. 54 | 55 | Further, the scope of the meeting is broader. The meeting will representatives from project groups like error handling and other key efforts of the Rust project. 56 | 57 | ### How did you arrive at those times? Can we try different ones? 58 | 59 | The timing for the meeting is something I would like feedback on. I think it's important that we make the meeting accessible, but I also think we should take into account the time zone that the majority of participants are coming from. Here is a kind of survey of possible times and how accessible they are to folks from different time zones: 60 | 61 | | Berlin | NY | SF | Beijing | Sydney | Auckland | 🔗 | 62 | | --- | --- | --- | --- | --- | --- | --- | 63 | | 12:00 🥰 | 06:00 ❌ | 03:00 ❌ | 18:00 🥱 | 20:00 ❌ | 22:00 ❌ | [link](https://everytimezone.com/s/9446d968) | 64 | | 15:00 🥰 | 09:00 🥰 | 06:00 ❌ | 21:00 🥱 | 23:00 🥰 | 00:00 ❌ | [link](https://everytimezone.com/s/37b6b584) | 65 | | 17:00 🥰 | 11:00 🥰 | 08:00 🥰 | 23:00 ❌ | 01:00 ❌ | 02:00 ❌ | [link](https://everytimezone.com/s/9ecc9fe9) | 66 | | 21:00 🥱 | 15:00 🥰 | 12:00 🥰 | 3:00 ❌ | 5:00 ❌ | 7:00 ❌ | [link](https://everytimezone.com/s/9ecc9fe9) | 67 | | 01:00 ❌ | 19:00 🥱 | 16:00 🥰 | 7:00 ❌ | 9:00 🥰 | 10:00 🥰 | [link](https://everytimezone.com/s/e00841f8) | 68 | | 02:00 ❌ | 20:00 🥱 | 17:00 🥰 | 8:00 ❌ | 10:00 🥰 | 11:00 🥰 | [link](https://everytimezone.com/s/e00841f8) | 69 | | 03:00 ❌ | 21:00 🥱 | 18:00 🥱 | 9:00 🥰 | 11:00 🥰 | 12:00 🥰 | [link](https://everytimezone.com/s/da0d7065) | 70 | 71 | Key: 72 | 73 | * 🥰 working hours (9:00..18:00) 74 | * 🥱 rather late (18:00..22:00) -- which could be good for some folks! 75 | * ❌ totally unreasonable (22:00 - 9:00) 76 | 77 | [CTCFT Calendar]: https://calendar.google.com/calendar/embed?src=7n0vvoqfe0kbnk6i04uiu52t30%40group.calendar.google.com&ctz=America%2FNew_York 78 | 79 | [nikomatsakis]: https://github.com/nikomatsakis/ 80 | 81 | [Discord]: https://discord.gg/rust-lang 82 | 83 | [Zulip]: https://rust-lang.zulipchat.com/ 84 | 85 | ### I love the logo. Who designed it? 86 | 87 | Glad you asked! I love it too! [@Xfactor521](https://twitter.com/xfactor521) made it! 🙏 88 | -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | --------------------------------------------------------------------------------