Theppitak's blog

My personal blog.

25 กันยายน 2550

Developer Community

หลังจากคุยผ่านเมลเกี่ยวกับการ hack ภาษาไทยใน KDE/Qt4 มาพักหนึ่ง อ๊อทก็เสนอว่าควรคุยกันในที่สาธารณะให้คนอื่นรับรู้ด้วย ผมเสนอให้คุยที่ devel forum ของ LTN แต่การที่จะย้ายที่คุยจากเมลไปเว็บมันคงลำบากพอดู และไม่ต่อเนื่องด้วย อ๊อทก็เลยสร้าง thai-linux-foss-devel list แล้ว forward เมลไปคุยต่อที่นั่น

เราเคยมี รวมการเฉพาะกิจ Firefox มาแล้ว คราวนี้ถึงคราว Qt4 บ้าง ไม่รู้คนเดิมยังสนใจอยู่หรือเปล่า เห็นคุณวีร์เคย blog ไว้ หลาย ยก เลย

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

มีทางเลือกอะไรบ้าง?

  • LTN devel forum เข้ากับ forum อื่น ๆ ของ LTN ดี แต่ปัญหาคือ นักพัฒนามักจะคุยผ่านเมลมากกว่าเช็กเว็บบอร์ด
  • thai-linux-foss-devel list สะดวกตรงที่มีทั้งเมลทั้งเว็บเสร็จสรรพ เวลาจะ forward จาก list อื่นมาคุยต่อก็ง่าย ต่อเนื่องดี จะ Cc: เพิ่มถึงคนที่เกี่ยวข้องก็สบาย เข้ากับลักษณะการทำงานของนักพัฒนาพอดี
  • Planet TLWG ไม่ต้องรวมอะไรหรอก ใครมีอะไรก็ blog เล่ามาเลย แล้วก็คุยกันผ่าน Planet นี่แหละ เหมือนที่หลาย ๆ ชุมชนเขาทำกัน (เช่น Planet GNOME, Planet Debian, Planet Ubuntu) แต่มีคำถามคือ ปัจจุบันเราใช้ Planet ทำอะไร? คล้าย feed reader หรือ news aggregator มากกว่าเป็นชุมชนไหม? รายละเอียดเรื่องนี้ต้องพูดกันยาว ไว้ blog ต่างหากอีกที แต่สรุปว่า Planet ยังตอบสนองเรื่องชุมชนได้แค่ระดับหนึ่งเท่านั้น ยังไม่เต็มอัตราอย่างที่มันควรทำได้

สรุป เท่าที่ดู ๆ แล้ว mailing list น่าจะดีที่สุด ส่วน Planet ก็เป็นทางเลือกที่ดี แต่อาจต้องปรับลักษณะการใช้งานสักหน่อย ถ้าจะทำให้มันดูเป็นชุมชนจริง ๆ ส่วน webboard/forum ดูจะเข็นยาก

ป้ายกำกับ: , ,

20 กันยายน 2550

GNOME 2.20

GNOME 2.20 ออกแล้ว (ข่าวที่ th.gnome.org —มีใครอ่านอยู่ไหมเนี่ย)

การแปล release notes ผมพยายามเริ่มทำแต่เนิ่น ๆ เลย เพื่อให้เหลือเวลาจับ screenshot มากหน่อย และจากที่ผ่านมา มักจะทำให้พบบั๊กของคำแปลหรือของโปรแกรมไประหว่างจับด้วย คราวนี้เป็นของ sabayon (#475434 และยืนยัน #450085 —GNOME Bugzilla มีปัญหา database อยู่แฮะ)

เรื่องคำแปล ได้เพื่อนฝูงที่ thai-l10n mailing list ช่วยกัน ปรับแก้ ช่วยให้เนื้อหาดูดีขึ้น แต่ส่วนที่ยากส่วนหนึ่งคือ screenshot เพราะต้องคอมไพล์และตั้งค่าโปรแกรมต่าง ๆ ทีละตัว เพื่อให้มันแสดงหน้าจอที่กำหนด มีบางหน้าจอที่หาวัตถุดิบลำบาก เช่น การเตือนแบตเตอรี่เสื่อมสภาพ.. โน้ตบุ๊กเก่าผมก็แบตเสื่อมอยู่นะ แต่ขี้เกียจไปคอมไพล์ GNOME ใหม่.. อีกรายการคือการหมุนรูปตามข้อมูล EXIF ในภาพถ่าย เพราะผมมีแต่กล้องรุ่นที่ไม่มีการ detect แนวตั้ง/แนวนอนของกล้อง ขอใครก็ไม่มี ก็เลย make ข้อมูลนิดหน่อย ด้วยการใช้ exiftool บนเดเบียนแก้ข้อมูล Orientation tag ของ EXIF เอา โดยแกะ EXIF 2.2 Spec ที่ได้จาก Wikipedia

บางรายการอย่าง GTK+ filechooser นั้น เบื้องหลังการถ่ายทำคือการติดตั้ง tracker เพิ่ม (ทั้งที่ไม่เคยคิดจะใช้ desktop search) ก็ปรากฏว่าเกิดผลข้างเคียงตอนที่ trackerd ทำงาน จะทำให้ vim อืดสนิท เพราะ vim จะมีการเขียน swap file สำหรับการ recover อยู่ตลอด แต่ก็ทำให้ได้ความรู้จากการค้นเว็บ (ไม่ได้ bookmark ไว้) ว่าให้สั่ง "set nofsync" เพื่อลดปริมาณการ sync ฮาร์ดดิสก์ ก็ทำให้ vim อยู่ร่วมกับ trackerd ได้ แต่ก็ยังอืดอยู่ดีแหละ.. ทางที่ดี เดี๋ยวลบ tracker ทิ้งดีกว่า :P

โปรแกรมอื่นบางตัว เช่น tomboy นั้น ผมไม่ได้ลง mono สำหรับคอมไพล์ไว้เลย และไม่เคย build tomboy ด้วย ตรงนี้คงเอาไว้ท้าย ๆ อาจจะรอจับหน้าจอจาก debian sid เอา เพราะเห็นแพกเกจ GNOME 2.20 ทยอยเข้า sid แล้ว แต่หน้าจออย่าง totem ที่เน้น Ubuntu โดยเฉพาะนี่.. สงสัยต้องรอผู้ใช้ gutsy ทำให้ หรือไม่ก็รอผมรีบูตเครื่องครั้งหน้าเพื่อเข้าไปใน Ubuntu partition.. สรุปว่าไว้ทีหลังเช่นกัน

นอกนั้นก็เป็นการปรับคำแปลเล็ก ๆ น้อย ๆ ตามที่ตรวจพบขณะจับ screenshot ครับ เช่น accerciser นี่ ทำให้พบข้อความแปลก ๆ ของ atk เป็นต้น

นี่ถ้าทำกันหลายคนคงสนุกดีนะ จะได้ช่วยกันตรวจคำแปลก่อน release ไปด้วย

พูดถึงงานแปล.. น่ายินดีที่ GNOME 2.20 นี้ มีนักแปลหน้าใหม่เข้ามาร่วม คือคุณที่ใช้ชื่อว่า aka.ape ซึ่งได้เริ่มจากแปลแพกเกจใหม่ แล้วก็หันมาช่วยอัปเดตคำแปลของแพกเกจเก่า ซึ่งการมีผู้มาร่วมแปลนี้ ถือเป็นเรื่องดี ขอบคุณมาก ๆ ครับ ถ้าคำแปลของคุณถูกตรวจแก้มาก ๆ ก็อย่าได้คิดว่าคุณมาสร้างภาระอะไรให้ผม ข้อแรก การตรวจคำแปลนั้น ใช้เวลาน้อยกว่าการแปลมาก ข้อสอง หลายหัวดีกว่าหัวเดียว ถ้าผมแปลเองรีวิวเอง มันก็คงหาที่ผิดได้ยากกว่าการผ่านตาหลายคน ข้อสาม การตรวจแก้โดยส่วนใหญ่ จะเข้มข้นมากเฉพาะครั้งแรก ๆ เพื่อปรับสไตล์คำแปลให้ตรงกันกับของเก่าเท่านั้น ถ้าคุณคุ้นเคยกับสไตล์แล้ว ครั้งต่อ ๆ ไปจะมีแนวโน้มลดลงเอง (อันนี้ฝากถึงผู้ที่จะเข้าร่วมแปลในอนาคตด้วยนะครับ)

มาที่ประเด็นสำคัญประเด็นหนึ่งที่เคยพูดหลายครั้ง หลายแห่งแล้ว แต่ก็ดูจะหาทางออกยากเหลือเกิน ก็คือการแปลผ่าน launchpad ของทีม Ubuntu ซึ่งเป็นการทำงานซ้ำซ้อนกับ upstream

โดยปกติ Ubuntu จะ import คำแปลใหม่ที่มากับ upstream เข้า launchpad อยู่แล้ว ดังนั้น คำแปลที่ทีม GNOME/KDE/Debian ทำกันที่ thai-l10n จะเข้าสู่ Ubuntu โดยอัตโนมัติ แต่สิ่งที่ทีม Ubuntu แปลที่ launchpad นั้น จะทับคำแปลจาก upstream อีกที โดยที่ไม่เคยมีการ contribute กลับมาที่ upstream เลย คนทำงานที่ต้นน้ำจะรีวิวคำแปลกันพิถีพิถันขนาดไหน ถ้าโดน launchpad แปลทับเสียก็จบกัน และในทางกลับกัน งานแปลที่ launchpad ก็ถูกกักเก็บไว้ใช้แต่เฉพาะ Ubuntu เท่านั้น ไม่เคย contribute ให้คนอื่น

ในทางกลับกัน ทีม upstream ก็ไม่ต้องการการ contribute แบบผลักเข้ามาโดยตรงโดยไม่ผ่านการรีวิวเช่นกัน อย่างเช่นกรณีหนึ่งเร็ว ๆ นี้ ที่มีนักพัฒนา Novell commit คำแปลจาก OpenSUSE เข้า svn โดยตรงเป็นชุดใหญ่ ปรากฏว่าเป็นคำแปลที่ขาดการกลั่นกรอง และเขียนทับข้อมูลลิขสิทธิ์ทุกอย่างให้เป็นของ Novell หมด สร้างความไม่พอใจแก่ทีมแปลต้นน้ำเป็นอันมาก จนมีการร้องเรียนให้ถอนคืน พร้อมทั้งตำหนินักพัฒนาคนนั้นกันเสียงขรม โชคดีที่ภาษาไทยไม่โดนทับไปด้วยในครั้งนั้น ไม่งั้นคงต้องเหนื่อยขอ revert กัน

สิ่งที่เราต้องการ จึงไม่ใช่ระบบอัตโนมัติอะไรทั้งสิ้น แต่เป็นการพูดคุยกันระหว่างมนุษย์ ระหว่างทีมงานที่ทำงานต้นน้ำ กับทีมงาน distro โดยมีทางเลือกที่เป็นไปได้สองอย่างคือ:

  1. มาทำงานที่ต้นน้ำด้วยกัน เลี่ยงการทำงานที่ปลายน้ำ — เป็นวิธีที่น่าจะดีที่สุด ผมได้เคยเขียนคำเตือนเรื่องนี้ไว้ที่ thai-l10n wiki (เจ๊งอีกไซต์หนึ่ง.. วันนี้มันวันอะไรหว่า) และที่ ubuntuclub แต่ก็ดูเหมือนไม่เป็นผลเท่าไร
  2. ประสานงานกันระหว่างทีมแปล โดยส่งคำแปลจาก distro เข้ามาที่ต้นน้ำเพื่อ merge — น่าจะเป็นวิธีที่ดีสำหรับทั้งสองฝ่าย ถ้าเราหลีกเลี่ยงการแยกกันทำงานไม่ได้ ทีมต้นน้ำก็จะได้ผู้ช่วย ทีม distro ก็จะได้รับการกลั่นกรองคุณภาพ

ไม่รู้สินะ ทุกคนต้องการอะไรที่ง่าย ๆ แต่ก็น่าจะมีการวางแผนอะไรกันบ้าง จริงไหม

ป้ายกำกับ:

19 กันยายน 2550

External Monitor

จาก คราวที่แล้ว ที่ผมต่อจอ LCD ไม่สำเร็จ เนื่องจากจอของโน้ตบุ๊กเป็น widescreen ซึ่งสัดส่วนความละเอียดต่างจากของจอนอก ตอนนี้ หลังจากลองไปลองมา ก็ต่อสำเร็จแล้วครับ

ตัวการก็คือ การใช้ framebuffer ขณะบูต เพื่อจะใช้ splashy boot ผมไม่ทราบว่ามันไปมีผลกับการเปลี่ยนความละเอียดอย่างไร แต่ถ้าลองเอาออก แล้วบูตใหม่ X จะตรวจพบความละเอียดของจอนอกที่ต่อ แล้วความละเอียดที่มีให้เปลี่ยน ก็จะมีแต่ตามสัดส่วนของจอนอก โดยในจอ widescreen จะแสดงเนื้อหาแค่บางส่วนที่แสดงได้เท่านั้น และเมื่อเปลี่ยนความละเอียดไปใช้แบบที่แสดงในจอนอกได้ดีที่สุด (ไม่ต้องมีการ scale) ก็จะใช้จอ widescreen ไม่ได้ไปเลย

กล่าวคือ ถ้าต่อจอนอก X จะใช้จอนอกเป็นหลัก ตรงข้ามกับตอนที่ใช้ framebuffer จอ widescreen จะเป็นหลัก

เป็นอันว่า ตอนนี้ใช้จอนอกได้แล้วครับ เวลาเจอพื้นดำก็ไม่เห็นหน้าตัวเองแล้ว :)

