Zulip
Rust의 Zulip은 Rust 팀 구성원들이 Rust의 개발을 논의하는 데 사용하는 채팅 플랫폼입니다.
Zulip은 처음 시작하기에 다소 직관적이지 않은 플랫폼일 수 있습니다. 시작하려면 시작 가이드를 살펴보십시오. 더 자세한 내용은 Zulip 사용자 문서를 살펴보십시오!
저희는 모든 Project 구성원과 연락할 수 있는 방법을 확보하기 위해, 모든 Rust Project 구성원이 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을 사용하고자 한다면, 오픈소스를 위한 무료 이용이 가능합니다.
새 스트림이 생성되면, #announce에서 이를 공지해야 합니다. 이는 일반적으로 Zulip에 의해 자동으로 이루어집니다.
토픽
토픽은 주어진 스트림 내의 모든 메시지에 첨부됩니다(이는 스트림 내부의 세부 구분입니다). 토픽은 일반적으로 일시적이며, 해당 토픽에 대한 활발한 논의가 있는 동안만 유지됩니다. 토픽을 이메일 제목처럼 생각하면 도움이 됩니다.
주어진 스트림에서의 새로운 대화는 거의 항상 기존 토픽이 아닌 새 토픽에서 시작해야 합니다. (예를 들어) GitHub 이슈와 달리, 동일한 주제에 대한 과거 토픽을 검색하려 해서는 안 됩니다. 토픽 이름을 짧게 만들려는 것 이상으로 이름을 정하는 데 너무 많은 시간을 들이지 마십시오. 토픽은 일반적으로 20자를 넘지 않아야 하며(대략 두세 단어 정도), 사용자에게 잘 보이도록 해야 합니다.
새로운 논의는 적극적으로 새 토픽으로 분기해야 합니다. 이는 (실수로 다른 논의 영역으로 벗어난 경우) 다른 토픽의 끝부분을 가지고도 수행할 수 있다는 점에 유의하십시오.
기존 토픽에서 분기하는 방법은 여기에서 Zulip의 문서를 참고하십시오.
메시지
Zulip은 동기식 통신과 비동기식 통신을 한곳에 결합한 독특한 플랫폼입니다. 일반적으로 메시지가 빠르게 응답을 받을 것이라고 기대해서는 안 되며, (예를 들어) Discord와 달리, 특정 이슈에 대해 몇 시간마다 “재알림“해야 할 이유가 별로 없습니다. 메시지가 특정 토픽에 국한되어 있어 히스토리 속으로 사라질 가능성이 낮기 때문입니다.
링크화 도구
저희 Zulip은 다양한 유용한 링크화 기능을 지원하며, 요청이 있으면 대체로 기꺼이 더 추가합니다. 형식에 대해서는 문서를 참고하십시오. #zulip에서 제안해 주십시오!
일반적으로, github-org/repo#123는 이슈나 PR에 링크하는 데 작동합니다. 아래 목록은 몇 가지 더 “특별 취급되는” 저장소를 제공합니다.
표준 Markdown 링크 문법도 작동한다는 점을 잊지 마십시오.
저희는 rust-lang/ 접두사 없이도 rust-lang GitHub 조직 내 저장소의 이슈에 링크하는 것을 지원합니다. 예를 들면:
- 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 archive였는데, 이는 이제 웹 공개 뷰로 리디렉션됩니다.
t-all/private 채널
모든 Rust 프로젝트 팀 구성원은 비공개 t-all/private 채널에 자동으로 구독됩니다. 이 채널은 모든 프로젝트 구성원에게 연락하는 수단으로 사용할 수 있으며, 이메일이 종종 스팸으로 분류되는 all@rust-lang.org 메일링 리스트보다 더 신뢰할 수 있는 대안 역할을 해야 합니다.
이 채널은 주로 다음 두 가지 유형의 주제에 사용해야 합니다:
- 오직 Rust 프로젝트에만 관련되고 다른 누구와도 관련이 없는 정보
- 예를 들어,
team데이터베이스나 Rust 웹사이트의 변경 사항 중 사람들이 흥미로워할 만한 것을 알려줍니다
- 예를 들어,
- 프로젝트 내부에서만 공유되어야 하고 외부에는 공유되면 안 되는 정보
- 예를 들어: 프로젝트 외부의 사람들이 작성해서는 안 되는 프로젝트 전체 설문 조사를 공유하는 경우
위에서 언급한 두 경우 모두, 이 채널은 메시지가 프로젝트 전체와 관련이 있을 때만 사용해야 하며(예를 들어 단일 팀에만 해당하는 경우는 제외), 다른 소통은 가급적 더 범위가 좁은 공개 채널을 통해 이루어져야 합니다. 다른 소통은 가급적 더 범위가 좁은 공개 채널을 통해 이루어져야 합니다.