1 คะแนน โดย GN⁺ 4 시간 전 | 2 ความคิดเห็น | แชร์ทาง WhatsApp
  • Tony Krueger มีส่วนร่วมสร้างฟีเจอร์ใน Microsoft Word ที่แสดงปัญหาการสะกด·ไวยากรณ์ด้วย เส้นหยักสีแดงและสีเขียว ทันที ทิ้งร่องรอย UI ที่ผู้ใช้แทบทุกคนเคยเห็น
  • ระบบตรวจสะกดของ Word ยุคแรกต้องให้ผู้ใช้เรียกใช้งานเอง และ Auto Spell Check ก็ยังเป็น งานแบบบล็อกการทำงาน ที่ขัดขวางงานเบื้องหน้า เช่น การบันทึก·การปิดโปรแกรม ทำให้ผู้ใช้จำนวนมากปิดฟีเจอร์นี้ไว้
  • Krueger จึงทำให้การตรวจสอบเป็นวิธีที่ รบกวนน้อยลง เพื่อไม่ให้หยุดผู้ใช้กลางคัน และเมื่อพบปัญหาก็จะแสดงใต้คำทันทีโดยไม่ต้องรอให้สั่งรันแยก
  • เขามีส่วนร่วมกับ Word 1.0, 1.1, 2.0, Word for OS/2, Word for Mac, Word 6.0 และอีกหลายเวอร์ชันหลังจากนั้น รวมถึงรับหน้าที่พอร์ต Chip’s Challenge มายัง Windows
  • ปัจจุบัน ไม่ใช่แค่เส้นหยักสีแดง แต่เส้นหยักสีเขียว·สีน้ำเงินก็แพร่หลายไปทั่วทั้งโปรแกรมประมวลผลคำและซอฟต์แวร์อื่น ๆ โดยผลงานของ Krueger ยังคงอยู่ในฐานะ UI ฟีดแบ็กระหว่างการแก้ไขที่ใช้ในชีวิตประจำวัน

Tony Krueger และ UI เส้นหยักของ Word

  • Tony Krueger เป็นบุคคลที่ผลงานเป็นที่รู้จักอย่างกว้างขวาง แต่ชื่อนั้นกลับเป็นที่รู้จักน้อยกว่าเมื่อเทียบกัน
  • ใน Wikipedia เขาถูกจดจำในฐานะผู้พอร์ต Chip’s Challenge สำหรับ Windows Entertainment Pack มายัง Windows
    • งานพอร์ตนี้เป็นการย้อนรอยวิศวกรรมโดยไม่มีซอร์สโค้ดของเวอร์ชัน MS-DOS แล้วนำกลับมาสร้างใหม่สำหรับ Windows
  • แต่โค้ดที่เข้าถึงผู้คนได้มากกว่าคือฟีเจอร์ การแสดงการสะกด·ไวยากรณ์ ของ Microsoft Word

ร่องรอยที่ทิ้งไว้ใน Word หลายเวอร์ชัน

  • Krueger มีส่วนร่วมในการพัฒนา Word หลายเวอร์ชัน
    • Word 1.0
    • Word 1.1
    • Word 2.0
    • Word for OS/2
    • Word for Mac
    • Word 6.0 และอีกหลายเวอร์ชันหลังจากนั้น
  • เขาถูกกล่าวถึงว่าอาจเป็นคนที่ถือสถิติ “ผู้ที่ออก Word ได้มากที่สุด”

เหตุผลที่ระบบตรวจสะกดยุคแรกใช้งานไม่สะดวก

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

การมาของเส้นหยักสีแดง·สีเขียว

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

ผู้คนที่จดจำฟีเจอร์นี้

  • Krueger เป็นแฟนยุคแรกของดูโอมายากล·คอเมดี Penn and Teller
  • เพื่อนและเพื่อนร่วมงานคนหนึ่งได้ขอลายเซ็นพร้อมรูปถ่ายจากทั้งคู่หลังการแสดงให้ Tony โดยบอกว่าคุณ Tony อยู่ในทีมเส้นหยักสีแดง·สีเขียวของ Word
  • Penn Jillette ตอบกลับด้วยเสียงดังจนดังก้องไปทั่วโรงละครว่า “The red and green squiggles!? I love the red and green squiggles!” และ Teller ก็เห็นด้วยอย่างเงียบ ๆ
  • Krueger ได้รับรูปถ่ายพร้อมลายเซ็นนั้นเป็นของขวัญวันเกิด และก็ไม่แน่ชัดว่าเขาดีใจมากกว่ากันระหว่างรูปพร้อมลายเซ็นนั้นกับการที่ Penn and Teller ชอบฟีเจอร์ของเขา
  • ภายหลัง วิดีโอล้อเลียน Word Crimes ของ “Weird Al” Yankovic ก็มีเส้นหยักสีแดงของ Word ปรากฏขึ้นช่วงสั้น ๆ และเพื่อนคนเดิมก็ไปขอลายเซ็นบนภาพแคปจากฉากนั้นมา

