รายงาน FOSDEM 2008 วันที่สอง

by mk
9 March 2008 - 13:26

ต่อจากวันแรก ไม่ต้องเสียเวลาเกริ่น เริ่มกันเลย

สำหรับวันที่สองนี้ผมใช้เวลาครึ่งเช้าไปในห้อง Drupal

งานวันนี้เริ่มเช้ากว่าวันแรกคือ 9 โมงตรง ผมมาถึงงานสายไปเล็กน้อย เข้ามาในห้อง Drupal ก็พยายามไปนั่งหน้าๆ เพื่อจะได้ถ่ายสไลด์ให้ชัด พอนั่งปุ๊บจัดอุปกรณ์เข้าที่พร้อมเก็บข้อมูล ตาก็เหลือบไปเห็นหัวใครไม่รู้คุ้นๆ นั่งอยู่ข้างหน้าห่างไป 2 แถว ปรากฎว่าเป็น Dries Buyataert ผู้เริ่มโครงการ Drupal นั่นเอง

What’s new in Drupal 6? What’s coming in Drupal 7

โดย Gabor Hojtsy และ Dries Buytaert (รายละเอียด track)

Gabor คือคนซ้าย

หลังจากเกริ่นนำกันเรียบร้อย session แรกของวันเป็นการพูดถึง Drupal 6 ที่เพิ่งออก และอนาคตของ Drupal นับจากนี้ไป โดยแบ่งเป็นสองครึ่ง ครึ่งแรก Gabor Hojtsy มาพูดถึงฟีเจอร์ของ Drupal 6 และจากนั้นเป็นคิวของ Dries พูดถึงอนาคตของ Drupal

Gabor เริ่มต้นด้วยการมอง Drupal ทั้งในแง่ CMS สำหรับผู้ใช้ทั่วไป และ Content Management Framework หรือ CMS สำหรับนักพัฒนา จากนั้นตามมาด้วยฟีเจอร์ของ Drupal 6 ที่เพิ่งออกเมื่อวันที่ 13 กุมภาพันธ์ 2008 (ข่าวเก่า) และยกตัวอย่างเว็บไซต์ของงาน FOSDEM เองซึ่งใช้ Drupal เช่นกัน

ฟีเจอร์ใหม่ของ Drupal 6 โดยสังเขป (สำหรับรายละเอียดดูในประกาศของ Drupal 6)

  • Installer
  • สนับสนุนภาษาอื่นๆ ที่ไม่ใช่ภาษาอังกฤษได้ดีขึ้น
  • รวม action และ trigger เข้ามาใน core
  • สนับสนุน OpenID
  • ปรับปรุง UI ในหน้า admin บางจุด เช่น ลากสลับตำแหน่งเมนูได้
  • ปรับปรุง UI สำหรับหน้าของผู้ใช้ เช่น แสดงความแข็งแรงของรหัสผ่าน
  • ระบบธีมใหม่ที่แก้ไขได้ง่ายขึ้น
  • รวมเอา Update status เข้ามาใน core
  • โมดูลใหม่อย่าง syslog และแยก PHP filter เป็นโมดูลเฉพาะ

สำหรับโมดูลภายนอกอื่นๆ ที่ Gabor แนะนำได้แก่
Theme developer - เหมือนเป็น Firebug สำหรับ Drupal
Localization client - แปลข้อความต่างๆ จากหน้าเว็บเพจได้โดยตรง
CCK - ปรับปรุง UI ใหม่
Views 2 - ยกเครื่อง UI ขนานใหญ่

พอมาถึงคิวของ Dries เค้ายกผลการสำรวจความเห็นผู้ใช้-ผู้พัฒนา Drupal ไปเมื่อปีก่อนมาให้ดู (อ่านเรื่องการสำรวจความเห็นจากบล็อกของ Dries) โดยสมมติฐานของเค้าก็คือ ถ้าเอา 7 อันดับสูงสุดจากฝั่งของผู้ใช้ทั่วไป และอีก 3 อันดับจากฝั่งนักพัฒนามารวมกันเป็น 10 อย่าง ถ้าทำได้ทั้งหมด Drupal 7 ก็จะเป็น “Killer Release” เลยทีเดียว

โดยสรุปคือเป้าหมายของ Drupal 7 มี 10 ข้อดังนี้

  1. จัดการกับสื่อมัลติมีเดียได้ดีขึ้น
  2. รวม CCK เข้าไปใน core
  3. WYSIWYG editor
  4. ปรับปรุงประสิทธิภาพ
  5. เพิ่มเครื่องมือในการจัดการ content
  6. เพิ่มโมดูลแบบ Views
  7. อัพเกรดตัวเองอัตโนมัติ
  8. ระบบ node access ที่ดีขึ้น
  9. ปรับปรุง API ภายใน
  10. ปรับปรุง API ภายนอก (เช่น import/export หรือ web service)

สำหรับเป้าหมายในระยะยาวกว่านั้น Dries บอกว่าเราจะ “ให้ความสำคัญกับข้อมูล (data) มากขึ้น และสนใจเรื่องความสามารถ (functionality) น้อยลง” หรือเน้นเรื่อง interoperability นั่นเอง

ดังนั้นสิ่งสำคัญที่ Drupal จะสนใจคือการ import/export ข้อมูลได้มากชนิดขึ้น ปัจจุบัน output หลักของ Drupal คือเป็น HTML หรือ RSS เท่านั้น แต่ในอนาคตอาจออกมาเป็น XML หรือ JSON ได้ด้วย โดยต้องหาวิธีที่เหมาะสมในการเลือกฟอร์แมตของ output เช่น อาจจะขึ้นอยู่กับ HTTP header ของ request เป็นต้น

นอกจากนี้ Dries ยังพูดถึงความเป็น semantic ของเนื้อหาภายใน Drupal โดยเขาบอกว่าแนวคิดของเขานั้นคล้ายกับฟอร์แมต RDF มากทีเดียว และมีความเป็นไปได้สูงที่จะนำ RDF มาใช้ อย่างเช่น อาจเป็น query language ที่ได้ผลลัพธ์ออกมาใกล้เคียงกับโมดูล Views

Drupal Theming

โดย Morten Heide กับ Bèr Kessels

session ที่เหลือนี่สะดวกคนเขียนครับ เพราะมีคนอัดวิดีโอเอาขึ้น Google Video ไว้เสร็จสรรพ ผมเอามาแปะอย่างเดียว

แนะนำระบบธีมของ Drupal เบื้องต้น และแนะนำสิ่งที่เปลี่ยนแปลงสำหรับคนทำธีมใน Drupal 6

มีสไลด์ให้โหลดประกอบด้วย fosdem 08: slides from the theming session

Usability and Drupal

โดย Thomas Moseler

คนนี้เค้ามาพูดเรื่อง usability ใน Drupal ซึ่งมีหลายจุดที่ยังทำได้ไม่ดี เช่น ในหน้า create content ถ้า ขยายเมนูย่อยทั้งหมดออกมาจะยาวมาก (คิดไม่ออกก็ลองทำประกอบนะครับ เมนูอยู่ด้านขวามือ) ถึงแม้จะมีข้อดีคือมันเรียงกันเป็นลำดับชัดเจน แต่ยังทำได้ดีกว่านี้

เค้าเสนอต้นแบบที่ปรับปรุงแล้ว โดยหลักสำคัญคือนำ tab แนวตั้ง (vertical tab) มาใช้แทนเมนู expand/collapse, ใช้สี เส้น ขนาดและความหนาของตัวอักษรมาแบ่งระดับความสำคัญ ดูวิดีโอประกอบน่าจะเข้าใจได้ง่ายกว่า

สุดท้ายยังยกตัวอย่าง usability ของโมดูลอื่นๆ ที่สำคัญคือ Views 2 ซึ่งปรับปรุงหน้าตาครั้งใหญ่

แอบถ่ายแล็ปท็อป เห็นมีสติ๊กเกอร์ของ Lullabot ด้วย

ผมนั่งฟังในห้อง Drupal เพียงเท่านี้ อย่างไรก็ตามยังมี session ช่วงบ่ายที่น่าสนใจอีกมาก (รายการ) ถ้าใครกำลังตาม Drupal อยู่ แนะนำให้ตามไปดูวิดีโอให้ครบจะดีมากเลยครับ Drupal at Fosdem 2008 - videos

Introduction to CentOS

โดย Fabian Arrotin

ช่วงบ่ายย้ายห้องมาฟัง CentOS กันบ้าง เป็นการแนะนำเกี่ยวกับทั้งโครงการ CentOS และตัวระบบปฏิบัติการในภาพรวม

ประวัติคร่าวๆ ของ CentOS คือหลังจาก Red Hat ประกาศเลิกทำ Red Hat Linux (RHL) และย้ายไปทำ Red Har Enterprise Linux (RHEL) แทน โดย RHEL นั้นเปิดเผยซอร์สโค้ด แต่ไม่เปิดเผยวิธีคอมไพล์ (ต้องจ่ายเงินถึงจะโหลดไบนารีได้)​เลยมีนักพัฒนาหลายเจ้าดาวน์โหลดโค้ดของ RHEL มาคอมไพล์เอง และแจกไบนารีใต้ชื่อโครงการใหม่ ซึ่ง CentOS เป็นหนึ่งในโครงการเหล่านั้น (โครงการอื่นๆ อย่างเช่น Whitebox Linux เป็นต้น)

นั่นคือ CentOS เป็น RHEL เวอร์ชันไม่เสียเงินนั่นเอง อย่างไรก็ตามมีข้อเสียเช่นกัน เช่น อัพเดตจะไม่เร็วเท่า RHEL (เพราะจะต้องมีช่วงคอมไพล์และทดสอบนิดหน่อย ทีมงานบอกว่าไม่เกิน 24 ชั่วโมง แต่คนที่ให้ความสำคัญด้านความปลอดภัยมากหน่อย อาจคิดว่ามันนานไป)
ปัจจุบัน CentOS ออกถึงเวอร์ชัน 5 โดยแต่ละเวอร์ชันระบบประกันว่าจะซัพพอร์ตนาน 7 ปี

Community Project Organization and SeaMonkey 2

โดย Robert Kaiser

สไลด์ประกอบ

ย้ายห้องกลับมาฟัง Mozilla บ้าง ถ้าใครทันยุค Mozilla Suite ก่อนจะมาเป็น Firefox และ Thunderbird และยังตามข่าวอยู่คงทราบว่า Mozilla Foundation ได้ปล่อยเกาะ Mozilla Suite มานานแล้ว (ข่าวเก่ามาก) อย่างไรก็ตามยังมีแฟนๆ บางกลุ่มที่ยังรักและผูกพันกับโปรแกรมนี้ และนำมาพัฒนาต่อในชื่อโครงการ Seamonkey (ซึ่งเป็นโค้ดเนมของ Mozilla Suite เอง เนื่องจากไม่สามารถใช้ชื่อ Mozilla ได้)

สำหรับ session นี้ นักพัฒนา Seamonkey ได้มาเล่าสถานะปัจจุบันของโครงการ และอนาคตของ Seamonkey เวอร์ชันถัดไปคือ 2.0

ปัญหาสำคัญของโครงการคือขาดนักพัฒนา (เป็นเหมือนกันหมด) เรื่องเงินไม่ใช่ประเด็น เค้าเคยลองทำ Bug Bounty คือล่าเงินรางวัลแล้วไม่ประสบความสำเร็จนัก เพราะว่าถึงแม้จะมีเงิน แต่ถ้าขาดนักพัฒนาที่มีพื้นฐานของตัวโครงการ ก็ไม่บังเกิดผล

ส่วนของใหม่ใน Seamonkey 2.0 นั้นเอาหลายอย่างมาจาก Firefox เช่น Add-ons manager, Feed detection (ยังไม่มี live bookmark), autoupdate, Gecko 1.9, Undo closed tab เป็นต้น

GEGL

โดย Øyvind Kolås

ย้ายห้องอีกแล้วครับ รอบนี้มาฟัง GEGL (Generic Graphics Library) อธิบายง่ายๆ มันคือไลบรารีกราฟฟิกตัวใหม่ของ The GIMP นั่นเอง

ถ้าใครรู้สึกขัดใจว่า GIMP มันห่วย (ด้านฟีเจอร์​ไม่นับด้านหน้าตา) สาเหตุหนึ่งก็เพราะมาจากเอนจินกราฟฟิกของ GIMP ที่ใช้อยู่ (รวมถึงในเวอร์ชันปัจจุบันคือ 2.4) นั้นมีความสามารถไม่มากนัก ทางนักพัฒนาของ GIMP เองก็ไม่นิ่งนอนใจ เสนอแผนการพัฒนาเอนจินกราฟฟิกตัวใหม่เป็นโครงการแยกต่างหาก เมื่อเสร็จสมบูรณ์พร้อมใช้แล้วจะนำมาเสียบเข้าใน GIMP เวอร์ชันถัดไป โดยล่าสุดเข้ามาอยู่ใน GIMP 2.5 แล้ว (และควรจะมาใน GIMP 2.6 ซึ่งเป็น stable version)

