Thứ Hai, 29 tháng 10, 2012

Installing Ocaml & Emacs in MacOS


Làm sao để cài Ocaml và Emacs trên Mac OS X

Hiện tại có rất nhiều công cụ hỗ trợ cho việc lập trình Functional Programming. Ví dụ như: Camelia, CamelX, Eclipse + Ocaml, Emacs + Ocaml, … và rất nhiều công cụ nữa không thể kể hết được. Ở đây, tôi chỉ hướng dẫn lại cách cài đặt Ocaml và Emacs trên Mac OS X.

  1. Trước hết bạn phải cài đặt Ocaml.

  1. Kế đến download gói Emacs dành cho Mac OS.
http://www.gnu.org/software/emacs/

  1. Để sử dụng được Ocaml trên Emacs, ta sẽ dùng Tuareg Mode để cài đặt thêm.
    1. Trước tiên download Tuareg về Tuareg 2.0.1. Khi giải nén xong, bạn sẽ đặt folder đó ở vị trí xác định. Ví dụ: ~/Tuareg-2.0.1/
    2. Giải nén sẽ thấy trong đó có 2 file: camldebug.eltuareg.el.
    3. Trong thư mục ~/ bạn sẽ tìm file .emacs. Dùng Terminal để tìm (lệnh: open ~/.emacs). Nếu như không có file này, chỉ đơn giản là bạn tạo một file text, và lưu với định dạng là .emacs :D.
    4. Khi này, bạn chỉ cần mở đoạn chép đoạn code này vào file .emacs là xong.
