3/24/2010

Object-relational mapping (ORM)

ORM, O/RM, หรือ O/R mapping ย่อมาจาก Object / Relational Mapping หมายถึง การ map ข้อมูลในตารางข้อมูลของฐานข้อมูลให้อยู่ในรูปของ object-oriented language ซึงจะเป็นการสร้าง Database แบบเสมือนขึ้นให้มาอยู่ในรูป language programming ทำให้ไม่ต้องไปยุ่งกับ SQL Statement ซึ่งถ้ามีการเปลี่ยนแปลงแก้ไขต้องแก้ไขที่ตัวโปรแกรมแทน และการกระทำต่างๆยังคงเป็นแบบ Relational เหมือนเดิม

เพิ่มเติม : http://en.wikipedia.org/wiki/Object-relational_mapping

3/12/2010

Asterisk Special Variables

Special Variables
Asterisk has some special variables that are automatically defined when a new channel (call) starts up. Later you will see an example of using the ${EXTEN} variable. These definitions come from the README.variables file.

${ACCOUNTCODE} Account code (if specified)
${CALLERID} Caller ID
${CALLERIDNAME} Caller ID Name only
${CALLERIDNUM} Caller ID Number only
${CALLINGPRES} PRI Caller ID presentation for incoming calls
${CHANNEL} Current channel name
${CONTEXT} Current context
${DATETIME} Current date time in the format: YYYY-MM-DD_HH:MM:SS
${DNID} Dialed Number Identifier
${ENUM} Result of application EnumLookup
${EPOCH} Current unix style epoch
${EXTEN} Current extension
${ENV(VAR)} Environmental variable VAR
${HANGUPCAUSE} Asterisk hangup cause
${INVALID_EXTEN} The invalid called extension (used in the "i" extension)
${LANGUAGE} Current language
${LEN(VAR)} String length of VAR (integer)
${MEETMESECS} Number of seconds a user participated in a MeetMe
${PRIORITY} Current priority
${RDNIS} Redirected Dial Number ID Service
${TIMESTAMP} Current date time in the format: YYYYMMDD-HHMMSS
${TXTCIDNAME} Result of application TXTCIDName
${UNIQUEID} Current call unique identifier

${SIPCALLID} SIP Call-ID: header verbatim (for logging or CDR matching)
${SIPDOMAIN} SIP destination domain of an inbound call (if appropriate)
${SIPUSERAGENT} SIP user agent

The dial() application sets the following variables:

${DIALEDPEERNAME} Dialed peer name
${DIALEDPEERNUMBER} Dialed peer number
${DIALEDTIME} Total time for the call in seconds (Network time).
${ANSWEREDTIME} Time from answer to end of call in seconds.
${DIALSTATUS} Status of the call, one of:
CHANUNAVAIL CONGESTION BUSY NOANSWER ANSWER CANCEL

3/05/2010

Asterisk CLI

start asterisk
#/etc/init.d/asterisk start

start CLI
#asterisk -r

-v Increase the level of verboseness on the console. The more times
-v is specified, the more verbose the output is.
Specifying this option implies -f and will cause asterisk to no
longer fork or detach from the controlling terminal. This
option may also be used in conjunction with -r and -R.

Note: This always sets the verbose level in the asterisk process,
even if it is running in the background. This will affect the
size of your log files.

3/03/2010

Iptables

Block ip address

#iptables -A INPUT -s XXX.XXX.XXX.XXX -j DROP
for example -># iptables -A INPUT -s 221.5.57.124 -j DROP
To save your changes type
#service iptables save
to View your IPTABLE list type
#iptables -L

QR-CODE

QR Code ก็คือรหัสชนิดหนึ่ง หรือที่เรียกกันว่า two-dimensional bar code หรือใครจะเรียกว่า 2D bar code ก็แล้วแต่ โดยหลายชื่อนี้ ก็คือ QR Code เหมือนกันครับ ซึ่ง QR Code นี้ถูกคิดค้นขึ้นในปี 1994 โดยบริษัทสัญชาติญี่ปุ่น ที่ชื่อ Denso-Wave และได้จดทะเบียนลิขสิทธิ์ชื่อ QR Code ไปแล้วทั้งในญี่ปุ่น และทั่วโลก ทำให้เรามักจะเรียกว่า 2D Bar Code กันแทนเพื่อเลี่ยงปัญหาลิขสิทธิ์ แต่อย่างไรก็ตาม คำว่า QR Code นั้น ได้ถูกนิยามความหมายว่าเป็น Quick Response หรือการตอบสนองที่รวดเร็ว ซึ่งมาจากความตั้งใจของผู้คิดค้น ที่จะให้ QR Code นี้สามารถถูกอ่านได้อย่างรวดเร็วนั่นเอง ซึ่งตัวสัญลักษณ์ QR Code นี้ได้รับความนิยม จนกลายเป็นของธรรมดาในญี่ปุ่นไปแล้ว

QR-CODE reader
http://www.beetagg.com/

32 tips to speed up mysql queries

ตาม link เลยค่ะ
http://www.ajaxline.com/32-tips-to-speed-up-your-mysql-queries

