August 31, 2005

Software design

"To a man with a hammer, everything looks like a nail. To a Computer Scientist, everything looks like a language design problem. [...] My early work clearly treated modularisation as a design issue, not a language issue. [...] We are still trying to undo the damage caused by the
early treatment of modularity as a language issue and, sadly, we still try to do it by inventing languages and tools."

David Parnas, in :
Premkumar Devanbu, Bob Balzer, Don Batory, Gregor Kiczales, John Launchbury, David Parnas, Pen Tarr, "Modularity in the New Millenium: A Panel Summary," in Proceedings of the 25th International Conference on Software Engineering, Portland, OR, 2003, pp.723-724.

August 30, 2005

What is software

"In the context of a book on software design, it should be obvious that we are concerned with designing software. It is far from clear, however, just what the word means. We can approach software from many different perspectives, each with its own implications for design. In this book, we emphasize software as a medium for the creation of virtualities--the world in which a user of the software perceives, acts and responds to experiences."

Terry Winograd, Introduction to "Bringing Design to Software."

August 25, 2005

Fear of the unknown

"You come to me for advice, but you can't cope with anything you don't recognize. Hmmm. So we'll have to tell you something you already know but make it sound like news, eh? Well, business as usual, I suppose."

Douglas Adams, "Mostly Harmless."

August 24, 2005

The right tools make all the difference

A screw is best used with a screw-driver. The screw-driver is as critical to screwing as the screw.

If all one has is a hammer, and all one studies is nailing and hammering, it will be difficult to grasp, let alone come up with, the concept of screwing. Screws handled with a hammer bear the mark of laziness and short-term reward.

But, once mastered, screwing should not be allowed to eclipse nailing: while some tasks require screwing, others clearly call for nailing. Only by understanding not only each independently, but also how they relate to each other, can one decide when to use them optimally.

Then it is time to start learning about riveting...

August 20, 2005

Academic credits

"I recently learned a disagreeable fact: there are influential scientists in the habit of putting their names to publications in whose composition they have played no part. Apparently, some senior scientists claim joint authorship of a paper when all that they have contributed is bench space, grant money and an editorial read-through of the manuscript. For all I know, entire scientific reputations may have been built on the work of students and colleagues!"

Richard Dawkins, Preface to the 1989 edition of "The Selfish Gene."

August 18, 2005

What you see is what you expect

"[...] a scientist must also be absolutely like a child. If he sees a thing, he must say that he sees it, whether it was what he thought he was going to see or not. See first, think later, then test. But always see first. Otherwise, you will only see what you were expecting."

Douglas Adams, "So Long and Thanks for all the Fish."

August 07, 2005

Welcome to

Sign of the times, this blog is now my official personal home page. It is obviously work in progress. If you are looking for professional information, follow the link to my home page at USC.