Trang chủ EDA | Doman - Hosting | Siêu thị trực tuyến

Khái niệm phần mềm tự do (FLOSS)

Một số khái niệm cho hệ điều hành mã nguồn mở Linux

Các điều hành viên: wwwlehuysang, thientuyettinh, hadobac

Khái niệm phần mềm tự do (FLOSS)

Gửi bàigửi bởi sunflower » Thứ 3 07 Tháng 10, 2008 12:43 pm

FLOSS viết tắt của cụm từ "Free/Libre Open-Source Software".

Phần mềm tự do là phần mềm mà bất kỳ ai cũng có thể sử dụng, sao chép, cải tiến, nghiên cứu, phân phối miễn phí hoặc bán. Chính xác hơn là nó liên quan đến bốn sự tự do cơ bản mà bất cứ người dùng nào cũng nên có:

- Mọi người có thể sử dụng tự do vào bất kỳ mục đích gì
- Mọi người có thể nghiên cứu, học hỏi và tự do thay đổi nó thích hợp với nhu cầu của mình
- Mọi người được tự do sao chép miễn phí cho người khác hoặc là bán nó.
- Mọi người được tự do cải tiến sau đó phân phối thoải mái sự cải tiến đó cho cộng đồng.

Điều này không phải là mới hay đặc biệt. Đây là cách phần mềm đã đừng được phát triển thuở ban đầu. Thế nhưng, các công ty lớn đã nhảy vào thay đổi quy luật. Họ xem phần mềm là công cụ để kiếm tiền chứ không phải để làm cho cuộc sống tốt hơn.

Về mặt pháp luật, FLOSS được định nghĩa bằng giấy phép sử dụng và phân phối phần mềm để bảo đảm bốn quyền tự do đó. Người nào cấp giấy phép này cho người khác vẫn giữ được quyền của mình đối với phần mềm. Nói cách khác, phần mềm được chia sẻ nhưng chỉ đối với người nào tuân theo những nghĩa vụ trên. Những ai không theo luật này bị tẩy chay và có thể mất quyền sử dụng, mở rộng, phân phối hay phát triển phần mềm mới dựa trên phần mềm đó.

Là người dùng, tại sao tôi phải xem xét hay chỉnh sửa mã nguồn
Điều quan trọng không phải là bạn chỉnh sửa hay xem mã nguồn, mà là bạn không bị cấm hay ràng buộc vào một cá nhân hay công ty nào để làm, hay được làm giùm như vậy. Công nghệ kỹ thuật phát triển liên tục, phần cứng, phần mềm và yêu cầu của người sử dụng cũng thay đổi theo. Phần mềm là công cụ trợ giúp cho cuộc sống cũng phải dễ dàng thay đổi nhanh chóng. Vì vậy, ngay cả khi bạn không đủ trình độ và khả năng để chỉnh sửa, bạn cũng không bị ràng buộc, kiềm chế bởi sự độc quyền của người bán phần mềm.

Ngoài ra, khả năng xem xét được phần mềm rất quan trọng, để xem nó có những chức năng hiểm độc hay không. Thí dụ bạn muốn biết một phần mềm có theo dõi bạn không. Chẳng hạn như một phiên bản của Windows đã được thiết kế để báo cáo với Microsoft tất cả những phần mềm cài trên máy bạn. Hay chương trình tải nhạc KaZaa khi cài đặt trên máy, cho phép đối tác của KaZaa sử dụng máy của bạn. Bạn hay bất cứ người nào cũng cần phải có thể xem xét phần mềm để tự bảo vệ mình trước những sự ngược đãi như vậy. Ngay cả nếu bạn không biết cần phải kiểm tra những gì, người nào có khả năng sẽ sớm muộn phát hiện được và thông báo rộng rãi.

Ngoài ra còn có nhiều lý do khác, chẳng hạn như sửa lỗi, hoặc chỉnh sửa chương trình, sẽ được bàn sau.

