นี่คือชายผู้ที่คิดค้น “คำสั่งยกเลิกคำสั่งที่ทำไป”(Undo)

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

รูปที่ 1.  วอร์เรน เทเทลแมน (Warren Teitelman) (อ้างอิง: )

นี่คือวอร์เรน เทเทลแมน (Warren Teitelman) ผู้คิดค้นหรือสร้างคำสั่ง ยกเลิกคำสั่งที่ทำไป (Undo), ทำซ้ำ (Redo), ประวัติ (History), การแก้ไขการสะกดผิดอัตโนมัติ (Spelling Correction), ระบบช่วยเหลือออนไลน์ (Online Help), ระบบหน้าต่างไคลเอนต์-เซิร์ฟเวอร์ (Client-Server Window Systems), หน้าต่างที่ทับซ้อนกันหลายหน้าต่าง (Multiple Overlapping Windows) และเครื่องมือสำหรับการตั้งค่าเริ่มต้นและการตั้งค่า

วอร์เรนเกิดในปี ค.ศ. 1941 ที่ฟิลาเดลเฟีย รัฐเพนซิลเวเนีย และไปโตที่เมืองไมอามี รัฐฟลอริดา เขาเรียนที่สถาบันเทคโนโลยีแคลิฟอร์เนีย (California Institute of Technology) โดยสำเร็จการศึกษาระดับปริญญาตรีสาขาคณิตศาสตร์ ในยุคก่อนปริญญาวิทยาการคอมพิวเตอร์ ในปี ค.ศ. 1963 เขาสำเร็จการศึกษาระดับปริญญาโทจากสถาบันเทคโนโลยีแมสซาชูเซตส์ (MIT) ภายใต้การแนะนำของมาร์วิน มินสกี้ (Marvin Minsky) ที่ปรึกษาวิทยานิพนธ์ของเขา ในวิทยานิพนธ์ระดับปริญญาโทของเขาคือ สี่เหลี่ยมผืนผ้า ซึ่งใช้ในการวาดอักขระ โดยแบ่งออกเป็นสองส่วน ส่วนหนึ่งแรเงาและอีกส่วนหนึ่งไม่มีเงา การใช้ส่วนนี้ คอมพิวเตอร์จะแปลงอักขระเป็นเวกเตอร์ที่ประกอบด้วย 3 ค่า 0, 1 และลบ ด้วยวิธีต่อไปนี้ หากปากกาเข้าสู่บริเวณแรเงา จะมีการเพิ่ม 1 ลงในเวกเตอร์ เมื่อป้อนขอบเขตที่ไม่แรเงา 0 จะถูกต่อท้าย วิทยานิพนธ์นี้ยังคงถูกอ้างถึงเป็นเวลาหลายทศวรรษ ในระดับปริญญาเอก วิทยานิพนธ์ของวอร์เรนอธิบายโปรแกรมนำทาง (Pilot) ของเขา

เขาเริ่มทำงานที่เออาร์พีเอพริ้นซิเปิลอินเวสติเกเตอร์ (ARPA Principal Investigator) ตั้งแต่ปี ค.ศ. 1968 ถึง ค.ศ. 1978 โดยทำหน้าที่รับรับผิดชอบการออกแบบและพัฒนาที่บีบีเอนลิสพ์ (BBN LISP),โบล์ต (Bolt),เบราเน็ก (Beranek) และนิวแมน (Newman) โดยพัฒนาแนวคิดของระบบการเขียนโปรแกรมสำหรับคอมพิวเตอร์ส่วนบุคคล เขาใช้อาร์พาเน็ต (Arpanet) เพื่อสนับสนุนผู้ใช้บีบีเอนลิสพ์ที่สแตนฟอร์ด (Stanford), มหาวิทยาลัยเซาเทิร์นแคลิฟอร์เนีย (USC) และมหาวิทยาลัยคาร์เนกีเมลลอน (CMU) ในปี ค.ศ. 1970 และได้รับการเสนอชื่อให้เป็นผู้บุกเบิกอาร์พาเน็ตอย่างเป็นทางการ เนื่องจากมีส่วนในการพัฒนาและเติบโต เขาได้พัฒนาโปรแกรมผู้ช่วยโดยเป็นส่วนหนึ่งของบีบีเอนลิสพ์ ซึ่งเป็นหนึ่งในฟังก์ชันยกเลิกคำสั่งที่ทำไป (Undo) ก่อนในปี ค.ศ. 1971 เขาได้พัฒนาโปรแกรมบนเอสดีเอส 940 (SDS 940) สำหรับบ๊อบ คาห์น (Bob Kahn) ซึ่งอนุญาตให้ทดลองกับนโยบายการกำหนดเส้นทางต่างๆ เพื่อดูผลกระทบต่อการรับส่งข้อมูลเครือข่ายและการตรวจสอบตามเวลาจริง

รูปที่ 2.  วอร์เรน เทเทลแมน (Warren Teitelman) (อ้างอิง: )

เขาทำงานเป็นนักวิทยาศาสตร์อาวุโสที่ซีร็อกซ์ปาร์ก (Xerox PARC) ตั้งแต่ปี ค.ศ. 1972 ถึง ค.ศ. 1984 ในช่วงเวลานี้เขาออกแบบอินเตอร์ลิสพ์ (Interlisp) บิล จอย (Bill Joy) ยอมรับว่าแนวคิดมากมายในซีเชล (C shell) ได้รับแรงบันดาลใจและคัดลอกมาจากอินเตอร์ลิสพ์ ในอินเตอร์ลิสพ์เขาได้คิดค้นคำสั่งทำในสิ่งที่ฉันหมายถึง (Do What I Mean: DWIM) ซึ่งเป็นฟังก์ชันที่พยายามแก้ไขข้อผิดพลาดในการพิมพ์ทั่วไปจำนวนมาก มันเป็นชุดของลิสพ์รูทีน (Lisp Routine) ที่จะแก้ไขข้อผิดพลาดโดยอัตโนมัติหรือด้วยการแทรกแซงของผู้ใช้เล็กน้อย ซึ่งทำให้โค้ดทำในสิ่งที่ผู้ใช้หมายถึง ไม่ใช่สิ่งที่พวกเขาเขียน

