Icosian Reflections

…a tendency to systematize and a keen sense

that we live in a broken world.

IN  WHICH Ross Rheingans-Yoo—a sometime quantitative trader, economist, expat, EA, artist, educator, and game developer—writes on topics of int­erest.

"Weedout" Courses Considered Harmful

"The Perils of JavaSchools", by Joel Spolsky, is a wonderfully fun read for students of computer science. A veritable demigod of the software world tells a story -- ringing with appealing truth throughout -- of a tragic fall from grace in modern CS curricula...and at its core, that great deluder Java.

It's relentlessly snarky, and feels relentlessly true, as it lays out in gruesome detail the extent to which kids nowadays are being coddled and left tragically unprepared for the big scary world where pointer arithmetic, abstraction, and recursion are inescapable necessities. It's hard to read it without coming away with the sense that Spolsky has hit upon the great uncomfortable truth in computer science -- that some curricula simply fail to properly train young minds in key concepts.

It's a fun read.

But it's got some problems.

Though I am loathe to disagree with such a titan of my field, I respectfully submit that Spolsky not only misses the broad point of a computer science education, but gets it so badly wrong that he manages to align himself with one of the most pernicious systemic problems facing the field of computer science -- and the broader tech community -- today.

Since I have a great deal of respect for Spolsky, this post turned out very, very long. (Even after I pushed off large portions of the initial concept to other posts.) If you're more in the mood to read a shorter post where I throw out unsubstantiated claims and don't stop to explain everything, I've tried to summarize my main points in a summary-post.


(1)

The heart of the essay is in two early paragraphs:

You

READ MORE

Scariness and Self-Selection: A Shopping-Week Meditation

nb: For those outside of the Harvard ecosystem, "shopping week" is the first week of classes, during which all courses are open to drop-ins. It's only at the end of shopping week that we submit study cards and are assigned final schedules.

One of the things that inevitably happens during shopping week is that classes are overfull. Since almost all students shop weakly more courses than they end up taking, even classes with correctly-sized rooms end up crowded, short on chairs, and/or with students sitting on the floor.

I've noticed that this problem is remarkably bad in upper-level CS / Math / Stat courses (it might also be bad everywhere else; I just don't have enough data to say). Once you get past the intro-programming and intro-theory sequences, concentrators have almost-infinite freedom in selecting technical electives in the department, so there's a lot of comparison-shopping going around.

To make it worse, a phenomenon I'll dub "window-shopping" is particularly egregious in the CS department -- in-the-know concentrators will show up for the first two lectures of a well-liked professor's class just to hear funny one-liners, even if they know they won't be taking the course that semester.

What this means is that it's not uncommon for the attendance at the first lecture of the semester in a 100- or 200-level class to be 150-200% of the actual enrollment the professor and the College had planned for.


I shopped five courses this shopping week, and in four of them, the professor remarked on such over-attendance.

In two, the professor made a half-joke along the lines of "Well, this is obviously too many people to fit in the room, so

READ MORE

107

Well, I'm in the middle of a 72-hour Topology take-home final and the run-up to the submission of a semester-long Operating Systems project, so I'll try to keep this one short. But I couldn't miss the opportunity to blog today about the intersection of two of my great interests: computers, and awesome people.

Today is the would-have-been-107th birthday of Grace Murray Hopper, 1906-1992. If you don't know who she was, then I assume you're capable of clicking the above link, and so you've now learned that she left an associate professorship at Vassar to enlist in the Navy Reserve (only after securing an exemption for being underweight at 105 pounds), co-authored papers with Howard Aiken on the Harvard Mark I, and later declined a full professorship at Vassar to remain a research fellow in CS at Harvard.

When Navy regulations forced her retirement at age 60, she was recalled to active duty, and later promoted to Commodore (or Rear Admiral) by an act of Congress. Why did she remain in the Navy until age 80? Because that's where the most interesting computers were, and damn all the rules telling her she couldn't be there. As an alumnus of my high school once said: "Walls are there to stop the people who don't want it badly enough. They are there to stop other people!"'

Today, my office in Maxwell-Dworkin sits directly across from the "Grace Hopper conference room", but her legacy also surrounds me in my daily work: compilers, language standards, and the now-obvious concept that code should be "readable". ("But Grace, then anyone will be able to write programs!")

Perhaps it's

READ MORE
1 / 1