[컨퍼런스 후기] 2023 Open Source SW 페스티벌

JOY·2024년 1월 8일
0
post-thumbnail

2022년에 열렸던 Open Source SW 페스티벌 참석을 계기로, 오픈소스 기여에 관심을 가지게 되었다. 덕분에 인생 첫 오픈소스 기여를 하기도 했다. 또 한 번 오픈소스에 관한 유익한 인사이트를 얻고자 2023 Open Source SW 페스티벌에 참석했다. 2022년에 비해 오픈소스 활용 프로젝트나 오픈소스 커뮤니티에 대한 홍보가 대부분인 것 같아 개인적으로 아쉬운 부분도 있었지만, 오픈소스 기여 Tip들도 많이 얻을 수 있었다.

기조 강연을 포함해서 총 8개의 강연이 열렸는데, 그중에서도 오픈소스에 기여하는 데에 도움이 되는 섹션들을 골라 정리해 보았다. 그동안 오픈소스 컨트리뷰션에 관심을 가지고 있었다면, 이 글을 읽고 자신에게 가장 쉬운 방법으로 오픈소스에 기여해 보기 바란다.


Section 1. 나만 오픈소스 없어 🐈

by 이희승 발표자님 (라인플러스 개발자)

🔖 이 Section에서는 개발자가 오픈소스를 하면 좋은 이유를 간략하게 알아보자.

나만 고양이 없다고 부러워해야할까?

고양이를 부러워해야 하는지, 만약 부러워해야 한다면 고양이가 있을 때 이점은 무엇일지 요즘 핫한 ChatGPT한테 물어보았다. 그리고 개발자한테 고양이보다 오픈소스가 더 유익한 이유를 설명해 주셨다.

1. 스트레스 해소 효과가 있다

그러나, 당장의 달콤함이 아닌 근본적인 문제를 해결하는 것이 오히려 진정한 스트레스 해소가 아닐까? 오픈소스를 잘 키우면 개발자 스스로에게 느끼는 실력 부족에 대한 스트레스와 최신 기술에 대한 갈망을 해소할 수 있다. 한 프로젝트를 처음부터 끝까지 개발하고 유지하는 경험 속에서 개발 스킬이 향상되는 것을 느낀다면, 스트레스 해소에 큰 도움이 될 것이다.

2. 소셜 미디어 스타가 될 수 있다.

그러나, 곰곰이 생각해 보면 내가 아닌 "고양이"가 스타가 되는 것이다. 대신 스스로를 브랜딩 해서 스타가 되는 건 어떨까? 오픈 소스를 잘 키우면 개인 브랜딩을 강화하는 데 도움이 된다. 예시로, Netty라는 오픈소스를 만든 개발자는 네트워크 프로그래밍에 대해 잘 알고 있을 거라는 인상을 준다.(실제로 Netty를 만든 분이라고 하셔서 놀랐다!)
따라서, 되고 싶은 모습의 나를 보여주는 오픈소스 프로젝트를 만들자. 기회가 된다면 그 프로젝트로 국내외 컨퍼런스 발표에도 도전해 보자.

3. 인내심을 증진시켜준다.

ChatGPT는 고양이를 이해하고 소통하는 과정에서 인내심과 소통 능력이 증진되어 인간과의 관계에도 도움이 된다고 덧붙였다. 그러나, 오픈소스 프로젝트를 잘 키우면 인적 네트워크 확장이 가능하다. 오픈소스를 통해 다양한 배경을 가진 개발자들과 협업 및 소통할 수 있다. 발표자분께서는 오픈소스를 통해 소통하면서 영어 실력도 늘었다고 말씀해 주셨다.

4. 자기 관리의 귀감이 된다.

ChatGPT에 의하면 고양이의 깔끔한 자기 관리 습관이나 그루밍은 자기 관리의 귀감이 된다고 한다. 그러나, 사실 고양이는 하루의 절반을 그루밍에 쓰며 나머지 절반은 잠을 잔다고 한다. 즉, 자기 관리의 핵심인 시간관리는 전혀 하지 않는다. 그뿐만 아니라, 태생적으로 냄새 잘 안 나는 종이기 때문에 위생 면에서 금수저로 태어났다고도 볼 수 있다.

하지만, 잘 키운 오픈소스로는 소프트웨어 위생 감각을 키울 수 있다. 회사에서 손 못 대는 수많은 코드와 버그들은 뒤로하고, 내 오픈소스를 잘 가꾸면서 클린 코딩 감각을 되찾는 기회를 만들자.

(대반전... 사실 이희승 발표자님께서는 고양이를 키우고 계셨던 것이었ㄷr...)


Section 2. 오늘 저녁부터 시작하는 오픈소스 기여 🌙

by 김태곤 발표자님 (Dable 프런트엔드 팀 리드)

🔖 이 Section에서는 오픈소스 기여를 시작하는 Tip을 알아보자.

김태곤 발표자님께서는 오픈소스 기여에 재미를 느끼고 계신데 주변에 어렵다고 생각하는 분들이 많아서 발표를 하게 되셨다고 한다. XPressEngine, Node.js, React Community, Automattic, Calypso 등의 오픈소스에 참여하셨고, 현재 React Korea 운영진으로서 활동하고 계신다.

41%는 무엇을 가리킬까?

Jetbrain에서 매년 개발자 설문조사를 진행하는데, 개발자들 중에서 2023년에 오픈소스에 기여하고 있다고 밝힌 비율이라고 한다.