Linux command

File Commands
ls => directory listing
ls -al => formatted listing with hidden files
cd dir => change directory to dir
cd => change to home
cd / => change directory location up to one step
pwd => show current directory
mkdir dir => create a directory dir
rm file => delete file
rm -r dir => delete directory dir
rm -f file => force remove file
rm -rf dir => force remove directory dir *
cp file1 file2 => copy file1 to file2
cp -r dir1 dir2 => copy dir1 to dir2; create dir2 if it doesn't exist
cp -p file1 file2 =>preserve=mode,ownership,timestamps (ก๊อบปี้ไฟล์ให้เหมือนเดิม)
cp -d =>เก็บสถานะ link file
mv file1 file2 => rename or move file1 to file2 if file2 is an existing directory, moves file1 into directory file2
ln -s file link => create symbolic link link to file
touch file => create or update file
cat > file => places standard input into file
more file => output the contents of file
head file => output the first 10 lines of file
tail file => output the last 10 lines of file
tail -f file => output the contents of file as it grows, starting with the last 10 lines

System Info
date – show the current date and time
cal – show this month's calendar
uptime – show current uptime
w – display who is online
whoami – who you are logged in as
finger user – display information about user
uname -a – show kernel information
cat /proc/cpuinfo – cpu information
cat /proc/meminfo – memory informationman
command – show the manual for command
df – show disk usage (#df -H)

du – show directory space usage
free – show memory and swap usage
whereis app – show possible locations of app
which app – show which app will be run by default
netstat -a check LAN port in system

Compression File
tar cf file.tar files – create a tar named
file.tar containing files
tar xf file.tar – extract the files from file.tar
tar czf file.tar.gz files – create a tar with Gzip compression
tar xzf file.tar.gz – extract a tar using Gzip
tar cjf file.tar.bz2 – create a tar with Bzip2 compression
tar xjf file.tar.bz2 – extract a tar using Bzip2
gzip file – compresses file and renames it to file.gz
gzip -d file.gz – decompresses file.gz back to file

Network
ping host – ping host and output results
whois domain – get whois information for domain
dig domain – get DNS information for domain
dig -x host – reverse lookup host
wget file – download file
wget -c file – continue a stopped download
netstat -a check LAN port in system
netstat -? check network status help

mind map

mind map : แผนที่ความคิด
ถ้าเอา คำนี้ไป search ใน google จะได้ผลลัพธ์ อย่างน้อยก็ ประมาณ 226,000 รายการ ซึ่งมันเยอะเอามากๆ แต่ ถ้า จะสรุปความหมายมันสั้น ๆ ก็ได้ดังนี้

mind map เป็นทฤษฎีในการนำเอาสมองมาใช้ให้เกิดประโยชน์สูงสุดโดยเฉพาะเกี่ยวกับกระบวนการเรียนรู้ของมนุษย์ ทฤษฎีนี้คิดขึ้นโดยโทนี บูซาน (Tony Buzan) นักจิตวิทยาชาวอังกฤษ ในปัจจุบันทฤษฎีของโทนี บูซาน ได้รับความนิยมสูงขึ้นเรื่อยๆ โดยเฉพาะการนำมาช่วยในการเขียนแผนที่ความคิด การเขียนแผนที่ความคิดในอดีตจะเน้นเขียนลงบนกระดาษว่างๆ จากจุดศูนย์กลาง กระจายเป็นรูปดาวคล้ายๆ การแตกกิ่งก้านของต้นไม้ (การแตกของเส้นเซลสมอง) ปัจจุบันมีทางลัดในการสร้างแผนที่ความคิดโดยการใช้ทูลหรือซอฟต์แวร์ช่วย (มีให้เลือกใช้งานหลายตัวทั้ง Commercial และ Open Source) ข้อดีของการใช้ซอฟต์แวร์คือสามารถเปลี่ยนแปลงแก้ไขข้อมูลได้อย่างอิสระ มีตัวอย่างแผนที่ความคิดให้เลือกใช้งานมากมาย

Mind Map เป็นแผนผัง (Diagram) ใช้เพื่อแสดงคำหรือแนวความคิดของมนุษย์ที่แผ่ออกออกจากศูนย์กลาง ใช้การสื่อความหมายด้วยข้อความและรูปภาพคล้ายๆ การแตกกิ่งก้านของต้นไม้.
Mind Map ถูกสร้างขึ้นเพื่อใช้เป็นจุดกำเนิด หรือจุดเริ่มต้นในการทำงานต่างๆ, การจินตนาการ Mind Map ช่วยทำให้สิ่งต่างๆ มองภาพได้ง่ายขึ้น อาทิ
• สร้างจากสิ่งที่เป็นนามธรรมสู่รูปธรรม
• ช่วยในการเรียนรู้ต่างๆ ของมนุษย์
• ใช้แก้ปัญหาปัญหาต่างๆ ในชีวิตประจำวัน
• ใช้ในการทำการตัดสินใจกรณีมีทางเลือกหลายๆ ทาง

ต้นฉบับ : http://www.arnut.com/mindmap/