IT Staff

Blog về chuyên ngành IT

Phạm Kim Long tự bạch – tác giả bộ gõ UniKey

leave a comment »

 

Phạm Kim Long

Phạm Kim Long

Toà soạn đã thử tìm nhiều cách để liên lạc với những “Hiệp sĩ” mai danh, ẩn tích khá kỹ như thế và vào giờ chót, một số cố gắng đã đem lại kết quả. Tự bạch của chính “Hiệp sĩ” Phạm Kim Long, qua e-mail gởi về kịp lúc cho e-CHÍP, là một trong số những thành công ấy…

images           images1

Thời… chưa xa lắm!

Thời trung học, mình học chuyên toán ở trường Hà Nội-Amsterdam. Học cũng làng nhàng thôi, chẳng có gì nổi bật. Lý do khiến mình nhớ trường “Ams” nhất là vì có rất nhiều… bạn gái ở các lớp chuyên ngữ xinh như mộng🙂

Sau đó, mình vào Đại học Bách khoa Hà Nội học lớp Tin A, K36 (1991- 1996). Hai năm cơ bản khá vất vả vì không quen với “lò luyện kim” của Bách khoa (phải học đủ các môn, có những môn chẳng biết học để làm gì). Khi chuyển sang giai đoạn hai (ba năm sau) thì học nhàn hơn do hồi ấy ngành tin học vẫn còn khá mới mẻ, không có nhiều môn… phải học. Thời của mình, điều kiện cho sinh viên thực hành gần như không có gì. Cũng chẳng mấy ai có máy tính cá nhân ở nhà, bọn mình toàn phải chạy ra ngoài thuê máy. Chuyện đi từ 7-8 giờ sáng để xếp hàng xí máy tốt là điều bình thường. Tiền học bổng không đủ trả tiền thuê máy. Thích nhất khi học ở Bách khoa là được ở trong một môi trường mà bạn bè gồm rất nhiều người thông minh, ham học hỏi. Chính điều đó góp phần tạo ra động lực phấn đấu (một trong những lý do dẫn đến sự ra đời của UniKey mà mình sẽ kể sau). Mình tốt nghiệp đại học loại giỏi, đề tài tốt nghiệp là quản lý hệ thông tin môi trường với các công cụ của Oracle. Rồi mình sang Cộng hoà Séc từ 1997 đến nay, làm nghiên cứu sinh tại Đại học Kỹ thuật Praha, sẽ bảo vệ luận án vào tháng 9 này. Ở Séc, mình nghiên cứu về những vấn đề rất “trừu tượng” và có phần buồn tẻ: Formal Methods (các phương pháp hình thức) trong công nghệ phần mềm. Thời gian đầu khá vất vả vì tất cả mọi thứ về công nghệ đều rất mới mẻ trong khi vốn liếng của mình còn quá ít, thế giới đã đi trước chúng ta xa quá. Chỉ đến khi sang đây mình mới được sử dụng internet, lần đầu tiên dùng e-mail. Việc chọn đề tài cũng có nhiều khó khăn và xin thưa nhỏ là đề tài nghiên cứu hiện tại không phải là điều mình thích nhất (hình như tại vậy nên thời gian nghiên cứu kéo dài thêm một năm so với kế hoạch). Điều kiện kỹ thuật ở Séc thì quả là lý tưởng: truy cập internet 24/24 giờ (cả ở ký túc xá) với tốc độ cao, máy móc đầy đủ, thư viện khá đầy đủ tài liệu. Và mình rất ấn tượng khi sinh viên Tiệp rất quen với việc phát triển phần mềm nguồn mở. Khó khăn lớn nhất với mình là chuyện tài chính: học bổng 150 USD/tháng của chính phủ Séc cho không đủ sống nên mình phải đi làm thêm ở dạng bán thời gian (chủ yếu là vào các kỳ nghỉ cuối tuần) trong khoảng gần hai năm để “lấy ngắn nuôi dài”…

UniKey sẽ luôn là phần mềm tặng không