เสียอย่างเดียว คือสลับจอไป text console ไม่ได้ เพราะ sync rate จะเพี้ยน T_T

/me สบายใจได้ระดับหนึ่ง ว่าน่าจะสามารถหิ้วโน้ตบุ๊กไปต่อ projector เพื่อ present ได้แล้ว แต่นึก ๆ ดู อยากให้มันมี dual head เหมือนกันแฮะ จะได้ใช้สองจอพร้อมกันไปเลย :P

ป้ายกำกับ: ,

18 กันยายน 2550

Thanks

ขอขอบคุณ คุณวิทยา (wd) ที่ส่งจอภาพถนอมสายตามาให้นะครับ รวมทั้งก่อนหน้านี้ ก็ได้ส่งอาหารบำรุงสายตาชั้นดีมาให้แล้วด้วย จะพยายามใช้รักษาตัวเองนะครับ จะได้ทำงานได้นาน ๆ

ตอนนี้ ปัญหาก็คือ ผมจะต่อจอ LCD ที่ได้มาเข้ากับโน้ตบุ๊กที่เป็น widescreen ได้อย่างไร เครื่องที่ผมใช้คือ Compaq Presario V3000 นะครับ พอเสียบจอนอกแล้วภาพไม่ออก รีบูตเครื่องพร้อมรีเซ็ตจอก็ยังไม่มีผล แม้แต่เปลี่ยนความละเอียดเป็น 1024x768 ก็ตาม อาการคือจอนอกได้รับสัญญาณ (ไม่มีสัญลักษณ์บอกให้ตรวจสอบสายสัญญาณ) แต่จะมืดไปเลย ใครพอมีข้อมูลเกี่ยวกับเรื่องนี้บ้างไหมครับ?

