1 คะแนน โดย GN⁺ 2 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Obsidian Community เปิดตัวเป็นไดเรกทอรีใหม่และแดชบอร์ดนักพัฒนาสำหรับปลั๊กอินและธีม โดยรวมขั้นตอนการส่ง การจัดการ การค้นพบ และการใช้งานไว้ด้วยกัน
  • นับตั้งแต่เปิดเผย Obsidian API ในปี 2020 มีการสร้างปลั๊กอินและธีมจากชุมชนมากกว่า 4,000 รายการ และปลั๊กอิน Obsidian มียอดดาวน์โหลดรวมเกิน 120 ล้านครั้ง
  • ไดเรกทอรีใหม่รองรับการเรียกดู ค้นหา กรอง และจัดเรียง พร้อมแสดง ภาพหน้าจอ รายละเอียด และตารางสรุปคะแนนด้านความปลอดภัยบนหน้าของแต่ละโปรเจกต์
  • การรีวิวอัตโนมัติ ถูกนำมาใช้กับทุกเวอร์ชัน เพื่อตรวจสอบการปฏิบัติตามนโยบายนักพัฒนา คุณภาพโค้ด ช่องโหว่ที่รู้จัก และความเป็นไปได้ของมัลแวร์
  • โปรเจกต์เดิมจะถูกย้ายมายังระบบใหม่ และปลั๊กอินหรือธีมที่ไม่ผ่านเกณฑ์ล่าสุดจะได้รับข้อยกเว้นชั่วคราวก่อนถูกทยอยนำออกจากไดเรกทอรีทางการ

เปิดตัว Obsidian Community

  • Obsidian Community เปิดตัวเป็นทั้ง ไดเรกทอรี ใหม่และ แดชบอร์ดนักพัฒนา สำหรับปลั๊กอินและธีมของ Obsidian
  • นับตั้งแต่เปิดเผย Obsidian API ในปี 2020 มีการสร้างปลั๊กอินและธีมจากชุมชนมากกว่า 4,000 รายการ และปลั๊กอิน Obsidian มียอด ดาวน์โหลดรวมเกิน 120 ล้านครั้ง
  • เป้าหมายคือทำให้ทุกคนสามารถสร้าง เผยแพร่ ค้นพบ และใช้งานปลั๊กอินและธีมได้ ง่ายและปลอดภัยยิ่งขึ้น
  • การเปิดตัวครั้งนี้เป็นจุดเริ่มต้นของแผนที่ใหญ่กว่า ซึ่งรวมทั้งเว็บไซต์ Community, แดชบอร์ดนักพัฒนา, การรีวิวอัตโนมัติ, ความปลอดภัยของปลั๊กอิน และเครื่องมือสำหรับทีม

เว็บไซต์ Community และแดชบอร์ดนักพัฒนา

  • เว็บไซต์ Community ใหม่รองรับ การเรียกดู การค้นหา การกรอง และการจัดเรียง เพื่อสำรวจปลั๊กอินและธีม
  • สามารถค้นหาปลั๊กอินผ่านหมวดหมู่หลายสิบแบบ เช่น Integrations, Bases, Charts และหมวดหมู่อื่น ๆ เพิ่มเติม
  • โปรเจกต์สามารถจัดเรียงตามชื่อ จำนวนดาวน์โหลด ความนิยม วันที่ออกรีลีส และวันที่อัปเดต
  • หน้ารายละเอียดของแต่ละโปรเจกต์มี ภาพหน้าจอ รายละเอียด และตารางสรุปคะแนนด้านความปลอดภัย
  • ปลั๊กอินแบบเสียเงินและการเชื่อมต่อแบบทางการจะแสดงป้ายกำกับใหม่
  • ผู้สร้างสามารถเพิ่ม ตัวเลือกการสนับสนุน ลิงก์เว็บไซต์ และลิงก์โซเชียลมีเดียในหน้าโปรไฟล์ได้
  • เว็บไซต์ Obsidian Community มีแดชบอร์ดนักพัฒนาใหม่ให้ผู้สร้างใช้ ส่ง จัดการ และติดตามสถานะ ของโปรเจกต์
  • ปลั๊กอิน ธีม และรายการส่งที่รออยู่ทั้งหมดซึ่งเดิมเพิ่มผ่าน GitHub จะถูกย้ายมายังเว็บไซต์ใหม่โดยอัตโนมัติ
  • หากต้องการยืนยันความเป็นเจ้าของโปรเจกต์เดิม ต้องเข้าสู่ระบบที่เว็บไซต์ Communityและเชื่อมต่อบัญชี GitHub
  • เมื่อเชื่อมต่อบัญชี GitHub แล้ว จะสามารถจัดการโปรเจกต์เดิม ส่งโปรเจกต์ใหม่ และแก้ไขหน้าโปรไฟล์ได้

