Ôi mã nguồn mở của tôi

Tôi là một người ủng hộ phong trào mã nguồn mở (*), một trong rất nhiều thành quả vĩ đại mà giới hacker dâng tặng thế giới này. Tôi chưa bao giờ từ bỏ bất kì cơ hội nào để giải thích, giới thiệu và quảng bá lợi ích của việc sử dụng mã nguồn mở. Tôi đã từng tham gia vô số các cuộc tranh luận (vô bổ) có đề tài kiểu như “Windows vs Linux”. Nếu mã nguồn mở là một tín ngưỡng với đấng tối cao là ngài Richard Stallman, chắc hẳn tôi sẽ là một tín đồ trung thành và có lẽ hơi bị cuồng tín. Do đó khi thấy một bài viết có nhan đề “Dùng nguồn mở không công khai: vấn nạn của phần mềm Việt?“, tôi liền nhào vào đọc rồi hết sức thất vọng. Và đó cũng là lý do của bài viết hôm nay (đề nghị vỗ tay :-p).

Công ty riêng của tôi làm về phần mềm mã nguồn mở. Khi tôi giới thiệu những sản phẩm và dịch vụ của công ty mình, hầu hết mọi người đều rất ngạc nhiên là tại sao tôi lại bán phần mềm mã nguồn mở, điều mà họ cho rằng là không hợp lệ. Đây chính là một trong những ngộ nhận mà tôi thường gặp nhất. Bạn hoàn toàn có thể bán, thậm chí với giá cao, phần mềm mã nguồn mở. Nói tóm gọn là như vậy, tôi sẽ quay lại đề tài này vào một dịp khác. Rất may là bài báo trên không mắc phải ngộ nhận này, nhưng nó lại chứa đựng nhiều ngộ nhận khác còn nghiêm trọng hơn:

Phần mềm nguồn mở (PMNM) là phần mềm với mã nguồn được chia sẻ cho cộng đồng miễn phí và sử dụng một giấy phép bản quyền nguồn mở. Giấy phép này cho phép bất cứ ai cũng có thể nghiên cứu, thay đổi và cải tiến phần mềm với mục đích tiếp tục nghiên cứu, phát triển mã nguồn đó.Nhưng nếu sử dụng phần mềm nguồn mở với mục đích thương mại như viết phần mềm, xây dựng website sau đó bán cho các đơn vị khác, mà không ghi rõ nguồn, ngầm “coi như” đó là sản phẩm do bản thân mình tự lập trình từng dòng lệnh, thì lại là một chuyện hoàn toàn khác.

Đáng tiếc là tình trạng này hiện rất phổ biến ở Việt Nam, nó chứng tỏ vấn đề nhận thức trong sử dụng PMNM, cũng như tính cộng đồng và sự tôn trọng quyền sở hữu trí tuệ của giới IT trong nước vẫn còn nhiều hạn chế. Trong số đó, có cả website của hai ngân hàng lớn tại Việt Nam.

Trên một số diễn đàn về bảo mật và tin học gần đây có thông tin bàn luận về website Techcombank.com.vn và một số website được xây dựng từ NukeViet có các tham số URL (URL parameter) giống nhau tới từng chữ một! Giao diện cũng có nhiều điểm tương đồng, trong khi Techcombank.com.vn không hề có các thông tin trên website nói rằng hệ thống site của họ được phát triển từ mã nguồn mở!

Sự thật là cho đến thời điểm này, không có dòng nào trong các giấy phép mã nguồn mở như GPL, BSD, Apache hay MIT bắt buộc bạn phải ghi copyright hay credit cho nhóm tác giả khi sử dụng phần mềm của họ như là một người sử dụng cuối. Trong trường hợp của Techcombank, họ là người sử dụng cuối, họ hoàn toàn có quyền lược bỏ các thông tin về copyright nếu như họ sử dụng phần mềm mã nguồn mở. Thậm chí nếu Techcombank tự phát triển website của họ dựa trên phần mềm mã nguồn mở, họ cũng không cần phải công bố mã nguồn. Nếu các giấp phép mã nguồn mở yêu cầu phải ghi credit và copyright, chắc hẳn bạn sẽ thấy những dòng copyright kiểu như thế này: website này được viết bằng ngôn ngữ PHP, với máy chủ web là Apache, cơ sở dữ liệu là MySQL, hệ điều hành là Linux cộng với mấy trang A4 danh sách các developer đã tham gia viết các phần mềm này lolz!

Các điều lệ về copyright notice trong phần mềm mã nguồn mở chỉ áp dụng khi bạn sao chép hoặc phân phối các phiên bản nguyên gốc hay đã có sữa chữa rồi, nghĩa là nó chỉ áp dụng cho developer hay các nhà phân phối phần mềm. Trong trường hợp này, nó áp dụng cho công ty GLTEC, đơn vị được Techcombank thuê để thực hiện website:

Phía GLTEC khẳng định thông tin quan trọng nhất: Họ thừa nhận “Trong quá trình xây dựng website Techcombank.com.vn, GLTEC có sử dụng hệ thống nguồn mở PHP Nuke”.