ถ้าไม่ได้จริง ๆ เดี๋ยวไปปัดฝุ่นโน้ตบุ๊กเก่าที่ไม่ได้เป็น widescreen แล้วทำงานแบบ thin client เอา :)

ปล. เป็นความจริงหรือเปล่า ที่จอ super bright จะทำให้เสียสายตา? เพราะหลายคนมาเห็นเครื่องผมแล้ว พูดเหมือนกันว่าเป็นต้นเหตุอาการป่วยของลูกตาผม

ป้ายกำกับ:

10 กันยายน 2550

JHBuild Articles

เขียนบทความชุด คอมไพล์ GNOME ใช้เองด้วย JHBuild ตอนสุดท้ายจบละ เพราะ คุณขอมา หวังว่าจะมีคนอ่านอยู่นะครับ แฮะ ๆ พักนี้ th.gnome.org เงียบเหงายังไงไม่รู้

มี banner กะเขาแล้วนะครับ ผมเตรียมไว้สองแบบ ไทยกับอังกฤษ

GNOME ไทย
GNOME THAI

ใครฝีมือดี ๆ ฝากทำขนาดอื่นด้วยจิครับ แฮ่ ๆ

ปล. trackerd ปะทะ vim นี่ ดูไม่จืดเลย.. ร่าง blog ใน vim อืดเป็นตังเม.. นี่ลงเพื่อจับ screenshot GNOME เฉย ๆ นะ เสร็จงานแล้วเตรียมตัวตายได้ :P (นี่เขาว่าเล็กและเร็วกว่า beagle แล้วเหรอเนี่ย คุณพระช่วย!)

