โพสต์

กำลังแสดงโพสต์จาก ตุลาคม, 2009

กำหนดขนาดไฟล์ upload ใน nginx

ให้เพิ่มบรรทัด client_max_body_size ไปใน http ครับ

http { include conf/mime.types; default_type application/octet-stream; .... client_max_body_size 10m; .... }
ในตัวอย่างใส่ไว้ 10MB แต่หลายเว็บบอกว่าไม่ถึงครับ ถ้าสนใจการคำนวนแนะนำให้อ่านบนเว็บ nginx:client_max_body_size อีกที

นอกจาก client_max_body_size แล้วยังมีค่าอื่นๆให้ set ได้อีก เช่น

## Size Limits client_body_buffer_size 128K; client_header_buffer_size 128K; client_max_body_size 10M; large_client_header_buffers 1 1k; ให้ลองอ่านใน คู่มือนะครับ

ที่มา: calomel.org

ไม่ให้ terminator กระพริบ

หลังจากลง xubuntu บนเครื่องก็เจอปัญหากับ terminal ว่ามันจะกระพริบทุกครั้งที่เราทำอะไรผิดเล็กๆ น้อยๆ เช่นกด Backspace เกิน ซึ่งผมกดบ่อยมากๆ ค้นไปค้นมา พบว่ามันเรียก "visual bell"

การแก้กับ gnome-terminal ไม่ยากนัก เข้าไปแก้ที่

$ vi ~/.gconf/apps/gnome-terminal/profiles/Default/%gconf.xml
แก้บรรทัดที่เขียนว่า

<entry name="silent_bell" mtime="1256205563" type="bool" value="true"/>
ให้ value เป็น ture ก็เรียบร้อย เปิดขึ้นมาใหม่ มันก็เลิกกระพริบแล้ว

ปกติเจ้า terminator จะตาม gnome-terminal แต่คราวนี้มันไม่ยอมตาม เลยต้องหาทาง config เข้าไปตรงๆ โดยสร้าง folder "terminator" ไว้ใน ~/.config แล้วสร้างไฟล์ config ไว้ในนั้น
~/.config/terminator/config
ใส่บรรทัดนี้ลงไป
visible_bell = False
หลังจาก save เมื่อเราเปิด terminator ขึ้นมาใหม่ มันก็จะไม่กระพริบแล้วครับ

compile ffmpeg 0.5 สำหรับ ubuntu 9.04

เนื่องจาก ffmpeg ตัวล่าสุดไม่มี vhook ซะแล้ว ทำให้ต้องดั้นด้นไปเอา ffmpeg ตัวเก่ามา compile เอง วิธีการก็มีดังนี้

ขั้นแรกต้องชี้ source list ไปที่ midibuntu ก่อน เนื่องจาก package ที่ต้องการมีหลายตัวที่ไม่สามารถมาอยู่ใน ubuntu ได้ เนื่องจากข้อกำหนดของ ubuntu ที่ไม่รับ library ที่ไม่ opensource ดังนั้นเราเลยต้องไปเอามาจาก midibuntu แทน

$ sudo wget http://www.medibuntu.org/sources.list.d/hardy.list \ --output-document=/etc/apt/sources.list.d/medibuntu.list $ sudo apt-get update && sudo apt-get install medibuntu-keyring && sudo apt-get update
ติดตั้ง libamr
$ sudo apt-get install libamrnb-dev libamrwb-dev
ติดตั้ง libnut
$ svn co svn://svn.mplayerhq.hu/nut/src/trunk/ nut $ cd nut $ make $ sudo make install ติดตั้ง libimlib2
$ sudo apt-get install libimlib2-dev libimlib2
ติดตั้งอื่นๆ
$ sudo apt-get install libfaac-dev libfaad-dev libschroedinger-dev libtheora-dev libvorbis-dev libxv-dev libxvmc-dev
ติดตั้ง mp3 library
$ sudo apt-get install libmp3lame-dev
ใครที่ใช้ ubuntu 8.04 …

ติดตั้ง rails บน Ubuntu 9.10 Karmic Koala

ปัญหาของการติดตั้งคือหลังจากที่

$ sudo apt-get install ruby rubygems
$ gem install rails

เราจะยังไม่สามารถเรียก rails ได้ เพราะใน $PATH ไม่ได้ชี้ไปที่ /var/lib/gems/1.8/bin
ดูได้จากคำสั่ง

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

จะเห็นว่าไม่มี path ที่ชี้ไปยัง bin ของ gems วิธีการแก้คือใส่บรรทัดต่อไปนี้ไว้ในไฟล์ ~/.bashrc

export PATH="$PATH":/var/lib/gems/1.8/bin

จากนั้นทดลองเปิด terminal ขึ้นมาใหม่ หรือสั่ง source ~/.bashrc หรือ source /etc/profile ถ้าแก้ path ใน profile

เท่านี้ก็สามารถเรียกใช้ rails ได้แล้วครับ


เสริม 1
ถ้าต้องการให้ user คนอื่นใช้ด้วย (ยกเว้น root) ให้กำหนด path ไว้ที่ไฟล์ /etc/profile
และถ้าต้องการให้ root เห็นให้ลองอ่าน Troubleshooters.com

เสริม2
ตอนที่ติดตั้ง ruby ควรสั่งครบชุดแบบนี้ครับ

$ sudo apt-get install ruby ruby-dev irb libopenssl-ruby rubygems

หนังสือสองเล่มจากงานสัปดาห์หนังสือแห่งชาติ

