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

WikiWikiWiki เป็นเอนจินวิกิ PHP ที่ใช้ไฟล์ข้อความเป็นฐาน เป็นวิกิที่ตั้งใจให้ใช้งานได้ทันทีโดยไม่ต้องมีฐานข้อมูลและไม่ต้องตั้งค่าที่ซับซ้อน

https://github.com/minguhong/WikiWikiWiki

ตอนแรกผมก็คิดอยู่ว่าจะเลือกวิกิเอนจินที่มีอยู่แล้วสักตัวมาใช้แบบสบาย ๆ ดีไหม แต่พอลองทดสอบเอนจินหลายตัวทีละตัว ก็พบว่าแต่ละตัวมีจุดที่ติดขัดอยู่หนึ่งหรือสองอย่าง ราวกับว่าการจะหาโน้ตสักเล่มมาใช้เขียนกลับเรื่องมากเกินจำเป็น ตัวอย่างเช่น MediaWiki ที่ใช้ใน Wikipedia นั้นหนักเกินไป ส่วน DokuWiki ก็มีภาษา markup แบบเฉพาะตัวที่ผมไม่ค่อยชอบ ขณะที่เอนจินโอเพนซอร์สอีกมากมายที่เผยแพร่อยู่บน GitHub และที่อื่น ๆ ก็มักจะไม่ได้อัปเดตต่อแล้ว หรือไม่ก็ซับซ้อนเกินกว่าจะปรับให้เข้ากับความต้องการของผม (พูดอีกอย่างคือ ผมเข้าใจโค้ดยากเกินไป) ที่สำคัญที่สุดคือ ทุกตัวมีฟีเจอร์ที่ไม่จำเป็นมากเกินไป

  • ไฟล์ข้อความ
  • Markdown
  • การเชื่อมโยงระหว่างเอกสารที่ง่าย

สำหรับผม มีแค่นี้ก็พอแล้ว ฟีเจอร์อย่าง WYSIWYG editor หรือการแนบรูปภาพนั้นผมไม่ได้คิดจะมีตั้งแต่แรกด้วยซ้ำ สุดท้ายผมจึงนึกถึงคำพูดของ Kevin Kelly ที่ได้อ่านครั้งแรกจากที่นี่ (“เป้าหมายที่คุ้มค่าที่สุดในการท้าทายตัวเองในปีนี้ คือการเรียนรู้บางสิ่งที่พอถึงปีหน้าแล้วจะรู้สึกว่า ทำไมตอนนั้นถึงไม่รู้เรื่องนี้นะ”) และตัดสินใจว่าจะทำโน้ตของตัวเอง หรือก็คือวิกิเอนจินของตัวเอง ตามจิตวิญญาณของ handmade web นั่นเป็นช่วงราวปี 2017 ตอนที่ผมสอนอยู่ที่โรงเรียนออกแบบ Paju Typography Institute

แล้วตั้งแต่ราวปี 2022 เป็นต้นมาหรือเปล่านะ? หลังจากค่อย ๆ ใช้เวลาบ่ายวันหยุดสุดสัปดาห์ไปอย่างสบาย ๆ ทีละนิด ในที่สุดผมก็สร้างวิกิเอนจินที่ปรับให้เหมาะกับตัวเองที่สุดได้สำเร็จ โดยได้รับความช่วยเหลือจาก Minguhong Manufacturing ระหว่างนั้นผมได้กลับไปเรียน PHP ใหม่อีกครั้ง (ภาษาที่ผมรักเป็นพิเศษ) และเขียนโค้ดขึ้นมาทีละบรรทัด กระบวนการนั้นไม่ต่างจากการเขียนเลย ต้องเริ่มจากวางโครงใหญ่ แล้วพรั่งพรูประโยค หรือก็คือโค้ด ออกมา จากนั้นก็แก้ไข ตรวจทาน ขัดเกลา ขัดเกลา ขัดเกลา แล้วก็ขัดเกลาอีก... สุดท้ายแล้ว สิ่งที่ผมสร้างขึ้นมาตลอดหลายปีอาจไม่ใช่ซอฟต์แวร์เสียทีเดียว แต่อาจเป็นงานเขียนชิ้นหนึ่งที่อยู่ในสถานะเบตาตลอดกาลก็ได้ และบางที ตั้งแต่เมื่อไรไม่รู้ ความอยากจะทิ้งข้อความสักบรรทัดไว้ที่นี่ก็คงเป็นแรงผลักดันให้ผมเดินหน้าต่อมาเรื่อย ๆ เช่นกัน

