11 คะแนน โดย xguru 2025-05-15 | 3 ความคิดเห็น | แชร์ทาง WhatsApp
  • พัฒนาขึ้นเพื่อแก้ข้อจำกัดของเครื่องมือทำงานร่วมกันแบบเอกสารเดิม ๆ ที่ไม่เหมาะกับการเรียนการสอนหรือ pair programming โดยเป็น สภาพแวดล้อมพัฒนาแบบทำงานร่วมกันเรียลไทม์บนเบราว์เซอร์
  • ออกแบบมาเพื่อทำลายภาพจำว่า “การเขียนโค้ดร่วมกันแบบเรียลไทม์นั้นซับซ้อน” ด้วย Zero Setup, ความเรียลไทม์อย่างแท้จริง, และ UI ที่ใช้งานง่าย ทำให้ใครก็เริ่มเขียนโค้ดร่วมกันได้ทันที
  • รองรับ พรีวิวแบบเรียลไทม์ที่แม่นยำระดับพิกเซล: ทันทีที่เขียนโค้ด HTML/CSS/JS ก็สะท้อนบน WebView ทันที
  • ฟีเจอร์การทำงานร่วมกัน: ใช้ Operational Transformation ทำให้ ผู้ใช้หลายคนพิมพ์พร้อมกันได้โดยไม่เกิดการชนกัน
  • ตัวแก้ไขสไตล์ VS Code: ใช้ Monaco Editor มอบอินเทอร์เฟซที่คุ้นเคย พร้อมระบบเติมคำอัตโนมัติ การไฮไลต์ไวยากรณ์ และการแสดงข้อผิดพลาด
  • มี เทอร์มินัล บนเบราว์เซอร์ที่สร้างด้วย Xterm.js เพื่อให้ตรวจสอบอินพุตและเอาต์พุตได้
  • ใช้งานได้โดยไม่ต้องติดตั้ง: แค่มีเบราว์เซอร์ก็ใช้งานได้ทันที
  • ไลเซนส์ GNU AGPL 3.0

สแตกเทคโนโลยี

  • ฟรอนต์เอนด์: React, TypeScript, Tailwind CSS, Zustand, Xterm.js, Monaco Editor
  • แบ็กเอนด์: Java Spring Boot, WebSocket, Jackson
  • การซิงก์แบบเรียลไทม์: อัลกอริทึม Operational Transformation แบบคัสตอม
  • การประมวลผลข้อความ: การประมวลผลข้อมูลแบบอะตอมมิกผ่าน Redis + Lua script
  • โฮสติ้ง: ฝั่งฟรอนต์ใช้ Vercel, แบ็กเอนด์ใช้ AWS EC2, Redis ใช้ ElastiCache

Operational Transformation (OT)

  • OT คือ เทคโนโลยีแกนหลักที่ทำให้สามารถแก้ไขเอกสารพร้อมกันแบบเรียลไทม์ได้ และ Google Docs ก็อาศัยแนวทางนี้
  • CodeCafé ลงมือพัฒนา OT ด้วยตนเองเพื่อรองรับสิ่งต่อไปนี้:
    • ตรวจจับและแปลงการป้อนข้อมูลพร้อมกัน
    • คงเจตนาของผู้ใช้และแก้ไขความขัดแย้ง
    • รักษาการซิงก์สถานะระหว่างไคลเอนต์
  • ส่งผลให้ในสภาพแวดล้อมการทำงานร่วมกันแบบเรียลไทม์ มอบประสบการณ์ผู้ใช้ที่เป็นธรรมชาติและลื่นไหล

แผนในอนาคต

  • ระบบยืนยันตัวตนผู้ใช้และฟังก์ชันบันทึกโปรเจกต์
  • การรวมแชตเสียง/ข้อความ
  • ฟังก์ชันเล่นซ้ำประวัติการเขียนโค้ด
  • ขยายการรองรับภาษาให้หลากหลายยิ่งขึ้น

3 ความคิดเห็น

 
kaydash 2025-05-16

มี code server อยู่แล้ว เลยยังไม่ค่อยเห็นความแตกต่างชัดเจนนัก
แต่ถ้ามีเพิ่มแชตกับการเล่นย้อนประวัติการเขียนโค้ดได้ ก็น่าจะดีครับ

 
pcj9024 2025-05-15

ทำให้นึกถึงฟีเจอร์ live share ของ vscode นะครับ
เมื่อก่อนก็มีทั้งแชตแบบเรียลไทม์ วางโค้ดแล้วแก้ไขพร้อมกันได้ด้วย
เอาไปใช้เมนเทอร์รุ่นจูเนียร์ ทำคอร์สออนไลน์ หรือแนะนำให้คนอื่นใช้ก็ได้ แต่ดูเหมือนสุดท้ายทุกคนก็ไม่ได้ใช้กันมากนัก

 
turastory 2025-05-15

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