ร่องรอยที่ยังคงอยู่

  • เส้นหยักสีแดงยังคงอยู่ในฐานะฟีดแบ็กการแก้ไขในชีวิตประจำวัน ที่ช่วยจับความผิดพลาดของผู้ใช้
  • สิ่งที่ Krueger ทำไว้ก่อน ได้แพร่ขยายต่อมาเป็น วิธีแสดงข้อผิดพลาดของข้อความ ในซอฟต์แวร์จำนวนมาก

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

 
GN⁺ 1 시간 전
ความคิดเห็นใน Hacker News
  • ถ้าคุณยังทำงานอยู่ใน อุตสาหกรรมที่สร้างซอฟต์แวร์ และทิ้งชื่อไว้ในซอร์สโค้ด สักวันหนึ่งคุณอาจถูกจดจำจากผลิตภัณฑ์หรือฟีเจอร์ที่ไม่เคยนึกถึงมาก่อน
    ส่วนสิ่งที่คุณตั้งใจทำที่สุดและอยากให้คนจดจำจากสิ่งนั้นจริง ๆ กลับค่อย ๆ ถูกลืมไปตามเวลา กระบวนการสร้างบางอย่างนั้นอยู่ในการควบคุมของตัวเราเองทั้งหมด แต่การจะเป็นที่รู้จักจากอะไรนั้นอยู่นอกการควบคุมโดยสิ้นเชิง

  • Prowrite บน Amiga มีการตรวจสะกดแบบเรียลไทม์ก่อน Word เสียอีก
    ก่อนหน้านั้นอาจมีโปรแกรมอื่นที่มีฟีเจอร์แบบเดียวกันอยู่แล้วก็ได้ แต่ Prowrite ขีดเส้นหยักสีแดงใต้คำที่สะกดผิด
    https://www.atarimagazines.com/compute/issue123/P215_1_REVIE...

    • แน่ใจจริงหรือ? ในหน้าที่ลิงก์ไว้พูดแค่ว่า “ตัวตรวจสะกด 100,000 คำรองรับการตรวจช่วงข้อความ การค้นหาทีละคำ การตรวจต่อเนื่อง และการเพิ่มพจนานุกรมผู้ใช้” โดยไม่ได้พูดถึง การขีดเส้นใต้คำ เลย
      ผมหาภาพหน้าจอของฟีเจอร์นั้นก็ไม่เจอด้วย ถ้าเป็นจานสีของ AmigaOS 1.x สีมาตรฐานก็คือดำ/ขาว/น้ำเงิน/ส้ม ดังนั้นเส้นหยักก็น่าจะเป็นสีส้มมากกว่าสีแดง ส่วนหลัง AmigaOS 2 เป็นต้นไปใช้ดำ/ขาว/เทา/น้ำเงินเพื่อเอฟเฟกต์ 3D ดังนั้นสีเน้นอาจควรเป็นสีน้ำเงิน
    • ใน PC-Write บน DOS ก็มีเหมือนกัน
  • ในสภาพแวดล้อมที่ทำงานหลายภาษา เส้นใต้แบบหยัก มักไม่ค่อยมีประโยชน์
    ระบบพยายามเดาภาษาของข้อความที่ฉันกำลังเขียน แต่ส่วนใหญ่เดาผิด ผลลัพธ์คือกลายเป็นสัญญาณรบกวนทางสายตาที่ต้องคอยสู้หรือไม่ก็เมินมันไป การต้องเปลี่ยนการตั้งค่าภาษาด้วยมือทุกครั้งที่มีปฏิสัมพันธ์ก็ไม่สะดวกเกินไป

    • ผมตั้งคีย์ลัดให้กับ character style ที่ใช้กำหนดภาษาสำหรับการพิสูจน์อักษร เช่น shift-alt-1 สำหรับอังกฤษ shift-alt-2 สำหรับเยอรมัน
      เพราะเป็น character style มันจึงใช้ได้ทั้งกับตำแหน่งที่กำลังพิมพ์อยู่และช่วงข้อความที่เลือกไว้ จึงจัดการได้แม้ลืมตั้งค่าล่วงหน้าแล้วปล่อยให้ทั้งบรรทัดเต็มไปด้วยเส้นหยัก หรือจะตั้งภาษาพิสูจน์อักษรของทั้งข้อความเป็น None เพื่อปิดการตรวจสะกดและไวยากรณ์ทั้งหมดก็ได้
    • ผมก็มีปัญหาเดียวกัน โปรแกรมแต่ละตัวจัดการได้ต่างกัน แต่ ชุดโปรแกรม Affinity แย่เป็นพิเศษ
  • น่าสนใจที่บทความของ Chen ชี้ไปที่หน้า Wikipedia เป็นหลักฐานว่า Tony Krueger เป็นคนพอร์ตมันมา
    แต่ในฉบับล่าสุด แหล่งอ้างอิงของข้อความนั้นกลับลิงก์ย้อนมาที่บทความของ Chen อีกที

    • ถ้าเรียงตามเวลาเป็นแบบนี้: ก่อนที่บทความของ Chen จะถูกเพิ่มเป็นแหล่งอ้างอิง หน้าบน Wikipedia คือ https://en.wikipedia.org/w/index.php?title=Chip%27s_Challeng... และข้อความว่า “Tony Krueger เป็นคนเขียนโค้ด” อ้างอิงจาก “กล่อง About ของเกม” ส่วนข้อความว่า “[Krueger] เขียนมันในช่วงหน้าร้อนหนึ่ง” อ้างอิงจากโพสต์ในฟอรัม
      บทความของ Chen เขียนว่า “Tony Krueger ถูกจดจำใน Wikipedia ว่าเป็นคนที่พอร์ต ...” แล้วใส่เชิงอรรถเพิ่มว่า “สิ่งที่อาจไม่ได้มีการบันทึกไว้อย่างแพร่หลายเท่ากันคือเขาทำสิ่งนี้ได้โดยไม่มีซอร์สโค้ด เขาย้อนวิศวกรรมเวอร์ชัน MS-DOS แล้วนำมาเขียนใหม่สำหรับ Windows” หลังจากนั้นบทความ Wikipedia ก็อ้างบทความของ Chen สำหรับข้อมูลเพิ่มเติมส่วนนั้น ทั้งหมดนี้ไม่มีปัญหาและเหมาะสมดี และผมเพิ่งแก้ไขให้การอ้างอิงชัดเจนขึ้นอีกครั้ง
    • เพื่อความชัดเจน การอ้างบล็อกของ Raymond Chen นั้นผูกไว้โดยเฉพาะกับข้ออ้างว่า ไม่มีซอร์สโค้ดจึงต้องย้อนวิศวกรรมเวอร์ชันพอร์ต MS-DOS
      ก่อนการแก้ไข เกมเองถูกใช้เป็นหลักฐานว่า Tony กับ Ed Halley เป็นผู้พัฒนา แต่คนที่เพิ่มเกร็ดเรื่องการย้อนวิศวกรรมจากบล็อกของ Chen แยกประโยคออก ทำให้การอ้างอิงชื่อผู้พัฒนาไปผูกกับอีกคนแทน
      https://en.wikipedia.org/w/index.php?title=Chip%27s_Challeng...
    • Chen ไม่ได้ใช้ Wikipedia เป็นหลักฐานว่า Krueger เป็นคนพอร์ตเกม
      เขาเพียงชี้ให้เห็นว่า Wikipedia ระบุงานใดเป็นสิ่งที่ Krueger เป็นที่รู้จักมากที่สุด แล้วจึงเติมอีกเรื่องที่น่าจดจำเกี่ยวกับ Krueger เข้าไป คือ เส้นใต้แบบหยัก ถ้าอ่านบทความของ Chen ทั้งหมดจะเห็นว่าเขาเพิ่มรายละเอียดเรื่องการพอร์ตไว้ด้านล่างด้วย จึงชัดเจนว่าเขารู้ข้อเท็จจริงนี้ดี ใช้บทความนี้เป็นหลักฐานเรื่องการพอร์ตได้ ไม่มีปัญหา แม้ใน Wikipedia จะเกิดห่วงโซ่อ้างอิงแบบวนกลับเช่นนี้ขึ้นจริงบ่อย ๆ แต่กรณีนี้ดูจะไม่ใช่
  • ชอบบทความแบบนี้มาก จากความเป็นไปได้มากมายนับไม่ถ้วน ดันเป็น เส้นหยัก ที่ถูกเลือก และยังมาจากการตัดสินใจสด ๆ ของคนคนเดียว แต่สุดท้ายกลับเปลี่ยนโลกไปอย่างสิ้นเชิง

    • ทุกความเป็นไปได้เกิดขึ้นหมดแล้ว และตอนนี้เราแค่อยู่ใน จักรวาลที่ลงเอยเป็นเส้นหยัก เท่านั้นเอง
  • ถึงผมจะไม่ได้ชอบเส้นใต้แบบหยักเสมอไป แต่ก็ยอมรับว่าเป็น รูปแบบ UI ที่ดี
    ในบรรดาตัวบ่งชี้ทางภาพที่ใช้บอกว่า “คำนี้มีบางอย่างผิดปกติ” มันเป็นหนึ่งในแบบที่เข้าใจง่ายและสังเกตเห็นได้ง่ายที่สุด

  • แค่เห็นชื่อหัวข้อกับโดเมน microsoft.com ก็เดาได้ทุกทีว่านี่เป็นบทความของ Raymond ผมชอบเขามากจริง ๆ

  • “เขาทำสิ่งนี้ได้โดยไม่มีซอร์สโค้ด” เหรอ แน่นอนอยู่แล้ว ที่นี่คือ HN จะมีใครต้องการซอร์สโค้ดกันล่ะ
    แต่ถ้าเป็นผม แทนที่จะย้อนวิศวกรรม ผมน่าจะหาอีมูเลเตอร์หรือไม่ก็สร้างขึ้นมา เพราะอาจมีคนมาขอให้ “พอร์ต” ซอฟต์แวร์อื่นอีก ความจริงที่ว่าคนส่วนใหญ่ไม่รู้ว่าใครควรรับผิดชอบต่อฟีเจอร์ดี ๆ และฟีเจอร์แย่ ๆ ในซอฟต์แวร์ที่เราใช้กันอยู่นั้นน่าเศร้าจริง ๆ หนังมีธรรมเนียมขึ้น เครดิต ยาว ๆ ตอนจบ และผมชอบอ่านมันอย่างละเอียด วงการพัฒนาซอฟต์แวร์ก็ควรมีวัฒนธรรมแบบนั้นด้วย บางเกมก็ทำอยู่ และ Easter egg บางอย่างก็ทำหน้าที่นั้น

  • ถ้าปิด การตรวจสะกด ได้ถาวรคงดีมาก
    รู้ว่าเป็นรสนิยมเฉพาะกลุ่มมาก ๆ แต่ผมอยู่กับความผิดพลาดของตัวเองได้ และไม่อยากต้อง “สอน” คำสแลง ศัพท์เทคนิค หรือคำย่อพวกนั้นซ้ำแล้วซ้ำอีก ผมสงสัยบ่อย ๆ ว่าคนที่เขียนภาษาอังกฤษแบบไม่เป็นมาตรฐานสมัยนี้อยู่รอดกันอย่างไร จินตนาการไม่ออกเลยว่า James Joyce จะชอบมัน

    • มีอะไรขวางอยู่หรือ? บนอุปกรณ์ทุกเครื่องของผม ผมปิด การตรวจสะกด ไว้หมดแล้ว
      ถึงผมจะไม่ได้เป็นเจ้าของภาษา ดังนั้นมันน่าจะช่วยได้แน่ แต่ผมก็ไม่ชอบเหมือนกันเวลามันมาบ่นหรือแก้อัตโนมัติกับสตริงที่ตั้งใจเขียน
    • ใน MS Word มีตัวเลือก “Check spelling as you type” ที่ปิดได้ การตรวจไวยากรณ์ก็เช่นกัน
  • จำได้ว่า Larry Constantine เกลียดเส้นใต้แบบหยักมาก
    ตามคำอธิบายของเขา เวลาคนกำลังเขียนก็ควรคิดถึงคำถัดไปอยู่เสมอ แต่เส้นหยักกลับดึงความสนใจไปยังคำที่เขียนไปแล้ว เหมือนมันตะโกนว่า “เฮ้ ฟังนะ! คิดว่าตัวเองสะกดคำเป็นจริงเหรอ? แล้ว fatouos ที่เพิ่งเขียนนั่นมันอะไร?” แล้วก็คอยกวนไม่เลิกจนกว่าคุณจะหยุด คลิกคำที่มีเส้นใต้แบบหยัก และแก้ให้ถูก มันแทบจะเป็น รูปแบบดึกดำบรรพ์ของ Clippy เลย
    ถ้า Word มีสองโหมดแบบ vi ก็น่าจะแก้ได้ ในโหมดเขียนก็ไม่รบกวนอะไรเลย ให้แค่เขียนไป พอกดปุ่มสลับไปโหมดแก้ไขเมื่อไร ค่อยปล่อยเส้นหยักกับคำแนะนำจาก AI ออกมาเต็มที่

 
