Barbara Liskov

บาร์บาร่า ลิสกอฟ (Barbara Liskov)

ACM Turing 2008

บาร์บาร่า เดิมชื่อ บาร์บาร่า ฮูเบอร์แมน (Barbara Jane Huberman) เกิดวันที่ 7 พฤศจิกายน 1939 ในซานฟรานซิสโก, แคลิฟอร์เนีย พ่อของเธอชื่อโมเซส (Moses Huberman) และแม่ชื่อเจน (Jane Dickhoff) บาร์บาร่าเป็นลูกคนโตในพี่น้องทั้งหมดสี่คน 

1961 จบปริญญาตรีด้านคณิตศาสตร์จากมหาวิทยาลัยแคลิฟอร์เนีย (University of California, Berkeley) หลังจากเรียนจบได้เข้าทำงานที่บริษัทไมทรี (Mitre Corporation) ซึ่งเธอได้ทำงานเกี่ยวกับการเขียนโปรแกรม

1962 ย้ายมาทำงานที่ฮาร์วาร์ด (Harward) โดยได้ทำงานเขียนโปรแกรมเพื่อแปรภาษาของมนุษย์

1968 จบปริญญาเอกทางด้านคอมพิวเตอร์จากสแตนฟอร์ด (Stanford University)  ซึ่งเธอได้เขียนวิทยานิพนธ์เกี่ยวกับโปรแกรหมากรุก “Computer program to play chess endgames” โดยที่มีจอห์น แม็คคาร์ธี (John McCarthy) เป็นอาจารย์ที่ปรึกษา บาร์บาร่าถือเป็นผู้หญิงอเมริกันคนแรกที่จบปริญญาเอกในสาขาคอมพิวเตอร์

หลังจากเรียนจบเธอได้แต่งงานกับนาธาน (Nathan Liskov) และได้กลับมาทำงาน บ.ไมทรี โดยได้ทำงานในส่วนของการออกแบบคอมพิวเตอร์และเขียนโปรแกรมระบบปฏิบัติการณ์ 

ซึ่งบาร์บาร่าได้ใช้คอมพิวเตอร์ Interdata Model 3 ซึ่งสามารถเปลี่ยนแปลงชุดคำสั่งได้โดยการตั้ง ไมโครโค๊ด (microcode) ได้ ในการทดลองสร้างคอมพิวเตอร์ของเธอเองขึ้นมาชื่อ “Venus Computer” และได้เขียนระบบปฏิบัติการณ์ “Venus operation system” ขึ้นมาควบคุม ซึ่ง Venus OS เป็นมีความสามารถแบบไทม์แชริ่ง (timesharing system) ซึ่งผู้ใช้งานสามารถใช้งานพริ้นเตอร์ร่วมกันได้ผ่าน VM (visual machine) ซึ่งความผิดผลาดที่เกิดกับยูเซอร์แต่ละคนก็จะไม่ส่งผลกระทบต่อการทำงานของระบบทั้งหมด 

1971 ได้รับตำแหน่งศาสตราจารย์ที่ MIT ในห้องวิจัยของคณะวิทยาศาสตร์คอมพิวเตอร์ ซึ่งที่ MIT นี้ บารณ์บาร่าได้สร้างภาษา CLU (programming language) ขึ้นมาซึ่งถือเป็นต้นแบบของการพัฒนาโปรแกรมเชิงวัตถุ (object-oriented programming, OOP) ในภายหลัง

บาร์บาร่ายังออกแบบ Thor ระบบฐานข้อมูลแบบ OOP ขึ้นมาด้วย 

1980 ได้รับตำแหน่งศาสตราจารย์ที่ MIT 

1982 สร้างภาษา Argus (programming language) ซึ่งเป็นส่วนที่เพิ่มเติมขึ้นมาจาก CLU  ซึ่ง Argus มีจุดเด่นที่สนับสนุนการทำงานระบบเครือข่าย มีการเข้ารหัสข้อมูลที่ถูกส่งผ่านเครือข่าย 

1987 ร่วมกับเจนเน็ตต์ วิง (Jeannette Wing)  นิยาม subtyping หรือรู้จักกันทั่วไปว่า Liskov substitution principle ซึ่งเป็นคุณสมบัติพื้นฐานหนึ่งของการออกแบบโปรแกรมแบบ OOP

2004 ได้รับรางวัน John von Neumann Medal 

2008 ได้รางวัล Turing Award 

Leave a Reply