Based on nearly eighty hours of interviews with fifteen all-time great programmers and computer scientists, Coders at Work provides a multifaceted view into how great programmers learn to program, how they practice their craft, and what they think about the future of programming.
Alan Perlis, via Peter Norvig:
Everyone can be taught to sculpt: Michelangelo would have had to be taught how not to. So it is with the great programmers.
Matthias Felleisen, et al:
Indeed, good programming is a fun activity, a creative outlet, and a way to express abstract ideas in a tangible form. And designing programs teaches a variety of skills that are important in all kinds of professions: critical reading, analytical thinking, creative synthesis, and attention to detail.
We therefore believe that the study of program design deserves the same central role in general education as mathematics and English. Or, put more succinctly, everyone should learn how to design programs.
Fiona MacCarthy on Richard Sennett:
Pleasure in making comes from innate necessary rhythms, often slow ones. As we know in our own lives there is much more satisfaction in cooking a meal or caring for small children if we are not in a hurry. Doing a job properly takes the time it takes. Sennett argues in a fascinating way that, while we are working, submerged processes of thought and feeling are in progress. Almost without being aware we set ourselves the highest standard which "requires us to care about the qualities of cloth or the right way to poach fish". Doing our own work well enables us to imagine larger categories of "good" in general.
You can't write or program well in units of an hour. That's barely enough time to get started.
"You Westerners have your watches," the leader observed. "But we Taliban have time."
It seems that happiness, like peace or passion, comes most freely when it isn't pursued.
I have no bicycle, no car, no television I can understand, no media -- and the days seem to stretch into eternities, and I can't think of a single thing I lack.