Weizmann Women & Science Award Laureate

The 12th Weizmann Women & Science Award-winner is an American computer scientist whose ideas have shaped modern computer systems and language.  Prof. Barbara Liskov, an Institute Professor at the Massachusetts Institute of Technology in the Department of Electrical Engineering and Computer Science, adds the honor this month to her John Von Neumann Medal and the Turing Award—considered the Nobel Prize for computer science—among many others. 

Prof. Israel Bar-Joseph, Vice President of the Weizmann Institute of Science for Resource Development and Public Affairs, presented the award to her at a ceremony on campus on April 5. The objective of the award, which comes with a $25,000 research grant, is to promote women in science, provide strong role models, and encourage the generation of women scientists.

“I am honored by this award, I am delighted to be here, and I am enjoying Israel very much,” said Prof. Liskov.

Prof. Liskov’s ideas are at the foundation of modern programming languages such as Java, in which her process of “abstraction” hides certain details and showing only the object’s essential features.

Her career began with the birth of computer science in the 1960s and her work led to major breakthroughs in operating systems, programming languages, distributed systems, and programming methodology, and it has set standards for clarity, usefulness and reliability. The first woman on MIT’s computer science faculty and among the first women to earn a doctorate from a U.S. computer science department, she is recognized by the biennial Weizmann Women & Science Award as both an outstanding woman scientist who has made significant contributions to the scientific community and as a strong role-model who motivates and encourages the next generation of young women scientists.

In 1961, after receiving her BSc, she was rejected by Princeton University’s graduate school in a form letter explaining that female students were not accepted.  Undeterred, she took a job as a programmer at the non-profit corporation, Mitre, where she found she was a natural in the fledgling field. Following a stint on a Harvard University project to make English sentences automatically understood by computers, she headed for Stanford University and its new doctoral program in computer science.  Her 1968 PhD was a computer program for chess endgames. 

At that time, Prof. Liskov’s central interest was in the fundamentals of computer design, operating systems, and programming languages. After graduating and returning to Mitre, she created the Venus Operating System, a low-cost, interactive timesharing system that allows several people simultaneously to use the same small computer.  This led to a faculty position in MIT’s Computer Science Laboratory in 1972. There, she initially researched more reliable computer systems—organizing programs that are easy to write, modify, and maintain.  Finding ways to structure programs in discrete chunks so that changes in the system could be contained, she made her ideas accessible to programmers by designing a programming language known as CLU, which puts them directly into practice.  CLU has been pivotal in developing object-oriented programming, and is the main approach currently in use.

In the 1980s, Prof. Liskov moved to supporting Internet applications. The protocol she developed allows a distributed system to sustain damage without breaking down, laying the groundwork for Google’s global architecture of cheap, off-the-shelf servers.  She co-developed a new notion of sub-typing, known as the Liskov Substitution Principle, and she leads MIT’s Programming Methodology Group, which focuses on Byzantine fault tolerance and distributed computing—protecting computers from software errors and malicious attack.  Her group has developed methods that allow correct operation even when components are unreliable. Her current research focuses on data protection even in the face of flagrant breaches. Her current research focuses on programming languages, multicore computers, and distributed systems.

Computer language