Monday, January 30, 2017

Withdrawing the motion

Last week Dean Khurana announced the formation of a new committee to look at single-gender organizations--essentially what I and my colleagues have for months been urging. As a result, out of respect for the president and the dean and after consulting with the 11 co-signers, I withdrew the motion. This way we won't have a divisive debate at next week's FAS meeting over an issue that may prove to be moot. In withdrawing the motion I stated that it could be re-introduced if in the end the sanctions policy is reaffirmed. I include the full text of my letter below. The committee, which has not yet been appointed, has serious work to do; my letter mentions several questions it should consider.

I am grateful for the broad support I have received for my motion; it is truly cheering to realize that so many faculty members, students, and alumni joined  in my view that Harvard should not punish students for joining a club. Dean Khurana promises broad consultation on what might be done instead to address the problems that led him to announce the policy. Now is the time, it seems to me, to focus on constructive alternatives rather than continuing to argue about the announced sanctions regime. If we have to come back to that, we will, but for now, the challenge is, what should be done instead?

--------------------
                                                                                                 January 30, 2017

Dean Rakesh Khurana
University Hall

Dear Dean Khurana,

I am delighted that you, Dean Smith, and President Faust are taking a step back to engage the community in search of modifications or alternatives to the USGSO policy announced last spring. In the hope and expectation that the concerns we all share about student life can be addressed without a patronizing intervention into both students’ private lives and faculty prerogatives, I am, after consulting with my colleagues, withdrawing my motion. Of course, the principle articulated in the motion is no less important today than it was a few days ago. But with the immediate threat of injury and trespass on faculty rights somewhat tempered, it would not be a good use of Faculty time to debate a matter which may become operationally moot. If the policy is reaffirmed without adequate revision, however, I expect that the motion, or one similar to it, will be reintroduced.

The work of the new committee—and the likelihood of a consensus outcome—will be improved if open discussion is encouraged about exactly what “problems” need to be solved. The problem of noisy, out-of-control, dangerous alcoholic parties in buildings Harvard doesn’t own is very different from the problem of women’s unequal access to the financial and social power structure of the nation. The problem of sexual assault is very different from the problem of unsatisfactory House social life. The new committee has the opportunity to define what problems it wishes to solve, to base its recommended remedies in facts and reason, and to exercise a degree of humility about Harvard’s ability to solve those problems without creating or exacerbating other problems.

None of these problems is uniquely associated with USGSOs, nor are most of the USGSOs strongly associated with any one of these problems. As always, a standard for any policy in this area will be its success in targeting the problems where they actually exist while leaving individuals free to make private choices where those choices are not demonstrably problematic. At a time when Harvard is admirably standing against overbroad, protectionist national policies that injure members of our community, it would be sadly ironic if the university were to implement for that community overbroad policies of its own, policies that needlessly harm some of its members while attempting to control its most noxious elements. To date, the present policy has divided students, faculty, and alumni. While certainly not its intention, it has been clearly divisive.

In her recent comments to the Crimson, President Faust helpfully noted that we should try not to invite lawsuits. Of course, that is quite right, but it is worth remembering that lawsuits are typically successful because one party has unreasonably harmed another. Perhaps we could aim for that higher standard—not merely to avoid litigation, but to avoid unnecessary harm even if no lawsuit is forthcoming. Doing so would require open ears and introspection on why USGSOs are so popular—and especially why the off-campus women’s organizations are popular. President Faust herself, in her September 15 Gazette interview, suggested that she understood that women who join USGSOs are doing so for positive reasons. The committee—and ultimately you and the President—will need to balance the potential for good, and the potential for effectiveness, of any new policy against the harm it may unnecessarily cause. Not that students joining a private club should need to justify that decision to Harvard!

The committee has serious work ahead, but I am sure that if it sets reasonable objectives it can come up with good ideas. Almost any idea, however, can be shot down on the grounds that it fails to meet some unattainable or utopian goal. It would be particularly unfortunate if the “non-discrimination” standard cited by President Faust in a January 26 Crimson story turned otherwise good ideas into non-starters. It would be cynical, in particular, for Harvard to seek to crush the private, off-campus women’s organizations as “discriminatory” while congratulating itself that (in theory) its own organizations are all nondiscriminatory: that the Kroks are not really a men’s group, the Pitches are not really a women’s group, the Black Men’s Forum isn’t really a forum for black men, and the Women’s Center isn’t really a center for women.  Belonging to a de jure single-gender organization off-campus is not inherently any more offensive than belonging to a de facto single-gender organization on-campus.

I look forward to the Committee’s recommendations, to what students have to say on the matter, and to a discussion of the recommendations in a meeting of the Faculty of Arts and Sciences in the fall.

Sincerely,


Harry R. Lewis
Gordon McKay Professor of Computer Science
Director of Undergraduate Studies in Computer Science
           
Cc:       Susan Lively, Secretary of the Faculty
            President Drew Gilpin Faust
            Shaye Cohen
            James Engell
            David Haig
            Barbara Grosz
            Richard Losick
            Jason Mitchell
            Eric Nelson
            Steven Pinker
            Hanspeter Pfister
            Margo Seltzer
            Richard Thomas
            Helen Vendler

            James Waldo

Friday, December 23, 2016

Classics of Computer Science

While waiting for the new term to begin, I have drafted a proposal of a new course I hope to teach. I borrowed shamelessly from courses taught elsewhere and from the advice of my colleagues. Below I paste a draft syllabus, which links off to a longer reading list. I would be grateful for advice on two points. First, the class by class selection of papers--do I have the right ones, given that each class can cover only a few? And second, what pedagogical style might work for a course of this kind? I have some ideas, but would like to hear some fresh ones. I don't want to limit enrollment (except by stating some prerequisite--basically, junior or senior standing, and having taken at least one sophomore-level CS course), but I also don't want (and surely could not find) an army of qualified teaching assistants to read weekly papers. I would guess I will get 50-150 students, though I might decide to hold that number down naturally by teaching in the disused 8:30-10am time slot.

Thanks for your advice!

-------------------------------

Classics of Computer Science – draft course syllabus

An Engineer is said to be a man who knows a great deal about a very little, and who goes around knowing more and more, about less and less, until finally, he practically knows everything about nothing; whereas, a Salesman, on the other hand, is a man who knows a very little about a great deal, and keeps on knowing less and less about more and more until finally he knows practically nothing, about everything. – from a newspaper in the 1930s

Well those drifters days are past me now
I've got so much more to think about
Deadlines and commitments
What to leave in, what to leave out
-        Bob Seeger, Against the wind

Argument
This course is intended as a synthesizing experience for juniors and seniors in computer science, a way for them to see the field as a whole, not through a survey, but by reliving the experience of its creation.

Our overarching goal is to create a unified view of the field of computer science for students who already know something about it. Even though the field is becoming splintered, a talented undergraduate can in four years learn something about all the major areas, and about how they connect together. Students can, and should, understand the development of the field from its origins, to understand what Boole, Babbage, and Turing were trying to do, and to see, in retrospect, how later scientific developments evolved from these roots. The structure of our undergraduate curriculum balances depth and breadth—we want students to be able to drill down on special areas of interest, and to develop some in-depth expertise, while not concentrating their studies exclusively on one subfield. But the balance is increasingly uneasy. Reading across time has the merit of helping students understand that the fragmentation of CS into specialty areas was not a divine creation—that indeed, speciation is the result of a still ongoing process of invention and discovery.

Because the field is young, many of the seminal papers are as readable today as when they were written. We will, each week, read and discuss several related papers. Some true classics we will read in full, because they are models of clarity as well as creativity, while other papers will be read only in part, their technical details having been superseded or rendered obsolete by later developments.

I intend this to be a 100-level course with a “0” or “9” penultimate digit so that it will count for concentration in Computer Science but will not be usable to fulfill the breadth requirement.

Learning objectives:
·      To identify the major subfields of computer science, their intellectual family tree, and the major figures and works of their birth and infancy.

·      To be able to place current computer science research in the context of its intellectual lineage.

·      To be able to present to an audience of educated but non-specialist computer scientists some of the major ideas of computer science in a way that is succinct and easy to understand.

·      To be able to critique constructively similar presentations by others.

Syllabus
There are 25 ninety-minute classes in the term for courses meeting twice a week. The syllabus below is a first cut at organizing the classes. One of the challenges will be to edit the list down, or to limit the number of pages from many of the papers without gutting the technical content. These papers are drawn from a master list which is publicly viewable and includes links (some requiring a Harvard login).

