This happened in 1993, at the German Software Engineering "SE" Conference in Dortmund. I was a PhD student in my second year, and my advisor, Gregor Snelting, had asked me to present a summary of our group's research. At this time, we had worked on semantics-based retrieval of software components: You would enter the desired pre- and postconditions of your component in a search field, and the system would automatically retrieve a suitable component. The novelty was that we were using theorem provers to find possibly weaker preconditions or possibly stronger postconditions. At the time, theorem provers were just about to enter the programming language space, so this was all new and unheard of.
So, here I was, standing on the stage, in front of about 100 German-speaking SE researchers, presenting the NORA system. (NORA stood for No Real Acronym.) And I would be showing how to search for a function given a simple postcondition – something like
"When I want to search for a sorting function, I do grep sort!"
"grep sort" is a UNIX command, and it would mean to simply search through a list of textual descriptions to find a sorting function. The audience was absolutely silent. For a second. Then, the whole room erupted with laughter. I peeked at Gregor, my advisor, who was sitting in the front row. He crossed his arms and then grinned at me: How would I get out of this? I stammered something along the lines: Well, that's of course true, but assume you have no knowledge of sorting, you don't even know that the word "sort" exist, then with our method, you would still be able to find something. The shouter would just chuckle, shake his head, and then sit down. The idea that a programmer could not now what sorting means did not stroke him as realistic.
I was just about to recover from that blow and about to put up the slide with the theorem prover diagram, when the next guy stood up, a mocking smile on his lips. "Yes?", I said.
"You know, to me this looks like a solution looking for a problem."
Again, the entire room erupted with laughter. I don't remember how I replied, but it was just as unconvincing as before. I was finished, publicly humiliated and ridiculed. Putting together the rest of my dignity, I quickly showed the remaining slides. I think I got some applause at the end, and even a question. Still, for the rest of the day, I was marked. Every time a participant saw me, a smile would flash over her or his face for a fraction of a second, remembering my ridicule.
"Who were these folks?" I asked Gregor. "Congrats", he said. "These were Professors Manfred Nagl and Jochen Ludewig, two really big shots in Germany's Software Engineering. You managed to provoke them. That's good." – "Good?" I said. "These folks just ridiculed me in the front of the entire audience. How would that be good?" – "Well, we'll be known!", he said. "Yes, but for what?" I replied. All the way home, I would be furious at these two hecklers who had so rudely ruined my presentation. And I vowed that one day, I would become a real big researcher, and I would have the last laugh over them.
Over the course of the next twenty years, I would be busy fulfilling my vow, and yes, it sort of worked – never again would a member of the audience shout stuff at me. (But then, this may also be due to me never again presenting formal methods at a Software Engineering audience.)
The last laugh, though, never came to be. Two years ago, as I last met Professor Nagl and Professor Ludewig, I asked them whether they would still remember how we met the first time, with me on the stage, and them standing up in the middle of the talk; and I wanted to thank them for how their comments had fueled and ignited my ambition for decades. Of course, they would not remember a thing. For them, it was just a minor laugh among many.
Great blog post, Andreas!
ReplyDelete--prem devanbu