Như vậy tôi không phải trả tiền cho PMTD?
Trong tiếng Anh, chữ "free" có nghĩa nhập nhằng, nhưng trong Tiếng Việt, chữ "tự do" hoàn toàn khác với chữ "miễn phí". Khi nói PMTD tức là nói tới bốn điều tự do nói trên, còn nói "miễn phí" là nói về giá cả. Trong định nghĩa của PMTD không nói là bạn không thể bán nó. Thực tế có nhiều công ty mà mô hình kinh doanh chủ yếu là gom góp, dịch chương trình và bán PMTD. Tuy nhiên, vì người nào đã được cấp phép đều có quyền bán lại hoặc phân phối miễn phí nên bạn lúc nào cũng dễ dàng tải về từ Internet hay những nơi khác một cách hợp pháp.

Vậy thì có cái gì mà không tự do về những loại phần mềm khác?
Hầu hết những loại phần mềm không tự do đều không phải để bán mà để cấp phép. TỪ hệ điều hành phức tạp cho tới trò chơi đơn giản, người sử dụng chỉ được cấp phép sử dụng nó dựa trên những điều kiện được đề ra trong bản thoả thuận với người dùng. Giấy phép đó thường là để ràng buộc và giới hạn bạn có thể sử dụng phần mềm như thế nào. Trong hầu hết các trường hợp, người dùng bị cấm không được "tháo rời" phần mềm để học về cách làm việc của nó, không thể chỉnh sửa hay cải tiến, chỉ được sao lưu một bản dự phòng, và nghiêm cấm sao chép cho người khác.

Tuy PMTD có thể được sao chép hợp pháp, nhưng nếu tôi sao chép như vậy, chẳng phải có người bị thiệt hại sao?
Cộng đồng người sử dụng PMTD cảm thấy sự thiệt hại do cản trở sử dụng không thể được đánh gía bằng lợi nhuận bán phần mềm. Họ dùng những cách khác để kiếm tiền.

Ngoài ra, nếu một người không thể lấy được một phần mềm một cách miễn phí, thường thì họ cũng không bỏ tiền để mua nó. Thí dụ rõ ràng nhất là những người sử dụng phần mềm bản quyền bất hợp pháp thường mua chúng với giá rất rẻ hoặc tải xuống từ mạng.

Trái với suy nghĩ của bạn rằng phân phối và chỉnh sửa phần mềm là gây thiệt hại, Richard Stallman liệt kê 3 mức độ thiệt hại vật chất do hạn chế quyền phân phối và chỉnh sửa:
- Ít người dùng hơn
- Không người dùng nào có thể thích ứng hoặc sửa được chương trình
- Những nhà lập trình khác không thể học gì được từ chương trình, cũng không thể phát triển phần mềm mới dựa trên nó được.

Vậy phần mềm nguồn mở (Open Source Software) là gì?
PMNM cũng giống PMTD. Điểm khác biệt lớn nhất là PMNM xem PMTD chỉ là một cách để làm phần mềm tốt hơn và không coi trọng sự tự do của người dùng.

Phần mềm nguồn mở bắt đầu ra sao?
Khoảng năm 1998, vài nhà phát triển PMTD nhận thấy rằng nếu đừng nhắc gì tới đạo đức hay tự do mà chỉ nói tới lợi ích, họ có thể truyền bá phần mềm dễ hơn, đặc biệt là đối với doanh nghiệp. Vì vậy, họ gọi là "phần mềm nguồn mở" nhằm mục đích này.

Vậy tại sao PMTD và PMNM thường gọi chung với nhau?
Hầu hết các PMNM hội đủ tiêu chuẩn của PMTD và ngược lại.

PMTD được làm ra như thế nào?
Bởi vì mã máy (mã nhị phân) rất khó đọc hiểu, con người muốn nghiên cứu học hỏi để chỉnh sửa hay cải tiến một phần mềm cần phải đọc được mã nguồn. Vì vậy, PMTD phải có mã nguồn mở và miễn phí.

