WordPress 핵심 개발을 위한 멘토가 되기 위한 비기술적 릴리스 리드의 여정

게시 됨: 2020-08-12

2019년 여름, 저는 WordPress 릴리스를 도와달라는 요청을 받았습니다. 몇 달 전에 Core Team 담당자가 릴리스 팀의 다양성을 늘리기 위해 다른 팀에 연락했고 나는 심각하게 고려하기 시작했습니다.

그 당시 저는 이미 WordPress 생태계에 깊이 관여하고 있었고 SiteGround에서 WordPress 커뮤니티 및 파트너십 관리자로 2년 차에 있었습니다. 그래도 WordPress.org의 전무이사인 Josepha Haden이 저에게 핑을 쳤을 때 저는 주저 없이 예라고 말했습니다. 그리고 그것은 내 인생에서 가장 도전적이고 보람 있는 경험 중 하나였습니다. 방법은 다음과 같습니다.

비엔나를 산책하는 Josepha Haden과 Francesca 마라노
2016년 WCEU 비엔나를 걷고 있는 Josepha와 I – Photo by Luca Sartoni

우연한 기여자: 기술 분야에서의 나의 길

저는 어려서부터 개발자가 될 운명이었던 것 같습니다. 제 부모님은 프로그래머이고 60년대에 시작하셨습니다. 저는 이탈리아 사람들이 컴퓨터가 무엇인지 전혀 몰랐던 1982년에 첫 개인용 컴퓨터를 얻었습니다.

나는 그들의 직업 정신을 따랐고 그들의 직업이 매력적이라고 ​​생각했습니다. 기계를 당신이 원하는 대로 하게 만드는 것이었지만 저는 다른 직업 선택에 끌렸습니다. 사실, 나는 내가 커서 무엇을 하고 싶은지 잘 몰랐지만 컴퓨터와 웹사이트는 계속해서 내 개인 및 직업 생활의 큰 부분을 차지했습니다.

백엔드 프로그래밍은 전혀 관심이 없었지만 1999년에 웹 디자인 수업을 듣고 2004년에 예술 및 멀티미디어 학위에 등록했습니다. 마침내 2008년에 WordPress를 발견하여 생계를 꾸리기 시작했습니다. 2010년에 말이다.

곧, 나는 웹사이트를 요청하는 고객들이 나를 고용하기 전에 웹사이트에 대한 "이유"에 더 집중하고 비즈니스 및 마케팅 전략에 대해 생각하도록 돕는 것이 진정한 기술이라는 것을 깨달았습니다. 나는 사업 계획, 생산성, 웹사이트에 관한 책을 썼습니다. 나는 또한 WordCamps 및 기타 행사에서 프리랜서에게 해당 주제에 대한 교육을 제공하기 시작했습니다.

2015년에 워드프레스 커뮤니티에 참여하고 있는 사람들을 무작위로 만나 저도 기여하게 되었습니다. 저는 개발 기술이 없었기 때문에 OSS에 기여할 수 있을 거라고 생각해본 적이 없었지만, 그것이 불필요한 것으로 밝혀졌습니다. 나는 WordPress를 만들고 처음에는 Polyglots에서 활동하고 나중에는 커뮤니티에서 활동하기 시작한 여러 팀을 알려준 사람들을 만났습니다.

워드캠프 런던 2016에서 연설하는 프란체스카 마라노
내 첫 번째 WordCamp 토크: WordCamp London 2016에서 이탈리아 커뮤니티의 재탄생

나는 계속 내 사업을 하고 있었지만 워드프레스에 더 많이 기여할수록 한 번에 수천 명의 사람들을 도울 수 있는 방법을 찾고 싶었습니다. 강연을 하고, 커뮤니티 조직자를 돕고, 확장에 필요한 콘텐츠를 작성하는 나의 봉사 활동.

여기에서 SiteGround를 만났습니다. 2017년 여름, 그들은 커뮤니티 매니저를 찾고 있었고 직업은 아니지만 저는 지원하기로 결정하고 일자리를 얻었습니다. 회사에 합류하여 WordPress에 기여할 시간을 후원할 수 있었습니다. 또한 프로젝트에 대한 새로운 아이디어를 만들 때 동료들의 집합적인 지식을 활용할 수 있었습니다.

