Welcome- Keynote: Barbara Liskov (MIT)

From Anita Borg Institute Wiki

Jump to: navigation, search

Blog Entries

[Charna Parkey's blog post on Barbara Liskov's keynote]

Notes

From Math Major to Language Translation to Stanford to Turing award:

After getting Turing award, someone called her home and said "Why did she got this award for ? all people already know these stuffs" . Yes, now all people know this 'Stuffs' , when we write a piece of java code , it comes so easy and familiar, it's hard to imagine once upon a time, there was no such thing as OO programming and scientists like Liskov tried and thought so hard make it happen.

She did her PhD Thesis on AI before starting to work on Systems. She was the only other girl in her grad class at Stanford back then ! And universities were not even ready to hire woman faculty.

Inventing abstract data type : The Venus machine : investigate micro-programming ; decided to embed semaphore directly in the machine instruction.

Venus operating system: time sharing system.

Programming methodology: software crisis : how to build program effectively , people did not understand the cost pf software ( the value of programmers was not even an issue to ponder )

ADT to CLU to Distributed Systems:The landscape: She recollects her memory how people reacted to this article: E.W. Dijkstra: Go To Statement considered harmful. 1968. How it was complicated using 'goto' statement and jumping around codes ! People were insulted ! Design as a problem statement : 1971 paper. top-down and bottom-up approach.


QA: Question from audience: "What is the best choice of first programming language to start with as a student of CS?"

Answer from Liskov: "There is no easy or right answer, but Python is the best choice today."

Such a wonderful speech and she finished with the recent and still ongoing research problem of System field.

Additional Notes

All photos are on web site

www.useventphotos.com

About her meandering career path sanfrancisco grew up. Was always to be interested in math and science. Took all her classes but didnt tell anyone about it. went to UC berkley was physics major then switched to math. 1961 got her degree. She didnt immediately go to graduate school. So she got a job in the boston area and she wasnt able to get an interesting job as a mathemitician but she was offered a job as a programmer. Then she learned fortran at miter, then she worked at harvard for a year. worked on their language translation project. her job was to maintain machine language. gave her a good understanding of bad programming practices.

She went back to school to stanford she met John McCarthy and asked if he will support her and he said yes. she started on their AI project. She found it a supportive environment with 3 women. She graduated and could not find a job as a faculty and went back to work at miter and did research. Then she switched her area to programming systems

She invented abstract data types

-the venus machine, the interdata 3 is that she was able to work with. Designed an instruction set. Supported semaphores in the hardware.

-she developed the venus operating system, could be used by 16 users at a time. She wrote a paper that led to the job at MIT.

-1971 she switched to program methodology, we have a software crisis errors etc...??? there was one there and there is one now. part of the problem was that the hardware was tangible and the software was undervalued.

--how should programs be designed? --how should programs be structured?

READ these papers EW Dijkstra, go to statement considered harmful. cacm, mar. 1968 -was a letter not a paper, it was controversial and some of it was because people were insulted. N. Wirth Program development by stepwise refinement. Cacm, April 1971. -example of 8 queens problem. D.L.Parnas Information Distribution aspects of design methodology ifip congress 1971. the connections between modules are the assumptions which the modules make about each other. -B. Liskov. A design methodology for reliable software system.... invented partitions toward the end of 1972

As a result of this paper she was invited to be a professor at MIT. fall 1972.

Only 10 women on a faculty of 1000.

Has always been a coed institution. these days its about 50%. all of a sudden realized she could think of the partitions as an abstract data types. There are certain ingredients that have to be in place to get an idea.

Not the type of person who works more than 40 hours a week.

There is a lot of value of your off times.

FOCUS

the solution was there waiting to be found.

Reading programs is much more important than writing them.

Programmers think in programming languages.

Liskov Substitution Principle (LSP)

Research Ideas New abstraction Mechanisms Massively Parallel Computers - is it a solvable problem? will the programs need embarrasing parallelism Internet Computer -storage computation -semantics, reliability, confidentiality

What would you recommend as as a first language?? Not a good answer, Python is ok probably the best choice , java and C# is good. But we need another languages.

Personal tools