Thật ra, mình thực hiện UniKey từ năm 1994 (tất nhiên dưới một tên khác) và chỉ công bố rộng rãi vào cuối năm 2000. Bản dầu tiên được viết cho DOS bằng Assembly năm 1994, khi mình còn là sinh viên Bách khoa. Lúc ấy, trong lớp có hai, ba bạn khác cũng viết keyboard riêng của họ bằng Assembly. Từ đó, nảy sinh việc “thi” xem ai viết chương trình… nhỏ nhất. Bản keyboard của mình (tên là TVNBK) chỉ có 2KB. Thuật toán xử lý bỏ dấu tiếng Việt của UniKey hiện nay về cơ bản giống như chương trình Assembly đó. Điều này cũng chính là một nhược điểm của UniKey: Khi nhìn vào source code khá là rối rắm khó hiểu. Sắp tới, có lẽ UniKey 4.0 sẽ thay đổi cơ bản trong thiết kế để có thể phát triển mở rộng hơn nữa.

Bản cho Windows được viết vào đầu năm 1998, gọi tên là “LittleVnKey” nhưng cũng chỉ dùng riêng và dành tặng một số bạn bè, chưa hỗ trợ Unicode. Đến cuối năm 2000, khi đang “bí” về luận án, mình tình cờ ghé thăm Diễn đàn tin học của VNN (nay là Câu lạc bộ trực tuyến VietNamNet1, thuộc Nhóm Truyền thông CNTT e-CHÍP – Chú thích của Toà soạn), thấy mọi người bàn luận rất sôi nổi và rất háo hức về việc Unicode tiếng Việt được hỗ trợ trong Windows (khi đó ngoài hỗ trợ có sẵn trong Windows thì VietKey và Vpskeys đã gõ được Unicode). Câu hỏi thường thấy nhất ở Diễn đàn lúc đó là: “Ai có… crack của VietKey không?”. Vậy là ý tưởng về một keyboard miễn phí hỗ trợ Unicode (dựa trên chương trình mình đang có) hình thành. Ngoài ra, cũng vì “máu nghề nghiệp” muốn dùng chương trình của chính mình tạo ra nữa.
Sau một đêm thiết kế, hai đêm mã hoá liên tục (mình thường làm việc hiệu quả nhất vào ban đêm), bản UniKey đầu tiên ra đời với sự hỗ trợ cho tiếng Việt Unicode. Mình công bố điều đó trên Diễn đàn của VNN. Từ diễn đàn này có nhiều người dùng thử và hồi âm. Trong khoảng bốn tháng đầu, UniKey liên tục được cập nhật (một đến hai tuần/lần). Điều quan trọng nhất giúp UniKey phát triển trong giai đoạn này chính là ý kiến phản hồi của người dùng. Mình trả lời hầu hết các e-mail gửi đến. Các lỗi do người dùng phát hiện ra thường được sửa ngay trong đêm và cập nhật liền trên Diễn đàn. Cũng phải kể thêm là trong giai đoạn này, những lời dèm pha, chê bai, biểu lộ sự hoài nghi nhiều hơn là khen. Thậm chí, có những người còn tung tin thất thiệt là chương trình có virus bên trong. Chính điều này thôi thúc mình phải cải tiến nhiều hơn. Mình không muốn mọi người dùng UniKey chỉ vì nó miễn phí. Điều mình muốn mọi người dùng UniKey là vì nó tin cậy, đơn giản, dễ dùng. Tóm lại, là vì nó tốt. Lúc này, UniKey chưa dùng nguồn mở, chỉ miễn phí thôi…

Một số điều đáng nhớ khác

Riêng taskbar icon của UniKey, vì chiều theo các ý kiến khác nhau, mình đổi đi, đổi lại bốn lần để rồi cuối cùng quay về cái… đầu tiên. Có làm việc để hỗ trợ đủ các loại bảng mã tiếng Việt mới thấy nỗi đau của “loạn 12 sứ quân”🙂

