{
    "componentChunkName": "component---src-templates-blog-post-js",
    "path": "/20-09-19-contributon-epilogue/",
    "result": {"data":{"site":{"siteMetadata":{"title":"irrationnelle","author":"irrationnelle","siteUrl":"https://dev.rase.blog","comment":{"disqusShortName":"","utterances":"irrationnelle/devlog"},"sponsor":{"buyMeACoffeeId":""}}},"markdownRemark":{"id":"5081a474-7bd7-5a38-8ad2-fdc9c40b460c","excerpt":"오픈소스 컨트리뷰톤이란? 오픈소스 컨트리뷰톤은 OSS 에서 주관한 프로그램으로, 약 6주간 멘토 개발자님과 함께 오픈소스 프로젝트에 참여하여 오픈소스의 생태계를 직접 겪어보고 자신의 역량을 살려 해당 오픈소스에 기여(contribute)하는 것을 목표로 한다. 그래서 이름도 contribute 와 marathon 을 결합한 컨트리뷰톤이다. 지원하기 오픈소스에 기여하는 것에 대해 선망같은 것이 있었는데다가, 요새 테스트 도구에 대해 관심이 지대했기 때문에 Mocha…","html":"<h1 id=\"오픈소스-컨트리뷰톤이란\" style=\"position:relative;\"><a href=\"#%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4-%EC%BB%A8%ED%8A%B8%EB%A6%AC%EB%B7%B0%ED%86%A4%EC%9D%B4%EB%9E%80\" aria-label=\"오픈소스 컨트리뷰톤이란 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>오픈소스 컨트리뷰톤이란?</h1>\n<p>오픈소스 컨트리뷰톤은 <a href=\"https://www.oss.kr\">OSS</a> 에서 주관한 프로그램으로, 약 6주간 멘토 개발자님과 함께 오픈소스 프로젝트에 참여하여 오픈소스의 생태계를 직접 겪어보고 자신의 역량을 살려 해당 오픈소스에 기여(contribute)하는 것을 목표로 한다. 그래서 이름도 contribute 와 marathon 을 결합한 컨트리뷰톤이다.</p>\n<h1 id=\"지원하기\" style=\"position:relative;\"><a href=\"#%EC%A7%80%EC%9B%90%ED%95%98%EA%B8%B0\" aria-label=\"지원하기 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>지원하기</h1>\n<p>오픈소스에 기여하는 것에 대해 선망같은 것이 있었는데다가, 요새 테스트 도구에 대해 관심이 지대했기 때문에 <a href=\"https://github.com/mochajs/mocha\">Mocha</a> 프로젝트에 꼭 지원하고 싶었다. Mohca 프로젝트가 없었다면 다른 프로젝트에도 관심을 두었겠지만 압도적으로 Mocha 에 참여하고픈 마음이 커서 지원동기나 포부에 대해서도 1지망인 Mocha 에 관련한 이야기만 작성했고, 사실상 1지망이 되든가 떨어지든가 로 갈리게 될 지원이었다. 너무나 감사하게도 선발 되었고, 이렇게 후기까지 작성할 수 있어 기쁘다.</p>\n<h1 id=\"임하는-마음\" style=\"position:relative;\"><a href=\"#%EC%9E%84%ED%95%98%EB%8A%94-%EB%A7%88%EC%9D%8C\" aria-label=\"임하는 마음 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>임하는 마음</h1>\n<p>사실 자동화 테스트 자체를 이해하기 시작한 것도 최근이고, 그 때 사용했던 도구는 <a href=\"https://testing-library.com\">Testing Library</a> 였기 때문에 <code class=\"language-text\">jest</code> 만 써봤지 <code class=\"language-text\">Mocha</code> 는 써본 적이 없었다. 또 <code class=\"language-text\">jest</code> 는 assertion 및 mocking 까지 전부 제공해주는 데 비해 <code class=\"language-text\">Mocha</code> 는 <a href=\"https://www.chaijs.com\">chai</a> 나 <a href=\"https://sinonjs.org\">sinon</a> 등을 조합해서 사용하고 <code class=\"language-text\">Mocha</code> 자체는 테스트 런너 역할에만 집중하기 때문에 기여를 하기 위해서는 좀 더 core 한 부분을 다루지 않으면 안 될거라는 막연한 두려움과 부담이 있었다. 담백하지만 필수적인 기능을 제공하며 이미 굉장히 성숙한 단계에 접어든 오픈소스에 과연 어떤 기여를 할 수 있을까 생각하니 정말 자그만한 커밋이라도 반영되어서 merge 되면 좋겠다고 바랐다. 스스로에게 큰 짐을 안겨주어서 금방 지쳐나가 떨어지지 않도록 소박한 목표만을 세웠는데, 나중에 멘토님 이야기를 들어보니 오픈소스에 기여하는 것은 PR을 보냈을 때부터가 시작이라서 많은 피드백이 오고가고 그 피드백을 반영하여 코드를 수정한 끝에 PR이 merge 되기 때문에 6주라는 시간 내에 merge 까지 되는 것은 그리 쉽지 않다고 하셨다. 결국 merge 가 아니라 PR 을 하나라도 보내는 것을 목표로 하였고, 6주가 지나더라도 한 번 시작한 PR은 죽이 되든 밥이 되든 끝까지 관리하기로 마음을 먹었다.</p>\n<h1 id=\"첫-pr-그리고-merge\" style=\"position:relative;\"><a href=\"#%EC%B2%AB-pr-%EA%B7%B8%EB%A6%AC%EA%B3%A0-merge\" aria-label=\"첫 pr 그리고 merge permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>첫 PR, 그리고 merge</h1>\n<p>이슈 찾기는 역시 생각대로 수월하지 않았다. <code class=\"language-text\">good-first-issue</code> 라벨이 붙은 이슈들은 이미 해결하여 PR을 merge 했지만 이슈를 닫지 않았거나, 꽤 오래된 것들이었다. 오랫동안 해당 이슈가 남아있다는 것은 그럴만한 이유가 있어서였고, 역시 쉽게 접근하기 힘든 이슈들이었다.</p>","frontmatter":{"title":"2020 오픈소스 컨트리뷰톤 Mocha 후기","date":"September 19, 2020"}}},"pageContext":{"slug":"/20-09-19-contributon-epilogue/","previous":{"fields":{"slug":"/20-07-27-recoil-opinion/"},"frontmatter":{"title":"recoil 정리","category":"react","draft":false}},"next":{"fields":{"slug":"/20-10-06-destructuring-assignment/"},"frontmatter":{"title":"비구조화 할당은 얕은 복사","category":"Dev","draft":false}}}},
    "staticQueryHashes": ["3128451518","3474900066"]}