그래서 망설임 없이 예라고 대답했지만 사실 이 예는 제작 기간이 거의 5년에 달했습니다. 또한 Josepha와 SiteGround가 내가 잘 할 것이라고 믿어주는 느낌이 들었습니다. 그 대가로 내가 배워야 할 모든 것을 알아내는 데 도움이 되는 WordPress 커뮤니티를 신뢰했습니다.

WordPress가 완료되는 방법

또 다른 고무적인 요소는 WordPress 5.0 이후로 릴리스가 더 이상 수년 동안 한 사람이 만들거나 두 명의 대리인이 있는 사람이 만들지 않는다는 것입니다. 이제 "스쿼드"라는 애칭으로 알려진 전체 팀이 작업 중이므로 갑판에 많은 손이 있습니다.

많은 커뮤니케이션

출시 주기 동안 많은 커뮤니케이션이 이루어집니다. 다른 Make 팀의 블로그 게시물이 있습니다. 릴리스의 각 단계에서 WordPress.org의 뉴스 섹션에 블로그 게시물이 있습니다. 공개 Slack 채널에는 끊임없는 잡담이 있고 처음에는 대규모 공개 채널에서 질문을 하면 겁을 먹을 수 있는 새로운 사람들을 위한 안전망인 비공개 채널이 있습니다.

릴리스 팀의 다양한 역할

스쿼드 이름이 포함된 WordPress 5.3 개발 주기 페이지의 스크린샷
WordPress 5.3에는 12명과 654명의 기여자로 구성된 릴리스 팀이 있었습니다. 워드프레스 5.5는 805명의 기여자들과 함께 그것을 공원 밖으로 던졌습니다!

이번 출시를 위해 이 모델에서 가장 마음에 드는 점은 여기에 포함된 다양한 역할입니다. 개발자, 디자이너, 마케터, 기술 작가 및 프로젝트 관리자가 있습니다. WordPress는 코드로 구성되어 있을 뿐만 아니라 이러한 모든 기술이 함께 모여 출시에 기여하는 것을 보는 것이 좋습니다.

Release Coordinator(WordPress 5.3 및 5.4에서 다루었던 역할)와 Triage PM(5.3, 5.4, 5.5에서 David Baumwald가 담당한 역할)의 역할은 모든 움직이는 부품. 그리고 나는 그것이 거의 불가능하기 때문에 시도 라고 말합니다. 이것이 작업 중인 다른 부분에 대한 초점 리드가 있는 이유입니다.

Matt Mullenweg는 프로젝트 책임자이며 WordPress 5.0 이후 릴리스 책임자입니다. 그는 높은 수준의 로드맵과 중점 프로젝트를 제시합니다. 그러나 그 이상으로 그는 Core 개발의 일상 생활에 관여하지 않습니다. 1년 넘게 Core 릴리스에 참여하면서 Matt는 기능 추가를 한 번만 요청했습니다.

나는 사람들이 워드프레스에서 일어나는 모든 일이 Matt가 그렇게 하기를 원하기 때문이라고 생각할 때 짜증이 납니다. 이는 프로젝트에 관심을 갖고 앞으로 나아가고, 문제를 관리하고, 티켓을 옹호하고, 일반적으로 모든 사람을 위해 WordPress를 개선하는 데 기여하기로 약속하는 모든 사람들의 역할을 축소합니다. 티켓 한 장에 사용하거나 풀타임으로 작업할 수 있습니다.

구성 요소 유지 관리자 및 핵심 커미터

릴리스를 형성하는 데 중요한 역할을 하는 사람들의 그룹은 구성 요소 유지 관리자입니다. 그들은 Core를 구성하는 특정 구성 요소를 돌보고 해당 영역의 티켓이 어떻게 진행되는지 볼 책임이 있습니다. 티켓이 병합될 준비가 되었는지 평가할 수 있는 사람입니다.

