|WikiProject Computer science||(Rated C-class, Low-importance)|
Edited "the inventor of the model-view-controller pattern". These patterns haven't been invented. They are, by definition really, approaches to software design and implementation that have been seen over and over again throughout the years of applied Computer Science (programming). These patterns can be recognized, described, become well-defined, and even specifically implemented in computing languages. But if it is something that has already been seen time and time again through various implementations (thus being a 'pattern'), then it can't really have been invented by anybody. --Daydreamer302000 (talk) 09:20, 6 November 2008 (UTC)
I am aware that within the pattern community it is an article of faith that patterns are never invented, only discovered, but I don't agree that this is necessarily the case. Trygve Reenskaug's development of MVC was in the mid-late 1970s. You really can't claim that this had been seen 'time and time again' at that point - I don't believe it had been seen at all. Bear in mind that there would have been precious few examples of OO at that point. Simula didn't have a user interface. SmallTalk was the first language that could possibly have supported an idea like MVC, and Trygve, then working in the Smalltalk group at Parc, was the first person to do it.
Although I have not said as much in the article I believe that I would be entitled to claim that I 'invented' the Naked Objects pattern rather than simply 'recorded' it. As one should do in a PhD, I spent two years trying to disprove my own hypothesis i.e. trying to prove that my proposed pattern already existed. I found a number of slight hints of it, but no clear prior example. Some ideas are conceived by many people independently; some are conceived by one person. I accept that most good software patterns either fall into the first category, or else are now so widely used that it is impossible to trace the origins. But it is wrong, IMO, to assert that a pattern can't have a single known origin or inventor. Richard Pawson —Preceding unsigned comment added by Rpawson (talk • contribs) 16:48, 21 November 2008 (UTC)
- But how would you really find any evidence that someone has implemented, without any knowledge or assignment of a popular name, a particular pattern? I could implement the naked objects in Motorola assembly (the first programming language I used professionally). How would you ever know? I might blog about it I suppose, although 'blogs' didn't exist in those days. My point is that saying someone invented a Design Pattern, which by definition are born of the experiences of many, is a very tenuous claim. Sure you or somebody might be the first in the field to describe it, but unless you were truly the very first programmer who had to deal with a very specific issue in a specific way, with no one else ever having possibly faced the exact same task before and being forced to find a solution, I think that this claim is invalid. --Daydreamer302000 (talk) 09:40, 21 May 2009 (UTC)
- Why restrict your argument to software patterns? Dennis Ritchie is often cited as the inventor of the C programming language: but how do you know that someone else didn't invent the same language before, but never published it? Or Dahl and Nygaard in regard to OO? Or Bricklin and Frankston in regard to the spreadsheet? (I've met many people who claim they wrote something like the spreadsheet years previously - though the claims never stand up to scrutiny in my experience). I recently read in a mainstram UK newspaper that 'Marks and Spencer invented the sandwich cut on the diagonal', which is just patent nonsense. The point is that any claim that someone invented any idea needs to be tested carefully for veracity. What is so odd about the pattern community is that they reject this whole idea out of hand - for them it is a tenet of belief that no pattern is invented. No other field of scientific knowledge takes this stance. Yes, many software patterns just evolve out of practical experience, but that is not to say they are never invented. And even what look like very distinctive inventions often build on prior ideas (e.g. hypertext, the spreadsheet, relational database, object-orientation). But the same is true of any field of engineering, or, for that matter, music, architecture or literature. But in all those fields it is recognised that someone can make a distinctive step in knowledge, and when there is proper documentation to that effect, and a rigorous study of the prior art then the term 'inventor' is applied.Rpawson (talk) 20:26, 17 August 2009 (UTC)