Mục từ này đã đạt chất lượng ở mức sản phẩm bước đầu của Đề án Biên soạn Bách khoa toàn thư Việt Nam giai đoạn 1
Cộng đồng nguồn mở

Cộng đồng nguồn mở (tiếng Anh Open Source Community) là nhóm các cá nhân chia sẻ nhu cầu sử dụng, phát triển dự án phần mềm nguồn mở. Các dự án phần mềm nguồn mở thành công chính là nhờ có các lập trình viên và người sử dụng, gọi là cộng đồng nguồn mở của dự án phần mềm (cộng đồng nguồn mở dự án phần mềm). Thành viên của cộng đồng nguồn mở rất đa dạng, bao gồm nhiều loại đối tượng, từ người yêu thích lập trình đơn thuần, cho tới lập trình viên chuyên nghiệp và người sử dụng phần mềm đầu cuối Cộng đồng nguồn mở được thành lập một cách tự nhiên, phi lợi nhuận, có thể có sự hỗ trợ của các công ty.

Phân loại[sửa]

Phần mêm nguồn mở được hình thành dựa vào quá trình lập trình và đóng góp mã nguồn của cộng đồng nguồn mở dự án phần mềm. Trên thế giới có nhiều cộng đồng, tổ chức thúc đẩy sự phát triển của phần mêm nguồn mở. Có thể phân ra 4 loại cộng đồng nguồn mở dựa trên những đặc thù:

  • Nhà cung cấp duy nhất của phần mêm nguồn mở
  • Cộng đồng lập trình viên
  • Cộng đồng người sử dụng
  • Trung tâm năng lực nguồn mở
Nhà cung cấp duy nhất phần mêm nguồn mở Cộng đồng lập trình viên Cộng đồng người sử dụng Trung tâm năng lực nguồn mở
Mục tiêu Kinh doanh các phiên bản thương mai (với mô hình giấy phép kép) Thực hiện theo các mô hình kinh doanh của chủ sở hữu HOẶC theo sở thích cá nhân Chia sẻ tri thức, chi phívới cộng đồng lập trình viên; sử dụng phần mêm nguồn mở giải quyết các vấn đề của doanh nghiệp hoặc cá nhân Thúc đẩy phong trào phần mêm nguồn mở, hợp tác cùng phát triển
Lãnh đạo Công ty chủ sở hữu Các doanh nghiệp đóng góp nguồn lực lập trình và cá nhân các lập trình viên Các người dùng cuối Ban quản trị / Ban giám đốc của trung tâm
Phạm vi Toàn cầu Toàn cầu Toàn cầu/Khu vực Khu vực/ nội địa
Các hoạt động Thiết lập quan hệ đối tác, tổ chức hoạt động PR và marketing, phát triển phiên bản thương mại dựa trên nguồn mở với giấy phép thương mại Phát triển cộng đồng xoay quanh lập trình viên, thẩm định và phê duyệt các đóng góp kỹ thuật từ doanh nghiệp, cá nhân ngoài Định nghĩa các yêu cầu, phối hợp cùng cộng đồng lập trình viên lên lộ trình phát triển, kiểm thử Quản lý chính sách thúc đẩy quá trình sử dụng phần mềm nguồn mở trong các cơ quan nhà nước, các công ty tư nhân, các tổ chức phi chính phủ NGO
Ví dụ MySQL của Oracle, OpenBravo ERP bởi OpenBravo Linux Foundation, Apache Foundation, OpenStack Foundation Kuali Foundation cho khối các trường Đại học, PillarOne cho các doanh nghiệp bảo hiểm Open Source Business Alliance, Swiss Open Systems User Group

Nhà cung cấp duy nhất của phần mềm nguồn mở[sửa]

Nhiều phần mêm nguồn mở được phát triển từ nhu cầu nội bộ của một công ty, sau đó được chia sẻ và phát hành dưới một giấy phép nguồn mở, ví dụ như MySQL của Oracle, OpenBravoERP của OpenBravo… Công ty bảo trợ phần mềm nguồn mở dạng này, còn gọi là nhà cung cấp, sẽ sở hữu bản quyền đầy đủ của phần mềm đó. Ở đây sẽ thực hiện mô hình giấy phép kép: xuất bản phần mềm tuân theo giấy phép nguồn mở, bán sản phẩm đóng gói (dựa trên phần mềm nguồn mở đó) theo các giấy phép sở hữu độc quyền. Nhà cung cấp nắm giữ bản quyền và giấy phép kinh doanh của sản phẩm. Tuy nhiên vẫn cho phép các lập trình viên, người sử dụng đầu cuối bên ngoài công ty đóng góp trực tiếp vào phần mêm nguồn mở thông qua ký thoả thuận giấy phép người đệ trình (committer) hoặc người đóng góp (contributor). Các thoả thuận này tuân thủ các điều khoản trong các giấy phép mã nguồn mở, cho phép chuyển giao bản quyền của mã nguồn được đóng góp cũng như các tư liệu khác (tài liệu, cấu hình…) cho nhà cung cấp, bảo trợ dự án nguồn mở.