티켓이 준비된 것으로 간주되면 핵심 커미터가 현장에 들어갑니다. 그들은 티켓의 최종 검토를 수행합니다. 일부 변경을 요청하거나 커밋하는 동안 스스로 변경할 수 있습니다. 이것은 아마 나를 가장 놀라게 한 것입니다. 커밋에 몇 시간이 걸릴 수 있다고 생각하지 않았지만 확실히 할 수 있습니다. 내가 조정한 릴리스에서 나는 확실히 메인테이너와 커미터의 참여가 많지 않은 것을 관찰했으며 이는 티켓 작업을 하는 사람들에게 매우 의욕을 꺾습니다. 패치가 준비된 경우에도 모든 것이 릴리스에 들어갈 수 있는 것은 아닙니다. 검토하고 피드백을 제공하고 궁극적으로 커밋할 사람이 충분하지 않기 때문입니다. 리소스가 거의 없으므로 선택을 해야 하며 이러한 선택이 항상 각 WordPress 사용자 또는 기고자 기본 설정과 일치하는 것은 아닙니다.

이것은 아마도 WordPress가 앞으로 해결해야 할 가장 큰 과제 중 하나일 것입니다. 큰 도움을 줄 수 있는 사람들을 어떻게 다시 활성화할 수 있습니까?

릴리스 파티

WordCamp 유럽 파티에서 춤추는 사람들
Florian Ziegler의 사진

이러한 문제에도 불구하고 모든 작업이 완료되고 릴리스가 준비되면 파티를 통해 축하합니다. 누가 그들을 릴리스 파티라고 부르기 시작했는지 또는 언제 시작했는지 모릅니다. 내가 아는 것은 5.3과 5.4에서 꽤 많은 것을 호스팅했고 그것들은 모두 재미있었다는 것입니다.

릴리스 단계 중 하나(베타, 릴리스 후보 또는 일반 릴리스일 수 있음)가 있는 날에는 코어 채널이 매우 활성화됩니다. 많은 사람들이 WordPress 버전이 어떻게 릴리스되는지 보기 위해 온라인에 옵니다. 여러 단계와 다른 작업에 관련된 다른 사람들이 있습니다. 릴리스 단계는 Core 핸드북에 문서화되어 있으며 모든 사람이 볼 수 있도록 공개적으로 따릅니다.

가장 큰 파티는 일반 출시일입니다. 믿을 수 없을 정도로 강력한 한 가지 특정한 순간이 있습니다. WordPress에는 다운로드 카운터가 있으므로 새 버전을 출시하기 전에 팀은 이전 버전의 스크린샷을 찍고 모두 작별인사를 하고 새 아이를 환영합니다. 모든 것이 가상임에도 불구하고 이 순간은 거의 가시적이며 나를 움직이게 하는 것을 멈추지 않을 것입니다. 우리는 다시 한 번 WordPress를 만들었습니다.

핵심 기여자로서의 12개월

이 기사를 작성하는 동안 저는 이제 1년 동안 핵심 기고자라는 생각이 들었습니다. 저는 여전히 SiteGround에서 정규직으로 일하고 있습니다. 때때로 저글링을 하기가 어렵기 때문에 팀의 지원에 대해 감사를 표해야 합니다.

나는 여전히 PHP를 작성할 수 없고 JavaScript를 깊이 경멸하지만, 돌이켜보면 지난 12개월 동안 일어난 변화가 엄청나게 자랑스럽습니다. 나는 그들 모두를 인정할 수는 없지만, 어떻게든 그들 중 일부가 될 수 있어서 기쁩니다.

출시 일정

많은 기여자들이 요청한 것 중 하나는 작업과 개인 일정에 더 잘 맞도록 중간 릴리스 일정이었습니다. 왜 일이 특정 방식으로 수행되는지에 대한 전체 역사와 배경을 모르기 때문에 새로운 아이가 되는 것은 어려울 수 있지만 그것은 또한 특권입니다. 대화를 다시 시작할 수 있습니다. 스쿼드 및 다른 팀과 논의한 후 "누가 Matt와 함께 이 문제를 제기할 것인가"의 문제라는 것이 분명했습니다. 그리고 그렇게 했습니다. 며칠 후 WordPress 6.0이 Core 블로그에 게시될 때까지 잠정 릴리스 일정이 있으며 그 이후로 계속 사용하고 있습니다.

