Khi mà máy tính và các thiết bị công nghệ dần trở nên phổ biến thì
những cụm từ như Open Source hay mã nguồn mở… cũng được nhiều người biết
tới hơn.
Đặc biệt là đối với những bạn thường xuyên sử dụng máy tính, chắc chắn là bạn sẽ từng nghe qua, thậm chí là nghe rất nhiều lần.
Vậy Open Source là gì ? Ưu và nhược điểm của Open Source? Và tại sao
mà các phần mềm Open Source lại có được sự phát triển mạnh mẽ như vậy?
Bài viết dưới đây sẽ trả lời tất cả những câu hỏi này nhé các bạn !
1. Open Source là gì?

Hiểu một cách đơn giản, ít phức tạp nhất thì Open Source (hay còn gọi
là mã nguồn mở) là tất cả những dòng code của một phần mềm, hay của một
ứng dụng, chương trình.. nào đó được chia sẻ công khai và miễn phí 100%
cho cộng đồng cùng sử dụng.
Thông thường thì Open Source sẽ được phát hành miễn phí bởi các đơn vị cung cấp, hoặc là các công ty lớn về lĩnh vực công nghệ.
Nhưng tất nhiên, nếu bạn có khả năng thì bạn hoàn toàn có thể tải về
mà nguồn gốc rồi tự phát triển, sửa đổi, cập nhật thêm tính năng theo
nhu cầu của bạn.
Theo như những thông tin mà mình tìm hiểu được thì người sáng lập ra mã nguồn mở đầu tiên là Richard Stallman.
Người đã xây dựng ra dự án GNU và cho ra giấy phép Mã nguồn mở GPL.
Đây là 2 nền tảng then chốt cho sự phát triển của Mã nguồn mở.
Nói tóm lại, Open Source (mã nguồn mở) là những phần mềm được tác giả
chia sẻ công khai trên cộng đồng, đi kèm với đó là bộ code tạo nên phần
mềm đó, để người khác có thể tái sự dụng và phát triển.
Nhưng phải lưu ý một điều là, những người sử dụng mã nguồn mở không
được phép bán các sản phẩm dựa trên mã nguồn mở đó, vì nó là tài sản
chung.
Như chúng ta đã biết, một phần mềm thương mại (mã nguồn đóng) được
tạo ra đều sẽ được giữ bí mật về những dòng code, cấu trúc, cũng như là
thuật toán …. thậm chí là họ còn mã hóa những dòng code này rất cẩn
thận.
Ví dụ như hệ điều hành iOS của Apple, Windows và Office của
Microsoft… Đây đều là những phần mềm và hệ điều hành thương mại nên
người dùng không bao giờ nhìn thấy được dòng code nào từ họ cả.
Nhưng những phần mềm, ứng dụng được tạo ra từ mã nguồn mở thì khác,
người dùng có thể thấy được tường tận, từ chân tơ kẽ tóc, từng dòng
lệnh, từng cấu trúc và từng thuật toán… tất cả đều được hiển thị công
khai, và mọi người đều có quyền sử dụng nó một các miễn phí.
2. Ưu điểm của Open Source

Vâng! Tính cộng đồng chính là ưu điểm mạnh nhất mà Open Source có được !
Vì được chia sẻ free nên cộng đồng của mã nguồn mở luôn vô cùng rộng
lớn, chính nhờ vậy mà những nâng cấp, những cải tiến của những phần mềm
mã nguồn mở này luôn rất nhiều, dồi dào và thay đổi mạnh mẽ qua từng
năm.
Nhờ có lượng người dùng đông đảo nên những phần mềm Open Source luôn
là điểm đến cho những ai thích tìm hiểu, vọc vạch mã nguồn, bởi có hàng
nghìn, hàng vạn những bài hướng dẫn, những tips & tricks giúp bạn
khắc phục những lỗi trong quá trình sử dụng.
Và cũng vì là mã nguồn mở, được chia sẻ miễn phí nên đây là nơi tụ
họp của rất nhiều những coder (lập trình viên) trên thế giới. Vậy nên
những lỗi, những lỗ hổng, hay là những phần mở rộng luôn được cập nhật
thường xuyên và có các bản vá kịp thời.
Một số cái tên tiêu biểu và đình đám nhất hiện nay của Open Source đó là: Linux, WordPress, Chromium….
Một điều rất hay nữa của Open Source đó là tính công khai và minh
bạch, tức là trong phần mềm đó có tính năng gì, có những thuật toán gì,
cấu trúc ra sao, có cài cắm gì nguy hiểm bên trong không… đều được sáng
tỏ như ban ngày..
Đây là điểm khác biệt lớn nhất giữa mã nguồn mở và mã nguồn đóng. Với
mã nguồn đóng thì chỉ có công ty, người chủ quản mới nhìn thấy được các
dòng code bên trong.
3. Nhược điểm của Open Source là gì?