การรีวิวอัตโนมัติและความปลอดภัย

  • มีการนำ การรีวิวอัตโนมัติ มาใช้กับทุกโปรเจกต์ของชุมชน
  • ระบบรีวิวอัตโนมัติใหม่จะสแกนทั้งการส่งครั้งแรกและ ทุกเวอร์ชัน ตามเกณฑ์ด้านความปลอดภัยและคุณภาพโค้ด
  • ก่อนหน้านี้ ทีมขนาดเล็กจะตรวจสอบรายการส่งครั้งแรกด้วยตนเองเพื่อยืนยันว่าปฏิบัติตาม Developer Policies หรือไม่ แต่เมื่อ Obsidian ได้รับความนิยมมากขึ้น ก็ยากที่จะตามความเร็วของการส่งให้ทัน และเวอร์ชันหลังจากนั้นก็ไม่ได้รับการรีวิว
  • เมื่อ coding agent ช่วยเร่งการสร้างปลั๊กอิน คิวรีวิวจึงยาวขึ้นอีก และเครื่องมืออย่าง Obsidian CLI ก็ทำให้การสร้างปลั๊กอินง่ายขึ้น
  • เมื่อมีการส่งปลั๊กอินหรือธีม ระบบรีวิวอัตโนมัติจะตรวจสอบ การปฏิบัติตามนโยบายนักพัฒนา การทำตามแนวปฏิบัติที่ดีของซอร์สโค้ด และการไม่มีช่องโหว่ที่รู้จัก
  • การทดสอบอัตโนมัติสามารถพัฒนาอย่างต่อเนื่องได้ จึงเป็นรากฐานที่ช่วยยกระดับคุณภาพและความปลอดภัยของระบบนิเวศ Obsidian ได้อย่างครอบคลุมยิ่งขึ้น
  • การรีวิวด้วยตนเองยังคงมีต่อไป ระบบใหม่ช่วยให้สามารถทุ่มทรัพยากรไปยังปลั๊กอินที่ต้องการการตรวจสอบเชิงลึกมากขึ้น เช่น ปลั๊กอินยอดนิยม ปลั๊กอินแนะนำ หรือประเด็นที่ชุมชนแจ้งไว้
  • ปลั๊กอินและธีมเดิมถูกนำกลับมารีวิวด้วยระบบใหม่ และพบว่ามีปลั๊กอินและธีมเก่าบางส่วนที่ไม่เป็นไปตามแนวทางล่าสุด
  • โปรเจกต์เดิมที่ไม่ผ่านเกณฑ์ล่าสุดจะได้รับข้อยกเว้นชั่วคราว แต่ปลั๊กอินและธีมทั้งหมดที่ไม่ผ่านกระบวนการรีวิวใหม่ในท้ายที่สุดจะถูกทยอยนำออกจากไดเรกทอรีทางการ
  • ในช่วงไม่กี่วันที่ผ่านมา ระบบใหม่ได้ประมวลผลรายการส่งที่ค้างอยู่ไปแล้ว มากกว่า 2,300 รายการ และนักพัฒนาที่กำลังรอรีวิวปลั๊กอินสามารถเข้าสู่ระบบที่เว็บไซต์ Communityเพื่อตรวจสอบสถานะปัจจุบันได้
  • การสแกนอัตโนมัติ

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

    • ผู้ใช้และนักพัฒนาสามารถตรวจสอบสถานะของการตรวจสอบอัตโนมัติได้จากตารางสรุปคะแนนของทุกโปรเจกต์
    • ตารางสรุปคะแนนจะได้รับการปรับปรุงต่อไป โดยผสานข้อมูลสาธารณะ ป้ายกำกับข้อมูลส่วนบุคคล การพิสูจน์อาร์ติแฟกต์ ผลการรีวิวด้วยตนเอง และการรองรับฟังก์ชันของแอป
  • การเปิดเผยขอบเขตการเข้าถึง

    • ในอีกไม่กี่เดือนข้างหน้า จะมี ความโปร่งใส เกี่ยวกับปลั๊กอินและผู้สร้างมากขึ้น
    • ปลั๊กอินจะต้องประกาศว่าตนเข้าถึงอะไรบ้าง เช่น เครือข่าย ระบบไฟล์ คลิปบอร์ด และฟังก์ชันอื่น ๆ
    • ผู้ใช้จะสามารถตรวจสอบข้อมูลการเปิดเผยเหล่านี้ได้ก่อนติดตั้งปลั๊กอิน
  • ผู้สร้างที่ผ่านการยืนยัน

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