더 큰 릴리스 스쿼드 및 멘토십

출시 스쿼드도 출시될 때마다 커지고 있습니다. 많은 팀이 그것을 만드는 데 관여하고 영향을 받습니다. 이 모든 팀이 프로세스에서 대표되는 것이 중요합니다. WordPress 5.5에는 몇 가지 새로운 역할이 있으며 5.6에는 더 많은 역할이 있습니다. 테스트, 문서화, 지원은 모두 WordPress를 훌륭하게 만드는 중요한 구성 요소이므로 소프트웨어가 활발하게 개발되는 동안 피드백을 받는 것이 중요합니다.

그리고 멘토를 두는 것이 중요합니다. 이것은 Josepha가 WordPress 5.3에서 도입한 주요 개선 사항입니다. 릴리스 팀은 포커스 리드로 구성될 뿐만 아니라 새로운 기여자가 로프를 배울 수 있도록 도울 수 있는 멘토 그룹이 늘어나고 있습니다. 그 사람들이 결국 멘토가 되어 새로운 사람들을 가르칠 것이라는 생각입니다. 이것은 다양한 기술과 배경을 가진 점점 더 많은 사람들이 Core에 참여하도록 하는 또 다른 좋은 방법입니다.

그리고 이것은 저를 가장 큰 변화(그리고 도전)로 이끕니다. 대규모 릴리스가 될 워드프레스 5.6에는 여성과 여성으로 식별되는 사람들로 구성된 스쿼드가 있습니다. 워드프레스의 다른 많은 것들과 마찬가지로 이 모든 것이 "큰 소리로 생각하는" 순간으로 시작되었으며 이제 현실이 되었습니다. 이 릴리스에 대한 작업은 곧 시작될 것이며 멘토로서 이 릴리스에 참여하게 되어 매우 기쁩니다.

WordCamp Torino 기간 동안 복도를 걷는 여성
WordCamp Torino 2018에서 Polyglots 팀을 이끄는 동료 여성 기고자. Gianni Vascellari의 사진

워드프레스는 당신의 도움이 필요합니다

모든 유니콘과 무지개라고 말하고 싶지만 그렇지 않습니다. 이 프로젝트를 현실로 만들기 위해 적극적으로 참여하는 사람들의 수는 그 범위의 규모에 비해 여전히 매우 적습니다.

나는 행동하는 사람이기 때문에 사람들이 시간과 에너지를 들여 워드프레스를 비판하고 적극적인 기여 시간으로 전환했으면 합니다. 예, 때로는 티켓에 대해 매우 완고해야 하고 끊임없는 후속 조치가 필요하지만 여전히 그만한 가치가 있다고 생각합니다.

적극적인 참여는 또한 티켓에 건설적인 피드백을 남기거나 개발자 채팅 중에 메모를 하겠다고 제안하는 것을 의미합니다. 그것이 바로 대규모 프로젝트의 저주이자 아름다움입니다. 항상 할 일이 있습니다!

지난 몇 년 동안 저는 다양한 회사의 기여도가 증가하는 것을 보았습니다. 예를 들어 SiteGround에서 우리는 수년간 이벤트와 커뮤니티에 주로 기여했습니다. 우리는 후원하고 자원했으며 주최자이자 연사였습니다. 우리는 스페인어 WordPress 커뮤니티 내에서 개발 및 성장을 돕기 위해 많은 노력을 기울였으며 이제 글로벌 커뮤니티에서 가장 큰 커뮤니티 중 하나가 되었습니다. 작년에 우리는 더 많은 기술 팀에 할애하는 시간을 늘렸습니다. 저는 여전히 멘토와 팀 대표로 Core에서 활동하고 있습니다. WordPress 엔지니어 중 한 명인 Stanimir Stoyanov는 보안 팀에 속해 있으며 JavaScript 엔지니어 중 한 명인 Kiril Zhelyazkov는 현재 일주일에 며칠씩 Gutenberg에 전념하고 있습니다.