ในปี ค.ศ. 1972 โปรแกรมนี้ได้รับการพัฒนาตามสไตล์การเขียนและลักษณะเฉพาะของวอร์เรน และยังถูกนำไปใช้โดยบุคคลอื่นในสำนักงานของเขา ตามด้วยผู้ใช้ทั่วทั้งอุตสาหกรรม ในปี ค.ศ. 1977 เขาและบ๊อบ สปรัวร์ (Bob Sproulle) ได้ใช้ระบบหน้าต่างไคลเอ็นต์–เซิร์ฟเวอร์, ดีลิสพ์ดีลิสพ์ (D-Lisp D-Lisp) ที่ใช้เอลโต (Alto) เป็นอุปกรณ์แสดงผลที่รันตัวจัดการหน้าต่างและตัวจัดการเหตุการณ์ โดยสื่อสารกับอินเตอร์ลิสพ์ที่ทำงานบน MAXC (โคลน PDP-10) ซึ่งระบบนี้เป็นระบบที่บุกเบิกแนวคิดต่างๆ เช่น หน้าต่างที่ทับซ้อนกัน โดยที่หน้าต่างที่มีการโฟกัสไม่จำเป็นต้องอยู่ด้านบนสุดเพื่อรับเหตุการณ์ ความช่วยเหลือตามบริบทขณะนั้นและความสามารถในการตัด คัดลอก และวางจากคำสั่งก่อนหน้านี้ที่มอบให้กับเชลล์

เขาเข้าร่วมโครงการซีดาร์ (Cedar) ในปี ค.ศ. 1980 และทำการวิจัยในภาษาที่มีการพิมพ์อย่างชัดเจนและเพื่อให้แน่ใจว่าสิ่งแวดล้อมการเขียนโปรแกรมซีดาร์ (Cedar Programming Environment) จะได้รับประโยชน์จากบทเรียนบางส่วนของอินเตอร์ลิสพ์ ซึ่งบทความของเขาทัวร์ผ่านซีดาร์ (A Tour Through Cedar) ได้รับการตีพิมพ์ อ้างอิง และแปลเป็นภาษาต่างๆ อย่างกว้างขวาง หลักการวอร์เรนที่เป็นชื่อเดียวกันกล่าวว่า หากบุคคลร้องขอคุณสมบัติที่จะเพิ่มลงในโปรแกรมอย่าเพิ่มคุณสมบัติ แต่ค้นหาวิธีที่จะทำให้โปรแกรมเมอร์เพิ่มคุณสมบัติด้วยตนเองได้ง่ายขึ้น วอร์เรนยังเป็นผู้สนับสนุนในช่วงต้นของการใช้อีเมลเป็นคุณลักษณะแบบมัลติทาสกิ้งของคอมพิวเตอร์สมัยใหม่

รูปที่ 3.  วอร์เรน เทเทลแมน (Warren Teitelman) (อ้างอิง: )

ในปี ค.ศ 1984 เขาร่วมงานกับซันไมโครซิสเต็มส์ (Sun Microsystems) และในปี ค.ศ. 1986 ได้กลายเป็นวิศวกรดีเด่นคนแรกของซันไมโครซิสเต็มส์ เขายังดำรงตำแหน่งผู้อำนวยการด้านมัลติมีเดียของซันไมโครซิสเต็มส์จนกระทั่งเขาจากไปในปี ค.ศ. 1992 เขาทำงานเป็นผู้อำนวยการด้านสภาพแวดล้อมการเขียนโปรแกรมสำหรับราติเนลซอฟต์แวร์ (Rational Software) ,ลูซิด (Lucid Inc.) และ แคร์ คอร์ปอเรชั่น (Caere Corporation) เขาเป็นหนึ่งในผู้ก่อตั้งสตาร์ทอัพที่ชื่อว่าเบยสโตนซอฟต์แวร์ (BayStone Software) ซึ่งพัฒนาซอฟต์แวร์การจัดการลูกค้าสัมพันธ์ (Customer Relations Management: CRM) โดยใช้ระบบคำขอดำเนินการ (Action Request) จากเรเมดี้ คอร์ปอเรชั่น (Remedy Corporation) เขาคิดค้นแนวคิดของกฎเกณฑ์ทางธุรกิจ ซึ่งเป็นองค์ประกอบของข้อมูล แทนที่จะเป็นรหัส ที่รวบรวมกระบวนการทางธุรกิจส่วนใหญ่ ของเรเมดี้เข้าซื้อกิจการเบยสโตนในปี ค.ศ. 1998 และดำรงตำแหน่งหัวหน้านักวิทยาศาสตร์ของหน่วยธุรกิจการจัดการลูกค้าสัมพันธ์​​ที่เรเมดี้ เขาเข้าทำงานร่วมกูเกิล (Google) ในปี ค.ศ. 2003 จากนั้นเขาได้เสียชีวิตเมื่อวันที่ 12 สิงหาคม ค.ศ. 2013

อ้างอิง: Peoplepill, Warrenteitelman

Leave a Reply

Your email address will not be published. Required fields are marked *