(setq auto-mode-alist
          (cons '("\\.ml[iyl]?$" .  caml-mode) auto-mode-alist))
;; you should probably comment the next line or replace ~remy by another path 
(setq load-path (cons "~/tuareg-2.0.1/" load-path))
(require 'color-theme-arjen-new)
(color-theme-arjen-new)
(autoload 'caml-mode "ocaml" (interactive)
  "Major mode for editing Caml code." t)
(autoload 'camldebug "camldebug" (interactive) "Debug caml mode")


  1. Cài thêm Themes vào Emacs.
    1. Bạn muốn cài thêm theme vào thì sẽ phải download các theme.
    2. Sau đó chép các theme vào thư mục ~/tuareg-2.0.1/.
    3. Chèn thêm dòng lệnh sau đây:
(setq load-path (cons "~/tuareg-2.0.1/" load-path))
(require 'color-theme-arjen-new)
(color-theme-arjen-new)


  1. Kiểm tra và khởi động Emacs.
    1. Việc cài đặt như vậy là đã hoàn tất rồi.
    2. Chúng ta sẽ kiểm tra lại bằng cách mở chương trình emacs lên. Dùng lệnh sau để load thử ocaml mode: M-x caml-mode. Nếu không có báo lỗi gì thì chúng ta có thể thoải mái sử dụng Emacs để lập trình bằng ngôn ngữ Ocaml rồi nhé.

Vậy là xong. Chúng ta chỉ cần qua đúng bao nhiêu bước đó là có thể hoàn tất được việc cài đặt Emacs và Ocaml rồi.

Chủ Nhật, 28 tháng 10, 2012

Latex MAC OS

Khi sử dụng latex, đến phần insert hình thì mình gặp một chút khó khăn với hình ảnh cần insert. Nếu bạn nào sử dụng Mac OS thì sẽ biết phải Grab để chụp lại một phần / toàn màn hình / cửa sổ. Nhưng nếu bạn muốn thay đổi định dạng khác trong Grab, ví dụ như lưu ảnh dưới dạng pdf hay png, ... thì rất tiếc là Grab không cho phép. Định dạng mặc nhiên của Grab sẽ là file ... TIFF.

Sau khi tìm kiếm thì tôi phát hiện được một công cụ khác khá bất ngờ và thú vị mà chúng ta có thể hoàn toàn không ngờ đến khi sử dụng Mac OS. Đó là công cụ Preview: trong Preview có chức năng chụp màn hình giống y chang như Grab. Tuy nhiên điểm khác biệt nằm ở đây là mình hoàn toàn có thể lưu ảnh kết quả dưới các định dạng khác nhau như png, jpeg, jpg hay pdf tuỳ ý.

Về cách insert hình vào trong latex thì tôi thấy rằng nếu như chúng chèn ảnh với bất kỳ định dạng gì thì Latex cũng phải dịch ảnh đó sang pdf, cho nên sẽ có một file có tên là được-chuyển-từ-gì-đó-sang-pdf.pdf. Vậy nên cách tiết kiệm công sức nhất là khi lưu hình chúng ta chọn sẵn luôn là hình dạng ... pdf.

Thứ Bảy, 27 tháng 10, 2012

Lại cuối tuần ...

Lại cuối tuần, ngồi trên lab mà đầu óc cứ nghĩ vẩn vơ. Ngẫm lại tuổi mình cũng còn trẻ chán, còn sức khoẻ và niềm đam mê. Những nhược điểm lớn nhất của tuổi trẻ lại chính là bị tình cảm chi phối. Những người độc thân bình thường còn gặp vất vả trong những tình huống chia lìa xa cách. Nói như vậy không có nghĩa là mình cũng phải giống như họ, nhưng cứ đến những ngày cuối tuần thì mình lại cảm thấy bâng khuân trong lòng, chợt nhớ những lúc gia đình sum vầy, đoàn tụ.
Nam Phương giờ đã biết làm nhiều trò khác nhau rồi, con biết giơ tay chào tạm biệt, biết ngoắc lại và làm mặt xấu. Mẹ Nam Phương thì phải vất vả ngược xuôi hàng tuần từ Sài gòn về Sadec, giống y như mình lúc trước. Đi riết cũng thành quen, nhưng để có được cái sự quen đó thì phải nói là vất vả lắm lắm. Thương hai mẹ con quá.
Hôm trước điện thoại về nhà, nghe nói mợ Năm muốn xin bộ quần áo của Nam Phương cho con anh Tí mặc sau này để nó dễ và ngoan giống như con. Mình cũng chẳng nhớ là hồi trước Nam Phương mặc đồ ké của ai nữa, nhưng kệ, mình không muốn con mình bắt chước ai cả, mà cho nó mặc đồ người khác để trộm vía làm cả nhà vui thì mình cũng không vấn đề gì.
Mong lắm ngày đoàn tụ ...

Giải trí cuối tuần - P2


Tại sao đàn ông sau khi cưới vợ thường béo hơn lúc còn độc thân
– Lúc độc thân, người đàn ông về nhà buổi tối, chạy vào bếp mở tủ lạnh nhìn, chán nản leo lên giường ngủ.
– Sau khi có vợ, người đàn ông về nhà buổi tối, nhìn lên giường ngủ, chán nản chạy ra bếp lục tủ lạnh.

Ban giám khảo ra đề như sau: “Giả sử bạn đang ngồi trong nhà hàng với cô bạn gái mới quen, bỗng dưng bạn muốn đi toilet. Vậy bạn sẽ nói với cô ấy thế nào?” Đây là câu hỏi trong cuộc thi “Người đàn ông thẳng thắn và lịch sự nhất” tại miền Nam nước Pháp, đất nước mà đàn ông vốn nổi tiếng về chủ đề này. Và giải nhất đã được trao cho một thí sinh có câu trả lời ứng xử như sau: – Xin lỗi cô, tôi phải ra ngoài giúp “người bạn nhỏ” của tôi một chút. “Người bạn” đó tôi hi vọng sẽ được giới thiệu với cô trong một dịp gần đây!

Giải trí cuối tuần - P1


Đi “tè” trong buổi yến tiệc mà chết gọi là Tiểu Yến Tử. 
Chết đuối gọi là Giang Tử. 
Chết ở nông trại gọi là Trang Tử. 
Người chết toàn thây là Nguyên Tử. 
Bị thiu cháy đen thui là Hắc Tử. 
Chết đi sống lại rùi chết tiếp là Song Tử. 
Chết trong bao là Bao Tử. 
Người to lớn mà chết gọi là Khổng Tử. 
Không ốm đau mà chết gọi là Mạnh Tử. 
Chết khi mọi việc đã hoàn tất gọi là Chu Tử. 
Cha chết gọi là Phụ Tử, mẹ chết gọi là Mẫu Tử. 
Em chết gọi là Đệ Tử, vợ chết gọi là Thê Tử. 
Chồng leo núi mà chết gọi là La Sơn Phu Tử. 
Thầy giáo chết gọi là Sư Tử. 
Học trò chết gọi là Sĩ Tử.



9 kiểu chết của… tinh trùng: 1. Lâu ngày không được xuất binh, BUỒN chết. 2. Nhịn cả ngày, cuối cùng được ra, MỪNG chết. 3. Trăm triệu anh em cùng xông lên, CHEN tới chết. 4. Sau khi ra, phát hiện chủ nhân tự giải quyết, UẤT ỨC chết. 5. Bị bắn xuống đất, TÉ chết. 6. Bị bắn vô tường, đụng BỂ ÐẦU chết. 7. Bị giấy vệ sinh chùi, KHÔ chết. 8. Sau khi bị chùi xong, lại bị quăng vô thùng rác, THÚI chết. 9. Cuối cùng cũng được chính thức lâm trận, đứa đầu tiên tới đích, ÐẮC Ý chết.



Thứ Hai, 22 tháng 10, 2012

Bài báo & Sự tự tin

        Khi bắt đầu vào học chương trình Ph.D. 5 năm thì trường sẽ phát cho mỗi sinh viên một cuốn sách - tạm gọi là cẩm nang, kèm theo đó là một Thời khóa biểu, trong đó ghi rõ các cột mốc cần hoàn thành và khoảng thời gian tính bằng tháng tương ứng. Theo kinh nghiệm của những anh chị đi trước chia sẻ thì mỗi người sẽ phải tự xây dựng một lịch trình riêng cho mình và tự đặt mục tiêu phấn đấu cho riêng mình vì thời gian biểu chỉ ghi những cột mốc và khoản thời gian chung chung mà thôi. Ví dụ: từ lúc bắt đầu vào học là tháng 9, 17 tháng sau sinh viên phải hoàn thành báo cáo 1 (tương ứng master 1), trong 17 tháng đó, sinh viên lên kế hoạch thế nào, thực hiện ra sao thì hoàn toàn sinh viên phải tự quyết định lấy.


        Một vài chiến thuật cụ thể mà tôi muốn tóm tắt lại đây, trước là để ghi chú cho bản thân và sau nữa là chia sẻ với những bạn nào cần thiết.



  1. Chiến thuật ngắn hạn:

    • Các bạn có thể lên kế hoạch cho 6 tháng. Cụ thể, sau 6 tháng tôi sẽ có kết quả gì, kết quả có thể ở dạng paper cho conference hoặc workshop, technical report, … Kết quả đó có thể đăng ở hội nghị nào ? Cần phải target cụ thể hội nghị để có thể theo dõi DEADLINE quan trọng cần nộp. Những công việc này bắt buộc phải tiến hành song song, và quan trọng hơn nữa là chọn hướng nghiên cứu gì để có kết quả ngắn hạn và hỗ trợ cho mục tiêu dài hạn của chương trình Ph.D.

    • Nói một cách nôm na là theo lời khuyên của GS, bạn nên đầu tư chọn hướng nghiên cứu tốt, nếu chọn hướng tốt thì kết quả cứ lần lượt theo đó mà được công bố dưới dạng paper liên tục nhau. Điểm khó nhất mà mỗi sinh viên PhD cần phải học chính là điều này, luyện tầm nhìn và tầm cỡ.



  2. Chiến thuật dài hạn:

    • Một vài người có thể chọn chiến thuật khác, tôi sẽ theo đuổi những hướng nghiên cứu riêng, có thể 1 hoặc 2 hoặc 3 năm sau tôi mới đăng bài báo, nhưng đã đăng bài thì sẽ là những bài có tầm cỡ chẳng hạn.

    • Về cách này thì tôi chỉ muốn chia sẻ ngắn gọn mà thôi.



  3. Nhận xét:

    • Theo ý kiến cá nhân của tôi thì chiến thuật 1 có vẻ tốt hơn hết. Có một vài lý do sau đây khiến cho chiến thuật ngắn hạn (chiến thuật 1) tốt hơn:

      • Đem lại sự tự tin: sau 6 tháng được đăng kết quả ở một hội nghị nào đó sẽ đem lại sự khích lệ to lớn (đặc biệt đối với những người chưa có bài nào - như tôi chẳng hạn).

      • Được nghe nhận xét: kết quả của bạn làm sẽ được những người khác nhận xét và bình luận, do đó các bạn có thể biết được rất nhanh chóng là hướng này có nhiều người làm hay không? có thể dẫn đến bế tắc hay không? mọi người có xu hướng gỉai quyết bài toàn này nữa hay không? ….

      • Tăng kinh nghiệm viết bài: điều hiển nhiên là khi viết bài báo bằng ngôn ngữ không phải tiếng mẹ đẻ là một vấn đề khá vất vả, qua đó bạn sẽ học được nhiều kinh nghiệm bổ ích hơn.

Bài báo & Sự tự tin

        Khi bắt đầu vào học chương trình Ph.D. 5 năm thì trường sẽ phát cho mỗi sinh viên một cuốn sách - tạm gọi là cẩm nang, kèm theo đó là một Thời khóa biểu, trong đó ghi rõ các cột mốc cần hoàn thành và khoảng thời gian tính bằng tháng tương ứng. Theo kinh nghiệm của những anh chị đi trước chia sẻ thì mỗi người sẽ phải tự xây dựng một lịch trình riêng cho mình và tự đặt mục tiêu phấn đấu cho riêng mình vì thời gian biểu chỉ ghi những cột mốc và khoản thời gian chung chung mà thôi. Ví dụ: từ lúc bắt đầu vào học là tháng 9, 17 tháng sau sinh viên phải hoàn thành báo cáo 1 (tương ứng master 1), trong 17 tháng đó, sinh viên lên kế hoạch thế nào, thực hiện ra sao thì hoàn toàn sinh viên phải tự quyết định lấy.


        Một vài chiến thuật cụ thể mà tôi muốn tóm tắt lại đây, trước là để ghi chú cho bản thân và sau nữa là chia sẻ với những bạn nào cần thiết.



  1. Chiến thuật ngắn hạn:

    • Các bạn có thể lên kế hoạch cho 6 tháng. Cụ thể, sau 6 tháng tôi sẽ có kết quả gì, kết quả có thể ở dạng paper cho conference hoặc workshop, technical report, … Kết quả đó có thể đăng ở hội nghị nào ? Cần phải target cụ thể hội nghị để có thể theo dõi DEADLINE quan trọng cần nộp. Những công việc này bắt buộc phải tiến hành song song, và quan trọng hơn nữa là chọn hướng nghiên cứu gì để có kết quả ngắn hạn và hỗ trợ cho mục tiêu dài hạn của chương trình Ph.D.

    • Nói một cách nôm na là theo lời khuyên của GS, bạn nên đầu tư chọn hướng nghiên cứu tốt, nếu chọn hướng tốt thì kết quả cứ lần lượt theo đó mà được công bố dưới dạng paper liên tục nhau. Điểm khó nhất mà mỗi sinh viên PhD cần phải học chính là điều này, luyện tầm nhìn và tầm cỡ.



  2. Chiến thuật dài hạn:

    • Một vài người có thể chọn chiến thuật khác, tôi sẽ theo đuổi những hướng nghiên cứu riêng, có thể 1 hoặc 2 hoặc 3 năm sau tôi mới đăng bài báo, nhưng đã đăng bài thì sẽ là những bài có tầm cỡ chẳng hạn.

    • Về cách này thì tôi chỉ muốn chia sẻ ngắn gọn mà thôi.



  3. Nhận xét:

    • Theo ý kiến cá nhân của tôi thì chiến thuật 1 có vẻ tốt hơn hết. Có một vài lý do sau đây khiến cho chiến thuật ngắn hạn (chiến thuật 1) tốt hơn:

      • Đem lại sự tự tin: sau 6 tháng được đăng kết quả ở một hội nghị nào đó sẽ đem lại sự khích lệ to lớn (đặc biệt đối với những người chưa có bài nào - như tôi chẳng hạn).

      • Được nghe nhận xét: kết quả của bạn làm sẽ được những người khác nhận xét và bình luận, do đó các bạn có thể biết được rất nhanh chóng là hướng này có nhiều người làm hay không? có thể dẫn đến bế tắc hay không? mọi người có xu hướng gỉai quyết bài toàn này nữa hay không? ….

      • Tăng kinh nghiệm viết bài: điều hiển nhiên là khi viết bài báo bằng ngôn ngữ không phải tiếng mẹ đẻ là một vấn đề khá vất vả, qua đó bạn sẽ học được nhiều kinh nghiệm bổ ích hơn.

Thứ Bảy, 6 tháng 10, 2012

Kinh nghiệm những ngày đầu mới qua

        Tôi dự kiến viết ngay khi bắt đầu trở qua Tokyo, với mục đích ghi chú lại các công việc cần thiết phải tiến hành và cách thức tiến hành khi bắt đầu làm thủ tục nhập học.


  1. Resident card: đây được xem là chứng minh thư (tương đương hộ chiếu) mà ngoại kiều phải đem theo trong người suốt thời gian lưu trú ở Nhật. Thẻ được làm tại sân bay, ngay ở quầy nhập cảnh. Thủ tục này được thực hiện MIỄN PHÍ.
residence_card600-2012-10-6-15-13.jpg
  1. Residential Address: bước kế tiếp là lên phường xác nhận địa chỉ mà mình đang lưu trú. Khi thay đổi địa chỉ, mình phải lên phường hiện lưu trú để đăng ký lại địa chỉ. Khi bạn muốn mở tài khoản ngân hàng thì cần phải có xác nhận địa chỉ trên Resident card thì mới thực hiện được. Thủ tục này được thực hiện MIỄN PHÍ.
  2. Insurance: khi làm xác nhận địa chỉ, bạn nên làm luôn bảo hiểm. Đây là loại bảo hiểm do chính phủ Nhật tài trợ, trong trường hợp bệnh tật, sẽ được giảm 70% tiền viện phí (bao gồm cả phí khám răng, chụp X quang, …). Thủ tục này được thực hiện MIỄN PHÍ.
    • Tuy nhiên, có một bổ sung nho nhỏ là khi bạn đăng ký xong thì hàng tháng bạn sẽ nhận được hóa đơn đóng bảo hiểm với mức phí ~1.000 yen.
Insurance_Card.JPG-2012-10-6-15-13.jpg
  1. Thẻ sinh viên: đây là một trong những công cụ cực kỳ hiệu quả khi sử dụng cách dịch vụ ở Tokyo nói riêng - nói nôm na là “Bùa hộ mệnh”. Khi bạn trở thành sinh viên ở Nhật Bản thì bạn sẽ được hưởng nhiều chính sách ưu đãi cho sinh viên.
    • Ví dụ cụ thể nếu như các bạn muốn đi thăm viện bảo tàng chẳng hạn, thông thường vé vào cổng khoản 700 đến 1.000 yen, khi bạn mang thẻ sinh viên theo và trình ra khi mua vé thì bạn có thể mua được ở mức giá 400-500 yen.
    • Một ví dụ khác là khi bạn mua vé xe điện theo tháng (gọi là thẻ commuter pass), bình thường bạn phải trả cho 8 trạm với giá là 7.500 yen, nếu có thẻ sinh viên, bạn chỉ cần phải trả số tiền là 4.080 yen (tiết kiệm được 45.6% so với giá thông thường).
isic-2012-10-6-15-13.jpg