- GitHub Issues เป็นเครื่องมือที่ทรงพลังสำหรับโน้ตและการทำงานร่วมกัน ทั้งแบบสาธารณะและส่วนตัว โดยใช้งานได้ฟรี
- รองรับ Markdown พร้อมการไฮไลต์โค้ด การลากแล้ววางรูปภาพและวิดีโอ และความสามารถในการลิงก์หากัน ทำให้ประสบการณ์การจดโน้ตยอดเยี่ยม
- มี ความสามารถในการค้นหา ที่ทรงพลัง และสามารถทำงานอัตโนมัติ สำรองข้อมูล และเชื่อมต่อภายนอกผ่าน API ได้
- ข้อเสียเพียงอย่างเดียวคือ ไม่มีฟังก์ชันออฟไลน์ที่ซิงก์ได้ ทำให้ใช้งานได้ยากเมื่อไม่มีการเชื่อมต่อเครือข่าย
- เช็กลิสต์, การรองรับข้อมูลขนาดใหญ่, การใช้งานร่วมกับ LLM, การสำรองข้อมูล และความปลอดภัย ก็เป็นจุดเด่นสำคัญเช่นกัน
คุณค่าของการใช้ GitHub Issues สำหรับจดโน้ต
- GitHub Issues เป็นเครื่องมือที่แทบจะเรียกได้ว่าเป็นสมุดโน้ตออนไลน์ที่ดีที่สุด
- สามารถสร้างและจัดการโน้ตแบบสาธารณะและส่วนตัวได้ไม่จำกัดโดยไม่มีค่าใช้จ่าย
- รองรับ Markdown ได้ยอดเยี่ยมมาก พร้อม syntax highlighting สำหรับแทบทุกภาษาโปรแกรม และยังสามารถลากรูปภาพมาใส่ในโน้ตได้โดยตรง
ความสามารถด้านลิงก์และการเชื่อมโยงกัน
- เมื่อเพิ่ม URL ของ issue อื่นในรายการ Markdown ภายใน issue ระบบจะ ดึงชื่อเรื่องมาให้อัตโนมัติ และสร้างลิงก์เชื่อมถึงกันโดยอัตโนมัติ
- กฎการมองเห็นของ issue จะยังคงมีผลอยู่ ดังนั้น issue แบบส่วนตัวจะไม่ถูกเปิดเผยออกภายนอก
การค้นหาทรงพลังและการทำงานอัตโนมัติผ่าน API
- จุดแข็งคือการค้นหาที่รวดเร็วและแม่นยำ ทั้งใน ขอบเขตของ repository, repository ทั้งหมดของผู้ใช้, และทั่วทั้ง GitHub
- สามารถส่งออกข้อมูลโน้ต หรือสร้างและแก้ไขโน้ตใหม่ได้อย่างง่ายดายผ่าน API
- ยังสามารถเชื่อม GitHub Actions กับ event ของ issue เพื่อทำ automation ได้อย่างกว้างขวาง
ข้อเสีย: ไม่มีการซิงก์แบบออฟไลน์
- ข้อเสียเพียงอย่างเดียวคือเมื่อไม่มีการเชื่อมต่ออินเทอร์เน็ต ระบบจะไม่สามารถซิงก์ได้
- ด้วยเหตุนี้ บนมือถือจึงมักต้องใช้แอปที่รองรับออฟไลน์และการซิงก์อย่าง Apple Notes ควบคู่กันไป
ความปลอดภัย ความสะดวก เช็กลิสต์ และการขยายสเกลสำหรับข้อมูลจำนวนมาก
- ความกังวลด้านความปลอดภัยถือว่าค่อนข้างต่ำ องค์กรต่าง ๆ ลงทุนกับความน่าเชื่อถือของ GitHub และตัวแพลตฟอร์มเองก็มีความน่าเชื่อถือสูง
- ทุกแพลตฟอร์มจดโน้ตล้วนมี ความเสี่ยงข้อมูลรั่วจากบั๊ก ดังนั้นจึงไม่ควรเก็บข้อมูลที่อ่อนไหว
- ไม่ต้องเสียค่าบริการหรือดูแล self-hosting เอง จึงมีความเสี่ยงที่โน้ตจะสูญหายน้อย
- การใช้เช็กลิสต์แบบ Markdown (
- [ ] item) หรือการอ้างอิง issue (- [ ] #ref) มีประโยชน์มาก
- หาก issue นั้นถูกปิด ระบบจะทำเครื่องหมายเช็กให้อัตโนมัติ
- ยังสามารถลองใช้ วิธีสำรองข้อมูล ได้หลายแบบ เช่น github-to-sqlite
- ด้านการขยายสเกลก็ยอดเยี่ยม โดยมีกรณีตัวอย่างการจัดการ issue จำนวนมาก เช่น repository ของ vscode ที่มี 190,000 issue และ repository ของ flutter ที่มีมากกว่า 100,000 issue
การใช้งานร่วมกับ LLM และด้านอื่น ๆ
- ข้อมูล issue ยังสามารถ เชื่อมเป็น pipeline ไปยัง LLM หรือ generative AI อื่น ๆ ได้อย่างราบรื่น
- มีประสบการณ์จริงในการสรุปเธรด issue ที่ยาว 1.5 ปี ซึ่งมีคอมเมนต์มากกว่า 50 รายการ แล้วจัดเรียบเรียงเป็นคอมเมนต์ใหม่
การรวบรวมและใช้งานข้อมูลกิจกรรม
- สามารถนับจำนวน issue และคอมเมนต์ที่ตนเองสร้างบน GitHub ได้ด้วย GraphQL query
{
viewer {
issueComments {
totalCount
}
issues {
totalCount
}
}
}
- ผลลัพธ์จริงคือ issue 9,413 รายการ คอมเมนต์ 39,087 รายการ รวมทั้งหมด 48,500 รายการ
บทสรุป
- GitHub Issues มีจุดแข็งครบทั้งความฟรี การทำงานร่วมกัน ระบบอัตโนมัติ การค้นหา การขยายสเกล และความอเนกประสงค์ในการใช้งาน
- หากเพิ่มการซิงก์แบบออฟไลน์ได้ ก็แทบจะเป็นโซลูชัน สมุดโน้ตดิจิทัลที่ดีที่สุด อย่างแท้จริง
1 ความคิดเห็น
ความเห็นจาก Hacker News
มีคนแชร์ประสบการณ์ว่าเคยใช้ GitHub Issues เป็นเครื่องมือจัดการโปรเจ็กต์ตอนเตรียมงานแต่งงานของตัวเอง ตอนแรกภรรยาก็สงสัย แต่พอเพิ่ม label ค้นหา และทำงานร่วมกันได้ง่ายมาก ก็ทำให้งานเตรียมแต่งเสร็จทันเวลา สิ่งที่ยากที่สุดที่จำได้คือการทำลิงก์ bookmark ให้กระโดดไปที่ issue tracker ได้ทันที ล่าสุดตอนย้ายบ้านก็ยังใช้ GitHub Issues จัดการกล่องต่าง ๆ โดยสร้าง issue ให้แต่ละกล่อง เขียนรายการของในกล่องไว้ในช่องคำอธิบาย แล้วเขียนหมายเลข issue ไว้บนกล่อง จากนั้นภายหลังก็ค้นใน GitHub ได้ง่ายว่ากล่องไหนมีอะไรอยู่บ้าง
มีคนถามด้วยความสงสัยว่าเคยลองทางเลือกอื่นบ้างไหม และมันมีข้อบกพร่องอะไร
มีคนสงสัยแบบง่าย ๆ ว่าแค่เขียนรายการของไว้บนด้านนอกกล่องตรง ๆ ไม่พอหรือ
ทำให้นึกถึงเรื่องโปรเจ็กต์ซ่อมบ้านที่เคยเห็นใน Hacker News ตอนนี้เหมือนจะหายไปจาก GitHub แล้ว เลยแนะนำ ลิงก์โปรเจ็กต์นั้น
ที่ทำงานเก่าเคยพยายามใช้ Gitlab เป็นเครื่องมือจัดการโปรเจ็กต์ทั้งองค์กร แต่ติดที่ไม่มีฟีเจอร์อ้างอิงข้ามโปรเจ็กต์เลยทำให้หยุดนำมาใช้ เหมาะกับโอเพนซอร์สมากกว่า แต่ที่บริษัทปัจจุบัน Gitlab สามารถแทน Youtrack ได้ และแทน Upsource ไปเรียบร้อยแล้ว
ทำให้นึกถึง การ์ตูน xkcd ตอนที่ 1172 มีเรื่องเล่าแบบขำ ๆ ทำนองนี้เยอะมาก และบนโลกก็มีคนที่มี workflow ประหลาดอยู่ไม่น้อย เรื่องแบบนี้ใช้เครื่องมือที่เหมาะสมจะดีกว่าเสมอ อีกอย่างตอนย้ายบ้านข้ามประเทศก็เคยใช้ Org mode จัดระเบียบงานเหมือนกัน และเป็นคนที่รับไม่ได้เด็ดขาดกับการส่งข้อมูลส่วนตัวให้ Microsoft
มีเรื่องน่าสนใจคือ ถ้าเอา GraphQL query ด้านล่างไปวางใน GitHub GraphQL Explorer ก็จะเห็นจำนวน issue และ comment ทั้งหมดที่ตัวเองเคยโพสต์บน GitHub ได้ทันที
เจ้าตัวมีสถิติรวม 48,500 รายการ คือ issue 9,413 รายการ และคอมเมนต์ 39,087 รายการ
แปลกใจที่คอมเมนต์แรก ๆ ไม่ได้พูดเรื่องความเป็นส่วนตัว เจ้าตัวเองไม่ได้จดโน้ตเยอะนัก แต่รู้สึกว่ามันเป็นข้อมูลที่เป็นส่วนตัวยิ่งกว่าอีเมล และไม่อยากให้เอาข้อมูลส่วนตัวแบบนี้ไปใช้ฝึก LLM เลย เลยสงสัยว่า Microsoft มีการรับประกันอะไรเกี่ยวกับความเป็นส่วนตัวของ private repository หรือไม่
มีคนคาดว่าด้วยความที่ใน GitHub Issues มีข้อมูลลับของบริษัทที่อ่อนไหวมาก ความปลอดภัยและความเป็นส่วนตัวก็น่าจะแข็งแรงมาก หลายบริษัทฝากทั้งซอร์สโค้ดและ artifact ที่เกี่ยวข้องไว้และจ่ายเงินให้ GitHub จำนวนมาก ดังนั้นการสร้างความเชื่อใจจึงเป็นหัวใจของโมเดลธุรกิจ และคงไม่เสี่ยงเอาความลับของลูกค้าไปฝึกโมเดล
สำหรับคำถามว่า "Microsoft รับประกันความเป็นส่วนตัวของ private repository ไหม" มีคนแปะลิงก์ไปยังการถกเถียงที่เกี่ยวข้อง ที่นี่
มีคนตั้งข้อสงสัยกับคำกล่าวที่ว่า "ระบบค้นหาของ GitHub ยอดเยี่ยม" เช่น ถ้ามีคอมเมนต์ที่มีข้อความว่า "current logs could do with a bit of redesign" ตรงตัว ก็ต้องใส่เครื่องหมายคำพูดก่อนถึงจะหาเจอ และถ้าสะกดผิดอย่าง "redesing" การค้นหาก็ล้มเหลว
ทั้งตัวเองและอีกหลายคนพยายามหาสุดยอดแอปจดโน้ตกันอยู่เรื่อย ๆ แต่สุดท้ายก็มักย้อนกลับไปกองไฟล์ Markdown ไว้ใน Git repo
ถ้าจะใช้แนวทางนี้ต่อไป มีคนแชร์ว่าชุด Obsidian + Git Plugin ดีที่สุดที่เคยใช้ เดสก์ท็อปทำงานได้ยอดเยี่ยม แต่บน iOS ต้องตั้งค่าเพิ่มนิดหน่อย
มีคนเสนอให้ลองแอปจดโน้ตโอเพนซอร์สฟรีสักตัว พร้อมเปิดเผยว่าตัวเองเป็นลูกค้าของผู้พัฒนา โดยแนะนำ em ว่าเป็นแอปจดโน้ตที่สวยงามและมินิมอลสำหรับจัดระเบียบความคิดส่วนตัว
เมื่อเทียบกับแอปที่ sync สองทางอัตโนมัติได้ทุกอุปกรณ์ วิธีที่ต้อง commit/push/pull เองทุกครั้งที่สร้างหรือแก้โน้ตใหม่ก็ดูเชยไปหน่อย
อีกคนก็เป็นเหมือนกัน แต่ใช้ไฟล์ Org-mode แทน Markdown แล้วค่อย ๆ เติมแท็ก org-roam เมื่อต้องการ
มีคนเล่าประสบการณ์ทรมานกับการสลับไปมาระหว่าง Apple Notes และโฟลเดอร์ Markdown โฟลเดอร์ Markdown เข้ากันได้กับอนาคตดีกว่า แต่ Apple Notes เด่นมากในด้านดีไซน์ ความเรียบง่าย และการรองรับสื่อ ยิ่งแอป Markdown รองรับฟีเจอร์มากก็ยิ่งปิดตัวเองมากขึ้น และแอปที่ใช้เปิดอ่านก็ต้องรองรับฟีเจอร์พวกนั้นด้วย สุดท้ายเลยยังอยู่กับ Apple Notes ต่อ แต่รอบนี้ก็กำลังย้ายกลับไปโฟลเดอร์ Markdown ผ่าน Obsidian แบบทำมืออีกแล้ว เคยใช้การ export แต่ format พังจนต้องมานั่งแก้ทุกโน้ต
ตอนนี้ iCloud มีตัวเลือก "keep downloaded" ที่ทำให้เก็บทุกโฟลเดอร์และไฟล์ไว้ในเครื่องได้แล้ว เพราะอย่างนั้นทุกแอปที่เก็บไฟล์ไว้ใน iCloud ก็รองรับทั้งการทำงานออฟไลน์และการ sync ออนไลน์อัตโนมัติ
มีคนสงสัยว่าเวลาจัดการ sync conflict และรอบการ sync เป็นอย่างไร
มีคนถามว่าเวลาย้ายโฟลเดอร์ iCloud ยังใช้วิธีดาวน์โหลดก่อนแล้วค่อยอัปโหลดใหม่อยู่หรือเปล่า
มีคนแนะนำทางเลือกอย่างใช้ Codeberg หรือโฮสต์ Forgejo เองเพื่อเลี่ยง vendor lock-in
มีคนมองว่า GitHub Issues คือ bug tracker / ticketing system ที่ดีที่สุด ชื่นชมว่าอินเทอร์เฟซเข้าใจง่าย เรียบง่าย และเร็ว แต่ก็แอบกังวลนิดหน่อยว่าอาจพังเพราะ Microsoft redesign
อีกคนบอกว่าแม้จะเคยใช้ issue tracker หลายตัวในงาน แต่ก็ยังรู้สึกว่า GitHub ขาดฟีเจอร์สำคัญอยู่หลายอย่าง โดยเฉพาะการเขียน issue summary แยกจากคอมเมนต์ การควบคุมสิทธิ์เข้าถึงแบบละเอียดที่ให้บาง issue เห็นได้เฉพาะบางคน และการเพิ่มโน้ตส่วนตัวแบบไม่เปิดเผยที่ใช้จดชั่วคราวแทนคอมเมนต์สาธารณะ
มีการเปรียบเปรยว่า Azure DevOps เหมือนเป็น "หลุมแรงโน้มถ่วง" ที่มีไว้กันไม่ให้ปรัชญาการตลาดของ Microsoft ถูกดูดเข้าไปใน GitHub
มีคนชี้ว่าความเปิดกว้างลดลงไปแล้ว ทั้งกำแพงล็อกอินที่ถูกสร้างขึ้น และจำนวน issue ที่ค้นหาได้ซึ่งถูกจำกัดลงอย่างรวดเร็ว
น่าเสียดายที่ไม่มีความสามารถด้าน federation โครงสร้างที่รวมศูนย์แหล่งเก็บซอร์สขนาดยักษ์แบบนี้เป็นสิ่งที่ทั้งชุมชนนักพัฒนาควรหลีกเลี่ยง มีคนบอกว่าฟีเจอร์ federated merge request ของ GitLab ( issue ที่เกี่ยวข้อง ) เงียบมานาน 9 ปีแล้ว ถ้ามีแค่ฟีเจอร์นี้ ทุกคนก็น่าจะร่วมงานกันแบบ git ได้โดยไม่ต้องใช้ระบบรวมศูนย์ อ้างถึงกรณีที่ไม่นานมานี้ Microsoft บล็อกบัญชีอีเมลของอัยการศาลอาญาระหว่างประเทศตามคำสั่งของรัฐบาลสหรัฐฯ ทั้งที่เพิ่งโฆษณาไปไม่นานว่าจะยืนหยัดต่อสู้เพื่อสหภาพยุโรป เป็นความย้อนแย้งอย่างมาก ถ้า Trump ทน EU ไม่ไหวแล้ววันหนึ่งสั่ง Microsoft ให้ปิดการเข้าถึง GitHub จาก EU มันก็ทำได้จริง ควรคิดให้ดีว่าผลกระทบต่อธุรกิจและโอเพนซอร์สจะเป็นอย่างไร
มีคนเสริมว่าไม่ใช่แค่จีน แม้แต่เทคโนโลยีสหรัฐฯ เองก็ดูไม่น่าเชื่อถือขึ้นเรื่อย ๆ ดังนั้นหน่วยงานสาธารณะหรือรัฐบาลควรทบทวนการพึ่งพาเทคโนโลยีของประเทศใดประเทศหนึ่งอย่างจริงจัง
มีคนบอกว่าอยากลองทางเลือกอย่าง Radicle และถ้ารอให้สถานการณ์แย่กว่านี้แล้วค่อยเริ่ม สุดท้ายอาจได้แต่เสียดายทีหลัง
มันดูคล้าย Obsidian มาก แค่มีขั้นตอนเพิ่มขึ้นอีกหน่อย
มีคนแซวว่าขั้นตอนหนึ่งอาจเป็นการ "ต้องจ่าย $50 ต่อปีเพื่อให้เข้าถึงได้จากทุกอุปกรณ์" หรือ "ต้องจ่าย $100 ต่อปีเพื่อเข้าถึงผ่านเว็บ" ก็ได้
อีกคนบอกว่าจริง ๆ แล้ว Obsidian เองก็เหมือนเอาขั้นตอนเพิ่มเข้าไปบนไฟล์ข้อความเหมือนกัน แต่ตัวไฟล์ข้อความพื้นฐานนั้นทรงพลังมากอยู่แล้ว และก็มีหลายวิธีในการ sync ข้ามอุปกรณ์
ต่างจาก Obsidian, GitHub Issues ใช้งานได้เฉพาะออนไลน์ ถ้าแบ็กอัปไม่ได้ก็นับว่าเป็นปัญหาชัดเจน
มีคนสงสัยว่าสามารถโฮสต์ Obsidian เองได้หรือไม่ เพราะถ้าใช้ในงานแล้วก็ยังกังวลเรื่องความปลอดภัย จึงเสนอให้เก็บไว้แค่ในเครื่องและแบ็กอัปเฉพาะไฟล์ Markdown ด้วย OneDrive