2. 안녕하세요
201706 | KOSSLAB SEMINAR
NAVER 오픈소스 거버넌스를 담당하고 있습니다.
• NAVER가 오픈소스 SW를 올바르게 사용하고
• 오픈소스 생태계에 기여할 수 있도록
정책을 만들고 문화를 키우는
일을 하고 있습니다.
3. 오늘 발표에서는
201706 | KOSSLAB SEMINAR
NAVER 오픈소스 공개 경험을 공유합니다.
• OPEN – 오픈소스 프로젝트로 선정하는 기준은 무엇인지
• SHARE – 어떻게 오픈소스 프로젝트 공개를 준비하는지
• ENJOY – 공개 이후 어떻게 사용자들과 소통하는 지에 대해서
이야기를 나누려고 합니다.
Icons used for these slides are made by Madebyoliver from www.flaticon.com is licensed by CC 3.0 BY.
7. 네이버 전사에서 사용하는 Application Performance Management tool
시스템 복잡도가 높아지며 발생하는 문제를 해결하기 위해
대규모 분산 시스템의 성능을 분석하는 새로운 플랫폼 개발 후 공개
3,831 stars @ Github
Pinpoint
https://github.com/naver/pinpoint
201706 | KOSSLAB SEMINAR
8. UI 인터랙션, 이펙트, 유틸리티로 구성된 통합 Javascript 라이브러리
뿜, 샵윈도우, 쇼핑 검색, 스포츠 등의 네이버 서비스에 사용
egjs
https://github.com/naver/egjs
201706 | KOSSLAB SEMINAR
9. 대규모 서비스 운용에 필요한 고가용성, 확장성 요구사항을 구현한
Redis 기반 분산 저장 플랫폼
밴드, 카페 등의 네이버 서비스에 사용
nbase-arc
https://github.com/naver/nbase-arc
201706 | KOSSLAB SEMINAR
10. 오픈소스 차트 라이브러리인 C3의 forked project
네이버 내부 요구사항을 반영
billboard.js
https://github.com/naver/billboard.js
201706 | KOSSLAB SEMINAR
16. NAVER
Open Source
Criteria NAVER에서 잘 사용하고 있는 SW
- 우리가 만났던 문제와 해결책을 공유
- 우리가 잘 사용하고 있어야 남들도 잘 사용할 수 있을 것이라는 최소한의
qualification
- Maintainer가 업무와 프로젝트 운영의 balance를 맞추는 데 도움이 됨
201706 | KOSSLAB SEMINAR
17. NAVER
Open Source
Criteria nbase-arc
- Disk 기반의 클러스터 환경에서 많은 쓰기 부하를 일정 응답 속도로 처리
해야하는 요구 사항을 만족시키기 위해
- In-memory 기반의 scale-out 클러스터 DB를 새로이 개발해서 사용
- 2015년 오픈소스 프로젝트로 공개
201706 | KOSSLAB SEMINAR
nBase-ARC: Redis Cluster | 20140114 | http://d2.naver.com/helloworld/614607
18. NAVER
Open Source
Criteria 외부 개발자/사용자들에게 가치있는 SW
- 같은 문제를 가지고 있는 개발자들에게 도움이 되는 SW
- 사용자들이 적극적으로 참여할 수 있는 SW
- 오픈소스 프로젝트가 다양한 요구사항에 대응할 수 있는 원동력
201706 | KOSSLAB SEMINAR
19. NAVER
Open Source
Criteria billboard.js
- 널리 사용되고 있는 C3 라이브러리의 maintainance 부재
- 신규 요구사항을 적용한 forked project 운영
201706 | KOSSLAB SEMINAR
Why we decided to start billboard.js? | 20170609 |
https://github.com/naver/billboard.js/wiki/Why-we-decided-to-start-billboard.js%3F
21. NAVER
Open Source
Criteria Pinpoint
- 공개 후 외부 사용자들이 각자의 요구 사항에 필요한 feature를 개발
- 개발한 내용을 다시 Pinpoint에 contribution
201706 | KOSSLAB SEMINAR
Pinpoint enhancements | 20170214 |
https://groups.google.com/forum/#!topic/pinpoint_user/miqxcXd31AQ
23. NAVER
Open Source
Preparation Code Cleanup
- 네이버 내부 코드와 공개할 내용 분리
- 코드 내 주석 정리
- 내부 개발 정보가 포함되었는지 확인
- 필요 시 영문으로 번역
- Commit 메시지 정리
201706 | KOSSLAB SEMINAR
25. NAVER
Open Source
Preparation License check
- 직접 개발한 코드 이외의 내용에 대해 출처 및 라이선스 확인
- 외부로 나가는 모든 NAVER SW에 적용
- license conflict가 나지 않도록 배포 라이선스 결정
201706 | KOSSLAB SEMINAR
28. NAVER
Open Source
Preparation Open Notice
- 네이버 개발자 채널
- http://d2.naver.com
- https://www.facebook.com/naverengineering
- 같은 관심사를 가지고 있는 개발자 커뮤니티
- 개발자 뉴스 포탈
201706 | KOSSLAB SEMINAR
31. Beyond
NAVER
Open Source Communication
- 온라인
- Github Issues
- Google groups
- Mailing List
- Team Blog
- 오프라인
- Meetup / Hands-on
- Conference
201706 | KOSSLAB SEMINAR