On ICSE’s “Most Influential Papers” – Parnas 1995
Today is the 50th paper in the #themorningpaper series! It seemed fitting therefore to choose this essay by David Parnas, written on his receipt of the ‘most influential paper’ award for his paper on the modular structure of complex systems. Do papers really have an influence on practitioners?
My observation, when studying this list [of previous award winners, including two papers that I helped to write], is that at most one of these papers could be considered influential. There is now a vast army of people who write programs as part or all of their professional activities. Most of these professional programmers have never read any of these papers and do not use the ideas explained in these papers. The one exception, the first paper, describes a system that practising programmers do use. In that case, it is probably true that the system was influential, but the paper itself didn’t matter.”
But he’s not having a go at the practitioners, as we shall see. Parnas then goes on to point out that most engineers writing code don’t go to academic conferences, and don’t read academic journals.
It is easy for us [the research community] to say that the practitioners are doing something wrong – they are ignoring us, “the learned researchers”. However, if we want to influence the way that software is written, we have to admit that *we* are doing something wrong.
According to Parnas, many papers are ‘this is what I did’ papers, describing how the work differs from other people’s work. Practioners, he argues, need “How to” papers that explain the basic assumptions behind the work. As ever, read the paper (link is always at the top of these posts) for the full argument.
So, almost 20 years on, how are we doing? I remain grateful to ICSE because it is there that I first heard about AOP, eventually going on to become the lead of the AspectJ project. (Fittingly, I was at ICSE to present a paper on technology transfer from research to industry of all things!) Undoubtably there is a vast amount of research published each year, way more than practitioners can absorb. But especially in the fields of data and distributed systems it feels to me like the connection between academia and industry is strengthening. The amplab at UC Berkeley is a great example of such technology transfer. And Jonas Boner’s talk on ‘The Road to Akka Cluster and Beyond‘ is a great example of practice being influenced and informed by academic research.
One of my hopes for #themorningpaper project is to raise the visibility of some great work that does indeed have relevance for modern practitioners. You’ll find me in the mornings curled up in the ampersand between the R and the D, reading a paper…