Nguồn mở là một mô hình sản xuất phi tập trung cho phép mọi cá nhân sửa đổi và chia sẻ công nghệ nhờ thiết kế cho phép truy cập công khai. Thuật ngữ này bắt nguồn từ ngữ cảnh phát triển phần mềm nhằm biểu thị phần mềm tuân thủ một số tiêu chí phân phối miễn phí nhất định. Ngày nay, thuật ngữ phương pháp nguồn mở chỉ định một tập giá trị rộng hơn dựa trên các nguyên tắc trao đổi thông tin, xây dựng nguyên mẫu nhanh chóng và hợp tác phát triển tự do. Mọi cá nhân đều có thể đóng góp những ý tưởng mới và cải thiện công nghệ thêm nữa để nguồn mở có thể phát triển tự nhiên. Show
Tại sao nguồn mở lại quan trọng?Ý tưởng về nguồn mở xuất hiện từ cộng đồng công nghệ. Quá trình đổi mới công nghệ cần có sự hợp tác toàn cầu để phát triển. Ví dụ: giả sử một đội ngũ lập trình tại Hoa Kỳ phát triển được công nghệ nguồn mở mới dành cho một ứng dụng tài chính. Một đội ngũ lập trình khác tại Úc điều chỉnh công nghệ này, thêm tính năng mới phù hợp hơn dành cho lĩnh vực y tế. Sau đó, đội ngũ thứ ba tại Châu Á phát triển các sản phẩm nguồn mở mới dùng công nghệ gốc đó làm thành phần cốt lõi. Việc chia sẻ kiến thức và đổi mới nhờ công sức của tập thể như vậy mang lại lợi ích cho cả cộng đồng. Lấy bằng sáng chế, bản quyền và giấy phép đắt đỏ để ràng buộc công nghệ làm giới hạn khả năng phát triển. Trong vài thập kỷ qua, nhiều dự án nguồn mở nổi tiếng đã mở đường cho sự phát triển công nghệ nhanh chóng trên toàn thế giới. Nguồn mở có những nguyên tắc nào?Mọi dự án nguồn mở đều có những nguyên tắc cốt lõi như sau: Cộng đồngCộng đồng nguồn mở là một nhóm người tập hợp lại với nhau để đạt được mục đích chung. Giá trị và mục tiêu chung của họ giúp dẫn lối để ra quyết định và thúc đẩy dự án nguồn mở phát triển. Tính minh bạchCác dự án nguồn mở đảm bảo mọi người trong cộng đồng có quyền truy cập vào thông tin và tài liệu cần thiết để làm việc với kết quả tốt nhất. Nhờ nhận thức được bức tranh toàn cảnh, các thành viên của nhóm có thể ra quyết định hiệu quả hơn và xây dựng dựa trên các ý tưởng và khám phá của nhau. Cộng tác mởCác dự án cộng đồng khuyến khích làm việc nhóm, do đó một nhóm có thể giải quyết vấn đề mà cá nhân không thể giải quyết được. Ví dụ: thành viên thuộc sáng kiến nguồn mở bất kỳ đóng góp những thay đổi nhằm cải thiện dự án của người khác. Bạn có thể thiết lập những quy tắc để người khác có thể sửa đổi giải pháp khi cần trong tương lai. Xây dựng nguyên mẫu nhanh chóngDự án nguồn mở tuân theo phương pháp tiếp cận lặp lại, trong đó các thành viên nhóm sẽ tạo và chia sẻ nguyên mẫu theo định kỳ thường xuyên. Việc xây dựng nguyên mẫu nhanh chóng sẽ khuyến khích văn hóa thử nghiệm. Bạn có thể cải thiện và tiếp tục áp dụng những thay đổi có hiệu quả và loại bỏ những thay đổi không hiệu quả. Chế độ nhân tài bao hàm mọi ngườiPhong trào nguồn mở khuyến khích nên có nhiều cuộc trò chuyện và góc nhìn đa dạng. Cộng đồng ra quyết định thông qua sự nhất trí nhưng cũng ưu tiên sự thành công. Cộng đồng nguồn mở sẽ ủng hộ và góp sức cho ý tưởng phù hợp nhất. Phần mềm nguồn mở là gì?Phần mềm nguồn mở là loại phần mềm có mã nguồn cho phép mọi người kiểm tra, sửa đổi và tăng cường. Mã nguồn là một phần của phần mềm được các lập trình viên máy tính điều chỉnh để thay đổi cách ứng dụng vận hành hoặc để bổ sung các tính năng mới. Bất cứ ai có quyền truy cập vào mã nguồn của phần mềm đều có thể cải tiến và tùy chỉnh ứng dụng bằng cách bổ sung các tính năng hoặc khắc phục các lỗi hiện có. Phần mềm nguồn mở xuất hiện trong hầu hết các ứng dụng web và thiết bị bạn sử dụng ngày nay. Một số ví dụ về phần mềm nguồn mở gồm có Linux, một hệ điều hành nguồn mở, cùng Mozilla Firefox, một trình duyệt Internet nguồn mở. Phần mềm nguồn mở có những đặc điểm gì?Đặc điểm của bất kỳ phần mềm nguồn mở nào cũng được điều chỉnh phù hợp với giá trị của phong trào nguồn mở. Nguồn mởPhần mềm nguồn mở được phép phát hành khi có giấy phép nguồn mở đáp ứng các tiêu chí phân phối cụ thể, chẳng hạn như:
Thiết kế mởThiết kế mở đảm bảo quy trình lên kế hoạch và thiết kế phần mềm phải có tính mở và tính minh bạch. Đây có nghĩa là cho phép cộng đồng thúc đẩy quá trình thiết kế và lộ trình tính năng của phần mềm. Sẽ rất mất thời gian để có được sự nhất trí từ cộng đồng, do đó quá trình này có thể là một thách thức. Tuy nhiên, thiết kế được cộng đồng chấp thuận sẽ cho ra sản phẩm tốt hơn, có khả năng đáp ứng nhu cầu của người dùng hiệu quả hơn. Phát triển mởPhát triển mở là việc áp dụng các quy trình phát triển bao hàm mọi người và minh bạch, cho phép ai cũng có thể tham gia như nhau. Dịch vụ cho phép truy cập công khai cung cấp khả năng hiển thị đối với các hoạt động phát triển. Ví dụ: các dự án nguồn mở thường áp dụng một bộ tiêu chuẩn nêu rõ số liệu, cũng chính là tiêu chuẩn đánh giá một đóng góp. Điều này cho phép xem xét tất cả các bản cập nhật phần mềm một cách công bằng, bất kể bản cập nhật đó đến từ người đóng góp lần đầu hay từ nhà phát triển cấp cao. Cộng đồng mởCộng đồng mở đảm bảo rằng cộng đồng phát triển phần mềm là một môi trường bao hàm mọi người, sẵn sàng lắng nghe mọi ý kiến và mọi người đều có quyền xung phong đảm nhiệm vị trí lãnh đạo. Điều này giúp cân bằng yêu cầu cần cả nhà phát triển lẫn người dùng nhờ thiết lập những mục tiêu chung và tạo dựng các liên kết bền vững. Đâu là sự khác biệt giữa phần mềm nguồn mở và các loại phần mềm khác?Đôi lúc, tổ chức hoặc người tạo ra phần mềm muốn kiểm soát phần mềm vì lý do thương mại. Họ duy trì quyền sở hữu độc quyền đối với mã nguồn, nghĩa là chỉ riêng họ mới có quyền sửa đổi mã này để sửa lỗi hoặc bổ sung các tính năng mới. Phần mềm như vậy được gọi là phần mềm độc quyền hoặc phần mềm nguồn đóng. Các sản phẩm của Adobe Photoshop và Norton AntiVirus chính là ví dụ của phần mềm độc quyền. So sánh giữa Phần mềm nguồn mở và Phần mềm nguồn đóngGiữa phần mềm nguồn mở và phần mềm nguồn đóng, hay phần mềm độc quyền, có ba điểm khác biệt chính như sau: Độ tin cậyPhần mềm độc quyền dựa vào một tổ chức hoặc nhà phát triển có khả năng kiểm soát để giúp mã luôn được cập nhật, hoạt động và không xảy ra lỗi. Mặt khác, phần mềm nguồn mở lại được một cộng đồng rộng rãi duy trì. Một số dự án nguồn mở phổ biến có hàng nghìn người đóng góp trên khắp toàn cầu, cũng chính là những người đang kiểm thử toàn diện các thay đổi cũ lẫn mới. Điều này thường giúp tăng độ tin cậy của mã nguồn mở. Bảo mậtMọi mã nguồn đều có thể có các khuyết điểm về bảo mật khiến mã nguồn dễ gặp các cuộc tấn công mạng. Tuy nhiên, phần mềm nguồn mở có lợi thế là sửa lỗi nhanh chóng. Khi bạn hoặc thành viên khác trong cộng đồng báo cáo có lỗ hổng bảo mật, các dự án nguồn mở sẽ cho ra mắt một bản cập nhật mã trong vòng một hoặc hai ngày. Nếu công ty thương mại phát triển phần mềm nguồn mở, khả năng hiển thị cao sẽ tạo sự cấp thiết cần phải khắc phục các vấn đề và thậm chí còn có thể tạo ra phần mềm gốc tốt hơn. Ngược lại, phần mềm độc quyền có các chu kỳ cập nhật dài hơn vì những lý do sau:
Cấp phépCác công ty thường bán phần mềm nguồn đóng theo một giấy phép độc quyền có nêu rõ cách sử dụng phần mềm được pháp luật cho phép. Không ai có thể xem, chỉnh sửa hay sửa đổi mã độc quyền này khi chưa được phép. Ví dụ: giấy phép độc quyền có thể cho phép cá nhân hoặc doanh nghiệp sử dụng nhưng không được phép bán lại. Giấy phép này cũng có thể ràng buộc bạn trong hợp đồng với nhà cung cấp cụ thể trong khoảng thời gian cố định. Mặt khác, phần mềm nguồn mở có sẵn theo giấy phép nguồn mở, nghĩa là ta có thể sử dụng, sửa đổi và tái phân phối miễn phí phần mềm này. Hợp đồng ràng buộc của nhà cung cấp là không tồn tại hoặc rất linh hoạt. Nhà phát triển có thể tải xuống phần mềm này từ một trang web công khai và xem tất cả mã nguồn mở trên máy tính của mình. Giấy phép nguồn mở cũng cho phép người dùng thực hiện những điều sau:
Giấy phép phần mềm nguồn mở có những loại nào?Dù giấy phép nguồn mở có ít quy định hạn chế hơn so với giấy phép độc quyền nhưng cấp độ và phạm vi quyền vẫn sẽ khác nhau tùy loại giấy phép. Sau đây là một số loại giấy phép nguồn mở phổ biến: Giấy phép miền công cộngGiấy phép miền công cộng cho biết rằng mọi người đều có thể sửa đổi, sử dụng hoặc thương mại hóa phần mềm mà không bị hạn chế. Trong hầu hết trường hợp, nhà sáng tạo phần mềm nguồn mở miền công cộng tự nguyện hoặc chủ động quyết định không áp đặt bản quyền cho phần mềm này. Giấy phép cấp phépGiấy phép nguồn mở cấp phép chứa các yêu cầu tối thiểu đối với cách bạn sửa đổi hoặc phân phối phân mềm. Một số ví dụ về loại giấy phép này bao gồm Giấy phép Apache và giấy phép Phân phối nguồn Berkeley (BSD). Dù phần mềm gốc được áp đặt bản quyền và có nguồn mở, người dùng vẫn có thể thương mại hóa và tái phân phối các phiên bản đã qua sửa đổi. Giấy phép công cộng hạn chếGiấy phép công cộng hạn chế (LGPL) cho phép bạn sử dụng những thành phần nguồn mở mà không bị hạn chế. Những thành phần này thường cho phép truy cập dưới dạng các mô-đun mã được gọi là thư viện, mà bạn có thể đưa vào bất cứ mã nào của mình và sử dụng. Nếu bạn sử dụng mã nguồn LGPL trong ứng dụng của mình, bạn có thể thương mại hóa ứng dụng đó. Tuy nhiên, nếu sửa đổi mã LGPL hiện có, bạn sẽ phải tái phân phối theo cùng loại giấy phép một lần nữa. Giấy phép bản sao cho dùngGiấy phép bản sao cho dùng là loại giấy phép nguồn mở phổ biến nhất và Giấy phép công cộng (GPL) chính là một ví dụ điển hình. Các điều khoản của giấy phép bản sao cho dùng cố gắng hạn chế việc thương mại hóa:
Ai là người quản lý phần mềm nguồn mở?Sáng kiến nguồn mở (OSI) là một tổ chức phi lợi nhuận trên toàn cầu, chuyên hướng dẫn và ủng hộ tất cả các loại phần mềm nguồn mở. Với tư cách là một cơ quan tiêu chuẩn, tổ chức này duy trì Định nghĩa nguồn mở, là tài liệu xác định về mặt pháp lý các điều kiện tạo nên phần mềm nguồn mở bất kỳ. Bằng cách tuân theo tài liệu Định nghĩa nguồn mở của tổ chức này, bạn có thể nhận được thương hiệu cho giấy phép được OSI thông qua. Thương hiệu này tạo nên sự tin tưởng và khuyến khích người khác đóng góp và cộng tác cùng bạn. OSI duy trì một danh sách gồm các giấy phép được thông qua và phê duyệt các giấy phép mới trong cộng đồng nguồn mở. Tổ chức này cũng quản lý yêu cầu tiêu chuẩn mở đối với phần mềm. Tiêu chuẩn mở là gì?Tiêu chuẩn mở là những quy tắc phát triển phần mềm hỗ trợ tính nhất quán và khả năng tương tác trong công nghệ. Ta có thể thoải mái triển khai, áp dụng và cập nhật các tiêu chuẩn này. Kết quả là các tiêu chuẩn này khiến nhiều khía cạnh trong đời sống hàng ngày của chúng ta thêm phần thoải mái và thuận tiện. Ví dụ: các tiêu chuẩn cho phép tất cả loại máy kết nối với mọi bộ định tuyến không dây. Bạn có thể sử dụng máy tính xách tay để kết nối Internet từ nhà và từ quán cà phê yêu thích của mình bất kể đang dùng bộ định tuyến nào. Nếu không có các tiêu chuẩn, bạn sẽ phải tìm một quán cà phê có bộ định tuyến tương thích với máy tính xách tay của mình đấy! So sánh giữa nguồn mở và tiêu chuẩn mởTiêu chuẩn là những quy tắc, hướng dẫn và thông số kỹ thuật cho quá trình viết một số loại mã nguồn nhất định chứ không phải cho riêng mã đó. Để được phân loại là nguồn mở, tiêu chuẩn phần mềm phải tuân theo những quy tắc nhất định. Ví dụ: nếu bạn yêu cầu công nghệ độc quyền triển khai các tiêu chuẩn nhất định, vậy các tiêu chuẩn đó không phải nguồn mở. Tại sao phần mềm nguồn mở lại có các phiên bản thương mại?Các nhà sáng tạo và công ty khác kiếm tiền từ nhiều dự án nguồn mở bằng cách bán tiện ích bổ sung, chẳng hạn như phân tích và bảo mật, thu hút các doanh nghiệp lớn hơn. Các công ty tư nhân có thể thương mại hóa mọi phần mềm trong miền công cộng bằng cách đưa các phần mềm nguồn mở này vào trong mã ứng dụng của họ. Họ cũng có thể cho ra mắt các phiên bản khác nhau của cùng phần mềm đấy theo các giấy phép khác nhau. Ví dụ: giả sử một công ty cho ra mắt một hệ thống quản lý cơ sở dữ liệu theo cả Giấy phép công cộng (GPL) và giấy phép độc quyền. Mọi người đều có thể sử dụng phiên bản GPL này để phát triển phần mềm, miễn là họ làm mã mới là nguồn mở. Ngược lại, phiên bản độc quyền cung cấp các dịch vụ phần mềm bổ sung, chẳng hạn như sau:
Bạn có thể mua phần mềm thương mại để sử dụng nội bộ hoặc trả thêm phí để sử dụng phần mềm này trong các sản phẩm và dịch vụ của mình. Phần mềm nguồn mở có giống với phần mềm miễn phí không?Thuật ngữ phần mềm miễn phí đề cập đến một phong trào xã hội, cũng được gọi là phong trào phần mềm miễn phí, hướng đến việc đạt được và bảo đảm được một số quyền tự do nhất định cho người dùng phần mềm. Phong trào này diễn ra để đảm bảo rằng người dùng có quyền tự do thực hiện những điều sau:
Phong trào nguồn mở bắt nguồn từ phong trào phần mềm miễn phí, diễn ra vào đầu những năm 1980. Một số nhóm muốn tập trung vào các ứng dụng công nghệ thực tiễn. Họ cảm thấy thuật ngữ phần mềm miễn phí chưa được rõ ràng và không khuyến khích doanh nghiệp áp dụng. Họ đề xuất thuật ngữ nguồn mở và về sau phổ biến cũng như chuẩn hóa thuật ngữ này bằng cách xây dựng Sáng kiến nguồn mở (OSI). So sánh giữa phần mềm nguồn mở và phần mềm miễn phíNgày nay, phần mềm miễn phí đề cập đến giấy phép nguồn mở trong miền công cộng. Không giống như trong phong trào phần mềm miễn phí, phần mềm nguồn mở giờ đây bao hàm nhiều loại giấy phép và có thể áp đặt một số quy định hạn chế đối với người dùng. Tốt hơn nên gọi phần mềm miễn phí là phần mềm miền công cộng bởi thuật ngữ freeware (phần mềm không mất phí) và free software (phần mềm miễn phí) đều được dùng tương đương nhau. So sánh giữa phần mềm nguồn mở và phần mềm không mất phíThuật ngữ phần mềm không mất phí hiểu đơn giản là một sản phẩm thương mại khác, được cung cấp miễn phí trong thời gian giới hạn. Phần mềm không mất phí cũng có thể là phiên bản dùng thử miễn phí hoặc phiên bản giới hạn tính năng của một sản phẩm yêu cầu phí đăng ký. Kể cả khi có quyền truy cập vào phần mềm không mất phí, bạn vẫn sẽ không có quyền bán lại, chia sẻ hoặc sửa đổi phần mềm đó dưới bất cứ hình thức nào. AWS đóng góp như thế nào cho phần mềm nguồn mở?Tại AWS, chúng tôi tin rằng nguồn mở phù hợp cho mọi người. Chúng tôi cam kết cung cấp giá trị của nguồn mở đến với khách hàng và khả năng vận hành xuất sắc của AWS đến với các cộng đồng nguồn mở. Các kỹ sư của AWS thường xuyên phát triển phần mềm nguồn mở và đóng góp cho hàng nghìn cộng đồng nguồn mở trên GitHub, Apache, Linux Foundation, v.v. Chúng tôi hỗ trợ nguồn mở bằng một số cách khác sau đây:
Các bước tiếp theo trên AWSBắt đầu xây dựng trong bảng điều khiển Bắt đầu xây dựng với AWS trên Bảng điều khiển quản lý AWS. Đăng nhập AWS sẽ ngừng hỗ trợ cho Internet Explorer vào 07/31/2022. Các trình duyệt được hỗ trợ là Chrome, Firefox, Edge và Safari. Tìm hiểu thêm » |