Thế nhưng đại diện GLTEC cũng thản nhiên: “Chúng tôi cho rằng, chỉ cần ghi rõ là có sử dụng mã nguồn mở trong source code của sản phẩm là được, và chúng tôi đã làm việc này trong website của Techcombank. Còn việc ghi rõ website được phát triển bằng PMNM trên trang chủ, chúng tôi quyết định không ghi vì lý do bảo mật!”

GLTEC thản nhiên là có cơ sở bởi vì họ chẳng làm gì trái luật nếu như họ thật sự sử dụng phần mềm mã nguồn mở. Họ chỉ cần thông báo cho Techcombank biết là họ có sử dụng phần mềm nguồn mở trong sản phẩm mà họ bán cho Techcombank là đủ.Tuy nhiên, trong trường hợp này thì GLTEC đã sai bởi vì php-nuke, phần mềm mà họ sử dụng, không phải là phần mềm nguồn mở:

Tuy nhiên, theo anh Nguyễn Ngọc Minh – admin diễn đàn Javavietnam.org, điều này trái với các quy định đi kèm đối với việc sử dụng hệ thống mã mở PHP Nuke! PHP Nuke yêu cầu phải ghi rõ copyright PHP Nuke ở footer (phía dưới trang web):Khi làm động tác “view source” file “Footer.PHP” trong bộ source code của PHP Nuke, rõ ràng ngay ở vị trí trên cùng, hết sức dễ thấy và trang trọng, có đăng ba dòng thông báo lớn: “Do not remove the following copyright line. You’re not remove or edit this / If you really need to remove it and have my written authorization check: http://phpnuke.org/modules.php?name=Commercial_License / Play fair and support the development, please!” (Tạm dịch: Không được xóa dòng bản quyền duới đây và cũng không được phép biên tập nó! / Nếu thực sự cần phải xóa thì phải được phép của người sở hữu licence http://phpnuke.org… / Hãy chơi đẹp và ủng hộ sự phát triển chung!)

Tại sao anh Nguyễn Ngọc Minh không nghĩ rằng với yêu cầu như trên, php-nuke không còn là phần mềm mã nguồn mở (chính xác là phần mềm tự do nữa) mặc dù tác giả vẫn phát hành nó theo giấy phép GPL? Đã có một thảo luận trên mailing list của Debian vào năm 2003 về đề tài này:

Is PHPNuke free or not? Several new discussions talked about whether license problems in PHPNuke are real and rendering the package non-free. A notice tries to make users believe that the package is still free, but Steve Langasek concluded that the license addition indeed renders the package non-free. The maintainer agreed that he would upload the package to non-free, which didn’t happen yet.

Và đây là nguyên nhân khiến tôi gửi bài viết lên blog này:

Khi chúng tôi trao đổi các vấn đề bảo mật với một số chuyên gia CNTT, nhiều người cho rằng việc không ghi rõ sản phẩm được phát triển bằng PM nguồn mở vì yêu cầu bảo mật là một quan điểm không chính xác.Một chuyên gia nói: “Sản phẩm nguồn mở là trí tuệ của cộng đồng, vì thế nó chỉ có độ bảo mật cao khi được cập nhật lỗi (bug) thường xuyên. Việc ghi copyright trên website sẽ nhắc người quản trị phải thường xuyên cập nhật bug hơn!”.

Không biết đây là chuyên gia nào nhỉ? Nhà bạn có một cục vàng, bạn giấu cục vàng trong một cái két sắt, cái két sắt đó để ở trong một căn phòng được khóa bằng một ổ khóa to nằm trong một căn nhà có vài anh lính bảo vệ. Bạn nghĩ cục vàng có an toàn hơn khi bạn thông báo rộng rãi cho tất cả mọi người được biết két sắt bạn xài là hiệu gì, các ổ khóa bạn mua của hãng nào và lịch trực của các anh bảo vệ? Security through only obscurity is no security but security plus obscurity is better than security alone!

Tóm lại, người dùng cuối (Techcombank) thì bị lừa, lập trình viên (GLTEC) thì bất chấp luật lệ, nhà báo (VietnamNet) thì viết mà không nghĩ và các chuyên gia thì tha hồ phán. Đó là cách mà họ vẫn đang nói và làm về mã nguồn mở ở VN.

-Thái.
——-
(*): thật ra nói chính xác phải là phần mềm tự do và phần mềm mã nguồn mở nhưng do ở VN thì hai khái niệm này được xem là một và được gọi chung là “mã nguồn mở” nên tôi tạm gọi như vậy trong bài viết này

Theo: http://vnhacker.blogspot.com

Đang lang thang nghiên cứu về nguồn mở thì tìm được bài này thấy hay nên chia se lại tại đây.  Nhiều lúc những nhà viết các bài báo có khi chẳng bao giờ dùng những phần mềm đó, chẳng bao giờ biết PMNM là thể nào, nhưng vẫn cứ viết, …

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: