New FAMILUG

The PyMiers

Sunday 30 September 2012

JSON - tất cả trong bài này!

Nếu bạn đã từng bị tạch tại cuộc phỏng vấn vào 1 công ty nào đó chỉ vì không biết JSON là gì thì ngay sau khi đọc bài này, bạn sẽ thấy thiếu sót của mình thực sự đáng tiếc thế nào !!!
Bởi cái tên JSON trông thì có vẻ nguy hiểm, nghe có vẻ lạ kỳ nhưng thực ra nó cực cực cực đơn giản.

Vâng, nếu bạn thấy tớ đã nhấn mạnh như thế nào thì hãy đọc hết bài này và thấy những điều tớ nói:
(Trông có vẻ dài - chủ yếu bởi các đoạn tiếng Anh tớ paste vào để mọi người tham khảo, còn với 1 kiến thức trọn gói mà thế này thì vẫn ngắn :D )
Cách đọc: (Việt sub: jây-sờn)
JSON (/ˈsən/)

What is JSON?

    JSON stands for JavaScript Object Notation
    JSON is lightweight text-data interchange format
    JSON is language independent *
    JSON is "self-describing" and easy to understand
    JSON is syntax for storing and exchanging text information. Much like XML.
    JSON is smaller than XML, and faster and easier to parse.

Lập trình viên ký (Phần 2)

Dưới đây là những khó khăn tớ gặp, những quãng đường đã trải qua, nói ra để mọi người biết  mà đi đường tắt  :D

C là một ngôn ngữ có cú pháp đơn giản. Chẳng phải tớ giỏi giang gì mà nói thế, mà chính ông Dennish Ritches cũng chỉ viết cuốn C programming language có ~ 200 trang.
Nếu bạn nắm được hết nội dung cuốn sách ấy, bạn đã nắm hết được cú pháp của C. Tất cả chỉ có vậy, còn dùng ra sao thì không ai nói cả.
Sai lầm cũng là ở đây, bạn chỉ biết làm mấy cái bài tập ví dụ trong sách, cài đặt thuật tóan cơ sở dữ liệu, sắp xếp tìm kiếm... và sẽ không bao giờ viết được 1 chương trình làm việc thực sự.

Lập trình viên ký (Phần 1)

Phần 1. Kể chuyện
cho đến giờ tớ vẫn chưa đủ tự tin khi nhận mình là lập trình viên. Nhưng dù sao cũng vài thắng làm báo, giật tít cho hoành là 1 điều tất yếu.
Tớ viết bài này cho vui cũng là chia sẻ kinh nghiệm với mọi người. Ai thấy chỗ nào vô lý  thì cm, đừng ném gạch :">
$%^@# 4h sáng vẫn chưa ngủ đc =.= mất không 3 tiếng nàm giường >.<

Mười mấy năm đi học của tớ có thể nói gắn liền với 1 câu "Thằng chột làm vua xứ mù".

Tuổi thơ ngọt ngào với contra, jackal, donald duck, mario, tank... hàng trăm băng điện tử đã qua tay tớ.
Lên lớp 5, mẹ tớ đã quyết định đầu tư mạo hiểm cho tớ đi học "Tin học bằng A". Những ngày tháng chỉ có Windows, gõ 10 ngón, word và excel.
Tớ đã biết gõ bàn phím!

Friday 28 September 2012

[CMD] xclip - paste, paste, paste

bạn muốn copy nội dung 1 file mà không cần dùng chuột? bạn muốn copy output của 1 dòng lệnh mà không dùng chuột?
với Linux-based OS, bạn có khẩu hiệu "vì một thế giới không chuột >:)"
hvn@lappy:~/test$ cat /etc/apt/sources.list | xclip -selection clip
ngay sau đó, bạn có thể paste vào bất cứ đâu.
Nếu câu lệnh không hoạt động, hãy thử với -selection sec hay -selection p 

Nếu vẫn không được, xin lỗi...
bạn quá đen :))

UPDATE: dùng xclip để copy ssh public key:
[hvn@hvnatvcc] ~  xclip -se clip < ~/.ssh/id_rsa.pub 

Wednesday 26 September 2012

LATEX- Mẫu

Đẹp trai chính là anh Mẫu thồi còn nội dung thì tùy biến nhé

Kết quả là

Tuesday 25 September 2012

LATEX-Chèn hình + mục lục

Chào các bạn!
Lần này mình sẽ trình bày về làm mục lục và chèn hình. Chú ý hình 'hing.jpg' đặt cùng thư mục với file .tex

Và đây là kết quả

Có gì sai sót xin góp ý!

Khảo sát chơi 1 em Android :D


Nhân dịp Hải dớ (eminteo) ngắm nghía mấy cái điện thoại gần chục củ, viết bài chơi chơi cho blog đỡ buồn,gọi là dạo qua hàng điện thoại thôi :D 

Bài này sẽ tìm hiểu về các thông số CPU và RAM của máy .
Lấy em Samsung Nexus S của tớ làm chuột bạch:
Đầu tiên Google info của em nó, cái link dưới sẽ đập vào mặt bạn ngay :
http://www.gsmarena.com/samsung_google_nexus_s-3620.php
(gsmarena là 1 trang review điện thoại rất nổi tiếng trên thế giới)

Vào trang này bạn sẽ thấy dòng:
Previously known as Samsung i9020

Monday 24 September 2012

Tắt các thiết bị chuyển mạch để tiết kiệm pin

 Pin là tài sản quý báu, năng lượng luôn cần tiết kiệm. Máy bật lên là phải chạy được thật lâu :))

Khi khởi động linux-based OS của bạn, các thiết bị chuyển mạch sóng radio thường được để mặc định là actived, nên nếu biết tắt chúng đi, bạn có thể tiết kiệm 1 lượng năng lượng đáng kể.

Lệnh rfkill sẽ giúp ta làm tất cả những điều cần thiết ấy.
(man rfkill ko có :D )
Google Fu được:
rfkill is a small tool to query the state of the rfkill switches, buttons and subsystem interfaces.
để hình dung rõ hơn, hãy search ảnh về rf switches (từ RF này ai học điện tử chắc mới biết @@)

Saturday 22 September 2012

Nén, giải nén bằng command line trong Linux

UPDATE: list files in an archive
UPDATE: extract all archive type

Dù dùng command line khá nhiều nhưng chuyển hẳn sang thì vẫn chưa thể làm ngay và luôn được.
Sau đây là những câu lệnh giúp nén / giải nén các định dạng zip, tar, tar.gz, tar.bz2, tar.xz bằng dòng lệnh:

1. zip
+ Nén:
zip file.zip file1 file2 file3
Ví dụ:
~/Huffman%zip Huffman.zip *

+ Nén cả thư mục:
zip -r directory.zip directory_name

+ Giải nén: (phải tạo thư mục bạn sẽ giải nén vào )
unzip -d thu_muc file.zip
Ví dụ:
~/Huffman%unzip -d Huffman Huffman.zip

+ Danh sách:
unzip -l file.zip

2. tar
+ Nén:
tar cvf file.tar file1 file2 file3
VD:
~/Linux%tar cvf hehe.tar a.txt b.mp3

+ Giải nén:
tar xvf file.tar

+ Danh sách:
tar tf file.tar

Thursday 20 September 2012

[Tut] Search bằng thanh addressbar của Firefox


Thời đại google, search là một điều thiết yếu. Làm thế nào để search nhanh?

Firefox có ô search ở góc phải, bấm ctrl k (máy tớ là thế) nó sẽ nhảy vào ô search, ctrl (lên hoặc xuống) để chọn engine rồi gõ từ khóa vào. Vậy cũng gọi là tạm nhanh rồi :D

Làm thế nào để thêm các lựa chọn search từ trang khác?
dùng extension này: https://addons.mozilla.org/en-US/firefox/addon/3682
chuột phải vào ô search của trang đó rồi add new search j đó ...

Nhanh hơn được không?
Có :D, đó là vì sao tớ viết bài này. Firefox cung cấp tính năng search bằng keyword trực tiếp trên thanh địa chỉ (bấm Alt D hoặc Ctrl L)
Hướng dẫn:
chuột phải vào ô search của trang bạn muốn. Ví dụ : http://oxforddictionaries.com/definition/english/

chọn add a keyword...
một dialog tên là new bookmark hiện ra, bạn gõ vào ô keyword từ khóa cho search ở trang này: ví dụ ở đây tớ dùng từ khóa  ox

Game trên linux

UPDATE: thêm nhiều game online
Nói gì thì nói, game miễn phí trên Linux vẫn ít và chất lượng không cao, giải pháp khi  thỉnh thoảng thèm chơi game là:
- chơi game giả lập NES, VBA => ngon lành
- chơi web game.
- chơi mấy game khá tốt trên linux : teeworld, battle of westnorth, 0 AD...

