오픈 소스 프로젝트에 참여하기


19

저는 컴퓨터 공학 분야에서 고등학교를 다니며 올 여름과 가을에 인턴십을 받았습니다. 숙제를하지 않기 때문에이 기회를 갖고 일종의 오픈 소스 프로젝트에 참여하고 싶습니다. C, C ++, Java 및 Python에 능숙합니다. 나는 또한 리눅스에 대해 잘 알고 있으며, 지금은 랩톱에서 사용하고 이번 학기에는 모든 수업에 집중했습니다.

나는 안드로이드 또는 우분투를 보려고 생각했지만 과거에는 조금 압도적 인 느낌이 들었습니다. 누구든지 조언이 있습니까? 작업하기에 좋은 프로젝트가 무엇이고 어디에서 시작해야하는지, 정말로 많은 기여를 할 수 있는지에 관심이 있습니다.

그리고 결국 사람들의 변화는 실제로 얼마나 자주 받아 들여 집니까? 거부하기 위해 얼마나 자주 코드를 작성합니까?

tl : dr 오픈 소스 프로젝트에 기여함으로써 더 많은 프로그래밍 경험을 찾고 있습니다. 현장에 새로운 조언이 필요합니다.


나는 여기에 착륙하는 것이 확실히 가치가 있다고 말하고 싶다!
squillman

6
좋은 생각처럼 들리지만 인턴쉽을하고있는 회사의 "달빛"규칙을 확인하십시오. 일부 장소, 특히 소프트웨어 상점 인 경우 자신의 시간과 PC에서 할 수있는 일에 대해 매우 제한적입니다.
Steve

1
아마도 당신이 언급 한 것보다 더 선언적인 새로운 프로그래밍 언어를 배우는 것을 고려할 것입니다. 하스켈이나 스칼라처럼. 그런 다음 오픈 소스 프로젝트를 수행하십시오.
mrsteve

답변:


15

달빛을 언급 한 Steve Haigh에게 +1

소프트웨어 상점에서 일하는 경우, 고용주가 자신의 시간에 작업 한 소프트웨어의 소유권을 주장하는 상황에 처할 수 있습니다. 시작하기 전에 고용주와상의하여 회사의 달빛 정책을 명확히하십시오.

시작하기 좋은 곳은 OpenHatch 일 수 있습니다 . 사람들이 오픈 소스 프로젝트에 참여할 수 있도록 돕는 웹 사이트입니다. 그들은 당신에게 그들과 계약을 맺은 프로젝트에서 시작하기 위해 "물린 크기의"버그 목록을 제공 할 수 있으며, 귀하를 멘토하고자하는 다른 기고자와 연락 할 수 있도록 도와 줄 것입니다. 선택한 프로젝트 및 / 또는 언어.

패치의 업스트림 승인은 패치의 품질 및 테스트 사례와 함께 제공되는 경우 거의 항상 패치 품질에 달려 있습니다. 실제로 많은 프로젝트는 패치 확인 테스트를 포함하지 않으면 패치를 수락하지 않습니다.
코드의 품질은 주관적으로 판단되는 것이므로 코드를 향상시키기 위해 업스트림 관리자의 건설적인 비판과 협력 할 준비를하십시오.


1
달빛에 대한 그들의 정책은 내가 고려하지 않은 것입니다. 또한 OpenHatch.org는 다소 멋지게 보입니다. 확인하려면 지금 가입하십시오.
Tarmon

2
경우 부업에 대한 또 다른 메모, 고용주에게, 당신은 종이 흔적에 대한 이메일을 통해 그렇게 할 수 있습니다. 그렇지 않으면 나중에 마음이 바뀌지 않아 프로젝트에 대한 주장을 포기하지 않았다고 말해야 할 이유는 무엇입니까? 그냥 생각이야
Jeff Welling

나는이 질문이 닫혔다는 것을 믿을 수 없다. 특히 의견에 근거한 많은 "답변"이 많기 때문이다.
Dave Kanter 2016 년

7

오픈 소스 프로젝트 (FireBreath)의 관리자로서 여러분이 사용하거나 관심있는 프로젝트를 찾아서 도움을 줄 수있는 방법을 찾는 것이 좋습니다. 코드를 작성하지 않고도 할 수있는 일이 많이 있습니다. 우리 프로젝트에는 다음과 같은 사람들이 도움이 필요합니다.

  • 버그 테스트 및보고
  • 웹 사이트에서 문서 업데이트
  • 보조 도구 작성 지원
  • IRC 실에서 놀고 새로운 사용자를 도와주세요
  • 새로운 사용자가 볼 수 있도록 FireBreath를 사용하여 예제 플러그인 생성