그렇다면 22%가 가리키는 것은?

2023년에 “한국인” 개발자들 중에서 오픈소스에 기여하고 있다고 밝힌 비율이다. 1등이 55%인 미국, 2등은 54%인 독일 그 아래로 한참 내려가야 한국이 있는 것을 보면 비교적 낮은 비율이라고 볼 수 있다.

오픈소스 기여에 관심은 있지만, 시작이 어려워요.

1. 시간이 없어요 → 오픈소스 한 달 챌린지에 도전하자!

당장 오늘 저녁부터 매일 오픈소스에 기여하는 챌린지를 스스로 해보는 것이다. 실제로 발표자분께서 실천해 보셨다고 한다. 문서 번역, 문서 리뷰, 패키지 배포, 다른 저장소 PR 등 다양하게 진행하셨고, 그중에서도 대부분은 10여 분이면 기여할 수 있는 것들이 많았다고 한다. 회사나 개인 시간 다 소요하면서도 가능했다고 하시는 걸 보면, 가벼운 마음으로 실행에 옮기는 것이 중요한 것 같다.

2. 능력이 없어요 → 거창한 코드가 필요 없다!

800만이 다운로드할 만큼 나름 유명한 오픈소스인 tiny-warning은 실제 작성된 코드가 단 26줄이라고 한다. 간단한 오픈소스부터 찾아서 기여해 보거나, 혹은 간단한 오픈소스를 직접 만들어보자. small이나 tiny 등의 접두사를 추가해 검색하면 참고하기 쉬운 오픈소스를 찾을 수 있다고 Tip을 주셨다.

3. 코딩에 익숙하지 않아요 → 코딩 외에도 방법이 많다.

버그 테스트, 문서 작성, 번역, 디자인 개선 등 코딩 없이도 기여할 수 있는 방법이 정말 많다. 예시로 linkspace 프로젝트를 들어가 보면, 코딩 없이 linkspace에 기여하는 방법 들을 자세히 알려주고 있다.

4. 아이디어가 없어요 → 사용 중인 것들에서 찾아보자.

실제로 사용하면서 발견한 버그를 수정해 보자. 사용 중인 오픈소스 프로젝트의 Issue 탭을 읽어보고 해결해 볼 만한 이슈를 골라보는 것도 방법이다. 또는 한국어-영어 번역 및 한국어 오타 교정처럼, 좁고 특수한 케이스를 다뤄보자. 예시로 kled.js라는 프로젝트는 한국어가 고려되지 않은 패키지여서, 한국어도 처리하도록 기여하셨다고 한다. 초기 프로젝트일수록 기여할 기회가 많다고 하니 참고하자.


Section 3. 오픈소스에 기여할 때 알면 좋은 프로세스

by 변정훈 발표자님 (당근 SRE)

🔖 이 Section은 이미 알고 있는 정보들을 skip 하고 키워드 위주로 간략하게 정리했다. 따라서, 오픈소스 기여의 전반적인 프로세스를 알고 싶은 분들은 강연 자료 + 글쓴이의 첫 오픈소스 리뷰 글인 첫 오픈소스 컨트리뷰션, A부터 Z까지 살펴보기 (feat. Github Docs)를 읽어보길 권한다.

변정훈 발표자님은 오픈소스 기여에 대해 오랫동안 쌓인 암묵적인 룰을 소개하고자 발표를 하게 되셨다고 한다.

  • Readme
    readme는 프로젝트 소개와 사용방법 등이 담긴 파일이므로, 먼저 readme부터 꼼꼼히 읽어보는 것이 프로젝트를 전반적으로 이해하는 데 도움이 된다.

  • Contributing Guide
    대부분의 오픈소스 프로젝트에는 기여 방법이나 주의 사항을 정리한 Contributing Guide를 제공한다. 따라서, 기여하고자 하는 프로젝트에서 해당 문서를 제공한다면 반드시 읽어보자. 해당 가이드를 따르지 않은 채 PR을 올리면 반려당하거나 패스할 확률이 높다.

  • Issue
    issue를 잘 관리하는 프로젝트는 라벨링이 되어있다. 라벨 위주로 보면 어떤 이슈인지 파악할 수 있다. 프로젝트의 maintainer들이 이슈를 확인하고 라벨링을 해놓은 경우가 일반적이다. 주의할 점은, 쉬운 이슈일수록 라벨링이 잘 되어있는 경향이 있다. 따라서 해당 이슈를 해결하기 위한 PR이 금세 올라왔을 수 있으니, 이미 다른 컨트리뷰터가 처리하고 있는지 확인하자.

  • Verified Signiture
    Verified Signiture을 설정해두면 누군가 도용해서 커밋 한 것이 아니라, 자신이 직접 커밋 했다는 것이 보장된다. 커밋 옆에 verified라는 라벨이 붙는 것을 확인할 수 있다.


마치며,

오픈소스 기여 프로세스를 실제 예시와 함께 자세히 알아보고 싶으신 분은 저의 첫 오픈소스 과정을 기록한 첫 오픈소스 컨트리뷰션, A부터 Z까지 살펴보기 (feat. Github Docs) 글을 읽어보시길 권해드립니다.

오픈소스 기여에 대한 정보를 더 얻고 싶다면 잘 정리된 오픈소스 가이드를 참고해 보세요.

References

https://ossfestival.kr/
https://opensource.guide/ko

profile
Backend Developer

0개의 댓글