WordCamp Sofia 2019 무대에서 SiteGround의 Stanimir Stoyanov
내 동료이자 핵심 및 보안 기여자인 Stanimir Stoyanov

이러한 주제는 우리의 가치와 일치하므로 더 참여하게 된 것은 자연스러운 진행이었습니다.

마지막으로, 며칠 전 내가 Core 블로그에 end-to-end 테스트에 대해 게시한 제안에 사람들이 참여하기를 바랍니다. 지금 당장은 하나가 있으며 우리가 더 잘할 수 있다고 확신합니다. 다시 말하지만, 개발자만 필요한 것은 아닙니다. 사용자는 가장 희귀한 기여자이며 아마도 프로젝트가 마침내 일부 사용자 테스트를 수행하는 데 가장 필요한 사람일 것입니다. 나는 개발자가 아니며, 비개발자들이 영향을 미칠 수 있어 기쁩니다.

프로젝트의 미래에 대한 개인적인 우려와 희망

내가 Core에 기여하기 시작했을 때, 나는 약간의 관찰과 함께 내 컴퓨터에서 메모를 시작했습니다. 프로젝트에 17년의 경험이 없다는 것은 편견 없이 사물을 보는 데 도움이 되고, 개발자가 되지 않는다는 것은 프로젝트를 구성 요소나 티켓이 아닌 살아 있고 호흡하는 몸으로 보는 데 도움이 됩니다. 미래에 대한 나의 걱정, 희망, 꿈을 나눌 수 있게 해주세요.

구성 요소 유지 관리자 및 핵심 커미터: 당신은 그 어느 때보다 필요합니다

이 기사를 작성하는 시점에 프로젝트에는 약 60명의 커미터와 60명의 구성 요소 유지 관리자가 있으며 많은 사람들이 이중, 삼중, 때로는 6중 임무를 수행합니다. 그러나 현실은 WordPress 5.4 및 5.5에서 Sergey Biryukov가 수백 개의 커밋을 수행했다는 것입니다. 나는 Sergey의 작업에 대해 대단히 감사합니다. 동시에 우리가 실수로 Core에 버스 요소를 구축하고 있는 것 같은 느낌이 듭니다. Core Commit 액세스 권한이 있는 대부분의 사람들은 하나의 티켓을 커밋하지 않았습니다. 마찬가지로 모든 구성 요소 유지 관리자에게 다가오는 릴리스에 대한 계획에 대해 들었고 구성 요소의 약 50%만 응답했습니다.

티켓을 예약하고 관리하는 데 도움이 되는 권한과 책임이 있는 사람들이 참여하도록 하려면 어떻게 해야 합니까? 그러나 또한 사람들이 물러나도록 격려하고 새로운 사람들이 올라갈 수 있도록 자신을 비활동적이라고 선언하는 방법은 무엇입니까?

제 경력은 다양한 산업 분야에서 25년이 넘었지만 한 가지는 변함이 없습니다. 사람들이 다른 사람이 역할을 채우는 것을 보면 동기가 덜해지고 때로는 겁을 먹기도 합니다. 희소성은 구매를 유도할 뿐만 아니라 새로운 참여를 유도합니다.

예를 들어, 커뮤니티 팀은 대리인 목록과 그들의 다양한 지위를 유지합니다. Core가 비슷한 일을 할 수 있는지 궁금해서 새로운 사람들이 한 단계 더 올라가고 싶을 때 어떤 구성 요소가 유지 관리자가 누락되었는지 한 눈에 볼 수 있습니다. "핵심 개발자"에 대해 불평하는 사람들은 그들을 얼룩으로 보지 않고 특정 시점에서 일정 기간 동안 비활성 상태일 수 있는 개인으로 볼 것입니다. 실제로 적극적으로 검토하고 커밋하는 사람이 소수에 불과하다는 것을 알면 모든 티켓이 결승선에 도달할 수 없는 이유를 이해하는 경향이 더 커질 수 있습니다.

문서화는 관대함의 최고의 형태입니다

