John Ousterhout

http://www.stanford.edu/~ouster/cgi-bin/Photo2008Small.jpg

John Ousterhout is the original author of Tcl and Tk.

See Also

History of Tcl and Tk, John Ousterhout
Wikipedia
homepage at Stanford
Ousterhout's Dichotomy
John's observation, made in 1998, that a fundamental shift from systems languages to scripting languages was occurring.

Other Work

Sprite
An operating system.
Log-structured File System
Magic VLSI
A venerable VLSI layout tool that influenced the development of Tcl.
Magic VLSI Layout Tool
Perspecta
Founded in 1992, produced Perspecta Presents, a tool for creating and displaying presentations.

Video

Can Great Programmers Be Taught? , 2021-01-21
An interview and discussion.
A Philosophy of Software Design , Talks at Google, 2018-07-20
A presentation related to the book, A Philosophy of Software Design.
If you had to pick one idea, one concept that's the most important thing in all of computer science, one thing that threads through every aspect of computer science from AI to systems to theory... what would you pick? What I would say is problem decomposition. How do you take a complicated problem or system and chop it up into pieces that you can build relatively independently?
2015 Keynote Talk

Writing

http://wfr.tcl.tk/fichiers/images/dummymed.jpg

BOOK Tcl and the Tk Toolkit
Scripting: Higher Level Programming for the 21st Century , IEEE Computer Magazine, 1998-03
The article that layed out Ousterhout's Dichotomy.
An Overview of Tcl and Tk
Writing Tcl-Based Applications in C
Based on John's powerpoint tutorials.
Building User Interfaces with Tcl and Tk
Based on John's powerpoint tutorials.
An Introduction to Tcl Scripting
Based on John's powerpoint tutorials.
postscript versions of John's powerpoint tutorials
A Radical Proposal: Replace Hard Disks with DRAM , 2015-10-26
A Philosophy of Software Design

Quotes

From My Favorite Sayings

  • "The greatest performance improvement of all is when a system goes from not-working to working."
  • "[T]he primary design criterion for software should be simplicity, not speed."
  • "Use your intuition to ask questions, not to answer them."
  • "The most important component of evolution is death."
  • "Facts precede concepts."
  • "If you don't know what the problem was, you haven't fixed it."
  • "If it hasn't been used, it doesn't work."
  • "The only thing worse than a problem that happens all the time is a problem that doesn't happen all the time."
  • "The three most powerful words for building credibility are 'I don't know'."
  • "Coherent systems are inherently unstable."

History

http://home.pacbell.net/ouster/
Previous location (2001) of Ousterhout's homepage.
Lightning Fast Builds for Embedded Software Developers
Was a webinar about Electric Cloud's make acceleration software that took place on 2004-10-06. It may still be available behind the register wall.

Resources

The A-Z of Programming Languages: Tcl , Computerworld, 2009-05-08
An interview between John and Kathryn Edwards.