Không giống như phần mềm bản quyền chỉ tác giả mới có quyền truy cập vào mã nguồn, ai có ý thích đều có thể truy cập vào mã nguồn của PMTD. Vì vậy, nếu người dùng muốn chỉnh sửa hay cải tiến PMTD, người đó có toàn quyền tùy thích. Trong nhiều trường hợp, người dùng sau khi chỉnh sửa thường công bố phiên bản đã được cải tiến rộng rãi qua Internet. Như vậy, những người có thể liên lạc với nhau qua Internet cộng tác với nhau để phát triển PMTD. Một khía cạnh rất quan trọng thường bị bỏ qua của PMTD là phản hồi và ý kiến đóng góp của người dùng. PMTD thường rất tích cực tìm kiếm phản hồi từ người dùng, rất nhiều công cụ đã ra đời để tích hợp sự phàn nàn, thông báo lỗi và ý kiến của người dùng vào trong quy trình sản xuất PMTD.

Nhưng tôi vẫn không hiểu tại sao ai lại muốn cho không sản phẩm của họ?
Bởi vì sở thích hoặc vì tiền

Đúng vậy, họ kiếm được tiền nhờ vào PMTD mà họ viết. Những công ty lớn như Red Hat hay MySQL chẳng hạn, họ kiếm tiền bằng cách cho không sản phẩm của họ (và bán dịch vụ hỗ trợ sản phẩm đó). Và họ nhận ra rằng họ kiếm được nhiều tiền hơn là nếu bán sản phẩm ở dạng phần mềm bản quyền.

Nói là "cho không" thì dễ dẫn tới hiểu lầm vì nó ngầm chỉ giá cả, không phải sự tự do. Đúng ra có thể nói là "phát hành dưới dạng PMTD".

Có nhiều lý do người ta viết PMTD. Một số người chỉ muốn phần mềm của họ được phổ biến rộng rãi. Nhiều người thích sống trong sự tự do. Họ đóng góp vào PMTD để họ có thể sống mãi trong tự do. Một số người thì viết PMTD cho vui. Họ thích viết chương trình và muốn dùng kỹ năng đó để làm chuyện có ích.

Tôi vẫn chưa cảm thấy bị thuyết phục. Hiển nhiên là những công ty lớn sản xuất phần mềm tốt nhất. Tại sao tôi lại phải sử dụng phần mềm viết bởi những tay nghiệp dư?

PMTD không phải viết bởi những tay nghiệp dư. Quy trình phát triển PMTD rất công khai và rõ ràng. Nếu mã của bạn muốn vào được một dự án PMTD, nó sẽ được xem xét rất kỹ lưỡng bởi nhiều người. Những đoạn mã nghiệp dư hay viết cẩu thả sẽ chắc chắn bị loại.

Cũng nên nhắc rằng những công ty lớn cũng phát triển PMTD, ví dụ như Red Hat, Sun, Novell, IBM đều phát triển PMTD.

Nếu có một nhóm người muốn viết một phần mềm nào đó, họ có thể hùn tiền lại để mướn một công ty phần mềm chuyên nghiệm viết cho họ và phát hành kiểu PMTD. PMTD không bắt buộc phải viết bởi những tay nghiệp dư.

Ngay cả nếu như PMTD viết bởi những tay nghiệp dư không tốt bằng phần mềm bản quyền của những tay chuyên nghiệp, bạn vẫn muốn sử dụng PMTD bởi vì sự tự do vô cùng quan trọng mà nó mang lại. Ngoài ra, một nhà lập trình chuyên nghiệp, nếu thích thú với dự án đó cũng có thể đóng góp.

Nói rằng công ty lớn giỏi hơn về phát triển phần mềm là không đúng. Họ cũng lệ thuộc vào một nhóm nhỏ các lập trình viên và thường không liên hệ gần gũi được với người dùng như PMTD. Vì vậy, lập trình viên PMTD thường biết rõ hơn về nhu cầu của người dùng và những than phiền về những phiên bản đã ra. Một số công ty lớn thường giao quyền quyết định thiết kế phần mềm cho những chuyên gia thị trường, những người này không biết gì về công nghệ phần mềm, và thường thì họ ưu tiên cho những đòi hỏi thị trường hơn là nhu cầu người dùng và tính hợp lý của phần mềm. Trong bất cứ trường hợp nào đi nữa, khảo sát những PMTD cho thấy chúng tốt hoặc tốt hơn những phần mềm bản quyền tương đương, hoặc ít ra là đang tiến đến rất gần. Hơn nữa, phần nhiều các lập trình viên PMTD không phải dân nghiệp dư. Với lại, làm sao bạn biết được những công ty lớn bán phần mềm bản quyền không mướn dân nghiệp dư để viết phần mềm đó?

Thế còn lỗi phần mềm thì sao?

Với PMTD, bạn có sự tự do để giúp đỡ chính mình và sửa lỗi chương trình. Nếu bạn không phải là lập trình viên, bạn có thể thông báo lỗi với người bảo quản phần mềm, hoặc mướn một lập trình viên để sửa giùm bạn. Bạn không phải chờ đợi lòng thương hay ân huệ của bất cứ công ty nào. Bằng cách thông báo lỗi với người bảo quản, bạn đóng góp giúp phần mềm đó ngày càng tốt hơn.

Nhưng PMTD có mã nguồn mở, chẳng phải người ta dễ dàng đọc và tìm những lỗ hổng bảo mật để khai thác sao?

Đúng vậy, nhưng trước khi mã nguồn tới tay người xấu, nó phải qua tay những nhà lập trình trước, và thường thì họ sửa những lỗi đó.

Và với PMTD, việc khai thác lỗ hổng thường được thông báo và sửa chữa rất rất nhanh, thường thì chỉ trong vòng vài tiếng đồng hồ.

Nhìn từ khía cạnh khác, bởi vì mã nguồn mở, ai đó rất dễ dàng tìm thấy lổ hỗng và vá ngay, ngay trước khi nó bị khai thác.

Ngoài ra, hệ điều hành GNU/Linux được thiết kế ưu tiên cho bảo mật ngay từ ban đầu.

Như vậy PMTD tiến hoá nhanh hơn phần mềm không tự do?

PMTD có khuynh hướng tiến hoá cực nhanh, chủ yếu là nhờ nó lôi kéo người dùng thông báo lỗi và thậm chí vá lỗi. Lộ trình và nhịp độ phát triển hoàn toàn công khai, chỉ những tính năng và vấn đề cần thiết mới được giải quyết trước. Phát hành nhanh và thường xuyên là phương châm của mô hình phát triển PMTD (giống như mô hình eXtreme Programming đối với những bạn lập trình viên).

Tuy nhiên chỉ có những chương trình nào đã phổ biến mới có được lợi ích như vậy. Một khi nó đã phổ biến, người dùng cũng muốn ủng hộ và thật sự đóng góp. Như vậy bảo đảm chỉ có những chương trình nào thật sự đáng giá và hữu ích mới được ủng hộ.

Nhịp độ tiến hoá phụ thuộc vào sự phổ biến và tính hữu dụng của phần mềm. Nó càng phổ biến thì tiến hoá càng nhanh. Trong thực tế, nếu như có bất kỳ cản trở nào, chẳng hạn như tác giả hay công ty bỏ dỡ, thường thì sẽ có người khác tiến vào thế chỗ. Hoặc thỉnh thoảng, dự án được chia nhánh để tiếp tục phát triển dưới một tên khác bởi vì ai cũng có thể sử dụng và bảo qủan mã nguồn một cách tự do.

Chỉ có những người say mê máy tính mới dùng PMTD?