เนื่องจากว่าคนพูดใช้วิธีเดโมแทนพูดตามสไลด์ ผมเลยจด+ถ่ายรูปมาได้ไม่เยอะนัก เค้าโชว์เดโมการปรับแต่งภาพมาตรฐาน เช่น ทำ gussian blur (แถมใช้รูป Lena ตามมาตรฐานอีกต่างหาก)

รายละเอียดอื่นๆ คือ ปัจจุบันมี binding สำหรับ GEGL อยู่ 3 ภาษา (ไม่นับ C) ได้แก่ C#, Ruby และ Python แต่กำลังจะมี binding ที่เขียนออกมาในรูป XML อีกด้วย

Mozilla Prism

โดย Mark Finkle

สไลด์ประกอบ

ห้องสุดท้ายที่เข้าฟัง เป็นเรื่องของ Mozilla Prism ที่เคยลงข่าวใน Blognone ไปแล้ว (ข่าวเก่า)

Mozilla Prism เป็นเบราว์เซอร์แบบกะทัดรัดสำหรับการทำเว็บแอพพลิเคชันมาเป็นเดสก์ท็อปแอพพลิเคชัน อธิบายง่ายๆ คือแทนที่เราจะเปิดเบราว์เซอร์ขึ้นมาแล้วเข้า Gmail ก็เปลี่ยนมาเป็นดับเบิลคลิกไอคอน Gmail บนเดสก์ท็อป โปรแกรมที่เปิดขึ้นมาคือ Prism เวอร์ชันชี้ไปที่ Gmail และเข้า Gmail ได้เว็บเดียวเท่านั้น (เสมือนว่าเป็นโปรแกรม Gmail client แต่จริงๆ คือเบราว์เซอร์)

ถ้าใครตาม Adobe AIR อยู่คงนึกออกว่ามันคล้ายๆ กันเลยนี่นา (นำเว็บแอพพลิเคชันมาทำเป็นเดสก์ท็อปเหมือนกัน) ใช่ครับ ต่างกันที่รายละเอียดปลีกย่อยเท่านั้น อย่างเช่นว่า Prism จะเน้นการนำไป embed มากกว่า (1 โปรแกรม 1 สำเนาของ Prism) ส่วน AIR เป็นแพลตฟอร์มให้แอพพลิเคชันได้เรียกใช้ หรือว่า AIR สนับสนุน Flash/Flex ด้วย ส่วน Prism ขอเฉพาะ AJAX อย่างเดียว (หรือ XUL ด้วยถ้าใครอยากใช้)

นอกจาก AIR แล้ว คนพูดยังยกตัวอย่างโครงการคล้ายๆ กันคือ Bubbles และ Fluid (อันหลังมีเฉพาะบนแมค) โดยบอกว่ากำลังคุยกับนักพัฒนาของสองโครงการนี้อยู่ และอาจตกลงทำวิธีการเชื่อมต่อให้เป็นมาตรฐานเดียวกัน

ในอนาคต Prism จะเพิ่มส่วนของการทำงานร่วมกับ Dock (ของ OSX) หรือ tray ของวินโดวส์, ระบบแจ้งเตือน (เช่น แจ้งเมลใหม่) และอาจสนับสนุน CSS ที่แตกต่างกันตามระบบปฏิบัติการ (ตัวอย่างที่ใกล้เคียงที่สุดคือ ธีมของ Google Reader ที่หน้าตาเหมือนแมค) โดยยกโค้ดที่มีคนทำไว้ใน GreaseMonkey มาใช้

อัพเดตล่าสุดคือ Prism ออกเวอร์ชันใหม่ 0.9 แล้ว การอัพเดตสำคัญคือมี extension สำหรับ Firefox เพื่อสั่งแปลงเว็บแอพพลิเคชันมาเป็นแอพพลิเคชันของ Prism ได้โดยตรง รายละเอียดอ่านได้ในบล็อกของ Mark Finkle

วันที่สองก็จบลงเพียงเท่านี้ครับ แต่ยังมีซีรีย์ FOSDEM อีก 1 ตอนคือพาชมบรรยากาศในงานว่าถ้าคนโอเพนซอร์สมารวมกันเยอะๆ แล้วจะมันขนาดไหน

Blognone Jobs Premium