Mục tiêu từ đầu của các nhà cung cấp dự án nguồn mở là bán được các sản phẩm kèm giấy phép sở hữu độc quyền ở phạm vi toàn cầu. Thực tế đã chứng minh rằng các dự án nguồn mở với một nhà cung cấp duy nhất cũng có khả năng xây dựng một cộng đồng nguồn mở rất mạnh như MySQL của Oracle, Openbravo ERP của Openbravo, Magnolia CMS của Magnolia Inc., hoặc Alfresco DMS của Alfresco Inc.

Có ý kiến chỉ trích cho rằng các dự án nguồn mở của một nhà cung cấp duy nhất không thực sự là dự án nguồn mở vì chỉ có một công ty duy nhất đứng đằng sau, kiểm soát toàn bộ cộng đồng, do đó có thể bị ràng buộc vào nhà cung cấp và tiềm ẩn nguy cơ không bền vững của phần mềm nguồn mở. Trong lịch sử phần mêm nguồn mở, việc rẽ nhánh của các dự án nguồn mở khá phổ biến. Các phiên bản rẽ nhánh của cơ sở dữ liệu nguồn mở nổi tiếng MySQL (do nhà cung cấp duy nhất Oracle)là MariaDB, OurDelta, XtraDB.

Cộng đồng lập trình viên[sửa]

Các dự án nguồn mở được cộng đồng lập trình viên đại diện và quản lý là mô hình cộng đồng nguồn mở điển hình trong thế giới nguồn mở. Nhóm cộng đồng này được một cá nhân, một tổ chức (công ty phần mềm, cơ quan nhà nước, trường đại học) khởi xướng. Mã nguồn của dự án nguồn mở này được nhiều người tham gia phát triển. Các lập trình viên tham gia đóng góp mã nguồn, thiết kế quá trình phát triển phần mềm nguồn mở với mục tiêu, động lực khác nhau. Có lập trình viên tham gia vì mục tiêu phát triển cá nhân. Có lập trình viên đóng góp vì nhu cầu sử dụng phần mềm cho công việc. Có lập trình viên tham gia cộng đồng vì được công ty nguồn mở thuê sử dụng phần mềm nguồn mở phục vụ nhu cầu kinh doanh.

Có những dự án nguồn mở được bảo trợ như một cộng đồng đơn nhất, ví dụ LibreOffice được Quỹ Tài liệu (The Document Foundation), hệ thống quản trị nội dung TYPO3 được Hiệp Hội TYPO3 (TYPO3 Association) bảo trợ. Trên thực tế, phần mêm nguồn mở có thể là dự án con của cộng đồng nguồn mở lớn hơn, ví dụ Quỹ Linux (Linux Foundation), Apache Foundation, Mozilla Foundation, OpenStack Foundation. Cộng đồng lập trình viên được tổ chức theo các cách thức khác nhau, tuỳ thuộc vào sự thống nhất của các lập trình viên tham gia, tuy vẫn theo các chuẩn mực nguồn mở. Các dự án này có điểm chung là quy trình kiểm soát dự án thường được giao cho những người đóng góp chính (gọi là chế độ người tài lãnh đạo) và bản quyền của phần mềm được chia sẻ, phụ thuộc vào mức độ đóng góp của những người tham gia. Không có doanh nghiệp thương mại nào có quyền quyết định về quy trình phát hành, lộ trình của các tính năng, hoặc dạng giấy phép nguồn mở trong các dự án này. Tất cả phải được thông qua, đạt được sự đồng thuận của các lập trình viên. Một mô hình phái sinh khác xuất phát từ mô hình Chế độ người tài lãnh đạo là “Nhà độc tài nhân đạo của cuộc sống” (BDFL - Benevolent Dictator For Life) theo đó toàn bộ quy trình phát triển, danh sách các tính năng, phê duyệt thiết kế… đều được quyết định duy nhất bởi một cá nhân. Ví dụ điển hình của mô hình này là dự án phần mêm nguồn mở nhân Linux, ngôn ngữ lập trình Python, bản phân phối Linux Ubuntu.

Cộng đồng người sử dụng[sửa]

