Can
you contribute code to an open source project?
By Randy Metcalfe,
Published: 03 July 2006, Reviewed: 15 February 2012
Bài được đưa lên
Internet ngày: 15/02/2012
Lời
người dịch: Khi bạn, dù là cá nhân hay là một tổ
chức, ví dụ như một trường cao đẳng hay đại học,
tham gia vào cộng đồng phát triển phần mềm nguồn mở
của một dự án nguồn mở cụ thể nào đó, ví dụ
Moodle chẳng hạn, thì bạn sẽ
rất cần quan tâm tới việc những đóng góp mã có bản
quyền của bạn sẽ được quản lý như thế nào trong dự
án đó. Rất có thể bạn sẽ
nên ký một thỏa
thuận giấy phép của người đóng góp (bản
dịch tiếng Việt) trước khi thực
hiện việc đóng góp mã của mình vào dự án đó. Hơn
nữa, thực tế cũng sẽ chỉ ra rằng, ngoài vấn đề đó
ra, thì sự đóng góp cho dự án
là đứng sau tính bền vững của dự án, mà trước hết
để thực hiện được nó, bạn sẽ thấy cần phải
chuyển sang một mô hình phát triển mở.
Vì bạn đã viết
một số mã
Bạn đã viết một
số mã cho một dự án mà bạn từng đôi lúc đi theo. Bạn
đang tham gia trong danh sách thảo luận thư điện tử của
những người sử dụng. Bạn từng âm thầm đi theo
trong danh sách thảo luận thư điện tử của các lập
trình viên. Bạn đã tải về mã nguồn được thấy
trong kho được xây dựng vào ban đêm, và bạn đã viết
bản vá đầu tiên của bạn cho một vài tính năng
của mã mà bạn nghĩ cần vọc.
Phần mềm là một
tác phẩm có bản quyền
Mã nguồn đối với
các ứng dụng phần mềm là một tác phẩm có bản quyền.
Bản quyền nảy sinh ngay khi các ý tưởng được đặt
vào trong một số vật trung gian cố định, nó có thể là
giấy hay điện tử. Không gì đặc biệt cần phải được
thực hiện cho mã để được bảo vệ bằng bản quyền.
Những người nắm
giữ bản quyền có quyền bố trí tư liệu bản quyền
của họ theo ý của họ. Điều này bao gồm việc cấp
phép nó để được sử dụng theo những cách thức khác
nhau.
Các dự án phần mềm
nguồn mở (PMNM) phát hành mã nguồn theo các giấy phép
được OSI chứng thực. Để bản vá của bạn được sử
dụng trong dự án, nó cũng có thể cần phải được cấp
phép theo cùng giấy phép đó. Bạn có thể hoàn tất điều
đó hoặc bằng các cách sau:
- kỹ về bản quyền trong mã cho dự án; hoặc
- cấp phép cho mã để sử dụng trong dự án theo một giấy phép phù hợp
Một số dự án khăng
khăng chỉ định bản quyền. Điều đó nhất định làm
cho mọi điều dễ dàng hơn cho họ sau này khi họ cần
làm việc với các vấn đề về cấp phép. Đó chỉ là
một trong một số khả năng.
Hầu hết các dự án
chỉ yêu cầu rằng bạn cấp phép mã mà bạn muốn đóng
góp theo một giấy phép tương thích với giấy phép của
dự án.
Trong cả 2 trường
hợp, ràng buộc y hệt áp dụng; chỉ người nắm giữ
bản quyền có sức mạnh hoặc tái chí định quyền của
họ hoặc cấp phép cho tư liệu bản quyền của họ.
Bạn có quyền cấp
phép cho tư liệu bản quyền này không?
Bạn có phải là
người nắm giữ bản quyền không?
Hầu hết các nhân
viên trong thực tế không phải là những người nắm
giữ bản quyền đối với tư liệu có bản quyền được
sinh ra như một phần công việc của họ. Điều này sẽ
khác từ cơ quan này tới cơ quan khác, và có thể giữa
các vai trò công việc trong một cơ quan. Xin lưu ý: đã
viết mã này ở nhà sẽ không, bản thân nó, chỉ ra rằng
bạn nắm giữ bản quyền về nó; bạn vẫn cần kiểm
tra các điều khoản làm việc của bạn.
Liệu bạn có là
người nắm giữ bản quyền đối với tư liệu như vậy
hay không nên được nói ra theo các điều khoản làm việc
của bạn. Nếu bạn không thể thấy bất kỳ thứ gì ở
đó, thì bạn có thể muốn kiểm tra bất kỳ chính sách
nào của cơ quan, như một chính sách các Quyền Sở hữu
Trí tuệ, nó được tham chiếu trong hợp đồng làm
việc của bạn.
Bạn phải thiết lập
xem ai là người nắm giữ bản quyền trước khi bạn đi
bất kỳ đâu xa hơn (và lý tưởng trước khi bạn thậm
chí có điều này xa hơn).
Trên
thực tế bạn có phải là người nắm giữ bản quyền
không?
Nếu bạn là người
nắm giữ bản quyền
Nếu bạn trong thực
tế là người nắm giữ bản quyền đối với tư liệu
có bản quyền mà bạn đã tạo ra, thì xin chúc mừng! Bạn
có thể làm gì bạn muốn với sở hữu trí tuệ của
riêng bạn. Điều này bao gồm việc cấp phép nó để
được sử dụng trong một dự án nguồn mở. Bạn có thể
thậm chí muốn chỉ định bản quyền của bạn cho dự
án theo yêu cầu, hoặc cho tổ chức bảo trợ (như Quỹ
Phần mềm Tự do – FSF) mà đang đỡ đầu cho dự án.
Bạn thậm chí có
quyền cấp phép đôi cho mã nguồn của bạn nếu
bạn muốn. Điều này có thể xảy ra nếu bạn định cấp
phép cho nó cho một người hoặc nhóm theo một giấy phép
này và cấp phép nó cùng một lúc cho người khác hoặc
nhóm khác theo một giấy phép khác. Điều này là có khả
năng vì người nắm giữ bản quyền có thể làm bất
kỳ điều gì mà họ muốn với từ liệu có bản
quyền của họ.
Nếu bạn không
phải là người nắm giữ bản quyền
Nếu bạn không phải
là người nắm giữ bản quyền thì bạn phải có được
sự đồng ý của người nắm giữ bản quyền đối với
bất kỳ điều gì bạn muốn làm với tư liệu có bản
quyền. Thường thì điều này được nói ra trong các điều
khoản làm việc của bạn.
Để đóng góp bản
vá của bạn cho dự án nguồn mở trong trường hợp ví
dụ của chúng tôi, người nắm giữ bản quyền cần phải
đồng ý rõ ràng cho sự đóng góp của bạn đối về sở
hữu trí tuệ của nó. Hơn nữa, đáng lưu ý là điều
này không có hiệu ứng nào lên bản thân bản quyền cả.
Mã được đóng góp
cho các dự án nguồn mở thường giữ lại bản quyền
của người nắm giữ bản quyền gốc ban đầu. Để đăng
ký bản quyền tác giả của bạn cho cơ quan của bạn,
một qui trình chính thống hơn nhiều có thể cần thiết
để được bắt đầu. Thường thì điều này có liên
quan tới các tài liệu pháp lý cần thiết phải được
thay đổi, truyền bản quyền từ bên này sang bên khác.
Điều này có thể là một qui trình phiền hà. Kết quả
là nó rất hãn hữu trong thiết lập ở các trường cao
đẳng và đại học.
Nhưng thậm chí nếu
bản quyền không được tái chỉ định, thì sự đồng ý
phải giành được trước khi mã có thể được đóng góp
cho dự án. Hơn nữa, trong một dự án được quản lý
tốt thì bạn sẽ được yêu cầu cung cấp sự đồng ý
này ở dạng của một thỏa
thuận giấy phép của người đóng góp (bản
dịch tiếng Việt).
Làm thế nào bạn có
được sự đồng ý của đại học và cao đẳng của bạn
để đóng góp tư liệu có bản quyền của họ cho một
dự án nguồn mở?
Đi đâu trước:
lãnh đạo phòng của bạn
Hầu như chắc chắn
con đường của bạn sẽ đưa bạn qua bất kể sự giám
sát sở hữu trí tuệ nào đối với tổ chức của bạn.
Ví dụ nếu bạn làm việc ở UK HE, có khả năng sẽ là
các dịch vụ pháp lý, các dịch vụ nghiên cứu, và có
khả năng là đơn vị chuyển giao công nghệ của cơ quan
bạn. Nhưng nơi đầu tiên để bắt đầu là với lãnh
đạo hoặc người đứng đầu phòng của bạn.
Nếu bạn may mắn,
thì người quản lý của bạn hoặc người lãnh đạo
phòng bạn sẽ từng được ủy quyền sức mạnh để
quyết định những vấn đề như vậy. Có một
ví dụ tốt về điều này xảy ra tại đơn vị các
Dịch vụ Điện toán Đại học Oxford.
Nếu bạn không được
may mắn cho lắm, thì người quản lý bạn hoặc người
đứng đầu phòng của bạn có thể không có được ủy
quyền này nhưng ít nhất sẽ biết tập các bước chính
thức phải được thực hiện trong tổ chức của bạn để
đạt được sự đồng ý của nó để đóng góp bản vá
của bạn cho một dự án nguồn mở.
Điều này có thể sẽ
có nghĩa là việc tiếp cận phòng các dịch vụ pháp lý
tổ chức của bạn. Họ có thể thường cần một sự
xác minh từ một vài đơn vị độc lập, như đơn vị
chuyển giao công nghệ, như đối với giá trị có thể
của sở hữu trí tuệ theo yêu cầu và bất kỳ trách
nhiệm pháp lý nào mà cơ quan đó có thể chịu như là
kết quả của sự phát hành này đối với IPR của nó.
Đáng tiếc là các
bước có liên quan có thể là vô số, và hầu như không
thể tránh khỏi là dị thường đối với tổ chức của
bạn. Họ cũng không đảm bảo rằng sự
đồng ý sẽ sớm đến.
Cách thức tốt hơn
Các tổ chức có suy
nghĩ sớm nhận thức được rằng những đóng góp mã, dù
ở dạng các bản vá hay thậm chí ở dạng các module đáng
kể hơn, là một phần của những gì được đi theo bằng
sự tham gia mang nặng tính cơ quan với nguồn mở. Nhưng
làm thế nào họ tạo thuận lợi nhất cho qui trình này?
Ví
dụ, khi Đại học Mở từng bắt tay vào lựa chọn Moodle
như là môi trường học ảo (VLe) trong tương lai của
mình, nó cũng đã thiết lập cách mà nó có thể tham gia
với sự phát triển đang diễn ra của Moodle. Kết quả là
một đầu tư đáng kể, nhưng có định lượng và bao hàm
trong sự phát triển nguồn mở. Sự đóng góp của Đại
học Mở về sở hữu trí tuệ của nó cho dự án Moodle
không chỉ làm cho Moodle mạnh hơn. Nó đứng ra như một
ví dụ về thực tiễn tốt trong sự cam kết của viện
trường với cộng đồng nguồn mở.
Một
ví dụ khác là cách mà Đại học Cambridge bắt đầu tham
gia vào chương trình đối tác của Sakai. Trong những giai
đoạn đầu của Sakai, trọng tâm chính là về việc tạo
ra một khung hành chính cho nhóm các viện trường giáo dục
có liên quan trong dự án. Mục tiêu chính là để đảm
bảo rằng các phát hành phần mềm được sản xuất đúng
thời điểm và tuân theo danh sách các ưu tiên được đồng
thuận. Tuy nhiên
trong một số dự án thí điểm của Sakai thì đã trở
nên rõ ràng rằng sự đóng góp có điều phối của các
viện trường cho sự phát triển mã chỉ là thứ yếu so
với tính bền vững tổng thể của dự án. Cambridge và
các đối tác khác đã hiểu được rằng việc xây dựng
một cộng đồng xung quanh mã được chia sẻ thực sự là
quan trọng hơn, và như là kết quả của những nỗ lực
của họ theo đường hướng này, dự án đã chuyển sang
một mô
hình phát triển mở (bản
dịch tiếng Việt)
nhiều hơn.
Có
những ví dụ khác về sự tham gia của các viện trường
tương tự đang diễn ra trong các trường cao đẳng và đại
học khắp nước Anh. Chúng tôi vui mừng để bổ sung ví
dụ của bạn vào bài viết này. Xin hãy viết cho chúng
tôi theo info@oss-watch.ac.uk
và nói cho chúng tôi biết về điều đó.
You’ve
written some code for a project that you’ve been following for some
time. You are participating on the users
email discussion list. You have been quietly following the developers
email discussion list. You have downloaded the source code found in
the nightly build repository, and you have written your first patch
for some feature of the code that you think needs tweaking.
Can
you contribute this patch to the project?
Source
code for software applications is a copyright work. The copyright
arises as soon as the ideas are placed in some fixed medium, which
could be paper or electronic. Nothing special needs to be done for
the code to be protected by copyright.
Copyright
holders have the right to dispose of their copyright material as they
see fit. This includes licensing it to be used in a variety of ways.
Open
source software projects release their source code under
OSI-certified licences. In order for your patch to be used in the
project, it too would need to be licenseable under the same licence.
You could accomplish that by either:
- signing over the copyright in the code to the project; or
- licensing the code for use in the project under an appropriate licence
Some
projects insist upon the assignment of copyright. That certainly
makes things easier for them later when they need to deal with
licensing matters. That is just one of a number of possibilities.
Most
projects merely require that you license the code you wish to
contribute under a licence compatible with the project’s licence.
In
either case, the same constraint applies: only the copyright holder
has the power to either reassign their copyright or license their
copyright material.
Do
you have the right to license this copyright material?
Most
employees
are not in fact the copyright holders for copyright material that is
generated as part of their work. This will vary from institution to
institution, and possibly between job roles within an institution.
Please note: having
written this code at home will not, by itself, indicate that you hold
the copyright on it; you still need to check your terms of
employment.
Whether
you are the copyright holder for such material should be spelled out
in your terms of employment. If you cannot find anything there, you
may want to check any institutional policies, such as an Intellectual
Property Rights policy,
that are referenced by your employment contract.
You
must establish who the copyright holder is before you go any further
(and ideally before you’ve even got this far).
Are
you in fact the copyright holder?
If
you are in fact the copyright holder for the copyright material that
you have generated, congratulations! You can do what you wish with
your own intellectual property. This includes licensing it to be used
in an open source project. You may even wish to assign your copyright
to the project in question, or to the umbrella organisation (such as
the Free Software Foundation) that is sponsoring the project.
You
even have the right to dual
license your code
should you wish. This would occur if you were to license it to one
person or group under one licence and license it at the same time to
another person or group under a different licence. This is possible
because the copyright holder can do anything
they wish with their copyright material.
If
you are not the copyright holder then you must have the consent of
the copyright holder for anything you wish to do with their copyright
material. Often this is spelled out in your terms of employment.
In
order to contribute your patch to the open source project in our
example case, the copyright holder needs to explicitly consent to
your contribution of its intellectual property. Moreover, it is worth
noting that this has no effect upon the copyright itself.
Code
contributed to open source projects often remains the copyright of
the original copyright holder. In order to sign
over your institution’s
copyright, a much more formal process would need to be started. This
usually involves legal documents needing to be exchanged, passing the
copyright from one party to another. This can be an onerous process.
As a result it is much more rare in the college and university
setting.
But
even if copyright is not being reassigned, consent must be obtained
before the code can be contributed to the project. Furthermore, in a
well managed project you will be required to provide this consent in
the form of a contributor
licence agreement.
How
do you get the consent of your college or university to contribute
their copyright material to an open source project?
Almost
certainly your route is going to take you through whoever oversees
intellectual property for your organisation. For example if you work
in UK HE, that is likely to be legal services, research services, and
possibly your institution’s technology transfer unit. But the first
place to start is with your manager or department head.
If
you are in luck, your manager or department head will have been
delegated the power to decide such matters. There is a
good example of this occurring at Oxford University Computing
Services.
If
you are slightly less lucky, your manager or department head may not
have this delegated authority but at least will know the official set
of steps that must be taken within your organisation in order to
achieve its consent to contribute your patch to an open source
project.
This
will probably mean approaching your organisation’s legal services
department. They would usually need a determination from some
independent body, such as the technology transfer unit, as to the
probable value of the intellectual property in question and any
liability that the institution may be incurring as a result of this
release of its IPR.
Regrettably
the steps involved may be numerous, and are almost inevitably
peculiar to your organisation. Nor do they guarantee that consent
will be forthcoming.
Forward
thinking institutions recognise that contributions of code, whether
in the form of patches or even more substantial modules, are part of
what is entailed by robust institutional engagement with open source.
But how can they best facilitate this process?
For
example, when the The Open University embarked upon the choice of
Moodle as its future virtual learning environment (VLE), it also
established how it would engage
with Moodle’s ongoing development. The result is a substantial, but
quantified and contained, investment in open source development. The
Open University’s contribution of its intellectual property to the
Moodle project doesn’t merely make Moodle stronger. It stands as an
example of good practice in institutional engagement with the open
source community.
Another
example is the way University of Cambridge became involved in the
Sakai partnership program. In the early stages of Sakai the main
focus was on creating an administrative framework for the consortium
of educational institutions involved in the project. The main aim was
to ensure that the software releases were produced on time and
according to an agreed list of priorities. However during a number of
Sakai pilots it became evident that coordinating institutional
contribution to the development of the code was only secondary to the
overall sustainability of the project. Cambridge and other partners
understood that building a community around the shared code was
actually more important, and as a result of their efforts in this
direction the project moved to a more open
development model.
There
are other examples of similar institutional engagement taking place
in colleges and universities across the UK. We would love to add your
example to this article. Please write to us at info@oss-watch.ac.uk
and tell us about it.
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.