이것들은 물론 내 프로젝트에만 해당되며 (도움을 환영합니다! ;-) 모든 프로젝트에는 새로운 사용자가 기여할 수있는 것들이 있습니다. 다른 프로젝트에 대한 가장 최근의 기여는 gitolite에 대한 와일드 카드 저장소 권한을보다 잘 관리 할 수있는 도구를 추가하는 것이 었습니다. 흥미 롭거나 사용할 수있는 프로젝트를 고수하십시오!

행운을 빕니다!


나는 그런 것들에 대해 생각조차하지 않았습니다. 제안 해 주셔서 감사합니다. 그런 종류의 것들이 필요한 새로운 프로젝트를 검색해 보겠습니다.
Andrew

문서화 +1 SharePoint SUSHI의 코디네이터로서 가장 지루하고 어려운 내용 중 하나는 문서이지만 새로운 사용자에게는 가장 중요합니다. 또한 프로젝트의 기능과 작동 방식에 익숙해 지도록 도와줍니다.
Ryan Hayes

3

어떤 프로젝트를 선택해야하는지 말할 수 없습니다. 이것은 실제로 귀하에게 달려 있습니다. 그러나 참여 방법을 알려 드릴 수 있습니다. 일부 프로젝트에 대한 열정을 느끼는 경우, 즉 꽤 오랫동안 응용 프로그램을 사용하고있는 경우 (OS의 경우 쉽지 않을 수도 있음) 항상 제안 된 변경 사항 (향상된 개선 사항, 버그 수정)을 검토하고 프로젝트 소유자에게 검토 / 통합을 요청합니다.
GitHub 프로젝트에서는 패치를 작성하고 풀 요청을 제출하기 만하면됩니다.
어쨌든 제출 한 소중한 패치가 많을수록 핵심 팀을 환영 할 가능성이 높습니다.


2

특정 언어 전문가가 아닌 경우 여전히 가치있는 활동이 많이 있습니다. 여기에는 테스트, 튜토리얼 작성, API 문서 작성, 프로젝트 웹 사이트 수행 등이 포함됩니다. 특별한 관심이있는 경우 해당 영역에서 프로젝트를 찾아 도메인 지식을 제공하십시오. (예를 들어 화학 OS 프로젝트의 활발한 커뮤니티가 있습니다).


2

오픈 소스 프로젝트에 참여하기 위해 OpenHatch에 대한 정보를 얻으십시오. 이것이 전체 임무입니다.

오픈 소스 기여 진입 장벽을 낮추고 다양성을 높이는 것을 목표로하는 오픈 소스 프로젝트. 우리는 많은 이니셔티브를 통해 이러한 목표를 달성합니다 ...


2
무엇을하는지 더 자세히 설명해 주시겠습니까? 그리고 질문에 대한 답변으로 추천하는 이유는 무엇입니까? "링크 전용 답변" 은 Stack Exchange에서 그리 환영받지 않습니다
gnat

1

예를 들어, Mozilla는 항상 프로젝트를 개발하고 테스트 할 C ++ 프로그래머를 찾고 있습니다. 새로운 사용자가 방대한 코드 기반을 다운로드하고 구축하는 데 몇 시간을 소비하는 것은 압도적입니다. 그런 다음 6 개월이 지나면 일주일에 평균 10 시간 이상을 지내고 이에 대해 알게되고 버그 나 결함 또는 그러한 것들을 이해하게됩니다. 그런 다음 곧 재생산, 분리, 수정, 테스트, 회귀 테스트, 패치 적용 방법을 이해할 수있을 것입니다. 이 작업을 더 많이 수행하면 코드베이스에 대한 직접 쓰기 액세스 권한을 얻거나 기능을 감독 할 수 있습니다. 많은 사람들과 함께 작업하는 모든 프로젝트에 이것이 사실이라고 생각합니다.

다른 한편으로, 개발할 사람이 없기 때문에 죽어가는 많은 프로젝트가 있습니다. 이런 종류의 사람들에게 도움을 줄 사람이나 문서를 찾기가 어려울 수 있습니다.

이러한 극단 사이의 균형을 맞추기 위해 자주 또는 일상적으로 사용해야하는 프로그램을 찾을 수 있습니다. 곧 기능 세트를 최대한 활용할 수있을 정도로 충분히 사용하십시오. 아마도 다른 옵션보다 그것을 사용하는 것에 대한 친근감을 개발할 것입니다. 그런 다음 제안하는 기능을 가장 잘 이해하고있을 가능성이 높으므로 기능 요청을 제출하거나 직접 제출할 수 있습니다. 표면적으로이 옵션을 사용하면 프로그램 기능을 최대한 활용하지 않을 수 있습니다. 충분히 오래 머무르면 실제로 할 수있는 것보다 더 많은 일을하는 프로그램이 필요합니다. 보안 / 개인 정보 수정, 미묘한 것 또는 유용성 향상 일 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.