GN⁺ 4 시간 전
ความคิดเห็นจาก Lobste.rs
  • เป็นมรดกที่น่าสนใจ ดีแล้วที่เส้นใต้แบบคลื่นได้รับการตอบรับที่ดี
    แล้วเชิงอรรถนี้ก็น่าทึ่งมาก: “อาจไม่ได้เป็นที่รู้จักอย่างกว้างขวาง แต่เขาทำ[การพอร์ต Chip's Challenge]ได้โดยไม่มีซอร์สโค้ด เขาย้อนรอยวิศวกรรมเวอร์ชัน MS-DOS แล้วนำมาสร้างใหม่สำหรับ Windows”
    • การพยักหน้าให้กับ Penn and Teller / Weird Al ก็น่าจะเป็นความรู้สึกที่ยอดเยี่ยมมากด้วย
      เพิ่งไปดูมา Tony ทำงานที่ Microsoft ตั้งแต่ปี 1989 จนถึงที่สุด และถ้าคำนวณไม่ผิดก็น่าจะทำงานมานานกว่า 37 ปีเล็กน้อย
  • ปฏิกิริยาแรกคือ “ว้าว ทำให้สิ่งนี้ไม่กินเวลาไปหลายวินาทีแบบไม่หยุดดูเหมือนจะง่ายนะ”
    แต่แล้วก็คิดได้ว่าถ้าเป็นช่วงต้นยุค 90 RAM คงมีแค่ 4–8MB และคงไม่สามารถโหลดรายการคำภาษาอังกฤษทั้งหมดไว้ในหน่วยความจำได้เฉยๆ อีกทั้งไม่รู้ว่าการจัดการมัลติเธรดของ C++ ในช่วงต้นยุค 90 เป็นอย่างไร แต่ขนาดช่วงปลายยุค 2000 ยังน่าหงุดหงิดอยู่เลย จึงน่าจะเป็นปัญหาที่ค่อนข้างยาก
    • Word ’95 ทำงานบน Windows 95/NT ดังนั้นจึงใช้ preemptive multitasking และ Win32 อยู่แล้ว และน่าจะทำให้การทำมัลติเธรดง่ายและเสถียรกว่า Windows 3.x เหตุผลหลักที่ UI เส้นใต้แบบคลื่นสีแดงทำได้ก็น่าจะมาจากจุดนั้น
      ส่วนเรื่องขนาดพจนานุกรม ตัวตรวจสะกดรุ่นแรกๆ ตัวหนึ่งสามารถใส่พจนานุกรมภาษาอังกฤษลงใน RAM 64KB ได้สำเร็จตั้งแต่ช่วงปลายยุค 1970 (ดู Programming pearls ของ Jon Bentley) หากใช้ DAWG ก็สามารถบีบอัดพจนานุกรมอังกฤษขนาดกลางราว 100,000 คำให้เหลือ 400KB และค้นหาคำแนะนำการสะกดได้รวดเร็วด้วย: https://www.strchr.com/ternary_dags
  • เป็นฟีเจอร์ที่ดี แต่เพราะคนชอบใช้ภาพหน้าจอ พอเส้นใต้แบบคลื่นหลุดเข้าไปอยู่ในงานพิมพ์หรือสไลด์พรีเซนเทชันเมื่อไรก็สะดุ้งทุกครั้ง
    • ปกติดูเหมือนจะมาจาก Google Docs หรือ Apple Notes บ่อยกว่า และแค่ดูสไตล์เริ่มต้นก็มักแยกออกได้