รูปภาพ
จัทราปฏิวัติ เป็นแรกทีเข้าไปดูเพราะติดตามสำนักพิมพ์นี้อยู่แล้ว ตอนแรกกะจะซื้อชุด Endder ให้ครบ แต่ติดว่าดันไปซื้อ นายอินทร์ ผู้ปิดทองหลังพระ มาซะก่อน รวมเงินแล้วจะแพงเกินไป และ กลัวว่าเวลามาหนังสือยังไม่ได้อ่านมากองเยอะๆ จะกลายเป็นกล้าเริ่มอ่านซักเล่ม

ก่อนออกจากร้านโดนคนขายขู่ว่า "จะไม่มีให้ซื้อนะครับ" ... ไอ้เราก็กลัว... แต่สุดท้ายมาคิดได้ว่าหนังสือดีๆ แบบนี้ ปีนี้ก็ขายหมดแน่ๆ ปีหน้าก็ต้องพิมพ์อีกอยู่แล้ว ด้วยความประมาทเราเลยซื้อหนังสือจาก ASK Media มาแค่เล่มเดียว

หลังจากนั้นก็พยายามเดินหาหนังสือถังความคิด แต่ก็ไม่รู้จะไปหาที่ไหน คุณ Mk ก็ไม่ได้บอกว่าสำนักพิมพ์อะไร ใน SIU ก็ไม่บอก สุดท้ายต้องตัดใจไว้หนังสือออกจริงๆ คงมีข่าวอีกที แต่ยังไงก็มีความสุขที่ได้หนังสือกลับมา คิดว่าหนังสือสองเล่มนี้คงเปิดโลกให้เราได้มากมาย

หรือว่าเทคโนโลยีฝั่ง server จะไม่ hot ซะแล้ว

รูปภาพ
วันก่อนมีน้องคนนึงทัก "พี่ rails มันไม่ hot แล้วหรือเปล่า?" เราก็มาคิด... แล้วอะไรมัน Hot ล่ะ Grail, Java, PHP, Perl, Python แต่ละตัวอยู่กันนิ่งๆ พัฒนาไปเรื่อยๆ ตามกระแส plugin ต่างๆ ก็พัฒนาไปตามๆ กัน เรียกว่า Hot ก็คงไม่เหมาะ

แล้วอะไรที่ Hot ?

ผมพบว่าเทคโนโลยีฝั่ง Client นั้น Hot สุดๆ ความร้อนแรงของ Server ได้หายไปแล้ว ฝั่ง Client นำทีมด้วย Java Script ผลิด Library น่าทึ่งออกมามากมาย เช่น

Extjs เป็น Java Script ที่ให้ความรู้สึกด้าน Engineering เหมือนเขียน Java Swing ผมไม่ได้หมายความว่ามันช้านะ :p



Juggernaut Push technology ที่ทำให้เราไม่ต้องคอยวน loop เรียก server ทุกๆ 10 วิ สนใจเพิ่มเติมลองดูvideo demo



raphaeljs, svg web ที่ทำให้ SVG กลับมาอีกครั้งหลังจากกระแสเงียบไปนาน เนื่องจาก Adobe เลิกดัน หันไปซื้อ Macromedia แทน ตอนนี้ svgweb ทำให้ ie สามารถเปิด svg ได้ และ rapheljs ก็ทำให้เราเขียน svg ง่ายขึ้น จากแต่ก่อนที่ต้อง แกะ DOM เอาเอง



cappuccino ทำให้เรารู้สึกเหมือนเขียน cocoa + objective-c บน browser ได้ แถมมีโปรแกรมหน้าตา interface builter มาให้อีกต่างหาก ทั้งหมดจะ ใช้ java sc…

ให้ Quick look แสดงข้อมูลที่อยู่ใน folder

รูปภาพ
หลายครั้งเวลาใช้ quick look ไปเจอ folder ผมจะรู้สึกว่า "มันจะ Zoom รูป Folder มาทำไม!!" วันนี้ไปเจอข้อมูลใน TUAW ว่าเราสามารถให้ Quick look มันแสดงข้อมูลที่อยู่ใน folder ได้ด้วย !!

หน้าตาประมาณนี้


ที่บอกว่าประมาณนี้ เพราะว่าของจริงมันมี animation ด้วย ดูแล้วเท่มาก ถ้าเป็นของ Win7 ไม่ต้อง Quick look ก็เห็นใส้ข้างในเลย Zoom ออกมาดูได้ ดีกันคนละแบบ

วิธีการเปิดความสามารถนี้นี้ก็ง่ายๆ ครับ ให้เข้าไปที่ terminal.app แล้วพิมพ์คำว่า

$ defaults write com.apple.Finder QLEnableXRayFolders 1

จากนั้นกด ctrl+alt+esc แล้วเลือก finder > relunch

หรือจะสั้งแบบนี้ที่ terminal ก็ได้

$ killall Finder && open /System/Library/CoreServices/Finder.app

หรือใครสบายใจที่จะหา process id ก่อน แล้วค่อย kill จาก process id ก็ใช้คำสั่งนี้

$ ps -caux | grep Finder
$ kill && open /System/Library/CoreServices/Finder.app

ทั้งสามแบบให้ผลเหมือนกันครับ หลัง Finer กลับมาก็ทดลองเปิดหน้า Finder แล้วใช้ Quick look กับ Folder ดูครับ

ผมเดาว่าที่ Snow Leopard และ Leopard ไม่ยอมเปิดความสามารถนี้เป็น d…