การเปลี่ยนแปลงในระดับทีมและแอป

  • ทีมที่ใช้ Obsidian สามารถใช้งานการควบคุมความปลอดภัยสำหรับผู้ใช้ได้อยู่แล้ว
  • ในอีกไม่กี่เดือนข้างหน้า ทีมจะสามารถจัดการปลั๊กอินชุมชนที่อนุญาตได้ง่ายขึ้น และแจกจ่าย ปลั๊กอินส่วนตัว ให้สมาชิกทีมได้
  • ทีมที่เผยแพร่ปลั๊กอิน Obsidian แบบทางการสามารถขอป้าย Official ในไดเรกทอรี Community ได้
  • หากปลั๊กอินมีคุณสมบัติตรงตามเงื่อนไข สามารถติดต่อได้
  • ควบคู่ไปกับการปรับปรุงไดเรกทอรี Community และระบบรีวิวอัตโนมัติ จะมีการเปลี่ยนแปลงในแอปและ API ของ Obsidian เพื่อเพิ่ม การค้นพบได้ง่าย และความปลอดภัย
  • ระบบนิเวศของชุมชนเป็นหนึ่งในองค์ประกอบที่ทั้งสนุกและทรงพลังของ Obsidian และทิศทางนี้มีเป้าหมายเพื่อสร้างรากฐานที่จำเป็นต่อการเติบโตอย่างต่อเนื่อง
  • จะเปิดรับข้อเสนอแนะผ่าน Obsidian Community ใหม่

