guruble.com/오픈소스-프로젝트의-컨트리뷰터는-어떻게-되는-것/?ckattempt=1
-- 오픈소스 기여란 무엇인가?
(1) 글쎄요... 사람 마다 생각은 다를 수 있겠지만, 면접 같은데서 '오픈소스 프로젝트 경험'이라는 걸 평가 요소로 삼는 경우라면 언급하신 내용은 인정하지 않을 것 같습니다.
이런 맥락이라면 '오픈소스 경험'이란 건 '라이센스가 오픈소스인 프로그램을 써봤는가'라기 보단 '오픈소스 프로젝트를 운영하거나 다른 프로젝트에 이슈 보고나 PR 제출 등의 형태로 참여해 보았는가' 정도로 해석하는 것이 합당할 것이라고 봅니다.
개발자 뽑는 기업 입장에서 구직자가 무슨 라이센스 프로그램을 써봤는지가 중요할 이유는 쉽게 상상하기 어려우니까요.
(2) 오픈소스의 경우 기존 프로젝트에 기여를 하거나 직접 프로젝트를 만드는 두 가지 경우로 나누어 생각할 수 있습니다.
전자의 경우 회사에서 사용하는 프레임워크나 라이브러리, 또는 개발도구 중에 관심이 가는 것을 골라서 시작하면 좋습니다. 또 평소에 관심이 있던 제품이 있다면 그런 것을 골라도 무방합니다.
일단 관심이 가는 대상을 골랐다면 깃헙( GitHub ) 과 같은 오픈소스 프로젝트 호스팅 사이트에서 해당 프로젝트를 찾아 얼마나 활발하게 개발이 진행되고 있고 얼마나 많은 사람들이 참여하고 있는지 확인합니다.
예컨대 마지막 커밋이 1년이 넘은 프로젝트 보다는 3일 전인 프로젝트를, 추천(스타)이 서너 개 남짓인 프로젝트보다는 천 개를 넘어가는 그런 프로젝트를 고르는 것이 좋습니다.
프로젝트를 골랐다면 문서와 소스를 살펴보면서 등록된 이슈를 보고 본인이 감당할 수 있어 보이는 내용이라면 프로젝트를 포크(fork)해서 이슈를 고치고 가져오기 요청(pull request)을 보내면 됩니다.
그런 과정을 여러 번 하면서 기존 개발자들과 소통을 하다보면 정식 기여자로 참여할 수 있는 기회가 올 수 있습니다.
당장 이슈를 고치기 어렵다면 사용자 입장에서 원하는 기능이나 발견한 문제점 등을 이슈로 올려보고 보통 어떤 식으로 처리가 되는 지 살펴보는 것도 도움이 됩니다.
반면, 이런식으로 기존 프로젝트에 참여하는 것에 부담을 느낀다면 오히려 스스로 오픈소스 프로젝트를 만들어보는 것이 보다 간편하게 오픈소스를 시작하는 방법일 수 있습니다.
오픈소스라고 너무 거창하게 생각할 것 없이 면접 대비 포트 폴리오나 공부 목적 예제 프로그램 정도를 만든다는 생각으로 가볍게 원하는 내용의 프로젝트를 적절한 라이센스와 함께 공개하고, 다른 프로젝트를 참조해서 어떻게 프로젝트 구조를 잡아야하고 어떻게 커밋 메시지를 관리하는 지 등을 배우는 계기로 삼는 것도 좋은 방법입니다.
(4) medium.com/supple/한국-오픈소스-프로젝트-top-100-739dafc082cf
'Study > Scrap' 카테고리의 다른 글
맥/윈도우 자바(jdk) 버전 관리 (0) | 2021.05.22 |
---|---|
[기사 스크랩] B2B SaaS 스타트업 ‘스팬딧’, 20억 원 투자 유치…50억 원 규모로 시리즈A 클로징 (0) | 2021.05.10 |
Spring WebFlux (0) | 2021.05.03 |
추천 알고리즘 (0) | 2021.04.02 |
백엔드 개발자로서 공부하는 자세 정리 (0) | 2021.03.28 |