มีสุภาษิตในการเขียนอยู่ว่า หากคำคุณศัพท์และคำวิเศษณ์ไม่จำเป็นจริง ๆ ก็ควรตัดทิ้งอย่างกล้าหาญ แต่พอผมนึกถึงคนรอบตัวทีละคนที่น่าจะสนุกกับการใช้วิกิเอนจินที่ผมทำ ฟีเจอร์ต่าง ๆ ก็เพิ่มขึ้นมาทีละน้อย ช่วงนั้นผมจึงต้องคอยทบทวนคติของ 37signals (“สามฟีเจอร์ที่ทำได้ดีจริง ดีกว่าสิบฟีเจอร์ที่ทำได้แบบครึ่ง ๆ กลาง ๆ”) เพื่อต่อสู้กับความอยากจะเพิ่มอะไรเข้าไป และได้สัมผัสด้วยตัวเองว่า การตัดออกนั้นยากกว่าการเพิ่มเข้าไปเสียอีก

ต่อไปนี้คือผลลัพธ์ หรือก็คือฟีเจอร์หลักของ WikiWikiWiki

  • ติดตั้งง่าย
  • รองรับ Markdown
  • การเชื่อมเอกสาร([[ชื่อเอกสาร]]), การฝังเอกสาร(![[ชื่อเอกสาร]]), แฮชแท็ก(#แท็ก), redirect
  • เรียกดูและค้นหาเอกสาร
  • จัดการประวัติการแก้ไข
  • ป้องกันความขัดแย้งจากการแก้ไขพร้อมกัน
  • ส่งออกเอกสาร
  • RSS, sitemap, llms.txt, llms-full.txt, API แบบอ่านอย่างเดียว
  • จัดการผู้ใช้
  • ตั้งค่าสิทธิ์การแก้ไข (สาธารณะ, ส่วนตัว)
  • เพิ่มธีม
  • หลายภาษา (เกาหลี, อังกฤษ)
  • โหมดมืด
  • ...

ถ้าใครกำลังมองหาวิกิขนาดเล็กและเรียบง่าย ผมหวังว่าจะลองใช้งานกันดูสักครั้ง แล้วบอกความเห็นกันแบบสบาย ๆ จะขอบคุณมากครับ ยินดีรับฟังทุกความคิดเห็น โดยเฉพาะถ้าเป็นความเห็นแบบ “ฟีเจอร์นี้น่าจะตัดออกได้ไหม?” ผมคงยิ่งดีใจ เพราะอยากให้เวอร์ชันถัดไปของ WikiWikiWiki มีฟีเจอร์น้อยกว่าตอนนี้เสียอีก

แล้วทำไมถึงชื่อว่า ‘WikiWikiWiki’ น่ะหรือ? มันเป็นผลลัพธ์จากการเอาคำว่า ‘Web’ ออกจากชื่อ ‘WikiWikiWeb’ ซึ่งเป็นวิกิแรกสุดที่ Ward Cunningham สร้างขึ้น แล้วเติมคำว่า ‘Wiki’ เข้าไปอีกคำหนึ่ง อย่างน้อยที่สุด ผมคิดว่าสิ่งที่ดีควรถูกพูดซ้ำอย่างน้อยสามครั้ง

https://wikiwikiwiki.wiki

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น