Zulip
Rust의 Zulip은 Rust 팀 구성원들이 Rust 개발을 논의하는 데 사용하는 채팅 플랫폼입니다.
Zulip은 처음 시작할 때 직관적이지 않게 느껴질 수 있는 플랫폼입니다. 시작하려면 시작 가이드를 살펴보십시오. 더 자세한 내용은 Zulip 사용자 문서를 살펴보십시오!
모든 프로젝트 구성원에게 연락할 수 있는 수단을 확보하기 위해, 모든 Rust 프로젝트 구성원은 Zulip 계정을 보유해야 합니다1.
Zulip 사용에 관한 도움을 받을 수 있는 곳
기능을 테스트하거나 도움을 받고 싶다면 #zulip 스트림을 이용하십시오. 다른 곳과 마찬가지로, 질문마다 새 토픽을 만드는 것이 가장 좋습니다.
시작하기
먼저 공식 시작 가이드를 살펴보는 것을 권장합니다. Rust 자체와 마찬가지로 Zulip도 다소 독특하므로, 본격적으로 사용하기 전에 문서를 읽어 두면 큰 도움이 될 수 있습니다.
처음 시작할 때는 구독할 스트림을 반드시 설정하는 것이 좋습니다. 기본 구독 목록은 상당히 제한적이며, 그 밖에도 많은 그룹이 있습니다. 스트림 구독에는 부담이 거의 없습니다. IRC 채널에 “들어가 있는” 것과 비슷하지만, 구독 여부와 관계없이 모든 스트림의 기록을 볼 수 있다는 점이 다릅니다.
자기소개를 할 필요는 없지만, #new members 스트림에서 자유롭게 인사하셔도 됩니다.
사용자 그룹
다른 사용자를 핑하는 것과 마찬가지로, 누구나 @<group> 표기법으로 사용자 그룹을 핑할 수 있습니다. 그룹은 누구나 만들 수 있으며, 누구나 그룹에 참여할 수 있습니다.
사용자는 자유롭게 스스로 그룹에 참여하거나 그룹에서 탈퇴할 수 있습니다. 또한 사용자는 필요에 따라 자유롭게 그룹을 만들 수 있지만, 현재로서는 그런 경우가 다소 드물 것으로 예상합니다. 그룹 이름은 같은 목적의 스트림 이름을 짓는 방식과 비슷하게 지어야 합니다. 다만 그룹은 스트림보다 더 세분화될 수도 있고 덜 세분화될 수도 있습니다. 예를 들어, @T-compiler/meeting에는 현재 전용 스트림이 없습니다.
적절한 대화
대부분의 스트림에서는 팀 업무와 관련된 대화를 유지하도록 노력해야 합니다. #general 스트림은 범위가 조금 더 넓지만, 그곳에서도 논의는 Rust와 밀접하게 관련되어야 합니다(특정 팀의 프로젝트와는 관련이 없어도 됩니다). 다만 모든 채널은 Rust 프로젝트와 관련된 논의에 사용되어야 합니다. 예를 들어 야생 동물이나 관광에 관한 논의는 적절하지 않습니다.
스트림
스트림은 다른 플랫폼의 “채널“과 비슷합니다(즉, 너무 많아서는 안 됩니다). 반면 구독할 스트림을 직접 선택할 수 있으므로, 다른 플랫폼의 채널보다 많아도 괜찮습니다. 자세한 내용은 Zulip 문서를 읽어 보십시오.
스트림은 모든 Rust 공식 그룹에 적합합니다. 예를 들어 워킹 그룹, 프로젝트 그룹, 팀은 모두 공식 그룹에 해당합니다. 이러한 그룹은 이상적으로는 팀 저장소에도 등록되어 있어야 합니다.
기본 스트림
이 절은 아직 논의 중이며, 어느 방향으로 나아갈지 아직 명확하지 않습니다. 이 절은 규범적이지 않으며, 아직 Zulip 인스턴스를 수정하는 근거로 사용해서는 안 됩니다.
기본 스트림 목록은 새로 들어오는 사람들이 최소한 한 곳에는 찾아갈 수 있도록 선정하며, 필요하다면 그곳에서 더 구체적인 위치로 안내받을 수 있습니다.
현재 이는 Zulip에 있는 모든 최상위 그룹이 기본적으로 표시된다는 의미입니다. 구체적으로 말하면, /가 포함된 스트림은 기본으로 활성화되지 않습니다.
현재 이 목록은 다음과 같습니다.
- general
- t-lang
- t-compiler
- t-libs
- project-ffi-unwind (프로젝트)
- project-inline-asm (프로젝트)
- project-safe-transmute (프로젝트)
- rust-survey-2019
- wg-async-foundations
- wg-database
- wg-formal-methods
- wg-secure-code
- wg-traits
- zulip
이와 다른 최소주의적 접근 방식으로는 다음을
- general
- zulip
- announce
- new members
기본 목록으로 사용하는 방법이 있으며, 이렇게 하면 사람들이 처음 시작할 때 자신의 기본 목록을 직접 조정하도록 유도하게 됩니다.
스트림 이름 짓기
스트림 이름은 #t-{team}/{group name}와 같은 형식으로 지어야 합니다. 예를 들어 #t-compiler/parallel-rustc와 같습니다. 더 깊이 중첩해도 괜찮습니다. 예를 들어 워킹 그룹에 “하위 그룹“이 필요할 수도 있습니다. 다만 이 경우에는 팀 이름을 생략하는 편이 나을 수 있습니다. 스트림 이름을 짧게 유지하면 사용하기 편하고, 같은 접두사를 공유하는 여러 스트림을 서로 혼동하지 않을 수 있습니다.
최상위 팀이 없거나 그룹이 여러 팀에 걸쳐 있는 경우(예: project-ffi-unwind 프로젝트)에는 최상위 팀을 생략해야 합니다.
스트림은 특정 목적을 위한 것임을 명확히 알려야 합니다. 그 목적은 넓어도 되지만, 어떤 형태로든 그룹을 포함하는 것이 좋습니다. 그 그룹은 일시적이어도 됩니다. 예를 들어 Rust 빌드 시스템 때문에 어려움을 겪는 사람들이나 컴파일러 작업을 하는 사람들이 그러한 그룹입니다. 또한 현재로서는 이 Zulip을 Rust 조직과 관련이 없는 커뮤니티 프로젝트를 위한 일반적인 공간으로 삼을 의도가 없습니다. 그러한 프로젝트가 Zulip을 사용하려 한다면 Zulip은 오픈 소스에 무료로 제공됩니다.
새 스트림을 만들면 #announce에 공지해야 합니다. 이 공지는 일반적으로 Zulip이 자동으로 올립니다.
토픽
스트림 안의 모든 메시지에는 토픽이 붙습니다(토픽은 스트림 안의 하위 구분입니다). 토픽은 일반적으로 일시적이며, 해당 토픽에 대한 논의가 활발하게 이루어지는 동안에만 유지됩니다. 토픽을 이메일 제목처럼 생각하면 도움이 됩니다.
스트림에서 새로운 대화를 시작할 때는 거의 항상 기존 토픽이 아닌 새 토픽을 사용해야 합니다. (예를 들어) GitHub 이슈와 달리, 같은 주제를 다룬 과거 토픽을 찾으려고 해서는 안 됩니다. 또한 토픽 이름은 짧게만 지으면 되며, 그 이상으로 시간을 들이지 마십시오. 토픽 이름이 사용자에게 잘 보이도록 일반적으로 20자(대략 두세 단어)를 넘지 않아야 합니다.
새로운 논의는 적극적으로 새 토픽으로 분리해야 합니다. 실수로 다른 논의 영역으로 벗어난 경우에는 다른 토픽의 뒷부분만 분리할 수도 있다는 점에 유의하십시오.
기존 토픽에서 분리하는 방법은 여기에 있는 Zulip 문서를 참고하십시오.
메시지
Zulip은 동기식 소통과 비동기식 소통을 한곳에 결합한 독특한 플랫폼입니다. 일반적으로 메시지에 빠른 응답을 기대해서는 안 됩니다. 또한 (예를 들어) Discord와 달리, 메시지가 특정 토픽 안에 따로 있어 지난 기록 속에 묻힐 가능성이 낮으므로 특정 이슈에 대해 몇 시간마다 “다시 핑“을 보낼 이유는 별로 없습니다.
링크 변환기
우리 Zulip은 유용한 링크 변환기를 많이 지원하며, 요청하시면 일반적으로 기꺼이 더 추가합니다. 형식은 문서를 참고하십시오. #zulip에서 제안해 주십시오!
일반적으로 이슈나 PR에 링크할 때는 github-org/repo#123를 사용할 수 있습니다. 아래 목록은 “특별히 처리되는” 저장소 몇 개를 추가로 보여 줍니다.
표준 Markdown 링크 문법도 사용할 수 있다는 점을 잊지 마십시오.
rust-lang GitHub 조직 안에 있는 저장소의 이슈는 rust-lang/ 접두사 없이도 링크할 수 있습니다. 예를 들면 다음과 같습니다.
- rust-lang/rfcs:
RFC#3434또는rfc#3434 - rust-lang/async-book:
async-book#2334 - rust-lang/cargo:
cargo#2334
rust-lang/rust 이슈는 접두사 없이 링크할 수 있습니다:
- rust-lang/rust:
#4545또는rust#4545
현재 다음 저장소의 커밋에 대한 링크를 지원합니다:
- rust-lang/rust: 40자 길이의 SHA(예:
25434f898b499876203a3b95c1b38bad5ed2cc5d)
읽기 전용 보기
저희 Zulip 인스턴스에는 웹 공개 스트림 beta 기능이 활성화되어 있으며, 모든 공개 스트림에 이 기능을 사용합니다. 이와 관련하여 문제가 있으면 저희나 Zulip 개발자에게 알려 주십시오. 웹 공개 보기를 제공하던 이전 방식은 Zulip 아카이브였으며, 이 아카이브는 이제 웹 공개 보기로 리디렉션됩니다.
t-all/private 채널
모든 Rust 프로젝트 팀 구성원은 비공개 채널인 t-all/private에 자동으로 구독됩니다. 이 채널은 모든 프로젝트 구성원에게 연락하는 수단으로 사용할 수 있으며, 이메일이 스팸으로 분류되는 경우가 잦은 all@rust-lang.org 메일링 리스트보다 더 신뢰할 수 있는 대안이 되어야 합니다.
이 채널은 주로 다음 두 종류의 주제에 사용해야 합니다:
- 오직 Rust 프로젝트에만 관련되고 그 외에는 누구와도 관련이 없는 정보
- 예:
team데이터베이스나 Rust 웹사이트의 변경 사항 중 사람들이 관심을 가질 만한 내용을 알리는 경우
- 예:
- 프로젝트 내부에서만 공유하고 외부에는 공유하지 않아야 하는 정보
- 예: 프로젝트 외부 사람이 응답해서는 안 되는 프로젝트 전체 대상 설문 조사를 공유하는 경우
위에서 언급한 두 경우 모두, 이 채널은 메시지가 (예를 들어 단일 팀에만 관련된 것이 아니라) 프로젝트 전체와 관련이 있을 때에만 사용해야 합니다. 그 밖의 소통은 가급적 공개되어 있고 범위가 더 좁은 채널을 통해 하십시오.