나는 OSS에 기여하는 것에 대해 말할 때마다 이것을 말합니다. 문서는 자주 부족합니다. 종종 거기에 있는 것은 구식입니다.

문서가 나중에 고려되지 않고 개발 프로세스에 포함되도록 하려면 어떻게 해야 합니까?

WordPress를 이탈리아어로 번역하기 위한 문서 스크린샷
it.wordpress.org의 핸드북 – WordPress를 이탈리아어로 번역하는 방법. Gianni Vascellari의 사진

개발에 영향을 미치는 변경 사항에 대한 개발자 노트를 작성하는 데 많은 작업이 투입되었지만 필요한 문서는 이것만이 아닙니다. 핵심 핸드북에 설명된 프로세스 중 일부는 구식이며 일부는 경험 많은 기여자의 마음에 있기 때문에 누락되었습니다.

Gutenberg와 풍부하고 매력적인 텍스트의 열렬한 팬으로서 저는 우리 핸드북이 블록 편집기의 힘을 최대한 활용하고 더 매력적이기를 바랍니다. 지금 그것들은 텍스트의 벽이고 우리가 사람들에게 핸드북을 보라고 말할 때마다 나는 내 마음이 움츠러드는 것을 느낍니다.

가능한 솔루션은 기술적으로 가능하지 않지만 소녀는 꿈을 꿀 수 있습니다. 최소한 버전 제어 문제를 해결하기 위해 GitHub와 동기화하십시오. 그런 다음 문서, 메타 및 디자인을 사용하여 모집, 모집, 모집 및 작업하여 유용하고 매력적이며 읽기 쉽고 스캔하기 쉬운 핸드북을 제공합니다.

움직이는 부품을 추적하고 하나로 작업

내가 자주 알아차리는 또 다른 것은 팀, 초점 및 구성 요소가 사일로에서 작동하는 방식입니다.

이것은 게이트키퍼를 위한 것이 아니라 모든 팀이 수년에 걸쳐 자체적으로 조직한 방식입니다.

우리는 다음 릴리스에 들어갈 내용과 모든 움직이는 부분을 조감도로 볼 수 있는 방법을 찾아야 합니다.

기고자의 날 동안 원형 테이블에 앉아 있는 사람들
WordCamp Europe 2015, Contributor Day에서 WordPress를 만드는 사람들 – 사진 Florian Ziegler

Trac은 매우 세분화되어 있으며 많은 기성 보고서가 있습니다. 이정표로 필터링하고 각 구성 요소에 몇 개의 티켓이 있는지 확인할 수 있지만 이는 이야기의 일부일 뿐입니다.

예, 나는 프로젝트를 단편적으로가 아니라 전체적으로 관리하는 방법을 찾는 것에 대해 이야기하고 있습니다.

깃허브를 입력합니다. 어떤 시점에서.

이것은 단기간에 일어나지는 않지만 결국에는 그렇게 되기를 바랍니다. 구텐베르그가 해온 것처럼 워드프레스의 개발 프로젝트 관리를 GitHub로 옮기세요.

나는 많은 사람들에게 더 친숙한 방식으로 WordPress에 기여하는 것이 인센티브가 될 것이라는 것을 알고 있습니다. 그것은 항상 환영받는 입구에 대한 막대를 낮출 것입니다. 몇 가지 편리한 튜토리얼을 통해 비기술자도 문서화, 테스트 및 프로젝트 관리에 기여할 수 있습니다.

미래는 밝다

모든 문제에도 불구하고, 또는 그로 인해 WordPress의 미래는 밝습니다.

저는 지난 몇 년 동안 여러 팀을 돌아다녔고, 최근에는 더 많은 사람들이 합류하고, 더 많은 사람들이 각 릴리스에 참여하고, 더 많은 사람들이 다른 팀에서 리더십 역할을 맡는 것을 알게 되었습니다. 나는 또한 다양성의 증가를 발견했는데, 이는 항상 환영할 만한 변화입니다.

결론: WordPress는 이를 실현하기 위해 우리 모두가 필요합니다. 배에서 뵙기를 바랍니다!