NOTICE: để chơi được game này, bạn cần có khả năng đọc tiếng Anh kha khá (hoặc ôm bên cạnh 1 quyển từ điển)
Robot Odyssey (hereinafter: RO) được đánh giá là computer game khó nhất mọi thời đại
Không nói dài dòng vì nếu bạn không chơi thì làm sao biết nó khó :v
Do game trên Windows 95 nên để chơi trên Linux, ta dùng bản clone trên Java có tên là DroidQuest
http://www.droidquest.com/
Link download
New FAMILUG
The PyMiers
Sunday, 26 January 2014
Saturday, 18 January 2014
[system] ldd - print shared library dependencies
by
H
$ whatis ldd
ldd (1) - print shared library dependencies
ldd có sẵn trên máy bạn vì nó nằm trong package glibc
Từ khóa
shared libraries: hiểu đơn giản hết cỡ thì nó là các library được chương trình load vào khi chạy. (Chi tiết xem ở cuối bài)
Theo man 1 ldd
ldd prints the shared libraries required by each program or shared library specified on the command line.
Vậy ldd dùng để xem 1 chương trình (hay một library) phụ thuộc (sử dụng) library nào.
Friday, 17 January 2014
bash vs dash vs zsh vs python cho scripting
by
H
ubuntu / debian chuyển sang dùng dash làm /bin/sh 3-4 năm trước, vì dash nhanh và nhẹ hơn
dash hay bash
đây là đánh đổi giữa tốc độ / tính portable và tính năng
bash có nhiều tính năng hơn dash (ví dụ: array) nhưng nặng/chậm hơn dash, không POSIX compatible.
dash 0.5.7-4:archlinux tiếp tục sử dụng bash và không bao giờ chuyển sang dash
A POSIX compliant shell that aims to be as small as possible
freebsd replace tất cả các script perl bằng POSIX shell script (perl is bloat)hvn@archhvn: ~ () $ ls -l /bin/sh lrwxrwxrwx 1 root root 4 Aug 25 19:06 /bin/sh -> bash
dash hay bash
đây là đánh đổi giữa tốc độ / tính portable và tính năng
bash có nhiều tính năng hơn dash (ví dụ: array) nhưng nặng/chậm hơn dash, không POSIX compatible.
man 1 bash BUGS It's too big and too slow.
Tuesday, 14 January 2014
[bash] array
by
H
Array là một data type cơ bản trong bash. Sử dụng rất dễ dàng, hiệu quả lại mênh mang.
Tạo 1 array và assign nó cho 1 variable cute:
Dấu @ và dấu * để chọn hết các phần tử trong array cute.
Khi không chỉ rõ index, array sẽ trả về phần tử (element) đầu tiên
Nếu phần tử không tồn tại, array sẽ trả về empty string.
Dùng ${XXX} để thay thế một variable bằng value của nó.
Tạo 1 array và assign nó cho 1 variable cute:
hvn@archhvn: ~ () $ cute[0]=lam
hvn@archhvn: ~ () $ cute[1]=hiep
hvn@archhvn: ~ () $ echo ${cute}
lam
hvn@archhvn: ~ () $ echo ${cute[0]}
lam
hvn@archhvn: ~ () $ echo ${cute[1]}
hiep
hvn@archhvn: ~ () $ echo ${cute[@]}
lam hiep
hvn@archhvn: ~ () $ echo ${cute[*]}
lam hiep
Dấu @ và dấu * để chọn hết các phần tử trong array cute.
Khi không chỉ rõ index, array sẽ trả về phần tử (element) đầu tiên
Nếu phần tử không tồn tại, array sẽ trả về empty string.
Dùng ${XXX} để thay thế một variable bằng value của nó.
Friday, 10 January 2014
Memcached, redis và các key-value store
by
H
Memcached và gần đây là Redis, là những cái tên bạn nên biết. Vì chúng:
chữ d được đọc riêng ra, vì d ở đây là viết tắt của daemon (như httpd, ftpd ...)
Chứ cache đọc là /kaʃ/ giống hệt như "cash" chứ không có "kết" nào ở đây cả.
Đơn giản
- Cài đặt dễ dàng
- Sử dụng đơn giản - dễ hơn tất cả các loại database - nếu bạn biết database là gì.
Memcached thường được sử dụng để lưu trữ các giá trị tạm thời, các chương trình thường được lập trình để đọc dữ liệu từ memcached trước khi đọc từ database (vì memcached đọc ghi trên RAM nên nhanh hơn rất nhiều lần so với đọc ghi database - trên disk)
Các hệ thống key-value store thường được sử dụng bởi các phần mềm, các lập trình viên thay vì người dùng cuối. Bởi vậy để minh họa cho việc sử dụng memcache/redis, ta cần phải dùng code.
- Rất đơn giản
- Hữu ích
- Đầu tư 1 thu lãi 10
chữ d được đọc riêng ra, vì d ở đây là viết tắt của daemon (như httpd, ftpd ...)
Chứ cache đọc là /kaʃ/ giống hệt như "cash" chứ không có "kết" nào ở đây cả.
Đơn giản
- Cài đặt dễ dàng
- Sử dụng đơn giản - dễ hơn tất cả các loại database - nếu bạn biết database là gì.
Memcached thường được sử dụng để lưu trữ các giá trị tạm thời, các chương trình thường được lập trình để đọc dữ liệu từ memcached trước khi đọc từ database (vì memcached đọc ghi trên RAM nên nhanh hơn rất nhiều lần so với đọc ghi database - trên disk)
Các hệ thống key-value store thường được sử dụng bởi các phần mềm, các lập trình viên thay vì người dùng cuối. Bởi vậy để minh họa cho việc sử dụng memcache/redis, ta cần phải dùng code.
Subscribe to:
Posts (Atom)