Game giả lập thì rất phê :x
chơi mấy game điện tử 4 nút trên NES hay chơi pokemon, golden sun trên VBA thì ngồi cả tháng cũng ko chán :D

WEB game thì nhiều, chỉ list mấy cái nổi trội ra đây:
http://dragonbound.net/  # Gunbound html5
2 Game của EA


Command & Conquer: Tiberium Alliances
Lord of Ultima

http://www.tf2.com/freetoplay/  # Action games, Team Fortress
http://www.phoboslab.org/xtype/  # Phi thuyền bắn phi thuyền

List tạm ra để thỏa cơn thèm game :D sau có site nào update thêm.
Và cũng là 1 bài hiếm hoi về chủ đề game trên FAMILUG :D - mảnh đất mà game bị kì thị :))

[Doc] Các tài liệu để học Linux/Unix

Bạn không cần sách, bởi tài liệu free rất nhiều.

Đủ loại tài liệu từ cơ  bản đến chuyên sâu
-1. LHN - khá chi tiết và thực tế
http://www.linuxhomenetworking.com/

0. JustLinux - tài liệu kèm ví dụ (là các bài quick tut, ngắn hơn so với LHN)
http://www.justlinux.com/nhf/

có những ví dụ thực tế, cho những ai kinh sợ file man :))

1. TLDP - The Linux Document Project
http://tldp.org/

Wednesday 19 September 2012

LATEX - bảng

Kết quả là

LATEX - mở đầu

Cài đặt latex. Ở đây mình sẽ dùng trình soạn thảo mình hay dùng TexMaker (có cả trên win và ubuntu). Trước khi cài đặt Texmaker (hay bất cứ 1 trình soạn thảo nào khác) :

+ Cài đặt Texlive đối với ubuntu

+Cài đặt Miktex với window

(free hết)

cài xong rồi nào thử ngay một văn bản luôn và ngay



Sẽ được như thế này



Thursday 13 September 2012

[CLIC] CLI Challenge 1

Định để mai viết, nhưng mà mai dài hơn thuổng :))
Viết luôn!

ngồi rảnh rỗi chán nản, tớ nghĩ ra 1 trò mới, mời mọi người cùng tham gia chơi. Một trò chơi liên quan đến việc sử dụng các dòng lệnh cơ bản của linux.

Câu hỏi lần này là:
Hãy gõ 1 câu lệnh trả về dòng chữ có cấu trúc như sau:
username@hostname

Ví dụ (cũng là bài làm của tớ):
hvn@lappy:~$ echo `id -un`@`uname -n`
hvn@lappy
Các câu trả lời không được giống nhau. Chơi nào \m/
(mỗi phương án trả lời / 1 comment)

Wednesday 12 September 2012

Tùy chính monitors bằng command line




xrandr = The X Resize, Rotate and Reflect Extension

xrandr - tùy chỉnh các thông số size, resolution, on/off màn hình trên linux
Chủ yếu dùng cho các windows manager thôi.

xrandr
[--output  output]  [--auto]  [--mode  mode]  [--preferred] [--pos xxy]
[--rate rate] [--reflect reflection] [--rotate orientation] [--left-of
output] [--right-of output] [--above output] [--below output] [--same-
as output] [--set property value] [--off] [--crtc crtc] [--gamma
red:green:blue]

-- List các monitor đang chạy (màn lap, màn cắm qua cổng VGA, máy chiếu)
xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 8192 x 8192
LVDS1 connected 1280x800+0+0 (normal left inverted right x axis y axis) 303mm x 190mm
1280x800 60.0*+
1024x768 60.0
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)


Danh sách đi kèm resolution mà màn hình hỗ trợ
Như hiện tại monitor đang dùng là laptop phân giải 1280x800
các độ phân giải hỗ trợ
1280x800
1024x768
800x600
640x480


-- Turn off monitor
xrandr --output [monitor_name] --off

-- Chỉnh lại phân giải/resolution
xrandr --output [monitor_name] --mode [resolution]


man xrandr
để biết thêm chi tiết

[Cmd] lsof - liệt kê các file đang mở

Như ở đây đã viết, ta sẽ sử dụng các công cụ đã có để tìm hiểu thông tin liên quan đến lệnh cần tìm hiểu.

hvn@lappy:~$ whatis lsof
lsof (8)             - list open files
hvn@lappy:~$ which lsof
/usr/bin/lsof
hvn@lappy:~$ lsof -h
...