How
students can get started contributing to open source software
Posted
08 Jan 2016 by Chris
Aniszczyk
Bài
được đưa lên Internet ngày: 08/01/2016
Là
sinh
viên, việc tham gia vào nguồn mở là cách tuyệt vời để
cải thiện các kỹ năng lập trình của bạn. Từ kinh
nghiệm của tôi, nó thậm chí có thể giúp khởi động
sự nghiệp của bạn. Nhưng bạn sẽ bắt đầu từ đâu?
Và làm thế nào bạn tham gia vào được?
Tôi
đã bắt đầu con đường nguồn mở của mình trong những
ngày học ở trường phổ thông trung học khi tôi đã có
nhiều thời gian rỗi trong tay (và đã sống với IRC). Qua
kinh nghiệm đó tôi đã học được cách đóng góp vào
nguồn mở thông qua phương tiện truyền thông như IRC và
Usenet. Nguồn mở đã phát triển kể từ những ngày xa
xưa đó, và bây giờ có các cách thức chính quy hơn để
tham gia vào với nguồn mở như là một sinh viên.
Các
chương trình cho các sinh viên đại học
Google
Summer of Code (Mùa hè lập trình của Google)
Google
Summer of Code
(GSOC) là chương trình toàn cầu chào các sinh viên tiền
thù lao để viết mã cho các dự án nguồn mở. Các sinh
viên tham gia sẽ đi cùng với những người hướng dẫn
dự án nguồn mở để tạo ra phần mềm. Cùng với việc
được trả tiền, họ xây dựng các mối liên kết trong
cộng đồng nguồn mở. Từ kinh nghiệm của tôi, các mối
liên kết đó có thể dẫn tới các cơ hội việc làm
trong tương lai.
Có
hơn 100 tổ chức nguồn mở tham gia trong GSOC, từ Quỹ
Phần mềm Apache (Apache
Software Foundation)
cho tới Mozilla
và hơn thế nữa. Tôi thấy nó là một trong những chương
trình tốt nhất ngoài đó cho các sinh viên để làm quen
với nguồn mở. Nếu bạn có quan tâm trong việc tham gia
trong GSOC, thì cửa
sổ nhận đơn cho năm 2016
mở vào ngày 14/03.
Outreachy
(trước kia là Chương trình Outreach
dành cho phụ nữ)
Outreachy
đưa mọi người từ các nhóm còn chưa được thể hiện
trong phần mềm tự do nguồn mở và chỉ dẫn họ qua sự
đóng góp đầu tiên của họ. Chương trình cung cấp một
cộng đồng có tính hỗ trợ cho việc bắt
đầu đóng góp và chào các cơ hội giáo sinh có trọng
tâm 2 lần trong năm với một số tổ chức phần mềm tự
do. Các đơn xin cho
chương trình năm 2016 sẽ mở vào ngày 09/02 và đóng vào
ngày 22/03.
Rails
Summer of Code (Mùa hè lập trình Rails)
Rails
Girls Summer of Code là chương trình tình bạn toàn cầu
nhằm mang sự đa dạng hơn vào nguồn mở. Các ứng viên
nữ thành công được trả tiền thù lao theo tháng (từ
tháng 7 tới tháng 9) để làm việc trong các dự án nguồn
mở theo lựa chọn của họ. Chương trình năm 2015 từng
thành công vang dội, với 16 đội tham gia.
Facebook
Open Academy (Viện Mở Facebook)
Chương
trình Facebook
Open Academy (FOA) thúc đẩy sự cộng tác giữa các
trường đại học và các tổ chức nguồn mở. FOA là
tương tự như tinh thần của GSOC, nhưng các sinh
viên kết thúc việc tham gia bằng việc vào một khóa học
thông thường ở trường đại học. Khóa học bắt đầu
với sự kiện khởi động mà ở đó tất cả các bên
cùng nhau tham gia các ngày cuối tuần tăng cường học và
lập trình. Sau cuộc khởi động đó, các sinh viên trở
về các trường đại học của mình và tiếp tục làm
việc trong các đội ảo. Các hướng dẫn viên tiếp tục
hỗ trợ các đội trong phần còn lại của dự án. Vài
người hướng dẫn đưa ra loạt bài giảng để cung cấp
các cơ hội học tập tiếp theo cho các sinh viên. Cuối
chương trình, các sinh viên nhận được chứng chỉ.
Các
Câu lạc bộ và Chương trình đại học
Một
điều nhận thấy nếu bạn ở trong trường đại học
thì hãy xem liệu có bất kỳ câu lạc bộ nguồn mở có
liên quan nào hay không. Ví dụ, Đại học Bang Oregon - OSU
(Oregon State University)
có Câu lạc bộ Nguồn Mở OSU (OSU
Open Source Club)
và thậm chí một Phòng thí nghiệm Nguồn Mở OSU (OSU
Open Source Lab);
các trường đại học khác có thể có các câu lạc bộ
tương tự để giúp bạn tham gia vào với nguồn mở. Một
vài trường đại học thậm chí đang thành lập các vị
thành niên xung quanh nguồn mở, ví dụ, trong năm 2014, RIT
đã khởi xướng mức
vị thành niên
đầu tiên trong phần mềm nguồn mở.
Các
chương trình cho các sinh
viên chưa tốt nghiệp đại học
Google
Code-in
Đối
với đám người trẻ hơn, Google
Code-in
là cuộc thi lập trình thường niên cho phép các sinh viên
độ tuổi 13-17 thi các bài thi được các tổ chức nguồn
mở khác nhau đưa ra. Các tổ chức đó trải từ Drupal
tới KDE
và thậm chí cả Quỹ Wikimedia
(Wikimedia
Foundation).
Trong 5 năm qua, 2.233 sinh viên từ 87 quốc gia đã hoàn
thành 12.495 bài thi nguồn mở thông qua cuộc thi.
Các
sinh viên nào hoàn thành một nhiệm vụ sẽ có được
chứng chỉ, và các sinh viên nào hoàn thành 3 nhiệm vụ
sẽ có thêm áo T-shirt. Vào cuối kỳ thi, từng tổ chức
sẽ chọn ra 2 sinh viên là những người đoạt giải
thưởng lớn và họ sẽ tới thăm trụ sở chính của
Google.
Cuộc
thi Google Code-in năm nay đang diễn ra và sẽ kết thúc vào
ngày 25/01.
Các
hội nghị và các học bổng du lịch
Việc
tham dự một hội nghị có liên quan tới nguồn mở là
cách tốt để tham gia vào với dự án và cộng đồng
nguồn mở. Thường có một phiên cho những người bắt
đầu ở các hội nghị để giúp cho những người đóng
góp lần đầu. Bạn cũng có cơ hội kết nối mạng với
những người đệ trình mã nguồn (committers) và các thành
viên cộng đồng.
Một
mặt, như một sinh
viên, tài chính hầu hết là khó khăn. Mặt khác, có các
hội nghị chào các khoản tài trợ du lịch cho các sinh
viên và các nhóm còn chưa nổi. PyCon,
ví dụ, có chương trình hỗ trợ tài chính, và StrangeLoop
có các
trợ cấp cơ hội.
Đối với phụ nữ, Hội nghị Grace Hopper Conference đưa
ra tài
trợ học bổng
mà bạn có thể xin theo từng năm. Nếu bạn trong lĩnh vực
Linux,
mỗi hội nghị LinuxCon
đều có các vé trợ cấp - giảm giá cho các sinh viên và
một chương
trình học bổng đa dạng.
Chúng
chỉ là một ít trong số các hội nghị ưa thích chào sự
hỗ trợ du lịch hoặc các học bổng. Có thể thấy nhiều
thông tin hơn trong danh sách OpenHatch wiki.
Tìm
những người hướng dẫn và các vấn đề của những
người bắt đầu
Một
cách khác để tham gia vào nguồn mở là tìm kiếm người
chỉ dẫn tốt. Trong các tổ chức nguồn mở lớn nhất
định, có các chương trình hướng dẫn chính quy mà bạn
có thể tham gia vào. Ví dụ, dự án Fedora có một danh
sách những người hướng dẫn chào sự trợ giúp phụ
thuộc vào các mối quan tâm của bạn. Mozilla có một site
của những người tự nguyện cho những ai muốn đóng
góp các kỹ năng thiết kế và dịch nếu bạn không phải
là lập
trình viên.
Cũng
có vài dự án nguồn mở đánh dấu các vấn đề như là
thân thiện với những người bắt đầu. Để tìm chúng,
tôi rất khuyến cáo viếng thăm trang
các vấn đề
của OpenHatch
hoặc site
Up
For Grabs,
hoặc tìm issuehub.io đối với các
vấn đề của những người bắt đầu
trên GitHub. Như là một phần thưởng, hãy tự do kiểm
tra sáng kiến 24
Pull Requests,
nó liệt kê các dự án bạn có thể đóng góp vào cuối
mỗi năm học, trong các kỳ nghỉ.
Trả
trước
Là
quan trọng để nhớ alf chúng tôi tất cả đều đã từng
là sinh
viên một lúc nào đó và bất kỳ ai cũng đã bắt đầu
con đường nguồn mở của họ ở đâu đó. Nếu bạn
đang đọc điều này khi là một sinh viên, tôi hy vọng
bạn thấy các nguồn đó hữu ích để bắt đầu (xin lưu
ý có nhiều chương trình hơn ngoài đó so với những gì
tôi đã liệt kê). Nếu bạn đang đọc điều này như một
lập
trình viên nguồn mở có kinh nghiệm, hãy nhớ trả trước,
chúng ta còn nợ nó đối với thế hệ tương lại các
lập trình viên nguồn mở để bỏ thời gian hướng dẫn
họ và làm giảm các rào cản cho sự đóng góp.
As
a student, getting involved in open source is a great way to improve
your programming skills. From my experience, it can even help
kickstart your career. But where do you begin? And how do you get
involved?
I
started my open source journey during my high school days when I had
a lot more free time on my hands (and lived on IRC). It was through
that experience that I learned how to contribute to open source
through communication media like IRC and Usenet. Open source has
grown since those olden days, and there are now more formal ways to
get involved with open source as a student.
Programs
for university students
Google
Summer of Code
Google
Summer of Code (GSOC) is a global program that offers students
stipends to write code for open source projects. Student participants
get paired with open source project mentors to create software. On
top of getting paid, they build connections within the open source
community. From my experience, these connections could lead to future
employment opportunities.
There
are over 100 open source organizations that take part in GSOC, from
the Apache Software Foundation
to Mozilla and more. I find it
to be one of the best programs out there for students to get started
in open source. If you're interested in participating in GSOC, the
2016
application window opens March 14.
Outreachy
(formerly known as Outreach Program for Women)
Outreachy
takes people from groups underrepresented in free and open source
software and guides them through their first contribution. The
program provides a supportive community for beginning to contribute
and offers focused internship opportunities twice a year with a
number of free software organizations. Applications
for the 2016 program will open February 9 and close March 22.
Rails
Summer of Code
Rails
Girls Summer of Code is a global fellowship program aimed at
bringing more diversity into open source. Successful female
applicants are paid a monthly stipend (July-September) to work on
open source projects of their choice. The 2015 program was
a roaring success, with 16 teams participating.
Facebook
Open Academy
The
Facebook Open
Academy (FOA) program promotes collaboration between universities
and open source organizations. FOA is similar in spirit to GSOC, but
students end up participating by taking a normal university course.
The course begins with a kickoff event in which all parties come
together for an intensive weekend of learning and hacking. After the
kickoff, students return to their home universities and continue work
in virtual teams. The mentors continue to support the teams during
the rest of the project. The course instructors at each university
meet with student teams at regular intervals to review progress. Some
instructors overlay a lecture series to provide further learning
opportunities to students. At the end of the program, students
receive a grade.
University
Clubs and Programs
One
thing to look out for if you're at university is to see if there are
any associated open source clubs. For example, Oregon State
University (OSU) has the OSU
Open Source Club and even a OSU Open
Source Lab; other universities may have similar clubs to help you
get involved with open source. Some universities are even formalizing
minors around open source, for example, in 2014, RIT launched the
first minor
degree in open source software.
Programs
for pre-university students
Google
Code-in
For
the younger crowd, Google
Code-in is an annual programming competition that allows students
aged 13-17 to complete tasks specified by various open source
organizations. These open source organizations range from Drupal
to KDE and even the Wikimedia
Foundation. Over the past five years, 2,233 students from 87
countries have completed 12,495 open source tasks through the
competition.
Students
who complete one task earn a certificate, and students who complete
three tasks earn an extra T-shirt. At the end of the competition,
each organization will choose two students as the grand prize award
winners and they will visit Google HQ.
This
year's Google Code-in competition is already underway and ends
January 25.
Conferences
and travel scholarships
Attending
an open source related conference is a great way to get involved with
an open source project and community. There is usually a beginner
track at conferences to help first time contributors. You also have
the opportunity to network with committers and community members.
On
the downside, as a student, finances are most likely tight. On the
bright side, there are conferences offering travel grants for
students and underrepresented groups. PyCon,
for example, has a financial assistance program, and StrangeLoop has
opportunity
grants. For women, the Grace Hopper Conference offers scholarship
grants you can apply for every year. If you're into Linux, every
LinuxCon has deeply discounted tickets for students and a diversity
scholarship program.
These
are just a few of my favorite conferences that offer travel
assistance or scholarships. For a more thorough list see the
OpenHatch wiki.
Finding
mentors and beginner issues
Another
way to get involved in open source is to find a great mentor. In
certain large open source organizations, there are formal mentoring
programs you can take part in. For example, the Fedora project has a
list of mentors
offering help depending on your interests. Mozilla has a great
website on how to contribute and find mentors to get
involved. Furthermore, Mozilla has a great volunteer
site for those who want to contribute design or translation
skills if you're not a programmer.
There
are also some open source projects that mark issues as
beginner-friendly. To find them, I highly recommend visiting the
OpenHatch issues page or
Up For Grabs site, or search
issuehub.io for beginner
issues on GitHub. As a bonus, feel free to check out the 24
Pull Requests initiative, which provides a listing of projects
you can contribute to at the end of each year during the holidays.
Pay
it forward
It's
important to remember that we were all students at one time and
everyone starts their open source journey somewhere. If you're
reading this as a student, I hope you find these resources useful to
get started (please note there are more programs out there than I
listed). If you're reading this as an experienced open source
developer, remember to pay it forward, we owe it to the future
generation of open source developers to spend time mentoring them and
lowering the barriers to contribution.
Dịch:
Lê Trung Nghĩa
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.