ป้ายกำกับ: ,

RIP, reCAPTCHA

ช่วงนี้ reCAPTCHA ทำพิษบ่อย พอช่วงไหนเจ๊งปุ๊บ จะทำให้เว็บที่ใส่ captcha ไว้ ไม่สามารถรับข้อมูลใด ๆ จากฟอร์มที่ตั้ง captcha กันไว้ได้เลย ยิ่งถ้าใช้ PostgreSQL backend ของ drupal (ซึ่งอาจไม่ได้รับการดูแลดีเท่า MySQL backend) จะถึงกับโหลด page ไม่ได้เอาเลย (ขึ้น Internal error)

งมโข่งกับ debianclub อยู่เป็นชั่วโมง หลงไปประเด็นอื่นอยู่นาน จนเอะใจ reCAPTCHA เอาออกแล้วเปลี่ยนเป็น captcha แบบอื่นแทนก็จบ

เมื่อเช้านี้ ถึงกับเดี้ยงที่ domain name เลย lookup recaptcha.net ยังไงก็ไม่เจอ.. เป็นอะไรไปหนอ..

เอาออกหมดทุกแห่งที่ใช้ละ ทั้ง LTN และ th.gnome.org ด้วย

ป้ายกำกับ: , ,

02 กันยายน 2550

DebianClub Returns

debianclub กลับมาแล้วครับ หลังจากล่มไป 6 เดือน

ใน blog เรื่อง ปัญหาของ debian mirror พี่โดมได้เสนอช่วย จากนั้น ก็ติดต่อประสานงานกับคุณตฤณให้ จนกระทั่งได้รับการอนุเคราะห์แบนด์วิดท์และ IP ที่ INET แล้วพี่โดมก็ดำเนินการหาเครื่องเซิร์ฟเวอร์พร้อมติดตั้งให้ด้วย โดยได้รับอนุเคราะห์เครื่องจาก 101 Global จนกระทั่ง 29 สิงหา ได้รับแจ้งจากพี่โดมว่าทุกอย่างเรียบร้อยแล้ว ว้าว ขอบคุณมากเลยครับ

ผมเลยพักงานอื่นก่อน หันมาเซ็ตเซิร์ฟเวอร์เพื่อตั้งเว็บ debianclub อีกครั้ง ก็ค่อย ๆ ทำทีละเรื่อง ไม่รีบร้อน เพราะครั้งนี้อยากให้ทุกอย่างเรียบร้อยที่สุด ไม่ฉุกละหุกเหมือนครั้งที่แล้ว แต่ก็มาพบทีหลังว่ามีคน ตาไว แอบเห็นจนได้ แต่ไม่เป็นไร ผมทำไปเยอะแล้วตอนนั้น (อั้นโพสต์แรกไว้เต็มที่ คาดว่าคุณมะระคงได้เบาะแสจาก RSS feed) เหลือเขียนเนื้อหานิดหน่อย + ปรับละเอียดก่อนที่จะมีคนเริ่มโพสต์มากเกินไป

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

ในช่วงแรก ผมคงทยอยกู้บทความเก่าจาก google cache และจากข้อมูลที่คุณณรงค์ฤทธิ์เคยเมลมาให้ โดยถือโอกาสปรับข้อมูลให้ทันสมัยไปด้วย (เช่น เรื่องแรกที่ต้องปรับเลยก็คือเรื่อง apt-get กับ aptitude ซึ่งมีการเปลี่ยนแปลงใน lenny/sid)

แต่คงยังไม่สามารถเร่งได้มาก เพราะ GNOME 2.20 ใกล้ออกแล้ว ต้องกลับไปตามแปลก่อน คงต้องอาศัยเพื่อนสมาชิกช่วยกันเขียน :-) ใครใช้เดเบียน รักเดเบียน ก็ขอเชิญมาร่วมกันสร้างแหล่งพบปะของพวกเรานะครับ

ป้ายกำกับ:

hacker emblem