Skip to main content

Posts

Showing posts from January, 2014

[game] Robot Odyssey - DroidQuest

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

[system] ldd - print shared library dependencies

$ 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.

bash vs dash vs zsh vs python cho scripting

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 0.5.7-4: A POSIX compliant shell that aims to be as small as possible  archlinux tiếp tục sử dụng bash và không bao giờ chuyển sang dash hvn@archhvn: ~ () $ ls -l /bin/sh lrwxrwxrwx 1 root root 4 Aug 25 19:06 /bin/sh -> bash freebsd replace tất cả các script perl bằng POSIX shell script (perl is bloat) 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.

[bash] array

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: 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ó.

Memcached, redis và các key-value store

Memcached và gần đây là Redis , là những cái tên bạn nên biết. Vì chúng: Rất đơn giản Hữu ích Đầu tư 1 thu lãi 10 Memcached đọc là Mem-kaʃ-di 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.

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG