Theppitak's blog

My personal blog.

25 กันยายน 2547

FOSS in Thailand

เมื่อวานวุ่นวายกับกิจธุระในครอบครัวนิดหน่อย เลยไม่ได้ทำอะไรมากกับการโค้ดหรือดูแลระบบ นอกจากการรีลีส Pango-LibThai 0.1.3 (สำหรับคนที่เพิ่งได้ยินชื่อนี้เป็นครั้งแรก Pango-LibThai เป็นการเชื่อมฟังก์ชันการวาดข้อความและตัดคำไทยใน libthai เข้ากับ Pango text rendering engine หลักของ GNOME/GTK+ โดยทำเป็น third-party plug-in สามารถใช้แทน Thai module ที่อยู่ใน Pango core ได้ โดยจะได้ความสามารถเรื่องการตัดคำเพิ่มเข้ามา)

วันนี้อยากจะ blog เกี่ยวกับแนวคิดโอเพนซอร์สอีกสักครั้ง แนวคิดตามบทความชุด The Cathedral and the Bazaar ของ ESR นั้น อธิบายการทำงานของ “gift culture” ที่สมาชิกของสังคมนี้จะได้รับการยอมรับ ก็ด้วยการ “ให้” และสังคมนี้ก็อาศัยเศรษฐศาสตร์ที่ต่างจากระบบ “แลกเปลี่ยน” ที่เราใช้กันอยู่ในทุนนิยม แต่ความจริงก็คือ เรายังอยู่ในโลกทุนนิยม เวลาถูกใครถามในชีวิตจริง ว่าผมกำลังทำอะไรอยู่ ผมไม่สามารถตอบได้อย่างเต็มภาคภูมิเท่าไร ว่ากำลังทำงาน FOSS แต่จะต้องเลี่ยงไปพูดถึงงานอื่นๆ ที่จุดประสงค์คือเพียงหารายได้มาค้ำจุนงานหลัก คือ FOSS เท่านั้น ทำไมจึงเป็นเช่นนั้น? และถ้านักพัฒนาทั้งหลายต้องเจอแบบผมอย่างนี้ FOSS จะมีวันเติบโตอยู่รอด และได้รับการยอมรับจากสังคมไทยหรือไม่?

สรุปสักเล็กน้อย กับชุดบทความพลิกโลกของ ESR ที่ยากที่คนในระบบเดิมจะเข้าใจ FOSS ได้โดยไม่อ่าน (บทความของ RMS นั้น แต่ละเรื่องกระตุ้นมโนสำนึกอุดมคติทั้งนั้น แต่คุณจะหลุดพ้นจากโลกแห่งความฝัน แล้วเชื่อมโยงกับโลกแห่งความเป็นจริงได้มากกว่า ด้วยบทความของ ESR อย่างน้อยมันก็ทำให้ Netscape ตัดสินใจเปิดซอร์ส Mozilla ได้ก็แล้วกัน)

ปัจจัยต่อไปนี้ ทำให้แนวคิดโอเพนซอร์สเป็นไปได้ในทางปฏิบัติ:

  • ปรัชญา free software ข้อนี้ขาดไม่ได้ สำนึกในเสรีภาพของการแบ่งปัน ร่วมมือกันอย่างไร้พรมแดนที่เริ่มโดย RMS นั้น คือธงชัยที่ทำให้ทุกคนคิดหาหนทางที่จะบรรลุ ไม่ว่าจะเป็นสายปริยัติอย่าง free software หรือสายปฏิบัติอย่าง open source ก็ตาม
  • โอเพนซอร์ส กระจายภาระการทำงานไปยังคนจำนวนมาก ทำให้แต่ละคนเสียสละเพียงคนละเล็กละน้อยเท่านั้น แต่ผลที่มารวมกันกลับมหาศาล ผมเคยอธิบายให้เด็กคนหนึ่งฟังเมื่อถูกถาม ว่าทำงานโอเพนซอร์สแล้วเอาอะไรกิน ว่า “ผมมีต้นทุนที่ต่ำ ผมสามารถเอาของที่มีอยู่แล้วฟรีๆ มาบริการลูกค้าได้ โดยคิดแต่ค่าแรงกับเขา สำหรับการติดตั้ง และการเพิ่ม feature ตามต้องการ ลูกค้าแฮปปี้ที่ได้บริการที่ถูกลง และสามารถ customize เพิ่มได้ พอผมแก้แล้ว เพื่อลดภาระของตัวเอง (และลูกค้า) ในการ sync กับซอฟต์แวร์รุ่นใหม่ๆ ที่ออกมา ผมก็ผลักภาระนั้นให้กับ repository กลาง ด้วยการ check-in พอรุ่นใหม่ออกมา ก็มี feature ที่ผมต้องการทันที โดยไม่ต้องตาม patch เพิ่ม ขณะเดียวกัน ทุกคนต่างก็ทำเหมือนผม คือผลักดัน patch เล็กๆ ของตัวเองเข้า repository กลาง ผลก็คือ repository กลางก็แฮปปี้ ที่ได้ patch ทั้งหลายเข้ามา ทำให้มีการพัฒนาด้วยอัตราที่สูง และถ้าคนทำเช่นนี้มากพอ อัตราการพัฒนาก็จะสูงกว่าซอฟต์แวร์เชิงพาณิชย์ที่ดูแลโดยคนหยิบมือเดียวด้วยซ้ำ ซึ่งผลก็คือ ทุกคนได้ซอฟต์แวร์ดีๆ ใช้ โดยไม่ต้องออกแรงอะไรมากเลย”
  • โอเพนซอร์ส มีระบบกลั่นกรอง patch ก่อนที่จะ check-in และมีระบบการให้เครดิตผู้ร่วมสมทบ patch ต่างๆ ทำให้สามารถควบคุม patch จำนวนมากไม่ให้ยุ่งเหยิงได้ รวมทั้งระบบการให้เครดิต ก็ทำให้ patch แต่ละ patch มีผู้รับผิดชอบ ผู้ที่ร่วมสมทบก็จะระมัดระวังมากขึ้นที่จะตรวจสอบ เพราะทุกอย่างมีผลต่อชื่อเสียงของตัวเอง (ข้อนี้ สามารถตอบผู้สงสัยเกี่ยวกับหลักวิศวกรรมซอฟต์แวร์ในการบริหารโครงการขนาดใหญ่ได้)
  • โอเพนซอร์ส มีระบบเกมแห่งชื่อเสียง ที่เป็นส่วนสำคัญที่กำหนดทิศทางของการดำเนินไปของสังคม การกระทำของทุกคนที่มีคุณูปการต่อโครงการจะถูกบันทึกไว้ใน ChangeLog หรือไฟล์ CREDITS, README แล้วแต่กรณี การมีส่วนร่วมใน bugzilla หรือ mailing list แต่ละครั้ง ถูกเก็บบันทึกไว้หมด และบางครั้งจะมีการสดุดีในข่าวประกาศ สำหรับคนที่มี contribution มากพอ การบันทึกเครดิตอย่างละเอียดถูกต้องเช่นนี้ ก็เหมือนกับระบบนรก-สวรรค์ในศาสนา ที่ทำให้ทุกคนพยายามทำความดี ละความชั่ว และพยายามทำตัวให้เป็นประโยชน์มากที่สุด โดยพิถีพิถันกับ patch มากขึ้น ไม่โพสต์มั่วซั่ว ไม่ป่วน forum หลีกเลี่ยงการ fork โครงการโดยไม่จำเป็น ทั้งหมดนี้ ถึงจะไม่มีพญามัจจุราชคอยตัดสินความดี-ความชั่ว แต่กฎแห่งกรรมจะทำงานของมันเอง โดยมีสังคมเป็นผู้ตัดสิน นอกจากนี้ ระบบการให้เครดิตยังช่วยกระตุ้นให้เกิดการร่วมสมทบมากขึ้นอีกด้วย โดยเฉพาะสำหรับบริษัทที่ทำธุรกิจ เพราะเครดิตที่ได้ ส่งผลที่ดีต่อการประชาสัมพันธ์บริษัท ส่งเสริมความเชื่อถือของลูกค้าได้เป็นอย่างดี

