Prof. David Gries, computer science, programmed for the first time in 1959 on a “fake computer.” The machine used a “fake language,” Gries said, as computer languages like Java had not been invented yet.
Pointing to his Mac Desktop computer, Gries emphasized that when he had his first job out of college “all we had was a terminal keyboard, and we punched our programs on cards, on punch cards.”
When Gries started teaching at Cornell in 1969, the University’s computer was located near the airport. Students “[punched] their cards” in the basement of a building on campus, and then the cards were shipped to the airport.
“[Students] were much more careful than they are today, because let’s suppose you left out a comma on a line in a program, a little syntax error, like missing a period at the end of a sentence,” he said. “Well, these cards would be trucked out to the computer, would be loaded in and run, and five hours later, you would get the output back. If you left out a semicolon or a period, that was it. You wasted five hours.”
Since the 1970s, teaching in the computer science department has changed significantly.
“It used to be so much easier teaching,” he said. “I taught this course in 1973. How did I do it? Five minutes before the lecture, I would look at my notes, grab my piece of chalk, and head for the board. That was it.”
“I didn’t have to answer email questions, I didn’t have to look at Piazza, because there wasn’t any,” he continued. “Now we have to have a website that has all of the PowerPoint slides on it, we got to set up this Piazza thing. It’s just a lot more work, but it’s better.”
As a senior at Queens College, Gries used “machine language” to program. Gries and his classmates were not even able to check the programs that they wrote, because compilers were not around yet.
A few years after joining the Cornell faculty, in 1973, Gries began teaching an introductory programming course. He said that his first research focused on “compiler writing,” which is creating a program that “translates high level language into machine language.”
He wrote the first book on this topic in 1971. He then developed an interest in programming methodology.
“How do I write programs, so that they’re correct, and how can we prove them correct?” he said. “[Programming methodology] was a big focus, starting in 1968, ’69, ’70. And we didn’t really know how to do it at that time.”
Gries’ research in programming methodology involves making computer science more accessible to beginners.
“A lot of my research in that area has been to take those ideas down into the undergrad courses, because you don’t just want to teach professional programmers,” he explained. “Everybody should learn how to program right, right from the beginning.”
Gries has worked with Prof. Tony Hoare, University of Oxford, computer science, and Prof. Edsgar W. Dijkstra, University of Texas, Austin, computer science, on this research.
“These guys did a lot of groundbreaking work in this stuff, and I just followed along,” Gries said. “I became good friends with both of them.”
He said that Dijkstra wrote a book on “how to develop programs formally.”
“It was a difficult book to read — it was a research monograph,” he described. “I just turned things around a bit and put it in a different style and made a textbook that undergraduates could read. This was 1981. And I called it ‘Dijkstra for the masses.’”
After college, Gries originally decided he wanted to be a mathematician, but he said he “had to figure out what mathematicians did first.” So he started working as a mathematician-programmer at U.S. Naval Weapons Laboratory in Dahlgren, Virginia.
“There they taught us the new programming language Fortran in a week, and then we were professional programmers,” he said.
Since then, Gries has been a dedicated member of the Cornell faculty. Gries enjoys teaching for numerous reasons, one of which is the long summer break. Gries said he was associate dean for eight years, and, in that position, he was the speaker for the teaching award ceremony.
“I would ask everybody, ‘What’s the three most important reasons for teaching?’” he said. “They wouldn’t know, expecting me to have a serious answer. I would then tell them, ‘June, July, and August.’ One nice thing about teaching, not about the teaching itself, is how we get breaks, and how we renew ourselves.”
He also likes the academic freedom that comes with being a professor.
“We have a lot more flexibility in what we do compared to most people,” Gries said. “We can do what we want. We have to go out and get research funds for it, of course, but it’s our choice what we work on.”
Of course, he likes to teach too.
“The teaching has been satisfying as well,” he said. “It’s nice to see students succeed.”
Recently, Gries has attracted much attention on the Internet because of his comments on Piazza. He is the subject of many memes on the Make Cornell Meme Again Facebook page.
“I probably said something at one point that caught their interest,” he said. “Some of my answers on the Piazza to questions may be a little bit short. I’m just trying to answer the question. It’s not conversational enough.”
“I’m happy with [the attention],” he continued. “I have nothing against that. There’s also a t-shirt now on the Slope Day.”