Bốn tháng đầu, mình trả lời hơn 90% e-mail người dùng. Hiện nay thì ngược lại: 90% e-mail không được trả lời! Điều này đơn giản vì mình không có đủ thời gian. Mong mọi người thông cảm và hãy vào forum của UniKey. Có một bạn gái tự nguyện thiết kế giúp web cho UniKey (vì thiết kế của mình đơn điệu quá). Mình đồng ý nhưng đến khi bạn gái đó thiết kế xong, mình lại không có thời gian để tích hợp vào website thành ra rất áy náy vì làm uổng phí công sức của bạn đó. Tương tự, có một anh người Việt ở Phần Lan tự nguyện vẽ font để dùng riêng trong UniKey, nhưng vì trao đổi không kỹ mà font của anh không thích hợp cho UniKey. May là anh ấy không giận, vẫn khuyến khích mình phát triển UniKey.

Khi UniKey đã ổn định, đa phần các e-mail của người dùng đều khen, cảm ơn. Đó thực sự là sự khích lệ lớn. Nhưng thi thoảng cũng có những e-mail khá bất lịch sự, muốn hỏi mà không thèm thưa gửi, được giúp đỡ mà chẳng hề có một lời cảm ơn. Dường như việc viết phần mềm miễn phí của mình làm cho đôi người nghĩ rằng mình là “đầy tớ” của thiên hạ. Làm việc tốt thật không dễ.

Đáng nhớ và cũng đáng buồn nhất: Khi quyết định công bố nguồn mở (open source) của UniKey, mình bị một người (có vẻ khá am tường tình hình CNTT ở bên nhà), nhân danh quyền lợi các tác giả của những phần mềm thương mại ở Việt Nam, gửi thư khuyên mình không open source, coi việc open source UniKey là một hiểm họa vì: “Nó giết chết phần mềm thương mại, nó làm loạn bảng mã, là cơ hội cấy virus”. Ngoài ra, người đó còn quy cho mình là “chơi trội, muốn nổi danh”… Thật đáng buồn khi trong lĩnh vực CNTT, có những cái đầu hẹp hòi đến thế. Không chỉ có e-mail, trên một, hai diễn đàn cũng có những người quy kết mình như thế. Từ đó, mình thôi không tham gia những diễn đàn đó để khỏi phải thanh minh giải thích.
Dù sao, vẫn phải khẳng định: Không có sự ủng hộ của người dùng thì UniKey không thể phát triển như bây giờ. Người dùng có đủ loại nhu cầu khác nhau, đa số nhu cầu rất xác đáng, chính họ đề nghị những tính năng rất hay mà mình không nghĩ ra. Qua UniKey, mình có thêm rất nhiều người bạn tốt.

Việc UniKey trở thành phần mềm miễn phí là rất tự nhiên, vì nó ra đời từ chính nhu cầu của người dùng cần một chương trình bàn phím miễn phí. Hơn nữa, khi làm được gì hay thì lẽ rất tự nhiên là muốn chia sẻ với người khác. Mình không có ý đối lập với những người viết chương trình thương mại, họ làm ra chương trình để kiếm sống bằng lao động của họ là điều hoàn toàn chính đáng. Mình cũng sống bằng viết phần mềm nhưng UniKey thì không phải phần mềm kiếm sống. Unikey là một thú giải trí của mình, như vậy viết UniKey cũng chính là phục vụ cho mình vậy.

Mình sẽ luôn duy trì UniKey là phần mềm miễn phí. Mà hơn nữa UniKey là open source, ai cũng có thể lấy nó về phát triển thêm.
Cũng đã có vài lời đề nghị mình thương mại hóa một phần hoặc toàn bộ UniKey. Mình cũng có đắn đo nhưng cuối cùng mình từ chối tất cả. Lý do chính: Mình cần tự do trong việc phát triển ý thích. Hơn nữa, bây giờ cũng cảm thấy có duyên nợ với người dùng UniKey rồi. Vậy thì UniKey sẽ luôn là phần mềm tự do với mã nguồn mở (free ware, free as in speech).

Nguồn trích từ báo  Báo echip  mục “Phạm Kim Long tự bạch

Written by Xavier

Tháng Ba 12, 2009 lúc 4:30 sáng

Posted in Cảm phục

Tagged with

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

%d bloggers like this: