John K. Ousterhout
Biographical Information
John K. Ousterhout is founder and Chairman of
Electric Cloud, Inc.
He is also creator of the Tcl scripting language
and is well known for his work in distributed operating systems,
high-performance file systems, and user interfaces. Ousterhout
received a BS degree in Physics from Yale University in 1975 and
a PhD in Computer Science from Carnegie Mellon University in 1980.
He was Professor of Computer Science at U.C. Berkeley from
1980-1994, Distinguished Engineer at Sun Microsystems from
1994-1998, and founder and CEO of Scriptics Corporation from
1988-2000. Ousterhout is a member of the National Academy of
Engineering and a Fellow of the ACM. He has received
numerous awards, including the ACM Software System Award,
the ACM Grace Murray Hopper Award, the National Science
Foundation Presidential Young Investigator Award, and the
U.C. Berkeley Distinguished Teaching Award.
Tcl and Tk
For information about the Tcl scripting language and the Tk toolkit, see the
home page for the Tcl Developer Xchange,
a site dedicated exclusively to Tcl tools, applications, and services.
Contact Information
The best way to contact me is by e-mail. My login is "ouster"
and my company address is "electric-cloud.com"; concatenate
these with an "@" to produce an e-mail address (I haven't
included the complete e-mail address here in order to
keep spammers' Web-scanning software from identifying
my e-mail address).
Please help me avoid spammers by not publishing my
e-mail address on the Web.
It's fine however, to publish the location of this Web page.
Name Pronunciation
In case you are wondering how to pronounce my last name, it's OH-stir-howt.
This makes sense only if you know that the original Dutch version of the name
(many generations ago) was Oosterhout.
Miscellaneous Stuff
-
Startup company culture:
a document I wrote to encourage a particular culture at
Electric Cloud.
-
How to make decisions:
describes an inclusive, consensus-based approach to
making decisions that has worked well for me.
-
Favorite sayings: general
ideas that I have found useful over the years.
-
Fortnight milestones: a simple
approach to managing software projects that worked well for us at
Electric Cloud.
-
Tcl history: the story of how
I invented the Tcl scripting language and how Tcl and
Tk evolved over the years.
-
Some notes about my RSI problems
and how I have dealt with them.
-
Scripting: Higher Level Programming for the 21st Century
This white paper discusses the difference between scripting (in languages such
as Tcl) and system programming (in languages such as C and Java). It shows why
scripting languages are fundamentally better than system programming languages
for gluing tasks such as GUIs and enterprise applications, and why the
importance of scripting has increased in recent years and will continue to
increase in the future. The paper was published in the March, 1998 issue of IEEE
Computer.
-
Why Threads Are A Bad Idea (for most purposes). This was an Invited Talk
at the 1996 USENIX Technical Conference (January 25, 1996). The talk compares
the threads style of programming to an alternative approach, events, that use
only a single thread of control. Although each approach has its weaknesses,
events result in simpler, more manageable code than threads, with efficiency
that is generally as good as or better than threads. Most of the applications
for which threading is currently recommended (including nearly all
user-interface applications) would be better off with an event-based
implementation. The slides for the talk are available in PowerPoint
or PDF
format. There isn't a written paper that corresponds to this talk.
Last modified: October 19, 2007