ปัจจัยเหล่านี้ จะเกิดขึ้นในสังคมไทยได้เพียงไหน? อาจจะขึ้นอยู่กับปัจจัยต่อไปนี้:

  • ความรู้-ความเข้าใจในปรัชญาโอเพนซอร์ส ที่ผ่านมา คนไทยส่วนใหญ่จะมองลินุกซ์เป็นของฟรีเพียงอย่างเดียว ซึ่งส่งผลกระทบหลายอย่าง เช่น
    • ไม่มีความกระตือรือร้นที่จะสร้างชุมชนผู้ใช้-ผู้พัฒนา แต่ยังใช้ลินุกซ์ในกรอบของ freeware หรือซอฟต์แวร์เชิงพาณิชย์เดิมๆ คือผู้ใช้ก็ดาวน์โหลดใช้อย่างเดียว มี bug ก็บ่น-ด่า โดยไม่ได้ตระหนักว่า ตนเองนั้น มีสิทธิที่จะทำได้มากกว่านั้น ด้วยการร่วมรายงาน bug หรือร่วมปรับปรุงถ้าทำได้ ในแนวทางของโอเพนซอร์ส
    • ธุรกิจยังไม่ตระหนักถึงช่องทางการทำงานในแบบโอเพนซอร์ส ยังคงคิดในกรอบเดิมๆ ที่ยังต้องรักษาความลับทางการค้า ไม่คิดที่จะใช้ contribution สร้างภาพพจน์ของบริษัท หรือบางรายไม่แม้แต่คิดว่าลินุกซ์จะช่วยธุรกิจได้อย่างไร ยังคงคิดว่าการพัฒนา FOSS เป็นกิจกรรมการกุศลเพียงอย่างเดียว
  • ความพร้อมของเทคโนโลยี ข้อนี้เป็นปัญหาใหญ่แต่แก้ไขได้ การขาดนักพัฒนาที่มีความรู้จำนวนมากพอ ทำให้อัตราการพัฒนาของ FOSS ในเมืองไทยเชื่องช้ากว่าที่ควร หลายคนมุ่งตำหนิความเชื่องช้านี้ไปที่ประสิทธิภาพการทำงานของภาครัฐ ซึ่งความจริงแล้ว มันไม่ใช่ประเด็นเลย ตามแนวคิดของ ESR นั้น โอเพนซอร์สสามารถเกิดได้ในภาคเอกชนล้วนๆ โดยไม่มีการเอ่ยถึงคำว่า government เลย (grep -i government ดูในบทความทั้ง 5 เรื่อง พบอยู่สี่แห่ง แต่ไม่ได้เกี่ยวกับการแสดงบทบาทโอเพนซอร์สเลย) แต่ทั้งนี้ ก็มีสมมติฐานอยู่ว่าเทคโนโลยีพร้อม แฮ็กเกอร์มีเยอะพอจะแบ่งปันโค้ดคนละนิดละหน่อย จนกลายเป็นมหกรรมได้ ซึ่งตรงนี้เรายังห่างไกล แต่ที่ว่าปัญหานี้แก้ไขได้ ก็เพราะความจริงแล้ว คนไทยมีความสามารถสูงพอ และเอกสารสำหรับเรียนรู้ก็มีอยู่ในเน็ตมากมาย (ถ้าไม่กลัวภาษาอังกฤษกัน) ยิ่งประกอบกับวิธีการทำงานแบบเหยียบไหล่ยักษ์ของโอเพนซอร์สด้วยแล้ว ยิ่งทำให้ลัดขั้นตอนได้เร็ว แต่ติดที่คนไทยขาดประชาคมที่จะร่วมกันทำงานใหญ่เท่านั้น ผมคาดว่า ถ้าปัญหาเรื่องความรู้-ความเข้าใจในปรัชญาโอเพนซอร์สข้างต้นได้รับการแก้ไข และมีความกระตือรือร้นที่จะสร้างชุมชนโอเพนซอร์สอย่างเป็นรูปธรรม จนเกมแห่งชื่อเสียงเริ่มทำงานแล้วล่ะก็ เราจะมีโปรแกรมเมอร์มากพอที่จะทำให้ไทยเป็นฐานโอเพนซอร์สอย่างแท้จริงเลยแหละ โดยที่แต่ละคนก็ไม่ต้องควักเนื้ออย่างที่เป็นอยู่ด้วย แล้วเราจะได้รู้กัน ว่าภาครัฐไม่ควรเป็นแพะรับบาปในเรื่องนี้เลยสักนิด
  • การยอมรับของสังคม อย่างที่ผมบอกไปแต่ต้น ว่าคนทำ FOSS ยังต้องกระมิดกระเมี้ยนทำอยู่ บอกใครต่อใครว่าเขียน FOSS ก็มีแต่จะถามว่า แล้วจะเอาอะไรกิน ซึ่งถ้าสังคมเข้าใจ ว่าโอเพนซอร์สมันกินได้ และเราก็กินให้เขาเห็นเป็นตัวอย่างได้จริงๆ คงมีคนกล้าลงมาทำมากกว่านี้

