(GS. TS. Nguyễn Thúc Hải)
Con kiến leo cành đa à ?
Ngày 20 và 21 tháng 5 năm 1997 tại Hà Nội, Ban Chỉ đạo Chương trình Quốc gia về Công nghệ Thông tin (BCĐ-CNTT) đã phối hợp với Hội Tin học Việt Nam và công ty FPT tổ chức Hội thảo về Xử lý và trao đổi thông tin tiếng Việt trên các hệ thống và mạng. Lĩnh vực này thu hút sự chú ý của đông đảo chuyên gia trong và ngoài nước.
Mọi sự kiện đều có những nguyên nhân của nó. Đối với cuộc Hội thảo này, sự thúc bách của việc triển khai các hoạt động Tin học có liên quan đến xử lý và trao đổi thông tin tiếng Việt là nguyên nhân tiềm năng. Còn nguyên nhân trực tiếp có lẽ là từ BCĐ-CNTT và Bộ Khoa học, Công nghệ và Môi trường.
Số là ngày 13 tháng 3 năm 1997, BCĐ-CNTT đã gửi công văn số 61/CNTT cho Bộ Khoa học, Công nghệ và Môi trường trình bày hiện trạng sử dụng bộ mã chuẩn tiếng Việt (TCVN 5712: 1993) và bộ chương trình xử lý tiếng Việt ABC kể từ sau khi có qui định của Bộ trưởng Bộ Khoa học, Công nghệ và Môi trường (ký ngày 25 tháng 12 năm 1995).
BCĐ-CNTT cũng chính thức đề nghị Bộ Khoa học, Công nghệ và Môi trường ban hành một quyết định mới "thể hiện rỏ rệt và chính xác hơn nhu cầu thống nhất sử dụng các bộ mã chuẩn và bộ phông (font) chữ Việt thống nhất trong trao đổi thông tin trên máy tính, thay thế cho quyết định trước đây nhằm đáp ứng đầy đủ hơn các nhu cầu phát triển mới hiện nay".
Ngày 28 tháng 3 năm 1997, Bộ Khoa học, Công nghệ và Môi trường đã có công văn số 618/VP phúc đáp. Công văn nêu rỏ Bộ hoàn toàn nhất trí với ý kiến đề xuất của BCĐ-CNTT, song cần cân nhắc thận trọng hơn trên cơ sở những luận cứ khoa học chặt chẽ trước khi thay đổi một quyết định đã ban hành. Bộ Khoa học, Công nghệ và Môi trường đề nghị BCĐ-CNTT tổ chức thêm các cuộc hội thảo để lấy ý kiến đóng góp rộng rãi của các chuyên gia. Chính vì thế mà có cuộc Hội thảo này.
Bối cảnh Pháp lý
Trong lĩnh vực CNTT, Việt Nam ta đã, đang và chắc chắn là sẽ còn đi sau nhiều nước phát triển. Có thể nói rằng cho đến nay chúng ta mới chỉ góp mặt với tư cách "người sử dụng". Người ta làm ra cái gì, ta "xài" cái đó một cách hoàn toàn thụ động, không chỉ phần cứng mà cả phần mềm. Bởi vậy xử lý và trao đổi thông tin bằng tiếng Việt có lẽ là vấn đề có giá trị thực tiễn nhất và cũng "đậm đà bản sắc dân tộc" nhất trong cái gọi là "nền Tin học Việt Nam" hiện nay.
Các nhà khoa học của chúng ta đã sớm nhận thức được thực tế đó. Ngay từ những năm 1982 - 1983, các chuyên gia của Viện Khoa học Tính toán và điều khiển (tiền thân của Viện CNTT ngày nay) đã nghiên cứu đưa chữ Việt vào các máy tính 8-bit tự thiết kế. Và trong khoảng thời gian từ 1984 - 1987, hàng loạt các chương trình xử lý chữ Việt "nội" như BKED, EDVN, VIED, 3C, VietRes đã xuất hiện. Các chương trình này đã thực sự cạnh tranh ngang ngửa với nhiều đối thủ "ngoại nhập" khác như VNLab, VNI, VietStar, VMS, VietStd
Về mặt Nhà nước, các hội nghị, hội thảo về xử lý và trao đổi thông tin tiếng Việt trong các hệ thống Tin học được tổ chức. Bên cạnh đó, lần lượt các tổ chức liên quan được thành lập như Tiểu ban Chuẩn hóa Chữ Việt thuộc chương trình cấp Nhà nước về Tin học giai đoạn 1986 - 90 (tháng 6/87), Tiểu ban Chuẩn hóa Mã chữ Việt thuộc ủy ban Khoa học và Kỹ thuật Nhà nước (nay là Bộ Khoa học, Công nghệ và Môi trường) (tháng 12/91), Tiểu ban Chuẩn thuộc BCĐ-CNTT . Đồng thời, qua trung gian các chuyên gia Tin học người Việt ở Mỹ, chúng ta bắt đầu đặt quan hệ với các tổ chức liên quan thuộc cơ quan Tiêu chuẩn hóa Quốc tế (ISO) để phối hợp nghiên cứu về vấn đề chuẩn hóa bộ mã chữ Việt.
Kết quả mạng máy tính Pháp lý đầu tiên của sự nỗ lực nhiều phía nói trên là Bộ mã chuẩn các ký tự Việt dụng trong trao đổi thông tin TCVN 5712:1993. Bộ mã chuẩn này đã được Bộ trưởng Bộ Khoa học, Công nghệ và Môi trường ký quyết định ban hành vào tháng 5 năm 1993. Sau đó, đến ngày 25 tháng 12 năm 1995, Bộ trưởng Bộ Khoa học, Công nghệ và Môi trường lại ký quyết định số 2236/QĐ/PTCN quy định sử dụng chương trình xử lý chữ Việt ABC trên máy tính trong khối cơ quan Nhà nước.
Như vậy là bộ mã chuẩn đã có, chương trình xử lý chữ Việt cũng đã được quy định. Vậy những vấn đề bất cập gì đã xảy ra để đến nỗi mới hơn một năm đã có đề nghị thay đổi quyết định và dẫn đến cuộc hội thảo này ?
Những điều bất cập
Theo Giáo sư Trần Lưu Chương, Trưởng Tiểu ban Chuẩn của BCĐ-CNTT, một người đã tham gia quá trình này từ đầu, thì: "Bộ mã chuẩn TCVN 5712 chưa được dụng rộng rãi, ngay cả trong các cơ quan Nhà nước. Và những nơi dụng thì theo các cách thể hiện khác nhau. Trong khi đó, một số công ty kinh doanh vẫn tiếp tục cung cấp các sản phẩm dụng các mã riêng của mình. điều này gây không ít trở ngại cho các cơ quan Nhà nước muốn nhanh chóng Tin học hóa quá trình trao đổi thông tin của đơn vị mình". Lý do chính làm cho bộ mã 5712 chưa được chấp nhận rộng rãi, theo Giáo sư Chương, một phần là ở những nhược điểm của chính bộ mã. Bộ mã này vốn dành cho việc trao đổi thông tin mà chưa quy định chặt chẽ về cách xử lý thông tin. Một lý do khác là hiện nay chúng ta vẫn chưa có các phần mềm đủ mạnh hỗ trợ cho bảng mã trong các ứng dụng.
Đến đây cần lưu ý rằng tiêu chuẩn TCVN 5712:1993 không phải là bảng mã duy nhất. Nó có tới ba bảng mã, ký hiệu là VN1, VN2 và VN3.
Bảng mã VN1 đầy đủ nhất, gồm mỗi ký tự chữ Việt với cácdấu thanh (chữ hoa và chữ thường). Do đó, nó chiếm trọn cả bảng mã 8-bit, kể cả vùng CO và C1 vốn dùng cho các mã điều khiển và đồ họa. điều đó thường gây rắc rối cho một số phần mềm Quốc tế. VN1 tiện dụng cho các phần mềm chạy dưới hệ điều hành DOS và có sự tương ứng một - một với cácký tự trong bảng mã 16-bit ISO/IEC 10646-1 (Unicode).
Bảng mã VN2 không xâm phạm đến các vùng CO và C1. Tuy nhiên, nó lại không đầy đủ vì thiếu tới bốn mươi tư chữ hoa có dấu thanh. Đồng thời, VN2 phải sử dụng phương pháp ký tự tổ hợp chưa phổ biến ở Việt Nam. Do đó, đến nay rất ít người dụng bảng mã này.
Bảng mã VN3 cũng không xâm phạm vùng CO và C1. Nhưng nó phải hy sinh toàn bộ chữ hoa có dấu thanh. Do đó, bảng mã này phải dụng đồng thời hai bộ font chữ: font chữ hoa và font chữ thường. Ngoài ra, VN3 cũng còn để trống một số không định nghĩa. điều này tạo kẽ hở cho việc sử dụng tùy tiện từ phía người dùng. Tuy nhiên, hiện tại VN3 vẫn là bảng mã được sử dụng rộng rãi nhất trong ba bảng mã của TCVN 5712:1993.
Rỏ ràng, nhược điểm đầu tiên của TCVN 5712:1993 là đồng thời có tới ba bảng mã, thiếu sự thống nhất cần phải có của một tiêu chuẩn. Thứ đến, đó là những nhược điểm của bản thân từng bảng mã nói trên. Không có bảng mã nào đáp ứng một cách hoàn hảo đối với cácnhu cầu xử lý và trao đổi thông tin tiếng Việt trên máy tính và mạng hiện tại và trong tương lai.
Nguyên nhân chính của mọi nhược điểm còn tồn tại đó là vì thiếu chỗ ! Bảng mã 8-bit chỉ cho phép biểu diễn tối đa 256 ký tự. Trong khi đó, tổng cộng đầy đủ mọi ký tự (cả chữ hoa và chữ thường), chữ Việt (Quốc ngữ) của chúng ta phải cần đến 134 ký tự. Nếu không xâm phạm vào 128 ký tự của bộ mã chuẩn Mỹ ASCII-7 như ISO đã khuyến cáo thì chúng ta còn thiếu ít nhất sáu. Vì thế mà cácnhà thiết kế bảng mã cứ phải loay hoay mãi với cácphương án "giật gấu vá vai" như hiện nay.
Chính vì thấy được nỗi khó nhọc của cácnhà Tin học bản địa nên Hiệp hội Unicode đã đề xuất bảng mã 16-bit. điều này cho phép biểu diễn tới 65536 ký tự (thay vì 256 như hiện nay với bảng mã 8-bit). Tha hồ mà biểu diễn, mà thêm các ký tự đặc biệt. Khốn nỗi các công cụ phần mềm cũng như phần cứng hiện nay vẫn chưa hỗ trợ cho bảng mã 16-bit của Unicode. Cho nên vẫn phải có giải pháp quá độ trong khi chờ đợi.
Cũng cần nói thêm rằng, ngoài ba bảng mã của TCVN 5712:1993, hiện còn tồn tại một số bảng mã chữ Việt khác từ nước ngoài đưa vào, ví dụ như bảng mã VNI được sử dụng phổ biến ở các tỉnh phía Nam nước ta cũng như trong cộng đồng người Việt ở nước ngoài. Tất cả các bộ mã này đều có những nhược điểm riêng. Nhiều khi, các bảng mã được phổ biến là do thói quen và do chương trình đào tạo người sử dụng chứ không hẳn là do tính ưu việt của mình.
Mặc dầu, phần mềm hỗ trợ được quy định sử dụng cho TCVN 5712:1993 là ABC đã được nâng cấp và sửa đổi (nhưng không chủ động và tích cực như các"đối tượng" khác, phải chăng là "cha chung không ai khóc" ?). Tuy nhiên, nó vẫn chưa đáp ứng được các nhu cầu xử lý và trao đổi thông tin ngày một cao của người sử dụng. Trong khi đó, các"đối thủ" cũ và mới xuất hiện của ABC lại ngày một hoàn thiện hơn và có cả những tính năng mà ABC chưa có.
Trong bối cảnh như vậy, theo Giáo sư Chương, "việc quy định chỉ được dụng một bộ chương trình để thể hiện chữ Việt là gò bó và vô tình hạn chế tính sáng tạo. Điều này không phù hợp với chủ trương khuyến khích nghiên cứu phát triển phần mềm trong nước".
Nhiều ý kiến trao đổi, tham gia trong cuộc hội thảo này, đặc biệt là các đơn vị, công ty đang hoạt động trong lĩnh vực phần mềm, đều nhất trí quan điểm phải phân biệt bộ mã chuẩn với chương trình hỗ trợ xử lý chữ Việt. ở phạm vi Quốc gia, chỉ chuẩn hóa bộ mã chứ không chuẩn hóa chương trình xử lý chữ Việt (gọi là bộ gỏ chữ Việt). Còn ở cácphạm vi nhỏ hơn có tính nội bộ thì muốn sử dụng chương trình nào cũng được, miễn là tuân thủ bộ mã chuẩn Quốc gia.
Mục tiêu và giải pháp
Bao giờ cũng vậy, người ta rất dễ thống nhất về cácmục tiêu (đặc biệt là cácmục tiêu chiến lược !). ở đây cũng vậy, nhiều người tham gia Hội thảo (và kể cả những người không tham gia Hội thảo) đều nhất trí cần huy động mọi nỗ lực từ nhiều phía. Tất cả đều mong muốn sớm có một bảng mã chuẩn mới thay thế cho ba bảng mã của TCVN 5712:1993 là VN1, VN2 và VN3.
Bảng mã chuẩn mới này dĩ nhiên là phải tốt hơn ba bảng mã đã có. Điều này có nghĩa là nó phải đáp ứng được yêu cầu xử lý và trao đổi thông tin ở nước ta hiện nay và trong tương lai gần, nhìn từ hai phía: phía người sử dụng và phía nhà phát triển phần mềm. Bảng mã chuẩn này là bắt buộc (đối với khối cơ quan Nhà nước) và khuyến cáo sử dụng trong các bộ phận khác. Hiện tại, đã có khá nhiều "ứng cử viên" cho bộ mã chuẩn mới, đó là VNI, VISCII, 8859-V, CP 1258, CP 1129 và NV1B. Ngoài ra, những "ứng cử viên" mới khác sẽ xuất hiện khi chính thức có quyết định lựa chọn bảng mã mới thay thế cho TCVN 5712:1993.
Xin giới thiệu vài dòng "lý lịch trích ngang" của các"ứng cử viên" nói trên để bạn đọc biết thêm.
VNI là bộ mã chữ Việt do một nhóm chuyên gia Tin học ở Mỹ đề xuất. Thực chất, hiện tại nó bao gồm bốn bảng mã: Bảng mã 1 byte cho môi trường DOS, bảng mã 2 byte cho môi trường Windows/Unix, bảng mã 2 byte cho môi trường Mac và bảng mã 3 byte cho môi trường hỗn hợp Win/Unix/Mac và thư tín điện tử Internet. Phần mềm hỗ trợ cho bộ mã này là WebEyes và WebNotes do công ty VNI-Soft cung cấp.
VISCII là bộ mã do nhóm Viet-Standards (cùng ở Mỹ) xây dựng. đây là bộ mã 8-bit dựa theo cấu trúc vùng G1 của bộ mã chuẩn ISO 8859-Latin 1. Trong đó, nó có gán mã riêng cho hầu hết cácký tự chữ Việt dựng sẵn. Để giải quyết việc thiếu sáu ký tự, các tác giả đưa sáu ký tự Việt ít dùng (ả, ã, ẫ, ỷ, ỹ, ỵ) vào vùng CO, ở những vị trí mà các tác giả cho là ít đụng độ nhất (đó là 02, 05, 06, 14, 19 và 1E).
VN1B là bộ mã do nhóm tác giả Nguyễn Chí Công ở Viện Nghiên cứu ứng dụng Công nghệ (Bộ Khoa học, Công nghệ và Môi trường) đề nghị xuất phát từ bảng mã VN1 của TCVN 5712:1993. Trong đó, các tác giả đề xuất dụng phương pháp tổ hợp để biểu diễn các chữ hoa ít xuất hiện ở vị trí thứ nhất của những từ có nghĩa. Đó là ã, ẫ, ể, ổ, ũ, ử, ỷ.
Bộ mã 8859-V cũng xuất xứ từ nhóm Viet-Standards ở Mỹ và có sự tham gia của một số chuyên gia trong nước. Nó được xây dựng trên cơ sở mã tổ hợp và tương hợp với bộ mã chuẩn Quốc tế ISO 8859. Bộ mã này được phát triển chủ yếu cho các ngôn ngữ gốc Latin. Trên cơ sở 8859-V, công ty Microsoft đã đưa ra bảng mã chữ Việt riêng đặt tên là CP 1258, trong đó, tập mã của Microsoft được đưa vào cácvị trí trống của 8859-V. Công ty IBM cũng đã đề nghị một bảng mã khác dựa trên 8859-V. Đồng thời, Công ty cũng dùng cácvị trí trống cho mục đích riêng của mình.
Qua trao đổi trong Hội thảo, có thể thực sự cảm nhận được tình cảnh của một người ngồi trước một mâm cỗ đầy các món ăn mà món nào cũng có vẻ ngon. Xung quanh là các đầu bếp tác giả, anh nào cũng chỉ giới thiệu cái độc đáo của món mình làm. Bụng thì chỉ có hạn, chưa nói đến khả năng tiêu hóa các món lạ, những món quá bổ béo !
Thế mới thấy rằng: nhất trí tìm bảng mã mới hay hơn để thay thế thì dễ. Nhưng chọn bảng mã nào mới thật là điều khó khăn. Để đánh giá cái hay, cái tốt của một chuẩn, đâu chỉ dựa vào cái đẹp hàn lâm, cái đẹp thuần túy kỹ thuật. Một yếu tố khác vô cùng quan trọng là sự thừa nhận của những người sẽ dùng nó. đây là yếu tố quyết định sự sống còn của chuẩn. Chuẩn ban hành mà chẳng ai dùng (như VN2 chẳng hạn) thì cũng coi như đã chết rồi. Đó chính là cái khó của người làm chuẩn. Vì thế nên cácnhà làm chuẩn thường phát triển các chuẩn pháp lý (de jure) trên cơ sở các chuẩn thực tế (de facto) đã được cọ sát với người dùng.
Chúng tôi cho rằng cộng đồng những người tham dự Hội thảo hôm đó (mặc dù còn chưa đầy đủ tiếng nói của những người làm Tin học ở phía Nam) chính là đại diện tiêu biểu cho những người sử dụng lẫn những nhà phát triển và kinh doanh phần mềm. Tất cả đã giơ tay biểu quyết gần như nhất trí tuyệt đối là: trước mắt đề nghị khuyến cáo sử dụng TCVN 5712:1993 (VN3).
Đây là bảng mã chuẩn chính thức, tạm thời chưa thể và cũng chưa nên làm bộ mã khác để thay thế nó. Dù sao, TCVN 5712:1993 cũng là sự đóng góp đầy tâm huyết và trong sáng, phi vụ lợi của cácnhà Tin học và Ngôn ngữ học Việt Nam. Nó thật đáng được trân trọng. Hơn nữa, TCVN 5712:1993, đặc biệt là bảng mã VN3 vẫn đáp ứng được (cho dù chưa hoàn toàn như ý) mọi yêu cầu về xử lý và trao đổi tiếng Việt trên các hệ thống và mạng. Vậy thì việc gì chúng ta phải vội vàng thay thế VN3 ngay bằng một cái nào đó mà chắc chắn là vẫn chưa vượt trội hơn ? "Chuẩn Quốc gia chứ có phải đống giấy lộn đâu mà có thể dễ dàng bỏ đi một sớm một chiều như vậy ?"
Một đồng nghiệp đã nói với tôi như thế trong giờ giải lao. Quả là một sự nhất trí đầy thận trọng và sáng suốt. điều đó thể hiện tinh thần trách nhiệm, và tinh thần dân tộc, rất cao.
Trong quá trình tham dự hội thảo, đã có lúc tôi liên tưởng tình cảnh của chúng ta trong vấn đề chuẩn hóa bộ mã tiếng Việt cứ y như là "con kiến mà leo cành đa". Cành đa có cành cộc, cành dài. Không khéo thì "leo phải cành cộc, leo ra leo vào". Rất may, con kiến đã biết dừng lại ở ngã ba cành, tiếp tục "suy ngẫm" để có thể chọn đúng cành dài mà leo mãi.
Thay lời kết
Thực ra bài viết này chưa đi hết vào mọi ngóc ngách của vấn đề để thỏa mãn những người quan tâm. Nào là chương trình xử lý và bộ phông chữ kèm theo có nhất thiết phải chuẩn hóa không. Hay làm bàn phím, cách bỏ dấu trên các nguyên âm. Tác giả bài này cho rằng tùy bối cảnh, ví dụ như khối cơ quan Chính phủ (trong đó sự thống nhất là điều cần thiết cho hiệu quả của công tác quản lý Nhà nước) thì hoàn toàn có thể có những quy định bắt buộc. Còn bên ngoài "bàn dân thiên hạ" thì tùy, có lợi thì theo, không thì thôi. Ấu cũng là một cách để "thử thách" sức sống của chuẩn vậy.
PcLeHoan
1996 - 2002
Mirror :
http://www.pclehoan.com
Mirror :
http://www.lehoanpc.net
Mirror :
http://www.ktlehoan.com