Thực sự đây là câu hỏi của rất nhiều người khi lựa chọn mã nguồn bởi nó quyết định đến tính ổn định lâu dài của "đứa con cưng" của mình. Ngoài những CMS nổi tiếng còn rất nhiều những mã nguồn được chia sẻ trên mạng.

Nếu không muốn nói là tràn lan, phải đến hàng chục nghìn mã nguồn được chia sẻ ở mọi nơi và số lượng ngày càng tăng lên. Dạo qua một vòng freecodevn có thể nhận ra các mã nguồn đủ thể loại, lớn có nhỏ có, chủ yếu là do một cá nhân viết trong thời gian ngắn rồi mang đi chia sẻ.

Nhưng những mã nguồn này có đảm bảo chất lượng hay chỉ là sản phẩm "chia sẻ để học hỏi" và việc sử dụng chúng vào mục đích lâu dài là có lợi hay có hại. Điều này đáng phải suy nghĩ.

Ngoài việc cài đặt dễ dàng, nhanh chóng, những mã nguồn này mang đến những nguy cơ đáng lo ngại.

Bảo mật

Thật đáng tiếc là tính bảo mật không cao.

Thứ nhất: Sử dụng một mã nguồn không có tên tuổi, mã nguồn đã được công bố như việc bạn vẽ bản đồ nhà đưa cho trộm cắp vậy. Hacker tìm lỗ hổng của những website như thế này rất dễ dàng.

Thứ hai: Như đã nói ở trên, phần lớn các mã nguồn chia sẻ được viết bởi cá nhân, thời gian phát triển ngắn nên không thể làm đủ quy trình thiết kế, lập trình, kiểm tra sản phẩm một cách toàn diện được.

Thứ ba: Chúng ta suy nghĩ đến "trình độ" của những người viết mã nguồn, có thể đó là một người giỏi, nhưng đa phần đều là những người mới học. Trừ trường hợp mã nguồn địa chia sẻ ở các trang hỗ trợ phát triển, có công cụ phản hồi, nhận được nhiều góp ý, còn lại những tập tin nén không bao giờ được cập nhật luôn tiềm ẩn các nguy cơ bảo mật.

Hiệu suất

Hiệu suất cũng không cao.

Vì lập trình không có quy trình, không qua kiểm tra. Họ coi sự chia sẻ này là một bài kiểm tra, trong khi bạn lại sử dụng vào website thật của mình. Hiệu suất làm việc của những source này có thể nói là kém hiệu quả. Các câu lệnh viết không tối ưu, CPU và cơ sở dữ liệu của website phải làm việc vất vả, tốc độ load trang chậm.

Nâng cấp

Nâng cấp những mã nguồn này ư? Bỏ ý tưởng đó đi.

Nâng cấp những mã nguồn này cực kì khó khăn, ta phải tìm người viết code đó, mà có tìm ra thì họ cũng đâu có phiên bản 2.0 đâu mà tìm? Bạn muốn tự nâng cấp thì việc đọc hiểu mã nguồn của người khác khó hơn việc đọc mã nguồn do chính mình viết rất nhiều.

Hỗ trợ sử dụng

Tìm đâu ra người viết code này bây giờ?

Mỗi lần bạn muốn sửa chữa, bảo trì một thứ gì đó, hoặc đơn giản là chưa hiểu cách sử dụng. Bạn phải tìm ra người chia sẻ đó để hỏi. Nhưng liệu họ có sẵn sàng chỉ bảo cho bạn hay không khi mà hàng ngày họ nhận được rất nhiều email, tin nhắn Yahoo từ những người sử dụng?

Tóm lại, chia sẻ mã nguồn để học hỏi, trao đổi ý tưởng là rất tốt. Nhưng để áp dụng vào thực tế website hoạt động lâu dài là lựa chọn sai lầm. Hãy tải, cài đặt và tìm hiểu cái hay của những mã nguồn đó sau đó tự mình, hoặc thuê người có khả năng viết lại. Như vậy vẫn hay nhất.

Lưu ý rằng bài viết này chỉ viết về các mã nguồn nhỏ được chia sẻ trên các diễn đàn, không nói đến các mã nguồn mở nổi tiếng như Wordpress, Drupal, Joomla! được phát triển theo các quy trình nghiêm ngặt, được kiểm tra, đánh giá bởi hàng nghìn nhà phát triển từ khắp thế giới.



Bình luận

  • TTCN (4)
Cao Hồng Anh  4

Ý kiến

Mã mở đâu chỉ là ở freecodevn. Open Source mà do một vài cá nhân phát triển thì thường rất sơ xài, hiếm khi nào mà có ai lấy xài chính thức. Còn ai mà lấy xài luôn thì... đúng là Newbie chính hiệu. Tôi nói vậy bởi vì.. dù muốn làm một cái gì thì hiện giờ đều có vô vàn Open Source rất rất tốt do các cộng đồng cùng viết.

Với Open Source, không thiếu hàng xịn cho mọi vấn đề. Ví dụ Open Source cho forum, web gallery, file manager, cms.....

Muốn Open Source gì thì cứ Google là biết! Rất rất nhiều, do rất rất nhiều cộng đồng phát triển...

Về CMS thì giới thiệu mọi người snewscms.com và textpattern.com rất tốt... dành cho những ai muốn "học".

Bùi Văn Nguyện  44

Bình luận sai chủ đề bài viết

Bài viết này đề cập đến vấn đề chia sẻ code tràn lan, không qua kiểm tra, không có quy trình. Chứ không phải là các mã nguồn mở nổi tiếng như bạn nói. Và ở cuối bài, Hải Nam cũng đã thêm phần "chú ý" rồi. Đúng là mã mở không chỉ là ở freecodevn, tác giả lấy đó làm ví dụ cho cái gọi là "tràn lan" kia thôi.
Cái Opensource mà bạn nói khác hẳn cái "mã nguồn chia sẻ trên mạng" của tiêu đề bài viết nhé

Mr. Ngọc Ẩn  79

Người ta thường bán cái tốt hơn

Cùng một nhà phát triển, cùng một doanh nghiệp, hai sản phẩm cùng chức năng luôn luôn nghiêng thế mạnh về sản phẩm có tính phí.
Tác giả nói rất đúng, trừ những phiên bản có uy tín, có hỗ trợ, những mã free khác chúng ta chỉ nên tham khảo là chính. Đôi khi code bị lỗi mà ta không biết, đem sử dụng thì sẽ biến sản phẩm của mình thành miếng mồi ngon cho những người phát hiện ra lỗi đó.

Lý Xuân Sang  1

Mình nghĩ là bài viết này nói lên trình độ và kiến thức của người viết bài còn rất hạn chế và chắc chắn rằng người viết chả hiểu gì về mã nguồn mở cả