Phần mềm nguồn mở là gì?

Bạn có thể không nhận ra nó nhưng bạn sử dụng phần mềm nguồn mở gần như mỗi ngày

Phần mềm nguồn mở (PMNM) là phần mềm mà mã nguồn có thể xem được và có thể thay đổi bởi công chúng, hoặc nói cách khác là "mở". Khi mã nguồn không thể xem được và có thể thay đổi được bởi công chúng, nó được coi là "đóng" hoặc "độc quyền".

Mã nguồn là phần lập trình đằng sau hậu trường của phần mềm mà người dùng thường không xem xét. Mã nguồn đưa ra các hướng dẫn về cách thức hoạt động của phần mềm và cách tất cả các tính năng khác nhau của phần mềm hoạt động.

Cách người dùng hưởng lợi từ PMNM

PMNM cho phép các lập trình viên cộng tác để cải thiện phần mềm bằng cách tìm và sửa lỗi trong mã (sửa lỗi), cập nhật phần mềm để làm việc với công nghệ mới và tạo các tính năng mới. Cách tiếp cận cộng tác nhóm của các dự án nguồn mở mang lại lợi ích cho người dùng phần mềm vì lỗi được sửa nhanh hơn, các tính năng mới được thêm vào và phát hành thường xuyên hơn, phần mềm ổn định hơn với nhiều lập trình viên tìm lỗi trong mã và cập nhật bảo mật được triển khai nhanh hơn nhiều chương trình phần mềm sở hữu độc quyền.

Hầu hết PMNM sử dụng một số phiên bản hoặc biến thể của Giấy phép Công cộng GNU (GNU GPL hoặc GPL). Cách đơn giản nhất để nghĩ về GPL tương tự như ảnh nằm trong miền công cộng. GPL và miền công cộng đều cho phép bất kỳ ai sửa đổi, cập nhật và sử dụng lại thứ gì đó mà họ cần. GPL cung cấp cho người lập trình và người dùng quyền truy cập và thay đổi mã nguồn, trong khi miền công cộng cho phép người dùng quyền sử dụng và điều chỉnh ảnh. Phần GNU của GNU GPL đề cập đến giấy phép được tạo ra cho hệ điều hành GNU, một hệ điều hành tự do / mở và tiếp tục là một dự án quan trọng trong công nghệ nguồn mở.

Một tiền thưởng khác cho người dùng là PMNM nói chung là miễn phí, tuy nhiên, có thể có chi phí cho các tính năng bổ sung, chẳng hạn như hỗ trợ kỹ thuật, đối với một số chương trình phần mềm.

Nguồn mở đến từ đâu?

Trong khi khái niệm về mã hóa phần mềm cộng tác có nguồn gốc trong các học viện 1950-1960, vào những năm 1970 và 1980, các vấn đề như tranh chấp pháp lý đã gây ra cách tiếp cận cộng tác mở này cho việc viết mã phần mềm để mất hơi nước. Phần mềm sở hữu độc quyền đã tiếp quản thị trường phần mềm cho đến khi Richard Stallman thành lập Quỹ Phần mềm Tự do (FSF) vào năm 1985, đưa phần mềm mở hoặc miễn phí trở lại vị trí hàng đầu. Khái niệm "phần mềm tự do" đề cập đến tự do, không phải chi phí. Phong trào xã hội đằng sau phần mềm tự do duy trì rằng người dùng phần mềm nên có quyền tự do thấy, thay đổi, cập nhật, sửa chữa và thêm vào mã nguồn để đáp ứng nhu cầu của họ, và được phép phân phối nó hoặc chia sẻ nó một cách tự do với người khác.

FSF đóng một vai trò hình thành trong phong trào phần mềm tự do và nguồn mở với Dự án GNU của họ. GNU là một hệ điều hành miễn phí (một bộ chương trình và công cụ hướng dẫn một thiết bị hoặc máy tính cách hoạt động), thường được phát hành với một bộ công cụ, thư viện và ứng dụng cùng nhau có thể được gọi là phiên bản hoặc bản phân phối. GNU được ghép nối với một chương trình được gọi là hạt nhân, quản lý các tài nguyên khác nhau của máy tính hoặc thiết bị, bao gồm cả việc liên lạc qua lại giữa các ứng dụng phần mềm và phần cứng. Hạt nhân phổ biến nhất được ghép nối với GNU là hạt nhân Linux, ban đầu được tạo bởi Linus Torvalds. Hệ điều hành và ghép nối hạt nhân này về mặt kỹ thuật được gọi là hệ điều hành GNU / Linux, mặc dù nó thường được gọi đơn giản là Linux.

Vì nhiều lý do, bao gồm cả sự nhầm lẫn trên thị trường về thuật ngữ "phần mềm tự do" thực sự có ý nghĩa, thuật ngữ thay thế "nguồn mở" trở thành thuật ngữ ưu tiên cho phần mềm được tạo và duy trì bằng cách sử dụng phương pháp cộng tác công khai. Thuật ngữ "mã nguồn mở" đã được chính thức thông qua tại một hội nghị thượng đỉnh đặc biệt về các nhà lãnh đạo công nghệ vào tháng 2 năm 1998, do nhà xuất bản công nghệ Tim O'Reilly tổ chức. Cuối tháng đó, Sáng kiến ​​nguồn mở (OSI) được thành lập bởi Eric Raymond và Bruce Perens là một tổ chức phi lợi nhuận chuyên quảng bá PMNM.

FSF tiếp tục là một nhóm vận động và vận động dành riêng cho việc hỗ trợ quyền tự do và quyền của người dùng liên quan đến việc sử dụng mã nguồn. Tuy nhiên, phần lớn ngành công nghiệp công nghệ sử dụng thuật ngữ "nguồn mở" cho các dự án và các chương trình phần mềm cho phép truy cập công khai vào mã nguồn.

Phần mềm nguồn mở là một phần của cuộc sống hàng ngày

Các dự án nguồn mở là một phần trong cuộc sống hàng ngày của chúng ta. Bạn có thể đang đọc bài viết này trên điện thoại di động hoặc máy tính bảng của mình và nếu có, bạn có thể sử dụng công nghệ nguồn mở ngay bây giờ. Các hệ điều hành cho cả iPhone và Android ban đầu được tạo ra bằng cách sử dụng các khối xây dựng từ phần mềm, dự án và chương trình nguồn mở.

Nếu bạn đang đọc bài viết này trên máy tính xách tay hoặc máy tính để bàn, bạn có đang sử dụng Chrome hoặc Firefox làm trình duyệt web không? Mozilla Firefox là một trình duyệt web nguồn mở. Google Chrome là phiên bản sửa đổi của dự án trình duyệt nguồn mở có tên Chromium - mặc dù Chromium được các nhà phát triển Google bắt đầu đóng vai trò tích cực trong việc phát triển và cập nhật bổ sung, Google đã thêm lập trình và tính năng (một số không mở nguồn) cho phần mềm cơ sở này để phát triển trình duyệt Google Chrome.

Trong thực tế, internet như chúng ta biết nó sẽ không tồn tại mà không có PMNM. Những người tiên phong về công nghệ đã giúp xây dựng web trên toàn thế giới sử dụng công nghệ nguồn mở, chẳng hạn như hệ điều hành Linux và máy chủ web Apache để tạo ra internet hiện đại của chúng ta. Máy chủ web Apache là các chương trình OSS xử lý yêu cầu cho một trang web nhất định (ví dụ: nếu bạn nhấp vào liên kết cho trang web bạn muốn truy cập) bằng cách tìm và đưa bạn đến trang web đó. Các máy chủ web Apache là nguồn mở và được duy trì bởi các tình nguyện viên của nhà phát triển và các thành viên của tổ chức phi lợi nhuận được gọi là Tổ chức phần mềm Apache.

Nguồn mở đang tái tạo và định hình lại công nghệ của chúng ta và cuộc sống hàng ngày của chúng ta theo những cách chúng ta thường không nhận ra. Cộng đồng lập trình viên toàn cầu đóng góp cho các dự án nguồn mở tiếp tục phát triển định nghĩa về PMNM và thêm vào giá trị nó mang lại cho xã hội chúng ta.