Cộng đồng người sử dụng là yếu tố cần và đủ quyết định thành công của dự án phần mềm nguồn mở. Điểm khác biệt là cộng đồng người sử dụng và các tổ chức người sử dụng phần mềm nguồn mở chính là khía cạnh sở hữu bản quyền phần mềm. Trong cả hai trường hợp này, người sử dụng phần mềm sẽ sở hữu phần mềm, còn nhà cung cấp có thể cung cấp các dịch vụ cho phần mềm, nhưng không sở hữu mã nguồn. Việc sở hữu bản quyền mã nguồn cho phép người sử dụng định nghĩa dạng giấy phép nguồn mở và duy trì cộng đồng theo định hướng của họ.

Người sử dụng các sản phẩm nguồn mở tạo nên các cộng đồng xoay quanh phần mềm nguồn mở của họ vì mục đích nắm giữ sự kiểm soát các tính năng, quy trình phát triển phần mềm. Hoạt động chính của cộng đồng người sử dụng phần mềm nguồn mở là xác định các yêu cầu chung và lên kế hoạch triển khai bằng nguồn lực nội bộ, qua các hợp đồng với công ty bên ngoài. Ví dụ về cộng đồng như vậy là Liên minh GENIVI - nhóm các nhà sản xuất ô tô (BMW, Renault, GM, Honda, Jaguar …) và các nhà cung cấp (Continental, Bosch, Pioneer, …) phát triển giải pháp giải trí phần mềm nguồn mở cho xe ô tô. Hãng bảo hiểm MunichRe và Allianz ART Insurance xây dựng phần mềm Giải pháp Quản lý Rủi ro Chuyên nghiệp (ERM) nguồn mở PillarOne.

Trung tâm năng lực nguồn mở[sửa]

Dạng thứ tư là trung tâm năng lực nguồn mở, hoạt động với nền tảng trung lập về sản phẩm nguồn mở và cung cấp nhằm mục tiêu thúc đẩy quá trình sử dụng phần mềm nguồn mở trong các cơ quan nhà nước, các công ty tư nhân, các tổ chức phi chính phủ… Các trung tâm năng lực nguồn mở hoạt động cho phép lấp khoảng trống giữa những người sử dụng phần mềm, các nhà cung cấp công nghẹ thông tin và các thành viên cộng đồng nguồn mở độc lập.

Vì mục tiêu trên, hoạt động chủ yếu của trung tâm năng lực nguồn mở thông thường là tổ chức các hội nghị và hội thảo, cung cấp các dịch vụ tư vấn cho các cơ quan hành chính và các doanh nghiệp, phát triển các ấn phẩm, tài liệu nghiên cứu về nguồn mở. Ngoài ra, các trung tâm năng lực nguồn mở cũng chủ trì xây dựng và bảo trợ các danh mục công ty, các ủy nhiệm nguồn mở, xây dựng và quản lý các nền tảng thông tin về tri thức và kinh nghiệm nguồn mở, bảo vệ sử dụng và phát hành nguồn mở trong các tổ chức và quan điểm chính trị nguồn mở. Mô hình này tương tự như mô hình hội và hiệp hội ngành nghề của Việt Nam.

Trung tâm năng lực nguồn mở hoạt động thành công ở nhiều nơi thế giới, với mô hình hoạt động, cấu trúc thành viên, các sự kiện, quy mô và vốn hoạt động khác nhau, tất cả đều vì mục tiêu chung phát triển hệ sinh thái nguồn mở, chẳng hạn ở Thụy Sỹ có nhóm người sử dụng Hệ thống Nguồn Mở - Swiss Open Systems User Group, ở Đức có Liên minh Doanh nghiệp Nguồn Mở - Open Source Business Alliance, ở Tây Ban Nha có tổ chức CENATIC, ở Pháp có tổ chức Adullact, ở Anh có OSS Watch, ở Nauy có Friprog, ở châu Âu có Diễn đàn Mở châu Âu - Open Forum Europe, ở Việt Nam có Câu lạc bộ Phần mềm Tự do Nguồn mở -VFOSSA.

Lịch sử hình thành và phát triển[sửa]

Lịch sử các cộng đồng nguồn mở gắn chặt với phần mềm nguồn mở. Vào những năm 1980, phần mềm được phân phối thông qua các hệ thống chia sẻ công cộng (BBS - Bullentin Board System). Các phần mềm viết bởi ngôn ngữ lập trình BASIC và các ngôn ngữ thông dịch chỉ có thể được phân phối dưới dạng mã nguồn, nên có rất nhiều các phần mềm miễn phí được chia sẻ theo cách thức này. Việc chỉnh sửa mã nguồn phần mềm trở nên phổ biến và việc thảo luận, chia sẻ càng trở nên thông dụng hơn với sự xuất hiện của diễn đàn Usenet - Unix User Network. Năm 1985, Richard Stallman bắt đầu phát triển dự án GNU và thành lập Quỹ Phần mềm Tự do (FSF - Free Software Foundation). Đây là tiền đề cho sự xuất hiện các công ty đầu tiên kinh doanh dựa trên phần mềm tự do nguồn mở.

Tại thời điểm thành lập FSF, khái niệm về phần mềm nguồn mở vẫn chưa xuất hiện, chỉ có duy nhất khái niệm phần mềm tự do. Đầu những năm 1990, cộng đồng phần mềm tự do đón nhận phiên bản hệ điều hànhmiễn phí đầu tiên với sự kết hợp giữa nhân Linux của Linus Torvalds và GNU. Tiếp theo đó, năm 1993, bản phân phối hệ điều hànhnguồn mở Debian ra đời dưới sự dẫn dắt của Ian Murdock. Debian ký cam kết với dự án GNU và Quỹ Phần mềm Tự do về việc tuân thủ các tiêu chuẩn của phần mềm tự do. Tại thời điểm này bắt đầu xuất hiện các nhóm cộng đồng người phát triển, cộng đồng người sử dụng phần mềm nguồn mở và phần mềm tự do đầu tiên, song song với sự phát triển vượt bậc của nhân Linux.

Cộng đồng nguồn mở là điều kiện cần và đủ cho bất cứ hệ sinh thái nguồn mở nào có thể phát triển và thành công. Dù là phần mềm nguồn mở với nhà cung cấp duy nhất, với các lập trình viên tài ba hay trung tâm năng lực nguồn mở với các nhóm người sử dụng, việc xây dựng, duy trì cộng đồng nguồn mở luôn là tiêu chí quan trọng nhất, bên cạnh việc định hướng và phát triển các tính năng lõi của phần mềm. Lý do rất đơn giản, vì việc duy trì một cộng đồng nguồn mở mạnh đồng nghĩa với việc bảo đảm nguồn lực phát triển, các lập trình viên tham gia và cả các nhà cung cấp dịch vụ dựa trên nguồn mở.

Phần mềm mã nguồn mở trở thành một xu hướng lớn trên thế giới. Nhờ dỡ bỏ dần các rào cản về bản quyền, dễ dàng can thiệp, được cung cấp miễn phí hoặc với giá rẻ, phần mềm nguồn mở được kỳ vọng làm thay đổi diện mạo của ngành công nghệ thông tin. Cộng đồng nguồn mở song hành cùng các phần mềm nguồn mở là một môi trường tốt cho các cá nhân tham gia. Một mặt cho phép phát triển kỹ năng cá nhân, xây dựng mối quan hệ và tăng cường khả năng hoạt động xã hội. Mặt khác, có thể rút ngắn thời gian nghiên cứu, tìm hiểu một vấn đề khi tham khảo và học tập từ các thành viên, tổ chức khác trong cộng đồng nguồn mở, dựa trên tiêu chí của mã nguồn mở là chia sẻ và công khai.

Tại Việt Nam, các cộng đồng nguồn mở thành lập từ đầu những năm 2000, ví dụ như HanoiLUG (Linux User Group), HueLUG, SaigonLUG lần lượt thành lập từ năm 2005. Hoạt động chủ yếu của các cộng đồng này xoay quanh việc chia sẻ kinh nghiệm sử dụng phần mềm nguồn mở, bản địa hoá các phần mềm nguồn mở nổi tiếng trên thế giới và xây dựng các nhóm phát triển phần mềm nguồn mở. Việc duy trì cộng đồng hoàn toàn theo hình thức tự nguyện và biểu quyết. Năm 2011, một số thành viên từ các cộng đồng LUG quyết định thành lập Câu lạc bộ Phần mềm Tự do Nguồn mở Việt Nam (Vietnam Free & Open Source Software Association - viết tắt là VFOSSA), đại diện cho cộng đồng Phần mềm Tự do Nguồn mở (PMTDNM) trên cả nước.

Tài liệu tham khảo[sửa]

  1. The Cathedral and the Bazaar, 1999 - Eric S. Raymond
  2. Open Sources: Voices from the Open Source Revolution. O'Reilly. ISBN 1-56592-582-3, 1999 - Chris DiBona and Sam Ockman and Mark Stone, ed.
  3. Androutsellis-Theotokis, Stephanos; Spinellis, Diomidis; Kechagia, Maria; Gousios, Georgios (2010). "Open source software: A survey from 10.000 feet". Foundations and Trends in Technology, Information and Operations Management. 4 (3-4): 187-347. ISBN 978-1-60198-484-5.
  4. Coleman, E. Gabriella. Coding Freedom: The Ethics and Aesthetics of Hacking (Princeton UP, 2012)
  5. Fadi P. Deek; James A. M. McHugh (2008). Open Source: Technology and Policy. Cambridge: Cambridge University Press. ISBN 978-0-511-36775-5.