การเปลี่ยนแปลงสำคัญสำหรับผู้ใช้และนักพัฒนา

  • ผลกระทบต่อผู้ใช้

    • สามารถสำรวจปลั๊กอินและธีมได้จากเว็บไซต์ Community ใหม่
    • เวลาในการรีวิวจะลดลงอย่างมาก จึงอาจลดกรณีที่ต้องติดตั้งปลั๊กอิน early access ด้วยตนเอง
  • การส่งปลั๊กอินหรือธีมใหม่

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

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

    • ยังสามารถปล่อยเวอร์ชันใหม่ผ่าน GitHub ต่อไปได้
    • รีลีสใหม่จะถูกรีวิวอัตโนมัติ และหากไม่ผ่านรีวิว จะต้องเข้าไปดูรายละเอียดในแดชบอร์ดนักพัฒนา
  • ปลั๊กอินและธีมที่ไม่ผ่านการรีวิวอัตโนมัติ

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

    • สามารถใช้ eslint plugin เพื่อตรวจสอบปลั๊กอิน Obsidian ในเครื่องให้เป็นไปตามแนวทางนักพัฒนาอย่างเป็นทางการ
    • สามารถรันการสแกนแบบพรีวิวสำหรับ branch, tag หรือ commit ใดก็ได้จากแดชบอร์ดนักพัฒนา
  • ผู้ดูแลร่วมและรีโพซิทอรีขององค์กร

    • ขณะนี้ใน Obsidian Community มีเพียงเจ้าของรีโพซิทอรี GitHub เท่านั้นที่สามารถแก้ไขโปรเจกต์นั้นได้
    • สำหรับรีโพซิทอรีขององค์กร สามารถยืนยันความเป็นเจ้าของและแก้ไขได้หากการเป็นสมาชิกขององค์กรถูกตั้งค่าเป็นสาธารณะ
    • จะมีการเพิ่มการรองรับผู้ร่วมดูแลหลายคนในอนาคตอันใกล้
  • ปลั๊กอินแบบซอร์สปิด

    • ขณะนี้ยังไม่รับปลั๊กอินแบบซอร์สปิดใหม่เข้าไดเรกทอรี
    • ปลั๊กอินแบบซอร์สปิดเดิมจะยังคงใช้งานได้ต่อไปจนกว่าจะมีประกาศเพิ่มเติม
    • ในอนาคตจะพิจารณาวิธีปรับระบบรีวิวใหม่ให้เหมาะกับปลั๊กอินแบบซอร์สปิด
  • ข้อกำหนดเรื่องบัญชีและ GitHub

    • ต้องมีบัญชี Obsidianเพื่อเข้าถึงแดชบอร์ดนักพัฒนาใหม่
    • ขณะนี้ยังจำเป็นต้องใช้ GitHub และในอนาคตจะพิจารณาเพิ่มแพลตฟอร์มโฮสต์ซอฟต์แวร์อื่น ๆ
    • การล็อกอินด้วย GitHub จะแชร์ชื่อผู้ใช้และรายการรีโพซิทอรีสาธารณะ และข้อมูลนี้จะใช้เพียงเพื่อยืนยันความเป็นเจ้าของรีโพซิทอรีเท่านั้น
  • ป้ายกำกับ Paid และ Optional payments

    • Obsidian Community ไม่ใช่สโตร์ และไม่มีโซลูชันการชำระเงินในตัว
    • นักพัฒนายังคงสามารถใช้กลไกการชำระเงินภายนอก เช่น license key, API key หรือ login gate ได้ต่อไป
    • นักพัฒนาต้องระบุปลั๊กอินอย่างถูกต้องว่าอยู่ในหนึ่งในสามหมวดหมู่
    • Free หมายถึงปลั๊กอินที่ไม่มีการชำระเงินในทุกรูปแบบ และไม่เชื่อมโยงกับบริการแบบเสียเงินใด ๆ โดยอนุญาตให้มีลิงก์รับบริจาคและลิงก์สนับสนุนได้
    • Optional payments หมายถึงกรณีที่ผู้ใช้อาจเลือกจ่ายเงินเพื่อปลดล็อกฟังก์ชันเพิ่มเติม หรือปลั๊กอินเชื่อมต่อกับบริการแบบเสียเงิน
    • หากปลั๊กอินเชื่อมต่อกับบริการหรือ API แบบเสียเงิน จะต้องติดป้าย Optional payments แม้ว่าบริการนั้นจะมี free tier ก็ตาม
    • Paid หมายถึงกรณีที่ผู้ใช้จำเป็นต้องชำระเงินเพื่อใช้ฟังก์ชันหลัก แม้จะมีการทดลองใช้ฟรีก็ตาม
    • ป้ายกำกับนี้ไม่ได้แสดงว่านักพัฒนามีการเก็บเงินหรือไม่ แต่แสดงว่าผู้ใช้ควรคาดหวังการชำระเงินแบบใด
  • ข้อผิดพลาดในตารางสรุปคะแนนและการติดต่อสอบถาม

    • ตารางสรุปคะแนนเป็นฟีเจอร์ใหม่ จึงอาจมีข้อผิดพลาด และอาจเกิด false positive หรือ false negative ได้
    • หากพบข้อมูลไม่ถูกต้อง ควรติดต่อช่อง #plugin-dev บน Obsidian Discord server
    • หากมีคำถามหรือข้อกังวล สามารถติดต่อช่อง #plugin-dev บน Obsidian Discord server ได้

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

 
GN⁺ 2 시간 전
ความคิดเห็นจาก Hacker News
  • ผมเป็น CEO ของ Obsidian เราทำงานกับ Community site และระบบรีวิว แบบใหม่มานานเกือบ 1 ปีแล้ว และแม้เวอร์ชันแรกนี้จะน่าตื่นเต้นมาก แต่ก็ยังมีอีกหลายอย่างที่ต้องปรับปรุง
    ผมพยายามเขียนรายละเอียดให้ครบที่สุดเท่าที่จะทำได้ ทั้งในบล็อกโพสต์ FAQ และขั้นถัดไปในโรดแมป แต่ก็คงยังมีส่วนที่ตกหล่นอยู่ เลยถามเพิ่มเติมกันได้
    ทีมมีแค่ 7 คน แต่ต้องดูแลนักพัฒนาปลั๊กอินหลายพันคนกับผู้ใช้หลายล้านคน ทำให้การหาสมดุลระหว่างลำดับความสำคัญที่ขัดกันเป็นเรื่องยากมาก
    ระบบใหม่นี้ต้องนำมาใช้ได้ง่าย รักษา backward compatibility ไว้ ไม่ทำลาย workflow เดิมทั้งหมด แต่ก็ต้องดีกว่าวิธีเก่าอย่างชัดเจน และต้องช่วยยกระดับทั้งความปลอดภัยและการค้นพบปลั๊กอินได้แบบค่อยเป็นค่อยไป
    อยากให้มองว่านี่ยังเป็นงานที่กำลังพัฒนาอยู่ เรายินดีรับทั้งไอเดียและข้อไม่พอใจ แล้วจะปรับปรุงต่อไปเรื่อย ๆ
    • ผมเคยติดปลั๊กอินเข้ากับหลายโปรเจกต์ และก็เคยคิดว่าจะลองใช้โครงสร้างที่ให้โปรเจกต์ระบุว่าเวอร์ชันใด ผ่านการตรวจสอบแล้ว/เชื่อถือได้
      เหตุผลหนึ่งที่ลังเล นอกจากต้องใช้เวลามหาศาลแล้ว คือผมกลัวว่าถ้าผู้คนเริ่มพึ่งพากระบวนการรีวิวนั้น แล้วมีโค้ดอันตรายที่ถูกทำให้อ่านยากหลุดผ่านไป ความรับผิดชอบต่อการโจมตีภายหลังจะย้อนกลับมาที่โปรเจกต์
      เลยอยากรู้ว่าคุณมองประเด็นนี้อย่างไร
      สำหรับผมมันให้ความรู้สึกเหมือนความต่างระหว่างแนวทางแบบ Debian/Ubuntu ที่ตรวจเข้มทุกอย่างใน repository กับแนวทางแบบ PyPI/npm ที่ไม่ได้รับประกันการรีวิวเลย
    • ผมชอบที่ในข้อมูลสาธารณะ ถ้ากดดูว่า “ปลั๊กอินสามารถส่งคำขอไปยัง external domain ได้ 1 แห่ง” ก็จะเห็นโดเมนจริงอย่าง github.com
      ดูตัวอย่างได้ที่ https://community.obsidian.md/plugins/zotlit
    • สงสัยว่าระบบสแกนอัตโนมัติจะทำเครื่องหมายการ ขยายขอบเขตสิทธิ์ หรือความเปลี่ยนแปลงในการเข้าถึง network domain เพื่อให้มีการรีวิวภายใน/โดยมนุษย์หรือไม่
      ตัวอย่างเช่น ถ้าปลั๊กอินสรุป AI ในตอนแรกเข้าถึง url="api.openai.com"+path โดยใช้คีย์ OpenAI ที่ผู้ใช้ให้มา นี่คงเป็นรูปแบบที่พบได้ทั่วไปมาก และน่าตื่นเต้นว่าคอมมูนิตี้จะสร้างอะไรจากตรงนี้
      แต่ถ้าหลังอัปเดต ผู้ใช้สามารถเลือก endpoint ใดก็ได้ของ OpenAI-compatible API แล้วจะรับประกันได้อย่างไรว่านี่ไม่ใช่อัปเดตที่แอบเปิดเส้นทาง network exfiltration เพื่อเลี่ยงการสแกน ด้วยการใช้ความยืดหยุ่นนั้นในทางที่ผิดและแอบกรอก malicious endpoint ไว้ล่วงหน้า?
    • ทีม Obsidian ทำงานได้ยอดเยี่ยม ผมตั้งใจจะเป็นผู้ใช้ Obsidian Sync ต่อไป และหวังว่าจะใช้ community plugins ได้อย่างสบายใจมากขึ้น
    • ในที่สุดก็มาแล้ว
      ตอนที่ผมลองใช้ Obsidian แล้วรู้ว่าฟีเจอร์ data table ไม่ได้มีมาในตัว แต่เป็นปลั๊กอินที่มีสิทธิ์เข้าถึงทุกอย่าง ผมก็ลบทันที
      แต่ที่ทีมมีแค่ 7 คนก็น่าทึ่งมาก
  • สำหรับคนที่อาจยังไม่รู้ จนถึงตอนนี้การส่งปลั๊กอินใหม่แทบเป็นไปไม่ได้เลยเพราะ manual review และอีกปัจจัยคือ AI ทำให้การเขียนปลั๊กอินง่ายและสนุกขึ้น
    ความไม่พอใจในชุมชนนักพัฒนาเพิ่มขึ้นเรื่อย ๆ และทีมเองก็เริ่มรับภาระไม่ไหว
    เพราะงั้นขอแสดงความยินดีกับทีม นี่เหมือนการปลด คอขวดด้าน scalability ขนาดใหญ่ และก็น่าสนใจมากที่จะได้เห็นว่าพวกเขาจะสร้างและขยายระบบนี้ต่ออย่างไร
    • มีปลั๊กอินเจ๋ง ๆ ตัวไหนที่แนะนำบ้างไหม? ผมเพิ่งย้ายมาจาก OneNote ตั้งค่า sync เรียบร้อยแล้ว ตอนนี้เริ่มใช้งานคล่องขึ้นแล้ว
  • ผมไม่ได้ใช้ Obsidian แต่พอเห็นหัวข้อครั้งแรกก็นึกว่าจะจำกัดให้ใช้เฉพาะปลั๊กอินจำนวนน้อยที่บริษัทอนุมัติ
    เวลาบริษัทซอฟต์แวร์ใช้หัวข้อประมาณว่า “อนาคตของ XYZ” ปกติมันทำให้คาดได้ว่ากำลังจะจำกัด XYZ อย่างหนักหรือเตรียมยกเลิกมัน
    • ผมก็สงสัยอยู่ว่าจะเริ่มเห็น enshittification ตรงไหน
  • ผมยังไม่แน่ใจว่าการตรวจอัตโนมัติอย่างเดียวจะตัดสินได้อย่างน่าเชื่อถือหรือไม่ว่าปลั๊กอินเป็นอันตรายหรือเปล่า
    สำหรับผม วิธีที่ดีที่สุด และอาจเป็นวิธีเดียว ในการแก้ปัญหาความปลอดภัยของปลั๊กอินคือ sandbox ที่มี explicit API และระบบสิทธิ์
    • นอกจากคำว่า “ต้องมี sandbox ที่มี explicit API และระบบสิทธิ์” ผมอยากเสริมว่า โดยเฉพาะอย่างยิ่งมันไม่ควรแตะต้อง ข้อมูลส่วนตัว ของผมได้ด้วย ปัญหาคือแกนหลักของปลั๊กอิน Obsidian คือการอ่านและเขียนเอกสาร
      แต่ถ้ามันสื่อสารกับอินเทอร์เน็ตไม่ได้ ก็ดูเหมือนจะไม่ใช่ปัญหาใหญ่มาก
      พอไปดูเพิ่ม เหมือนว่าในเชิง JavaScript และ Electron ปลั๊กอิน Obsidian คือก้อน JavaScript ที่รันใน global scope และสามารถอ่านเขียนทั้ง file system รวมถึงส่ง HTTP requests ได้ภายในขอบเขตสิทธิ์ของผู้ใช้ แบบนี้ถูกไหม ช่วยยืนยันได้ไหม?
    • มันอาจไม่ได้กัน malware ที่เขียนขึ้นมาเองได้โดยตรง แต่ก็ช่วยได้มากในการดูว่า dependency ถูกอัปเดตอยู่หรือไม่ และมี CVE ที่รู้จักอยู่หรือเปล่า คล้ายกับสิ่งที่ Trivy ทำหรือวิธีที่ Artifacthub เน้น
      แต่ก็สงสัยว่าใน ecosystem นี้มันจะได้ผลดีแค่ไหน จากประสบการณ์ การสแกนแบบครอบคลุมมักมี false positive เยอะ คือมี CVE จริงแต่ไม่ได้ใช้ในบริบทที่ทำให้เกิดผลกระทบจริง
      ดังนั้นการตีความผลสแกนให้ถูกต้องต้องอาศัยความรู้ และสิ่งนี้อาจกลายเป็นภาระไม่น้อยสำหรับผู้ดูแล
    • อ่านบล็อกโพสต์ก็น่าจะได้คำตอบ นอกจาก auto-scan และเครื่องมือควบคุมสำหรับทีมแล้ว ยังมีแผนเรื่อง ระบบสิทธิ์ ด้วย
      สิทธิ์อย่างเดียวไม่พอจะหยุดพฤติกรรมอันตรายบางแบบได้ จึงต้องมีทั้งหมด
      แค่ดู scorecard บางอันใน Community site ก็จะเห็นทันทีว่าคำเตือนบางอย่างไม่สามารถจัดการได้ด้วยระบบสิทธิ์หรือ sandboxing
      บล็อกโพสต์มีรายละเอียดเรื่องวิธีการเปิดใช้ และเพราะต้องเปลี่ยน plugin API จึงจะค่อย ๆ ทยอยทำเป็นขั้น ๆ
    • แน่นอนว่ามันคงไม่เข้ากันกับปลั๊กอินเดิมอยู่แล้ว ดังนั้นน่าจะแยก legacy plugins ออกจากปลั๊กอินใหม่ เพิ่มแรงเสียดทานเยอะ ๆ ให้กับการติดตั้ง legacy plugins แล้วค่อยเลิกใช้ในสักวัน
    • แม้แต่ Podman/Linux ก็มี API และระบบสิทธิ์ แต่ก็ยังมี Copy Fail อยู่ดี: https://garrido.io/notes/podman-rootless-containers-copy-fai...
      เรื่องความปลอดภัยกับการให้สิทธิ์มันยากจริง ๆ และเวลาคุณออกแบบแพลตฟอร์ม สุดท้ายก็ต้องถามตัวเองว่าเมื่อถึงจุดหนึ่ง มันคุ้มไหมที่จะยอมรับความเสี่ยงนั้นเพื่อแลกกับความยืดหยุ่น
      การวางแผนระบบที่ปลอดภัยสมบูรณ์แบบเป็นเรื่องไร้ความหวัง
  • น่าสนใจมาก นี่เป็นหลักฐานจากโลกจริงว่า การรีวิวปลั๊กอินอัตโนมัติ ทำได้แม้ในทีมเล็ก ๆ
    สักวันผมน่าจะต้องเรียนรู้วิธีทำระบบคล้ายกันนี้ให้กับโปรเจกต์ของตัวเองบ้าง
    • อาจจะดีกว่าถ้ารอดูไปก่อนว่ามันจะออกมาอย่างไร นี่คือ เกมแมวไล่จับหนู และหนูในเรื่องนี้ฉลาดกว่ามาก
      การรั่วไหลของข้อมูลเกิดขึ้นแบบเงียบ ๆ
  • ในมุมผู้บริโภค ผมไม่รู้ว่าจะต้องดู scorecard อย่างไรหรือทำไม
    ถ้ามีรายการ error กับ linter warning เต็มไปหมด แล้วผมควรทำอะไร?
    อยากรู้ว่า flow ที่เหมาะที่สุดสำหรับฝั่งผู้ใช้คืออะไร scorecard ดูเหมือนดีมากสำหรับฝั่งนักพัฒนา
  • ดีใจที่มีอัปเดตแบบนี้ออกมา
    การจัดการ การมีส่วนร่วมจากชุมชน แบบนี้เป็นเรื่องยาก และมันดูเป็นก้าวใหญ่ทีเดียว
  • ถ้าความพร้อมใช้งานของปลั๊กอินไม่ลดลง โดยเฉพาะกรณีของผมคือ selfhosted-livesync ก็ถือว่าดูดี
    ผมก็สงสัยเหมือนกันว่า AI จะมีบทบาทใน auto-review แบบนี้ได้ไหม ดูเหมือนเป็น use case ที่มีอนาคตมาก
  • เจ๋งมาก แค่น่าเสียดายที่เว็บไซต์เป็น dark mode only ทำให้คนที่มีสายตาเอียงอ่านได้ยากขึ้นไปอีก
    • โหมดอ่านของ Firefox แค่คลิกครั้งเดียวก็เปลี่ยนเป็นพื้นขาวตัวอักษรเข้มได้ เบราว์เซอร์อื่นก็น่าจะมีอะไรคล้ายกัน
    • เพราะ Obsidian เป็นสีดำไง แต่ก็มีแผนจะเพิ่ม light mode ในอนาคตอันใกล้
    • หมายถึงเป็นสายตาเอียงแบบพบได้น้อยมากหรือเปล่า? ผมมีสายตาเอียงมานานกว่า 30 ปี แต่ก็อ่านเว็บนี้ได้สมบูรณ์แบบโดยไม่ต้องพยายามอะไรเลย
  • อยากให้ติดตั้งปลั๊กอินในเครื่องได้ง่ายกว่านี้ จริง ๆ ควรจะแค่คัดลอกแล้ววางลงโฟลเดอร์ก็พอ
    ถ้า Obsidian ไม่ใช่ ซอฟต์แวร์ปิดซอร์ส ผมคงแก้เองไปแล้ว
    ถึงเวลาที่ใครสักคนจะทำโคลนที่เข้ากันได้แล้ว
    • มันทำงานแบบนั้นอยู่แล้ว ปลั๊กอินก็เป็นแค่โฟลเดอร์ที่คัดลอกไปไว้ใน .obsidian/plugins ภายใน vault ได้เท่านั้นเอง
    • แค่เอาไปวางในไดเรกทอรี .obsidian/plugins/ ตามตัวอักษรเลย