Tuy có những ưu điểm rất tuyệt vời như vậy nhưng Open Source lại tiềm ẩn những rủi ro nhất định:
Như mình đã nói bên trên, với mã nguồn mở thì mọi thứ sẽ được công
khai và phơi bày ra trước mắt. Đối với những hacker chân chính thì không
sao, họ có thể thông báo hoặc tung ra các bản vá lỗi cho cộng đồng.
Nhưng ở chiều ngược lại, những hacker mũ đen, những kẻ ích kỉ muốn
trục lợi cho bản thân sẽ lợi dụng những lỗ hổng đó để hack vào máy tính
người dùng và tiến hành phá hoại sâu vào bên trong. Hoặc đánh cắp thông
tin cá nhân của người khác..
Điều khó nhất đối với những phần mềm mã nguồn đóng (phần mềm thương
mại) là những dòng code được bảo mật rất nghiêm ngặt, vậy nên hacker sẽ
khó khai thác hơn.
Trong khi đó, với Open Source thì hacker có thể tìm ra các lỗ hổng
thông qua thuật toán và câu lệnh của những phần mềm, ứng dụng đó một
cách dễ dàng hơn.
Chính sự phát triển liên tục của cộng đồng đã đem tới những cải tiến,
những tiện ích đi kèm, nhưng đôi khi nó lại là nguyên nhân khiến cho
phần mềm dễ bị Crash.
Việc mỗi tiện ích, mỗi chức năng cải tiến đôi khi không cùng một nhóm
người làm ra, nên chúng sẽ không được tối ưu một cách tốt nhất, thậm
chí có thể bị xung đột trong quá trình sử dụng,
Đó cũng chính là lý do mà tại sao, các Open Source luôn cố gắng tìm một công ty chủ quản là như vậy.
Thiếu tính chuyên biệt là những gì mà những ứng dụng Open Source hay
gặp phải, vì phát triển cho cộng đồng nên nó được phát triển là để phục
vụ số đông, tức là phát triển nhiều nhóm người khác nhau, chứ đôi khi
không cùng một mục đích sử dụng.
Nên đôi khi nó cũng thiếu đi những chức năng để làm những nhiệm vụ nhất định.
4. Open Source trong tương lai
Với sự phát triển chóng mặt của công nghệ như hiện nay, giới trẻ ngày
càng quan tâm đến CNTT nhiều hơn thì khái niệm Open Source sẽ ngày càng
trở nên phổ biến và thông dụng hơn nữa.

Không phải bỏ chi phí hằng năm cho tiền bản quyền, không phải theo
những khóa học, gần như mọi thứ đều có sẵn trong cộng đồng và được chia
sẻ hoàn toàn miễn phí.
Tất cả những gì bạn cần làm là TỰ HỌC, TỰ MÀY MÒ… Vậy thôi !
Những vấn đề về bảo mật, tính chuyên biệt là những điểm yếu cố hữu của những phần mềm mã nguồn mở.
Nhưng chúng cũng đang dần được khắc phục bằng cách, các công ty sẽ
lập ra một nhóm riêng để tự tối ưu và phát triển phần mềm riêng biệt,
dựa trên mã nguồn gốc của phần mềm đó.
Tức là những thứ mà họ phát triển sẽ dựa trên mã nguồn mở được chia
sẻ ngoài cộng đồng, nhưng chúng sẽ không được chia sẻ rộng rãi ra cộng
đồng, mà nó thuộc sở hữu riêng của nhóm người đã phát triển.
Điều này sẽ hạn chế tối đa những rắc rối về bảo mật, mã nguồn, cũng
như tính ổn định và khả năng hoạt động chuyên cho một lĩnh vực nào đó.
Tương lai thì Open Source sẽ còn phát triển hơn nữa, điển hình như là Trí tuệ nhân tạo (AI), thứ được viết trên Python – một mã nguồn mở hoàn toàn.
Và rõ ràng rồi, bất cứ thứ gì mà do một cộng động lớn phát triển,
dành thời gian cho nó thì bao giờ cũng mạnh hơn những thứ do một nhóm
làm ra.
Hi vọng là trong tương lai, chúng ta sẽ sớm thấy được nhiều hơn những
thành tựu mà Open Source đem lại.
Xin cảm ơn các bạn đã đọc hết bài
viết.