- ตัดสินใจเลิกใช้ Matrix.org และ Element หลังใช้งานเป็นแพลตฟอร์มสื่อสารหลักมานาน 5 ปี และพบปัญหากับความผิดหวังหลายอย่าง
- สรุปว่าแนะนำให้ผู้ใช้ทั่วไปใช้งานได้ยาก เนื่องจาก ประสิทธิภาพช้า, บริการไม่เสถียร, UX ชวนสับสน
- ประเมินว่าสุขภาพของอีโคซิสเต็มกำลังแย่ลงจากการขาดทิศทางการพัฒนา การแตกกระจายของโปรเจ็กต์ฝั่งไคลเอนต์และเซิร์ฟเวอร์ และฟีเจอร์หลักที่ยังทำไม่เสร็จ
- เหตุการณ์ชี้ขาดสุดท้ายคือช่องคอมมูนิตี้ที่ดูแลเองพังไปแทบทั้งหมดเพราะปัญหาของ homeserver บน Matrix.org
- สุดท้ายจึงตัดสินใจกลับไปใช้ XMPP โดยยังชื่นชมอุดมคติเรื่อง open protocol และโครงสร้างแบบ federated ของ Matrix.org/Element แต่เห็นว่าสภาพปัจจุบันยังไม่เหมาะกับการใช้งานจริง
Tl;dr และบทนำ
- ใช้งานและช่วยโปรโมต Matrix.org กับ Element มานาน 5 ปี พร้อมเผชิญปัญหาและข้อจำกัดหลายอย่าง
- แม้จะมีอุดมคติเรื่อง open protocol ที่ดี และมีการนำไปใช้ในหน่วยงานยุโรปหลายแห่ง แต่ประสบการณ์ใช้งานจริงยังช้าและขาดความน่าเชื่อถือ
- รู้สึกกังขาต่ออนาคตของบริการจากความสับสนด้านทิศทางการพัฒนา การแตกกระจายของโปรเจ็กต์ และ UX ที่ยังไม่พร้อม
- ช่วงหลังถึงขั้นทำช่องคอมมูนิตี้หายไปเพราะปัญหา homeserver จึงตัดสินใจกลับไปใช้ XMPP
ช่วงแรกเริ่ม
- Matrix.org เริ่มต้นเมื่อ 10 ปีก่อนในฐานะโปรโตคอลรับส่งข้อความแบบ federated โดยมีเป้าหมายชัดเจนคือ ทำมาตรฐานการสื่อสารแบบเรียลไทม์ระหว่างผู้ให้บริการ คล้ายกับ SMTP ของอีเมล
- ในทางเทคนิคคล้าย XMPP แต่มีจุดต่างคือ การส่งข้อความบนพื้นฐาน JSON, WebRTC, การเข้ารหัสแบบ end-to-end (E2EE) ที่มีมาในตัว
- โปรเจ็กต์ได้รับการสนับสนุนในการพัฒนาจากบริษัทย่อยของ Amdocs (2014~2017) ก่อนที่ New Vector Limited จะรับช่วงต่อ
- แม้องค์กรและบริษัทหลายแห่ง เช่น KDE, Purism, Status และรัฐบาลฝรั่งเศส จะเข้าร่วม แต่ Synapse (homeserver ทางการ) ถูกออกแบบด้วยเทคโนโลยีที่ในเชิงสถาปัตยกรรมไม่เหมาะกับการขยายระยะยาว
- แม้จะมีโปรเจ็กต์เซิร์ฟเวอร์ทางเลือกอย่าง Dendrite และ Conduit เกิดขึ้นจากชุมชน แต่คุณภาพของคอมโพเนนต์หลักก็ยังอยู่ในระดับต่ำ
ใช้ Matrix กันเถอะ!
- อีโคซิสเต็มเติบโตขึ้นหลัง Mozilla ประกาศใช้ Matrix ในปี 2019 และ Element (เดิมชื่อ Riot) ก็กลายเป็นไคลเอนต์หลัก
- มีการนำไปใช้ต่อเนื่องในหน่วยงานภาครัฐยุโรป เช่น Tchap ของฝรั่งเศส รวมถึงหน่วยงานด้านกลาโหมและสาธารณสุขของเยอรมนี ลักเซมเบิร์ก และสวีเดน
- ยังมีผลิตภัณฑ์ใหม่อย่าง Element X แบบเนทีฟ, SchildiChat และ FUTO Circles เพื่อพยายามแก้ข้อจำกัดของแอป Element ที่สร้างบน Electron
- ผู้เขียนเองก็ช่วยผลักดันอีโคซิสเต็ม Matrix ทั้งการดูแลช่องคอมมูนิตี้และชวนเพื่อนมาใช้ แต่ปัญหาเชิงรากฐานของบริการก็ยังไม่ถูกแก้ไข
ข้ามมาปัจจุบัน
- ผ่านมา 5 ปี ตอนนี้ ความคาดหวังและความอดทนต่อ Matrix กับ Element หมดลงแล้ว
- แม้จะมีความเปลี่ยนแปลงอย่างการนำ MAS(Matrix Authentication Service) มาใช้ แต่ก็ยังมีปัญหา ขาดฟีเจอร์ความปลอดภัยพื้นฐานอย่าง 2FA/MFA และ Element X ยังขาดฟีเจอร์สำคัญ (threads, spaces, widgets ฯลฯ)
- Element X เร็วกว่าเวอร์ชัน Electron เดิม แต่เมื่อเทียบกับ Signal, Telegram X, WhatsApp ฯลฯ ก็ยังช้าอยู่ดี
- โดยเฉพาะบนอุปกรณ์รุ่นเก่า UI ช้ามาก และแม้บนอุปกรณ์ใหม่ก็แทบไม่ต่างกันมากนัก ยังเจอ homeserver
matrix.org ทำงานช้า และแม้แต่ไคลเอนต์แบบ TUI (iamb) ก็ยังหน่วงเป็นสิบวินาที
- ทางเลือกอื่น ๆ (เช่น การเชื่อมกับ IRC client) ก็ใช้งานจริงไม่ได้มากนัก เพราะไม่รองรับ E2EE และยังขาดฟังก์ชันพื้นฐาน
- การยืนยันอุปกรณ์ข้ามเครื่องสำหรับ E2EE ซึ่งเป็นปัญหาเรื้อรัง ก็ยังไม่เสถียรจนถึงไม่นานมานี้ อีกทั้งโปรโตคอล การเข้ารหัส และ API ที่ซับซ้อนก็ทำให้ผู้พัฒนา 3rd-party เข้าถึงได้ยาก
- เซิร์ฟเวอร์ทางเลือก (เช่น Dendrite, Conduit) ยังไม่เหมาะกับการใช้งานขนาดใหญ่, และไคลเอนต์ FUTO Circles ก็ยุติไปในปี 2025
- การกระจายตัวของเทคโนโลยีที่ใช้ (Python, Node.js/TypeScript, Go, Rust ฯลฯ) และการย้าย repository อย่างต่อเนื่อง ทำให้จัดการอีโคซิสเต็มได้ยาก
- ยังชี้ให้เห็นถึงการขาดกลยุทธ์ทางเทคนิคที่ชัดเจนของ New Vector และปัญหาการเงินเรื้อรัง
หรืออาจเป็นที่คุณ?
- พบประสบการณ์เล่าปัญหาคล้ายกันจากหลายแห่ง ทั้ง Reddit, บล็อก และฟอรัม
- มีเสียงตอบรับจำนวนมากว่า “Matrix ใช้งานลำบากโดยเนื้อแท้” ถึงขั้นในชุมชน FOSS เอง ข้อความ ‘Unable to decrypt message’ ยังกลายเป็นมุกล้อ
- ด้วย ประสิทธิภาพที่ถดถอย, สแปมที่เพิ่มขึ้น, Element X ที่ยังไม่เสร็จ, ความไม่เสถียรของเว็บไคลเอนต์ จึงกลายเป็นแพลตฟอร์มที่ไม่อยากแนะนำ
- มีทั้งปัญหา เสียงวิจารณ์ และประสบการณ์ใช้งานเชิงลบมากกว่าคำชมอย่างชัดเจน
- ทั้งการตั้งชื่อที่ชวนสับสนและการค้นหาข้อมูลที่ยาก ทำให้สภาพแวดล้อมนี้เข้าถึงผู้ใช้ทั่วไปได้ยิ่งยาก
ฟางเส้นสุดท้าย
- ต้นเดือนกรกฎาคม ช่องคอมมูนิตี้ที่ดูแลเองอยู่ ๆ ก็เข้าไม่ได้ โดยใน Element X ยังเห็นอยู่ แต่ในเว็บไคลเอนต์กลับหายไป
- พยายามเชื่อมต่อใหม่และติดต่อฝ่ายซัพพอร์ตแล้วก็ยังไม่ถูกแก้ไข โดยบน homeserver มีข้อผิดพลาดว่า ‘m.room.create ไม่มีอีเวนต์’
- ผู้ใช้อื่นยังเข้าใช้งานช่องได้ตามปกติ แต่การเปลี่ยนหรือมอบสิทธิ์กลับไม่ทำงาน สะท้อนความซับซ้อนและความเปราะบางของโครงสร้างสิทธิ์กับ federation
- ฝ่ายซัพพอร์ตไม่มีการตอบสนองที่ชัดเจน ผู้ใช้เองก็ยากจะรู้ว่าใครเป็นเจ้าของปัญหา สุดท้ายจึงกู้ช่องกลับมาไม่ได้
ลาก่อน Matrix.org
- จากการที่ทีมซัพพอร์ตไม่ตอบกลับและไม่สามารถเข้าถึง server log ได้ จึงตัดสินใจเลิกใช้แพลตฟอร์ม Element
- ช่องคอมมูนิตี้นั้นมีผู้เข้าร่วมไม่มาก แต่ก็น่าเสียดายที่พื้นที่ซึ่งสะสมมาหลายปีต้องหายไปเพราะความขัดข้องธรรมดา
- ด้วยความช้า สแปมที่เพิ่มขึ้น เว็บไคลเอนต์ที่ยังไม่สมบูรณ์ และ Element X ที่ยังไม่พร้อม จึงไม่สามารถแนะนำให้ผู้ใช้ทั่วไปได้อีกต่อไป
- มองว่า Matrix.org และ Element อาจยังอยู่ต่อในบางองค์กรอย่างหน่วยงานรัฐบาลยุโรป แต่สำหรับคนทั่วไปน่าจะถูกเมินเพราะความซับซ้อนและกำแพงการเริ่มต้นใช้งาน
- ด้วยโครงสร้างสิทธิ์ ที่อยู่ และการตั้งค่าที่ซับซ้อน รวมถึง UX ที่ยังขาด ๆ เกิน ๆ จึงเป็นเพียง “ซอฟต์แวร์องค์กรในอุดมคติ” เท่านั้น
- ผู้เขียนประกาศแยกทางเพราะเหนื่อยล้าจากปัญหาซ้ำ ๆ ความอ่อนล้าของผู้ใช้ และการซัพพอร์ตที่ย่ำแย่
อนาคตและทางเลือก
- แม้จะเห็นด้วยกับอุดมคติของ Matrix เรื่อง open protocol, privacy, federation และ decentralization แต่ก็เห็นว่า มันยังมีข้อจำกัดในฐานะเครื่องมือสำหรับใช้งานจริง
- จากประสบการณ์ใช้งานจริง XMPP และ IRC ให้ความน่าเชื่อถือ ความเรียบง่าย และการทำงานร่วมกันได้ดีกว่ามาก
- แม้แต่ Dendrite ของ Matrix เองก็ยังต้องใช้ 2~4 คอร์และ RAM 8GB สำหรับการใช้งานประจำวัน ทำให้ต้นทุนด้านการรันและการดูแลสูง
- ในทางกลับกัน ระบบที่สร้างบน Erlang/OTP อย่าง Ejabberd สามารถรองรับการเชื่อมต่อจำนวนมากด้วยทรัพยากรน้อยกว่า และเป็นสถาปัตยกรรมที่ผ่านการพิสูจน์มา 20 ปีในระบบกระจาย
- ยังน่าเสียดายว่า ในขณะที่ Matrix ใช้เทคโนโลยีหลากหลายทั้ง Python, Node.js, Go, Rust ฯลฯ หากเลือกทำให้สถาปัตยกรรมเรียบง่ายด้วย Erlang/Elixir ตั้งแต่แรก ก็น่าจะดูแลง่ายและประหยัดกว่านี้มาก
การเริ่มต้นใหม่
- หลังลองใช้บริการใหม่ ๆ หลายแบบ สุดท้ายก็กลับไปหา XMPP (และ IRC) โดยจุดเด่นคือความเรียบง่าย ความน่าเชื่อถือ และการทำงานร่วมกันได้
- ชวนสมาชิกคอมมูนิตี้ Matrix.org ให้ย้ายไปเข้าร่วมช่องใหม่บน XMPP (รวมถึงห้อง SimpleX)
- อินสแตนซ์ XMPP กำลังได้รับการปรับปรุงอย่างต่อเนื่อง และมีแผนรองรับ Tor, I2P, UnifiedPush proxy, IRCv3 server ในอนาคต
- แม้ SimpleX จะยังคงเปิดใช้งานอยู่ แต่ก็ยังมีข้อจำกัดจากการพึ่งพาแพลตฟอร์มที่ให้บริการอยู่ดี
2 ความคิดเห็น
เมื่อหลายปีก่อนใน GeekNews ก็มีข่าวเกี่ยวกับ Matrix ออกมาค่อนข้างเยอะ แต่หลังจากนั้นก็เงียบไป ที่แท้ก็มีปัญหาแบบนี้นี่เอง
ความคิดเห็นจาก Hacker News
ผมก็พูดแบบเดียวกันนี้มาหลายครั้งแล้ว แม้แต่บนเซิร์ฟเวอร์ของ Matrix Foundation เอง ปฏิกิริยาทั่วไปของทีมก็ประมาณว่า “ก็จ่ายเงินสิ ไม่งั้นก็รับสภาพไป” ช่วงไม่กี่ปีมานี้มี การเปลี่ยนทิศทางครั้งใหญ่ มากเกินไป: จาก Jitsi ไป WebRTC, เปลี่ยนระบบยืนยันตัวตนใหม่หมด, เปลี่ยนจาก Element ไป Element X แบบยกเครื่อง ฯลฯ ตอนนี้เลยเหลือไคลเอนต์อยู่สองแบบ คือแบบเร็วแต่ฟีเจอร์น้อย กับแบบช้าแต่ฟีเจอร์เยอะ เท่ากับต้องเลือกระหว่างยอมเสียฟีเจอร์หรือทนใช้ของช้า ผมอยากสนับสนุนในแง่บวกนะ แต่จากประสบการณ์ของผม ทีมนี้ หยิ่งเกินไป จริง ๆ การหา เมสเซนเจอร์ที่อิงมาตรฐานเปิด สำหรับใช้งานระดับองค์กรเป็นเรื่องยากมาก XMPP กระจัดกระจายและไม่มีไคลเอนต์ที่เนี้ยบ Matrix เป็น ความยุ่งเหยิง แบบ BDFL ที่ฉลาดเกินไปในแบบของตัวเอง ส่วน Signal ถึงจะโอเพนซอร์สแต่ก็ ไม่เป็นมิตรกับการ self-hosting นอกจากนี้ผมยังสงสัยด้วยว่าองค์กรนี้ถูกนำโดยพวก Architecture Astronauts เต็มตัว ทุกส่วนถูกทำให้เป็นนามธรรมมากเกินไปจนเสียความหมาย
ผมใช้ Conversations (มือถือ) กับ Gajim (เดสก์ท็อป) มา 10 ปีแล้ว ต้องดูแลน้อยมากและทำงานได้ดีไม่มีปัญหา ผมสงสัยว่าผมกำลังพลาดอะไรไปหรือเปล่า
สงสัยว่าเคยลอง Delta Chat ไหม ผมชอบ แนวคิด ของมันมาก แต่เสียดายที่หาคนมาช่วยทดสอบด้วยไม่ได้
ผมคิดว่าการตีความปฏิกิริยาของทีมว่า “จ่ายเงินหรือก็รับไป” นั้นเกินจริงไปมาก ในทางปฏิบัติมันคือการอธิบายเรื่องการขาดการสนับสนุน เช่น “ไม่มีงบพอจะลงกับ Element และ Element X รวมถึง Synapse และ Dendrite พร้อมกัน” เป็นต้น การที่มีคนชี้ว่าตัวโปรเจ็กต์เปลี่ยนเยอะเกินไป ก็จริงอยู่ แต่จริง ๆ แล้วมันเป็นส่วนหนึ่งของ ความพยายามปรับปรุง ตัวอย่างเช่น Jitsi ไม่รองรับการเข้ารหัส, และยังขาดการเชื่อมต่อกับการจัดการตัวตน/การควบคุมสิทธิ์และ Matrix ดังนั้นการเปลี่ยนไปใช้ WebRTC จึงมีเป้าหมายเพื่อ ปรับปรุงการยืนยันตัวตนและการเข้ารหัสแบบ end-to-end ด้วย การเปลี่ยนระบบยืนยันตัวตนทั้งหมดก็เป็น ก้าวใหญ่ เพื่อรองรับผู้ให้บริการ OIDC หลายรายและ เพิ่มการยืนยันตัวตนสมัยใหม่อย่าง 2FA/MFA, passkey ฯลฯ ส่วนประเด็นไคลเอนต์ Element/Element X แม้จะรู้ว่า Element X ยังขาด thread/space และเร็วกว่าก็จริง แต่คนส่วนใหญ่มองว่าจุดที่ดีขึ้นมีมากกว่า (และกำลังพัฒนาอยู่ตอนนี้) สุดท้าย ในฐานะคนที่ดูแล Matrix เอง ผมก็มีทั้ง ความล้มเหลวและความสำเร็จ มากมาย จะเรียกว่าหยิ่งหรือฉลาดเกินไปจนเป็นปัญหาหรือไม่ ก็แล้วแต่มุมมองของแต่ละคน ปิดท้ายนี้ สำหรับโพสต์ที่สงสัยว่าองค์กรนี้ดำเนินโดยพวก Architecture Astronauts ผมอยากแนะนำวิดีโอการบรรยายสาธารณะของนักพัฒนาจริง ๆ
พูดถึงเรื่องหายากที่จะหา IM สำหรับองค์กรที่อิงมาตรฐานเปิด มีคนบอกว่า eIRC ซึ่งเป็นเอนเทอร์ไพรซ์เมสเซนเจอร์บนโปรโตคอล IRC ดูน่าสนใจ ตั้งเป้า ใช้ทรัพยากรต่ำ, throughput สูง, latency ต่ำ และยังรองรับ ฟังก์ชันประวัติข้อความ บน Redis ด้วย
ทั้ง Architecture Astronauts และ Cowboy Coding ต่างก็เป็น แนวทางที่มีปัญหา ประเด็นอยู่ที่ว่ามีความชัดเจน ทิศทาง และ การจัดแนวแรงจูงใจ ที่แน่นหนาพอหรือไม่ แก่นสำคัญคือทั้งสองแบบไปไม่รอดถ้าไม่มี alignment ที่เหมาะสม
ผมก็อยู่ฝั่งคล้าย ๆ กัน ใช้ Matrix มา 3 ปีเพื่อคุยกับครอบครัวที่อยู่ใน ประเทศที่มีการเซ็นเซอร์หนัก แต่ด้วยความซับซ้อนของระบบและการออกแบบ ประสิทธิภาพมันแย่มากจริง ๆ ใช้งานได้แต่ไม่น่าใช้เลย Element X รุ่นใหม่ออกมาโดยหวังจะแก้หลายปัญหา แต่ก็ค่อย ๆ ออกจากมาตรฐานทั่วไปอย่าง TURN/STUN แล้วไปบังคับใช้ของซับซ้อนอย่าง Element Call, livekit มากขึ้น ช่วงหลังก็ยังมี ปัญหาการเข้ารหัส บ่อยขึ้น แม้จะซิงก์คีย์แล้ว บางไคลเอนต์ก็ยังถอดรหัสข้อความไม่ได้ และบางที่ถึงขั้นทำประวัติแชตหายไปด้วย เลยยังฝืนใช้ Element รุ่นเดิมต่อ แต่ก็ดูเหมือนทีมพัฒนา Vector จะไม่ค่อยดูแลมันแล้ว บั๊กเก่าร้ายแรงก็ยังถูกปล่อยทิ้งไว้ (เช่น เวลาล็อกอินผ่าน homeserver อื่นแต่กลับพยายามไปเชื่อมต่อ matrix.org อัตโนมัติ ทำให้ถ้าโดเมนถูกบล็อกก็จะค้าง ซึ่งเพิ่งถูกแก้ใน Element X) ผมแก้เองได้นะ แต่ ตราบใดที่ iOS ยังไม่อนุญาต sideloading ผมก็ไม่มีทางเอาเวอร์ชันของตัวเองไปลงให้เครื่องของครอบครัวได้ ถ้าใครรู้จักทางเลือกที่ รองรับเว็บ, iOS, Android, self-hosting ง่าย, และมี voice call ครบ ช่วยแนะนำที
รู้สึกเสียดายที่ได้ยินว่าคุณเลิกใช้ Element X เพราะความพยายามทั้งหมดและ การปรับปรุงด้านการเข้ารหัส กำลังเทไปที่ Element X อยู่ Element Call เองก็ยังใช้ WebRTC เป็นฐานอยู่ดี และผมคิดว่าการ เชื่อมตรงไปยัง SFU โดยไม่ต้องผ่าน TURN นั้นดีกว่า อยากรู้ว่าคุณลองติดตั้งอย่างไร และผมก็มีคู่มือการติดตั้งพื้นฐานที่ทำไว้ด้วย เผื่อจะช่วยได้
ผมเข้าใจว่ามีปัญหาเรื่อง roadmap ของ Element แต่ก็อยากชี้ว่ามีปัญหาใหญ่อีกอย่างที่ต่างออกไป นั่นคือการติดอยู่ใน แพลตฟอร์มปิด (เช่น walled garden อย่าง iOS) เองก็น่าลำบาก ทีมพัฒนาก็ทำทุกอย่างไม่ไหว และตัวผมเองถึงอยากแก้แอปก็ทำไม่ได้เพราะแพลตฟอร์มปิดกั้น มันเลยกลายเป็นโครงสร้างการต่อรองระหว่างสองฝ่าย (นักพัฒนา-ผู้ใช้) ที่มี “บุคคลที่สามที่ชวนลำบากใจ” อย่างแพลตฟอร์มระบบปฏิบัติการเข้ามาคั่นอยู่ แน่นอนว่าแพลตฟอร์มเหล่านี้ก็มีคุณค่า แต่ในปัญหาแบบนี้มันกลับฉุดไว้
เมื่อก่อนตอนเดินทางใน เอเชียและตะวันออกกลาง ผมพยายามหาแพลตฟอร์มที่เสถียร ใช้ทรัพยากรน้อย และอำพรางการใช้งานได้ดี (เช่น พอร์ตอื่น ๆ / ToR ฯลฯ) เลยเคยคาดหวังกับ Matrix มากในช่วงแรก แต่สุดท้ายมันไม่สำเร็จ และตอนนี้ผมย้ายไปใช้ XMPP ที่พัฒนาต่อเนื่องอย่างมั่นคง แล้วก็พอใจดี คำแนะนำส่วนตัวของผมคือ XMPP
ไคลเอนต์ monal xmpp ใช้งานบน iPhone ได้ดี และผมใช้มันติดต่อกับครอบครัวอยู่ จุดที่คุณสามารถ self-host เซิร์ฟเวอร์ เองได้ รวมถึงมีไคลเอนต์หลากหลายอย่าง 'conversations' บน Android ทำให้ตอนนี้ทั้งครอบครัวผมใช้กันหมด
ในสายพัฒนาบางด้านโดยเฉพาะ ActivityPub/Fediverse มีแรงจูงใจสูงมากที่จะใช้ Matrix เช่น ห้องอย่าง “ActivityPub community” จำนวนมากอยู่บน Matrix เอง สำหรับ โปรเจ็กต์ FOSS ที่ผมสนใจ ส่วนใหญ่ก็เจออยู่บน Matrix ดังนั้น Discord, Zulip, Slack จึงเป็นข้อยกเว้น ดูเหมือนจะมีแนวโน้มว่า FOSS ชอบ Matrix/IRC/XMPP/Zulip ส่วน OSS ชอบ Discord/Slack
เมื่อเร็ว ๆ นี้มีการพบ ช่องโหว่ความปลอดภัยระดับโปรโตคอล (CVE) 2 รายการ และองค์กรกำลังเตรียมอัปเดตแพตช์สำคัญอยู่ โดยมีการบอกว่าเรื่องนี้ถูกรายงานมาตั้งแต่ 6 เดือนก่อน
จากประสบการณ์ของผม ไคลเอนต์ Element ช้าและบั๊กเยอะ มาก แม้แต่เรื่องยืนยันบัญชีหรือปิดการแจ้งเตือนยืนยันตัวตนก็ยังไม่รู้จะทำยังไง เลยสับสนไปหมด
บั๊กเรื่อง ห้องพัง ที่แท้เกิดจาก ดัชนีฐานข้อมูลเสียหาย จริง ๆ (มี 2 ห้องจาก 55 ห้องที่ผมเข้าร่วมได้รับผลกระทบ) กรณีแบบนี้ยากจะป้องกันในระดับโปรโตคอล แต่ก็น่าผิดหวังที่ ใช้เวลาเกิน 2 สัปดาห์กว่าจะแก้ได้ ระหว่างที่มีปัญหา matrix.org ส่งข้อความสะดุด และผมรู้สึกว่ามันทำให้ความหมายของ federation หายไปเลย
บั๊กนี้คือ ปัญหาร้ายแรง ที่เกิดจากดัชนี DB ของ matrix.org เสียหายจริง ทำให้มีการลบหลายล้านแถวผิดพลาด สาเหตุยังไม่ชัดว่าเป็นบั๊กของ PostgreSQL หรือเป็นความเสียหายจากฮาร์ดแวร์เมื่อหลายปีก่อน ตอนนี้กู้ข้อมูลกลับมาแล้ว และตามหลักแล้วไม่ควรมีข้อมูลสูญหายบน federation ถ้าคุณมีกรณีข้อความหาย อยากรู้ว่ามีรายงานบั๊กแยกไว้หรือยัง
แต่เคยมีการตรวจสอบไหมว่าเหตุใดข้อความถึงไม่ถูกเก็บไว้บน homeserver อื่นด้วย ทั้งที่หัวใจของ Matrix คือ federation มันแปลกมาก
เมื่อไม่กี่วันก่อนมีการพูดคุยเรื่อง ปัญหารูปภาพ CSAM (สื่อการล่วงละเมิดทางเพศเด็ก) ที่เกี่ยวข้องกับ Matrix และผู้ใช้ที่แสดงความกังวลกลับถูก ผู้ดูแล Element/Matrix เพิกเฉยและโจมตี จากประเด็นนี้รวมถึงประวัติที่ผ่านมา คำสัญญาที่ไม่เป็นจริง และคุณภาพที่ต่ำ มีคนประเมินว่า Matrix จบแล้ว และยังมองว่ามันส่ง ผลเสียต่อการเติบโตของระบบนิเวศโอเพนซอร์ส ด้วย
ขอย้ำว่าข้อกล่าวหานี้ (เพิกเฉย/โจมตีผู้ที่กังวล) ไม่เป็นความจริง ขณะนี้มีทั้ง การตระหนักถึงปัญหา CSAM การตอบสนองเชิงรุก และการขอโทษ อยู่แล้ว
ปัญหานี้เกิดบนแทบทุกแพลตฟอร์ม ไม่ว่าจะ YouTube, Discord ฯลฯ แม้แต่แพลตฟอร์มระดับ พันล้านผู้ใช้ ก็ยังจัดการไม่ได้หมด ทางฝั่ง EU เองก็พยายามหาทางถอดการเข้ารหัส แต่ความจริงคือมัน มีอยู่เกลื่อนในสภาพแวดล้อมที่ไม่เข้ารหัสอยู่แล้ว และยังไม่มีวิธีแก้ที่ต้นตอ ถึงจะไม่ชอบ Discord/Whatsapp ก็ยังต้องใช้ต่อเพราะไม่มีทางเลือก ส่วนเซิร์ฟเวอร์ Matrix แบบ self-hosting (เช่นบน ovh ใช้ไม่กี่ดอลลาร์ต่อเดือนก็พอ) อย่างน้อยก็ไม่ได้มีปัญหานี้มากนัก
ผมอยากจะชอบ Matrix นะ แต่สุดท้ายไม่รู้ด้วยซ้ำว่าทำไมถึงถูกใส่ใน blacklist ของ homeserver matrix.org และก็ไม่เคยได้รับคำอธิบายหรือคำตอบใด ๆ ระหว่างนั้นยังเจอปัญหา DB โตไปถึงหลายร้อย GB อีกด้วย (คาดว่าเพราะ blacklist ทำให้ผู้ใช้ของผมติดอยู่ในห้องของ matrix.org) สุดท้ายเลยลบ DB ทิ้งตรง ๆ แล้วเลิกใช้ไปเลย
ผมดูแล Synapse homeserver เองมาหลายปีและคุยกับเพื่อนคนหนึ่งผ่าน Matrix มาโดยตลอด แต่พักหลัง การส่งรูปมักพังบ่อย (หนักขึ้นเป็นพิเศษตอนเปลี่ยนรูปแบบการยืนยันสิทธิ์) ไม่นานมานี้ก็ยังเกิดอาการรูปหายซ้ำ ๆ อีก เลยคิดว่าต่อให้ไปขอความช่วยเหลือจากนักพัฒนา ก็คงได้คำตอบว่า “เป็นความผิดคุณ” อยู่ดี สุดท้ายจึงตัดสินใจย้ายไป Signal คิดว่าเมื่อหาทางเลือกให้คอมมูนิตี้เล็ก ๆ ที่เหลือได้เมื่อไร ก็จะทยอยเก็บของออกจาก Matrix ด้วย ตลอดเวลาที่ผ่านมาเห็นแต่คำอธิบายทำนองว่า “นี่เป็นเรื่องบังเอิญ” แต่ปัญหาจริง ๆ กลับไม่ถูกแก้
ผม เห็นด้วยทั้งหมด เรื่อง Matrix ผมเลิกใช้ไปตั้งแต่ประมาณปีก่อน และไม่อยากกลับไปมองมันอีกเลย เพราะไม่เชื่อถือทั้ง ประวัติ คำสัญญา และคุณภาพ ของมันอีกต่อไป