Live data from Hacker News

John Ousterhout: My favorite sayings

web.stanford.edu

41–50 of 66 posts

Re: John Ousterhout: My favorite sayings

#41

Earlier quoted context omitted.

Interesting. I tried Lua about 6 years ago and found myself unable to see an upside to the language in comparative perspective with python and tcl. This is for full featured *nix systems programming in the HPC world so ymmv.

Lua's niche is absolutely as an embedded extension language for C/C++ programs. It's core benefits is how tiny and yet expressive it is (and it looks like C if you squint.) I've seen it show up in a variety of projects in that role, for games or embedded testing environments. I indeed don't see it having any benefit over Python or TCL in more sophisticated environments.

The programming model for c ffi that lua uses is, I think, a little nicer.

Re: John Ousterhout: My favorite sayings

#42

The three most powerful words for building credibility are "I don't know" I had a supervisor once who always had an answer to your question. He was always 100% sure he was right. He was not always right. Consequently, going to him for help would sometimes result in the problem becoming worse. The best supervisor I ever had was the one who routinely told me "I don't know, let me call {PersonInOtherDepartment}" or "See…

In my experience, saying "I don't know" outside of an academic environment leads to two consequences: 1) People will stop listening to you in preference to loud people who "know"; 2) Loud people who know will use your admission against you.

Sadly, the good habits that you learn in academia will come back to haunt you when you move into industry.

Re: John Ousterhout: My favorite sayings

#43
post #9

Side note: Ousterhout was famous for being the author of Tcl/Tk, which was a popular language and GUI toolkit in the early days of Linux (before Qt and GTK came along). I wouldn't be surprised if many older Unixes are still running Tcl/Tk apps.

AOL's web properties were heavily dependent on Naviserver with its embedded Tcl interpreter, which they bought cheap and turned into AOLserver. The Vienna based university, TU-Wien, still runs AOLserver and serves 40K users with it. OpenACS.org and dotLRN.org still use the same Tcl-based webserver today. Gustaf Neumann shepherded the development of the use of OpenACS/dotLRN at TU-Wien, I think: http://nm.wu.ac.at/nm/…

AOLserver was my first job out of college. Glad someone remembers it!

Re: John Ousterhout: My favorite sayings

#44

The three most powerful words for building credibility are "I don't know" I had a supervisor once who always had an answer to your question. He was always 100% sure he was right. He was not always right. Consequently, going to him for help would sometimes result in the problem becoming worse. The best supervisor I ever had was the one who routinely told me "I don't know, let me call {PersonInOtherDepartment}" or "See…

In my experience, saying "I don't know" outside of an academic environment leads to two consequences: 1) People will stop listening to you in preference to loud people who "know"; 2) Loud people who know will use your admission against you. Sadly, the good habits that you learn in academia will come back to haunt you when you move into industry.

I doubt there are statistics on such things, so we'll have to deal in anecdotes, and I've had the total opposite experience (I make this comment so that any young people or academics aren't prematurely jaded). When a lot is at stake (e.g. high revenue, medicine, infrastructure, etc.), especially when a team has been burned by loud people, a person who says, "I don't know, but let's figure it out" (that's my job) is prized.

Re: John Ousterhout: My favorite sayings

#45

Earlier quoted context omitted.

AOL's web properties were heavily dependent on Naviserver with its embedded Tcl interpreter, which they bought cheap and turned into AOLserver. The Vienna based university, TU-Wien, still runs AOLserver and serves 40K users with it. OpenACS.org and dotLRN.org still use the same Tcl-based webserver today. Gustaf Neumann shepherded the development of the use of OpenACS/dotLRN at TU-Wien, I think: http://nm.wu.ac.at/nm/…

AOLserver was my first job out of college. Glad someone remembers it!

I have customers that are still using it!

Re: John Ousterhout: My favorite sayings

#46

> The greatest performance improvement of all is when a system goes from not-working to working Except when speed is part of the definition of working. For example deep learning. The correct implementation was not enough until the hardware was fast enough.

> The correct implementation was not enough until the hardware was fast enough.

This doesn't refute his argument, which I read as being, essentially, against performance optimization of software during initial construction. Knuth famously bemoaned premature optimizations, as well.

Re: John Ousterhout: My favorite sayings

#47
post #30
post #18

>Programmers tend to worry too much and too soon about performance. Many college-level Computer Science classes focus on fancy algorithms to improve performance, but in real life performance rarely matters . Stopped reading there. A great plague of modern software development is a complete disregard for performance or resource conservation.

No need to stop there - it's just historical, very old advice, the rest is pretty good. It underestimates how aggressively inefficient today's trends and frameworks are. It actually advocates for focusing first on simplicity. And I think Ousterhout would not consider an "easy-to-use" "developer-friendly" but big and featureful framework to be that kind of simplicity. He says: > "faster" algorithms often have larger c…

> use Cassandra for scalability and availability, but the cluster ends up being overwhelmed or down for half a day, every month or so, because you need to be a JVM and Cassandra expert to keep those clusters working.

Phew.. it's not just me. My one exposure to Cassandra [1] in a production environment mirrors this experience very closely. I felt a bit like the child in the tale looking at the nude Emperor.

Each node held only a single SSD, so increasing database size meant buying an additional multi-thousand-dollar server. Upgrading RAM meant upgrading all the nodes, which became an O(number of nodes) problem in terms of time and cost.

The backend team may have had a JVM expert or two, but obviously no Cassandra (nor database in general, and certainly not hardware) knowledge. It was the Ops team who had to keep it limping along and gain the expertise.

It's just another case of "it works for FAANG, so it'll work for us" thinking, even though "us" is 2-3 OOM smaller and would be better served by the simplicity of a scaled "up" non-distributed system.

[1] Also plenty of experiences with non-Cassandra distributed (usually "NoSQL") databases. The results have ranged from grossly over-engineered (i.e. high cost) to unreliable and/or high-maintenance. Fortunately, rarely both at the same time.

Re: John Ousterhout: My favorite sayings

#48
post #9

Side note: Ousterhout was famous for being the author of Tcl/Tk, which was a popular language and GUI toolkit in the early days of Linux (before Qt and GTK came along). I wouldn't be surprised if many older Unixes are still running Tcl/Tk apps.

Tcl/Tk is still used a lot. Tcl is still great for scripting applications and ships with many professional tools. Digital IC design very strongly depends on Tcl. Afterall, it was called "Tool control language" to script the design tools Ousterhout was developing.

Tk is still the quickest way to create a simple UI which is also highly portable across operation systems. With tclkit you can even create self contained Tcl/Tk applications on the big platforms (Win/Mac/Linux).

Re: John Ousterhout: My favorite sayings

#49

Earlier quoted context omitted.

In my experience, saying "I don't know" outside of an academic environment leads to two consequences: 1) People will stop listening to you in preference to loud people who "know"; 2) Loud people who know will use your admission against you. Sadly, the good habits that you learn in academia will come back to haunt you when you move into industry.

I doubt there are statistics on such things, so we'll have to deal in anecdotes, and I've had the total opposite experience (I make this comment so that any young people or academics aren't prematurely jaded). When a lot is at stake (e.g. high revenue, medicine, infrastructure, etc.), especially when a team has been burned by loud people, a person who says, "I don't know, but let's figure it out" (that's my job) is p…

This is also my experience. I've heard the claims in this thread (i.e. that people who pretend to know things get ahead, while those who admit that they don't know stuff are never trusted) my entire life, but I've always thought, "who are these people talking about?"

Whenever I've worked with a blowhard who couldn't admit when they didn't know something literally everybody smart thought of them as a blowhard who couldn't admit when they didn't know something.

Re: John Ousterhout: My favorite sayings

#50
post #9

Side note: Ousterhout was famous for being the author of Tcl/Tk, which was a popular language and GUI toolkit in the early days of Linux (before Qt and GTK came along). I wouldn't be surprised if many older Unixes are still running Tcl/Tk apps.

> I wouldn't be surprised if many older Unixes are still running Tcl/Tk apps.

Or newer. e.g., I use gitk daily at work.

Post reply on HN