Sai. PMTD được dùng bởi những người coi trọng sự tự do của họ hơn bất cứ thứ gì khác.

Nhưng tại sao tôi lại muốn chỉnh sửa phần mềm làm gì?

Có rất nhiều lý do. Thí dụ như một phần mềm không hỗ trợ ngôn ngữ bản địa của bạn và bạn muốn sử dụng nó bằng ngôn ngữ của mình. Nếu là phần mềm bản quyền, bạn phải đi "xin xỏ" tác gỉa phần mềm. Nếu như tác giả phần mềm thấy không có lời, anh/chị ta sẽ không làm. Với PMTD, bạn có thể tự sửa đổi hoặc mướn một công ty phần mềm làm giùm. Với PMTD, bạn không phải "bơ vơ không nơi nương tựa".

Có một trường hợp cũng khá lý thú. Trong thời gian học tập nghiên cứu, bạn viết một đề án, luận văn hay bài luận. Có thể là bạn sử dụng máy của một người bạn hoặc của trường để hoàn thành đề án. Không có gì bảo đảm là bạn có thể tìm được những phần mềm mà bạn đã từng dùng vài năm về trước, và với tâm trạng luyến tiếc, bạn quyết định xem lại công trình tâm huyết của mình. Đây là lúc mà bạn sẵn sàng sửa đổi bất cứ thứ gì có được chỉ để đọc hay làm việc với đề án năm xưa của mình.

Nếu bạn là một cơ quan hay tổ chức cần phải lưu trữ thông tin trong khoảng thời gian dài, sự tự do được chỉnh sửa phần mềm của bạn là quan trọng nhất.

Nhưng tôi không phải là dân máy tính. Chẳng phải sử dụng phần mềm đóng gói sẵn dễ hơn nhiều sao? Lỡ có gì hư biết kêu ai?

Sử dụng PMTD càng quan trọng hơn nếu bạn không phải là chuyên gia máy tính. Như vậy, bạn không phải lệ thuộc vào công ty bán phần mềm bản quyền cho bạn.

Trước hết, thử đọc hướng dẫn sử dụng đi kèm với phần mềm. Nếu không được, thử tìm trên web.

Nếu bạn muốn có hỗ trợ miễn phí, bạn có thể hỏi thăm những nhóm người dùng Linux ở địa phương, hoặc tham gia vào các diễn đàn, hoặc trao đổi trực tiếp dùng IRC. Bạn sẽ ngạc nhiên trước sự giúp đỡ tận tình của họ.

Nếu bạn sẵn sàng chi tiền, bạn có thể mướn lập trình viên hoặc công ty giúp đỡ.

Bạn cũng có thể mua hỗ trợ từ những công ty chuyên nghiệp. Bởi vì phần mềm là mở, công ty hỗ trợ không thể trói buộc bạn như công ty phần mềm bản quyền. Lúc nào bạn cũng có thể chuyển sang công ty hỗ trợ khác nếu như họ muốn ràng buột bạn.

Ngoài ra, nếu như đòi hỏi của bạn quá lớn, thường thì sẽ có lợi hơn rất nhiều nếu bạn có thể mướn được đội ngũ lập trình viên để chỉnh sửa, phát triển và bảo quản riêng cho bạn.

Theo ubuntu-vn
sunflower
 
Bài viết: 315
Ngày tham gia: Thứ 6 13 Tháng 6, 2008 1:33 pm

Re: Khái niệm phần mềm tự do (FLOSS)

Gửi bàigửi bởi funnyboy » Thứ 4 08 Tháng 10, 2008 8:01 am

Một bài viết rất hay :-x
Hình đại diện của thành viên
funnyboy
 
Bài viết: 178
Ngày tham gia: Thứ 3 24 Tháng 6, 2008 6:01 pm


Quay về Một số khái niệm

Ai đang trực tuyến?

Đang xem chuyên mục này: Không có thành viên nào đang trực tuyến7 khách

cron