프로젝트 요약 (Summary)
누가/무엇을/언제/어디서/왜 를 세 줄 내외로 간단 명료하게
→ 1차 목표를 오픈소스 기여로 방향 변경, 오픈소스 기여 이후에 특정 라이브러리 문제 분석후 매핑하는 오픈소스 개발로 방향 재설정
기획 배경 (Background)
프로젝트의 Context를 기재
왜 이 기능을 만드는지, 동기는 무엇인지, 어떤 사용자 문제를 해결하려 하는지, 이전에 이런 시도가 있었는지, 있었다면 해결이 되었는지 포함
(1) [오픈소스 문화의 본질]
•
이번 챕터를 들어오면서 오픈소스를 리서치 해봤는데 이 문화의 중요한 골조는 “라이센스”라는 이해 를 얻었다. 그 다음으로 “라이센스는 왜 필요한가”라는 질문이 생각났고 고민해본 결과 “오픈소스 생태계에 성장과 확산을 장려하기 위함”이라는 답변을 얻었다. 그래서 단순히 좋은 소스를 공유하는 것에서 그치는게 아니라 내 프로젝트가 남들로 하여금 “변형” 및 “재배포” 될 여지가 있어야 단순한 “공유”가 아닌 “오픈소스”로 볼 수 있을 거 같다는 생각을 했다.
(2) [교육용 시나리오와 템플릿을 제공하는 저장소]
•
처음에는 간단한 기능을 가진 라이브러리 개발을 해보기 위해 고민해봤는데, 그런 기능들을 남들이 불편함을 감수하고 가져다 쓸 거 같지 않았다. 그래서 이것저것 찾아보던 중에 시나리오와 템플릿 코드를 제공해주는 저장소를 보고 조금 더 간단하게 변형해 개발해보면 의미 있는 개발물이 될 수 있을 거 같다는 생각을 해서 본 프로젝트 개발을 진행키로 결정했다.
(3) [컨트리뷰트 먼저 도전]
•
아니나 다를까 초보 운전이다보니 역주행을 하고 있었다. 이석범 코치님이 황급히 도로 주행 하는 법 알려주셔서 정상주행 할 수 있게 됐다. 그래서 일단 일차 목표를 오픈소스 기여로 잡고 현재 기여할 오픈소스들을 분석하고 있다. (지금은 Jackson 분석중 ..)
•
Jackson 라이브러리 보니까 컨트리뷰트 조건이 굉장히 까다로운걸로 보임. 다른 라이브러리 물색중 ..
(4) 오픈 소스 기여 문화에 익숙해지기
•
일단 큰 프로젝트 하나에 기여해보는걸 시도하기 보단 이 문화에 익숙해지기 위해 작은 이슈들을 찾아 문제를 해결해보는 경험중
첫 오픈소스 기여
•
good first issue 몇개를 더 해보고 적당한 난이도의 오픈소스 기여 시도 예정
GitHub API, 삼성 LPVS 오픈소스 이슈 할당 받은 상태
목표 (Goals)
예상 결과들을 Bullet Point 형태로 나열합니다. 이 목표들과 측정 가능한 임팩트들을 이용해 추후 이 프로젝트의 성공 여부를 평가합니다.
•
대상 분석중 ..
계획 (Plan)
테크 스펙에서 가장 긴 파트 입니다. 준비한 모든 리서치, 준비 내용들을 여기에 씁니다. 어떻게 기술적, 엔지니어링적으로 접근할지 상세히 묘사합니다. 만약 어떤 부분을 어떻게 할지 확실히 결정하지 못한 상태라면 어떤 것들을 고려하고 있는지 목록화해서 적습니다. 그렇게 하면 이 문서 리뷰어들이 올바른 결정을 내리도록 도움을 주게 됩니다. 얼마나 기술적으로 깊게 써야 하는지는 이 테크 스펙의 목적과 독자들에 따라 정합니다. 작성자는 생산적인 제안을 받을 수 있도록 충분히 상세하게 계획을 적습니다.
여기는 어떻게 프로젝트가 다른 시스템들과 상호작용하는지 그림이나 다이어그램을 포함하기 좋은 지점입니다. 사용자와 시스템 간의 시퀀스 다이어그램, 서비스와 API 간의 데이터 흐름 다이어그램, 데이터베이스 ERD 등 다 좋습니다.
이 테크 스펙이 로우 레벨까지 다뤄야 한다면 HTTP 응답 코드, JSON 요청 / 응답 포맷, 에러 명세 등까지 모두 다뤄져야 합니다.
[0. 오픈소스가 뭔지 감 잡기]
[1. 주제선정]
(1) 일단 컨트리뷰트 먼저 진행키로함
(2) 이석범 튜터님이 제안주신 기준으로 대상 라이브러리 선정 후 분석 중 (Jackson6)
(3) DOCS 봐도 코드가 어딨는건지도 모르겠고 이게 잭슨이 맞는지도 모르겠어서 그냥 작은 단위 프로젝트 컨트리뷰트 시도해보는 방향으로 변경
[2. 첫 오픈소스 컨트리뷰트]
•
기록 작성중 ..
마일스톤 (Milestones)
프로젝트를 제 시간에 맞추기 위해 테크 스펙의 내용을 바탕으로 추정한 마일스톤을 공유합니다. 실험 계획, 배포 날짜를 포함해 최대한 자세히 적습니다.
11/10: maven Repository와 github에 각각 있는 Jackson이 무슨 연관성이 있는건지 환경 이해
11/11: Jackson6 분석 자료 문서화하기
11/12: PR 하는 사례 분석해서 어떻게 시도할지 대략 감 잡아보기
11/14: 첫 오픈소스 기여
11/16: Good first Issue 기준으로 시도해볼 것 찾기
~ 11/20: 오픈소스 기여 10개 해보기
etc 1.기여할 부분을 중점적으로 보되 기존에 Jackson6 호환성 관련 문제 경험해봤던 거 찾아보기
etc 2. 개선할 부분 발견하면 오픈소스 개발해보기
etc3. 좀 더 어려운 난이도의 오픈소스 이슈 찾아보기
보드 보기
Search