The syllabus combines field coherence and chronology by ordering topics according to the date of the earliest paper in that topic’s reading list. So while students will jump from topic to topic in an apparently chaotic way, every week they will begin their reading with a paper written only shortly after the first paper they read the previous week.

I am using the term “Classics,” but that is really too grandiose. Some of the papers are just the first to do something, and thus report astonishingly important discoveries, but may not be expository models for others to follow. Some are arguably wrong, or did as much to send the field off in a wrong direction as to drive it forward. It is not a bad thing for students of computer science to discuss hype as a cautionary tale against exaggerated claims they will surely hear the future.

1.     Overview and responsibilities
2.     Infrastructure
a.     Leibniz 1677
b.     Boole 1853
c.     Moore 1965
3.     Origins
a.     Menabrea & Lovelace 1842
b.     Hilbert 1900
c.     Turing 1936
4.     Architecture
a.     Aiken 1938
b.     Burks, Goldstine, von Neumann 1946
c.     Wilkes 1951
d.     Kilburn 1962
5.     Information
a.     Shannon 1938
b.     Shannon 1948
c.     Hamming 1950
6.     Learning
a.     McCulloch and Pitts 1943
b.     Rosenblatt 1958
c.     Valiant 1985
d.     Rumelhart et al. 1986
7.     Computers for people
a.     Bush 1945
b.     Licklider 1960
c.     Englebart 1962
d.     Englebart 1968
e.     McCarthy 1970
f.      Kay 1972
g.     Thacker et al 1979
8.     Computers and thinking
a.     Turing 1950
b.     Shannon 1950
c.     Shannon 1953
9.     Formal models
a.     Kleene 1951
b.     Chomsky 1956
c.     Rabin and Scott 1959
d.     Knuth 1965
e.     Shieber 1985
10.  Software as engineering
a.     Hopper 1952
b.     Brooks 1975
c.     Leveson 1993
11.  Artificial intelligence
a.     McCarthy, Minsky, Rochester, Shannon 1955
b.     Weizenbaum 1966
c.     Block 1981
12.  Complexity before NP
a.     Godel 1956
b.     Hartmanis and Stearns 1963
c.     Blum 1967
13.  Programming languages
a.     Backus 1959
b.     Naur 1963
c.     DoD 1975
d.     Aho et al. 1978
14.  System design
a.     Corbato et al. 1962
b.     Dijkstra 1967
c.     Ritchie and Thompson 1974
d.     Saltzer et al 1983
15.  Algorithms
a.     Gale and Shapley 1962
b.     Hoare 1962
c.     Edmonds 1965
d.     Strassen 1969
e.     Blum et al. 1973
f.      Carter and Wegman 1979
16.  Graphics and interaction
a.     Sutherland 1963
b.     Sutherland 1965
c.     Myer and Sutherland 1968
17.  Networks
a.     Baran 1964
b.     Cerf and Kahn 1974
c.     Metcalfe and Boggs 1976
d.     Clark 1988
18.  Control abstractions
a.     Dijkstra 1968
b.     Gray et al. 1975
c.     Lampson 1978
d.     Birrell 1989
19.  Programs as formalisms I
a.     Hoare 1969
b.     Floyd 1969
c.     Scott 1970
20.  Complexity after NP
a.     Cook 1971
b.     Karp 1972
c.     Levin 1973
d.     Goldwasser, Micali, Rackoff 1985
21.  Data organization and retrieval
a.     Codd 1972
b.     Spärck Jones 1972
c.     Bayer and McCreight 1972
d.     Salton et al 1975
22.  Graphical rendering
a.     Catmull 1974
b.     Newell and Blinn 1979
c.     Witted 1980
d.     Kajiya 1986
23.  Security and cryptography
a.     Diffie & Hellman 1976
b.     Rivest, Shamir, Adleman 1978
c.     Goldwasser and Micali 1984
d.     Thompson 1984
e.     Anderson 1993
24.  Programs as formalisms II
a.     Milner 1977
b.     Liskov et al. 1977
c.     Demillo, Lipton, Perlis 1979
d.     Naur 1982
25.  The web
a.     Berners-Lee 1989
b.     Berners-Lee et al. 1992
c.     Page et al. 1998

Reading period assignment: Meaningful papers about CS that are not CS papers
a.     Sutherland 1980
b.     Gefter 2016