คอมพิวเตอร์ควรทำงานอย่างไร
(pkgdemon.github.io)- ระบบปฏิบัติการควรช่วยให้ผู้ใช้รันโปรแกรมได้โดยที่ผู้ใช้แทบไม่ต้องรับรู้ถึงการมีอยู่ของมัน แต่ระบบปฏิบัติการในปัจจุบันเบี่ยงเบนจากเป้าหมายนี้ไปแล้ว จึงจำเป็นต้องมี อุปกรณ์แบบออฟไลน์เป็นหลัก
- ระบบและแอปพลิเคชันควรมีขนาดเล็กพอที่จะคอมไพล์ได้แม้บน เครื่องทรัพยากรต่ำ และบน CI/CD ระดับฟรีขั้นต่ำ อีกทั้งควรรันได้ทั้งบนอุปกรณ์ใหม่และอุปกรณ์เก่า
- การล็อกอิน การติดตั้งแอป และการเปิดใช้งานแอป ไม่ควรบังคับให้ต้องมีการเชื่อมต่ออินเทอร์เน็ตหรือเข้าสู่ระบบด้วยบัญชี และแอปควรถูกย้ายผ่าน ไดรฟ์ USB เพื่อใช้งานแบบออฟไลน์ได้อย่างถาวร
- การอัปเกรดควรทำได้ด้วยการบูตจาก ISO เพื่ออัปเดตเฉพาะระบบโดยคงข้อมูลผู้ใช้และแอปพลิเคชันไว้ และควรสามารถใช้เครื่องหนึ่งในหลายเครื่องเป็น เซิร์ฟเวอร์ ได้
- การเขียนหนังสือ การทำเพลง การแต่งภาพและวิดีโอ ไม่จำเป็นต้องใช้เครื่องที่เปิดตลอดเวลาและเชื่อมต่ออินเทอร์เน็ตอยู่เสมอ คอมพิวเตอร์ควรเป็นเครื่องมือที่ช่วยงานสร้างสรรค์อย่างเงียบ ๆ ตราบเท่าที่ฮาร์ดแวร์ยังใช้งานได้
อุปกรณ์แบบออฟไลน์เป็นหลักที่ระบบปฏิบัติการถอยไปอยู่เบื้องหลัง
- คอมพิวเตอร์ควรเป็นอุปกรณ์ที่ช่วยให้ผู้ใช้ใช้ โปรแกรม ได้ มากกว่าจะดันให้ระบบปฏิบัติการมาอยู่เบื้องหน้า
- ระบบควรใช้พื้นที่ให้น้อยที่สุดเท่าที่จะทำได้ และทั้งระบบกับแอปพลิเคชันควรคอมไพล์ได้แม้บน เครื่องทรัพยากรต่ำ
- ควรคอมไพล์ได้แม้บนตัวเลือก CI/CD ฟรีระดับล่างสุดของคลาวด์
- ควรรันได้ทั้งบนเครื่องใหม่และเครื่องเก่า
- กระบวนการบูตควรดำเนินไปอย่าง เงียบ ๆ โดยไม่มีข้อความตัวอักษรแม้แต่บรรทัดเดียว เว้นแต่ผู้ใช้จะร้องขอ log แบบละเอียดหรือ recovery command line ผ่านคีย์ลัดเฉพาะ
- หน้าจอบูตควรเป็นพื้นหลังสีสว่าง
- การล็อกอินไม่ควรต้องใช้อินเทอร์เน็ต
- หากผู้ใช้ต้องการ ควรบูตเข้าเดสก์ท็อปได้ทันทีโดยไม่ต้องใช้รหัสผ่าน
- ควรเลือกสร้างบัญชีแบบไม่มีรหัสผ่านได้ หรือเลือกบัญชี guest แบบใช้ครั้งเดียวที่รันอยู่ในหน่วยความจำเท่านั้นและไม่ถูกบันทึก
แอปที่เป็นเจ้าของได้และฮาร์ดแวร์ที่ใช้งานได้นาน
- ผู้ใช้ควรดาวน์โหลด แอปพลิเคชัน จากอินเทอร์เน็ตได้โดยไม่ต้องล็อกอินกับบริการใด ๆ
- ควรคัดลอกแอปพลิเคชันลงแฟลชไดรฟ์ แล้วนำไปเสียบใช้กับระบบที่ไม่มีอินเทอร์เน็ตได้
- หลังจากนั้นก็ควรใช้งานได้อย่างถาวรโดยไม่ถูกบังคับให้เชื่อมต่ออีก
- การอัปเกรดระบบไม่ควรลบดิสก์ แต่ควรอัปเดต เฉพาะระบบ โดยคงข้อมูลผู้ใช้และแอปพลิเคชันไว้
- ผู้ใช้ควรดาวน์โหลด ISO บูตขึ้นมา แล้วทำการอัปเกรดได้
- ในสภาพแวดล้อมที่มีหลายเครื่อง ควรกำหนดเครื่องหนึ่งเป็นเซิร์ฟเวอร์เพื่อสร้างบัญชีผู้ใช้ และให้ระบบอื่นบูตผ่านเครือข่าย รันแอปพลิเคชัน หรือทำ network login ได้
- เซิร์ฟเวอร์เดี่ยวไม่ควรต้องตั้งค่าเพิ่มเติม
- ในสถานการณ์ที่ฮาร์ดแวร์ใหม่มีราคาแพงขึ้นจากความต้องการ AI และปัญหาการขาดแคลนด้านอุปทานอื่น ๆ แนวทางที่รองรับเฉพาะอุปกรณ์ใหม่จึงไม่เหมาะสม
- ผู้ใช้ควรซื้อเครื่องรีเฟอร์บิชแทบรุ่นใดก็ได้แล้วนำมารันอุปกรณ์และเดสก์ท็อปนี้ได้
- การเขียนหนังสือ การทำเพลง การแต่งภาพ และการตัดต่อวิดีโอ ไม่จำเป็นต้องใช้เครื่องที่เปิดตลอดเวลาและเชื่อมต่ออินเทอร์เน็ตเสมอไป
- คอมพิวเตอร์ควรเปิดโอกาสให้ผู้ใช้สร้างสิ่งต่าง ๆ ได้อย่างเงียบ ๆ ตามเงื่อนไขของตนเอง และไม่รบกวนจนกว่า อายุการใช้งานของฮาร์ดแวร์ จะสิ้นสุด
1 ความคิดเห็น
ความเห็นบน Lobste.rs
นี่จึงเป็นเหตุผลที่ผมยังคงทำงานกับ Haiku ต่อไปให้มากที่สุดเท่าที่จะทำได้ เพราะมันตอบโจทย์แทบทุกข้อที่พูดถึงตรงนี้
ผมไม่ได้อยากให้คอมพิวเตอร์กลายเป็นเหมือน เครื่องใช้ไฟฟ้า เพราะนั่นหมายถึงการปรับแต่งและการบำรุงรักษาจะถูกจำกัด ถึงอย่างนั้นก็ยังเห็นด้วยกับเจตนาโดยรวม
สิ่งที่สะดุดตาเป็นพิเศษในกรอบความคิดนี้คือคำว่า แอปพลิเคชันที่เป็นเจ้าของจริง ๆ
แนวคิดเรื่องแอปพลิเคชันเกิดมาจากโมเดลธุรกิจซอฟต์แวร์แบบปิด มันมีอยู่เพื่อสร้างพื้นที่แยกขังผู้ใช้ไว้และกันไม่ให้ย้ายไปที่อื่นได้ มีทั้งรูปแบบไฟล์ของตัวเองและ UI ของตัวเอง และจะยอมให้ทำงานร่วมกันได้เพียงเล็กน้อยเท่าที่หลีกเลี่ยงไม่ได้หรือแบบเสียไม่ได้
ผมไม่เข้าใจว่าทำไมเราถึงอยากสร้างสิ่งนี้ขึ้นมาอีกครั้งบนคอมพิวเตอร์ที่ออกแบบมาเพื่อผู้ใช้
Canon Cat ของ Jef Raskin น่าจะเข้าใกล้แนวทางนี้พอสมควร แต่ก็ล้มเหลวในเชิงพาณิชย์
มันทำให้นึกถึง Jeff Raskin's "Design Considerations for an Antropophilic Computer" ที่เกี่ยวกับการออกแบบ Apple Macintosh มาก เป็นบทความที่อ่านเมื่อไรก็ดีเสมอ
เนื้อหาส่วนใหญ่แบบนี้ฟังดูคล้าย Classic MacOS
ส่วนตัวผมกำลังทำ ‘เครื่องพิมพ์ดีดดิจิทัล’ อยู่ และแนวคิดตอนนี้ก็ประมาณว่า “บูตเข้า Emacs และจะไม่เปิดการเชื่อมต่อเครือข่ายจนกว่าจะร้องขอ”
เพิ่งซื้อล็อปท็อปราคาถูกมาเพื่อจะ “บูตเข้า Emacs” และกำลังคิดว่าแค่ kmscon เพื่อรัน
emacs -nwจะพอไหม หรือจำเป็นต้องมีกราฟิกเซสชันแบบขั้นต่ำถ้ามีอะไรเพิ่มเติมมาแชร์ทีหลังจะดีมาก
LibreELEC ดูเหมือนจะเข้าใกล้แนวทางนี้อยู่บ้าง แน่นอนว่ามันไม่ใช่ ระบบปฏิบัติการอเนกประสงค์ เพราะรันแอปพลิเคชันที่ผู้ใช้มองเห็นได้เพียงตัวเดียว