เดี๋ยวรื้อฟื้นโครงการแปลบทความ ESR ดีกว่า อิๆ

9 ความเห็น:

  • 25 กันยายน 2547 เวลา 19:30 , Blogger the ancient แถลง…

    เห็นด้วยในหลายประเด็น มีความเห็นเพิ่มเติมว่าการบอกว่ารัฐต้องทำอะไรก็จำเป็นในระดับหนึ่ง
    ได้แก่เรื่องสิทธิบัตรซอฟท์แวร์และกฏหมายที่สนับสนุนความมั่นคงของรัฐ ในมุมมองปัจเจกชน
    ของชั้น open source ไม่ได้มีความสำคัญอะไรนักเพราะเป็นกระบวนการทางเศรษฐกิจ
    ที่เกิดขึ้นโดยอัตโนมัติ แต่หัวใจที่สำคัญของซอฟท์แวร์เสรีคือในระดับปัจเจกชนเราจะเลือกจะดำเนินชีวิต
    ต่อไปอย่างไร เพราะความพอดีที่เกิดขึ้นจะสอดคล้องกับสิ่งแวดล้อมในแบบ relative ในที่สุดจึงเป็น
    หน้าที่ของปัจเจกชนที่จะตอบตัวเองว่าเขาได้พยายามแค่ไหนที่จะรักษาเส้นทางของเขาไว้ในกรอบทางของ
    ซอฟท์แวร์เสรี ไม่ว่าสุดท้ายเขาจะรักษาเส้นทางนั้นเอาไว้ได้หรือไม่ก็ตามนะ เพราะสุดท้ายชื่อเสียง
    เงินทองตายไปก็เอาไปด้วยไม่ได้ ที่ทำได้คือตอนมีชีวิต เราเลือกใช้ชีวิตอย่างไร การตอบคำถามคนอื่น
    มันเป็นความภาคภูมิจริงๆ หรือแค่ชื่อเรียกเพราะๆของความมานะสำคัญตน พึงพอใจในลาภสักการะ
    แต่นี่ก็แล้วแต่จะพิจารณานะ เพราะมันก็มองได้หลายมุม ชั้นก็แค่ชี้มาจากมุมนึง

     
  • 25 กันยายน 2547 เวลา 22:34 , Blogger Thep แถลง…

    id: มุมมองของคุณก็เป็นมุมมองของนักอุดมคติไง ซึ่งมันก็ถือเป็นสิ่งสำคัญที่จะล็อคเป้าแล้วหาเส้นทางไปให้ถึง ที่ผมมาคิดถึง เขียนถึง FOSS บ่อยๆ ก็เพื่อทบทวนหาเส้นทางให้ไปให้ถึงนี่แหละ

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

    โดยเฉพาะภาษาหรือวิธีคิดที่จะเข้ากันได้กับธุรกิจ จริงอยู่ ทุกคนสามารถพูดพร่ำถึงศีลธรรม คุณธรรมประจำใจ แต่เมื่อเข้าสู่ธุรกิจ ความอยู่รอดของธุรกิจต้องเป็นปัจจัยสำคัญไม่แพ้กัน คุณต้องประสานคุณธรรมต่างๆ เข้ากับเรื่องกำไร-ขาดทุน ให้มันไปด้วยกันได้อย่างสมดุลด้วย มันถึงจะเป็นจริงได้ ซึ่งตรงนี้ท้าทายกว่าการเทศนาเพียงอย่างเดียว

    เรื่องของการตอบคำถาม ผมไม่ได้หมายถึงความภาคภูมิลักษณะนั้น ผมหมายถึงแค่พูดได้ไม่ตะขิดตะขวง ไม่ต้องกลัวว่าจะต้องอธิบายกันยืดยาว กับการพบปะที่ไม่มีเวลาคุยกันนานนัก หรือแม้แต่ไม่มีโอกาสได้พูดเองเท่านั้นแหละ แต่กับคนที่มีเวลาคลุกคลีด้วย หรือพร้อมจะฟัง ผมก็คงตอบอีกแบบ

     
  • 25 กันยายน 2547 เวลา 23:53 , Blogger the ancient แถลง…

    เข้าใจนะ ก็มีปัญหานั้นเหมือนกัน แต่ก็คิดๆว่าจริงๆแล้วเราก็ควรทำไปตามความเหมาะสม
    เชิงอุดมคติ เพราะถ้าสังคมมันไม่มีปัญหา มันก็จะไม่มีการเรียนรู้ คือวันนึง open source
    มันอาจจะกลายเป็นปัจจัยพื้นฐานของสังคม แต่ถ้านั่นไม่ทำให้เกิดการเรียนรู้มันก็คง
    ไม่มีประโยชน์อะไร(?) เพราะระบบ proprietary software ก็คงสนับสนุนระบบเศรษฐกิจ
    ทุนนิยมได้เป็นอย่างดีอยู่แล้ว (ตราบใดที่เรายังหาข้อพิสูจน์ไม่ได้ว่ามันไม่ได้ทำลายระบบ
    เศรษฐกิจในภาคปฏิบัติ) ในขณะที่การเรียนรู้แนวคิดเชิงอุดมคติก็ยังสามารถทำได้ไม่มีปัญหา
    เพียงแต่ว่ามันไม่มี product ที่ใช้ได้จริง ซึ่งก็ไปขึ้นกับคำตอบของคำถามว่าเราต้องการ
    อะไรจาก free software กันแน่ ระหว่าง product ที่สามารถใช้งานได้ กับ product
    ในแง่ศีลธรรม ซึ่งไม่ขึ้นกับว่า product สามารถใช้งานได้หรือไม่ แต่หมายถึงระดับความ
    พยายามที่เราได้พยายามไปแล้ว

    เพราะเข้าใจไง ว่าโลกเรามันอยู่ได้ด้วยเงินจริงๆ แต่ว่าเราต้องตอบคำถามให้ได้
    ก่อนว่า product ของเรามันคืออะไร เพราะถ้า product คือ software ที่ใช้งานได้จริง
    มันก็จบ เพราะ free software ไม่สามารถใช้งานได้จริงถ้ามันล้มเหลวใน economic model
    แต่มันเหมือนกับว่าหลายๆคนต้องการทั้งสองอย่างมากกว่า แล้วอาจจะสับสนแยกไม่ออก
    ว่าตัวเองจะเอาอะไรกันแน่ ก็เลยอยากให้ลองแยกดูว่าตัวเองต้องการอะไรจริงๆ ซึ่งตรงนี้
    คิดว่า realistic มากแล้วนะ สรุปที่คิดๆคือ

    1) open source model และการไม่มีการคุ้มครองสิทธิบัตรซอฟท์แวร์ มันมี product เชิงสังคมเป็นอะไร
    นอกเหนือจากสนองความต้องการการบริโภค
    2) เราต้องการ product อะไรจาก free software อะไรควรจะเป็น product ในอุดมคติ
    product ที่สอบสนองความต้องการการบริโภค หรือ product ที่ทำให้สังคมสงบร่มเย็น
    3) หรือทั้งสองอย่างเลย เป็นไปได้หรือไม่ที่จะได้ทั้งสองอย่างพร้อมๆกัน เมื่อได้ข้อสรุปแล้วจำเป็นจริงๆหรือที่
    ต้องใช้ 1 เพื่อให้ได้ 2

     
  • 26 กันยายน 2547 เวลา 00:52 , Blogger Isriya แถลง…

    ผมกำลังคิดว่าปิดเทอมนี้จะรื้อโครงการเขียนหนังสือ opensource กลับมมา
    น่าจะมีเวลาพอ

    พี่เทพสนใจเขียนร่วมมั้ยครับ
    หรือไม่งั้นอยากได้หัวข้ออะไรเป็นพิเศษบ้างรึเปล่า

     
  • 26 กันยายน 2547 เวลา 09:44 , Blogger pattara แถลง…

    เห็นด้วยว่าเขียนเป็นหนังสือออกมาเลย :-D ในเมืองไทยมีหนังสือเชิงแนวความคิดเกี่ยวกับ FOSS บ้างหรือยังไม่รู้ น่าจะเป็นประโยชน์มากหลาย

     
  • 26 กันยายน 2547 เวลา 17:33 , Blogger Thep แถลง…

    id: ผมต้องการทั้งสองอย่างแหละ และก็ไม่คิดว่ามัน mutex กัน ถามว่าอยากได้อะไรมากกว่า ก็น่าจะเป็นสังคมก่อน เพราะมันทำให้เกิด software product ได้อย่างยั่งยืนในบั้นปลาย แต่จะสร้างสังคมได้อย่างมีประสิทธิภาพ มันก็ต้องมี product ให้เห็นเป็นรูปธรรมบ้างก่อน แล้วทั้งสองอย่างมันก็ฉุดรั้งกันขึ้นไปเรื่อยๆ เหมือน bootstrap

    mk: น่าสนใจครับ คิดว่าจะเขียนแนวไหนครับ? สำหรับผม อยากแปลบทความชุด catb ของ ESR ให้ครบแล้วรวมเล่ม

     
  • 28 กันยายน 2547 เวลา 17:36 , Blogger Isriya แถลง…

    ว่าจะเอาเล่มเดียวครบเลย ทั้งแนวคิด ปรัชญา ประวัติ การใช้งานจริง โครงการที่น่าสนใจ

    cathedral อย่างเดียวผมว่าน้อยไปนะ ที่จะรวมเล่ม ไม่งั้นก็แปลของ esr ทั้งหมดให้ครบ แล้วค่อยรวมน่าจะดีกว่า

     
  • 28 กันยายน 2547 เวลา 19:40 , Blogger Thep แถลง…

    ผมกลัวไม่มีเวลาพอน่ะครับ แปลบทความ ESR ศัพท์ก็ยากอยู่แล้ว อย่าง homesteading นั่นเล่นเอาหืดขึ้นคอเหมือนกัน อีกสองเรื่องที่เหลือคิดว่าอาจกินเวลาเป็นเดือน

    แต่คิดว่าแบ่งกันเขียนก็ได้มัง? ถ้าจะเอาครบขนาดนั้น ว่าแต่ว่า จะเอาตอน cathedral ที่ mk แปลไว้มารวมใน TLWG CVS ได้เลยไหมครับ?

     
  • 30 กันยายน 2547 เวลา 17:59 , Blogger Isriya แถลง…

    ได้เลยครับ
    ถ้ายังไม่มีไฟล์เดี๋ยวส่งให้ครับ

     

แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)

<< กลับหน้าแรก

hacker emblem