Бертранд Мейер (известный как автор языка Eiffel) поделился в своем блоге ссылкой на статью “We Are Sorry to Inform You”. В ней в пародийной форме показывается, как могли бы выглядеть отказы в публикации очень важных и знаменитых статей, если бы они попали к некомпетентным и/или недальновидным рецензентам. Как то:
E.W. DIJKSTRA "Goto Statement Considered Harmful."
E.F. CODD "A Relational Model of Data for Large Shared Data Banks."
A. TURING "On Computable Numbers, with an Application to the Entscheidungsproblem."
C.E. SHANNON "A Mathematical Theory of Communication."
C.A.R. HOARE "An Axiomatic Basis for Computer Programming."
R.L. RIVEST, A. SHAMIR, AND L. ADELMAN "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems."
Как известно, в каждой шутке есть только доля шутки. Поэтому некоторые моменты в пародиях хотелось бы отметить.
Про Дейкстру и goto:
The author is a proponent of the socalled "structured programming" style, in which, if I get it right, gotos are replaced by indentation. Structured programming is a nice academic exercise, which works well for small examples, but I doubt that any real-world program will ever be written in such a style. More than 10 years of industrial experience with Fortran have proved conclusively to everybody concerned that, in the real world, the goto is useful and necessary: its presence might cause some inconveniences in debugging, but it is a de facto standard and we must live with it. It will take more than the academic elucubrations of a purist to remove it from our languages.
Что-то это мне напоминает… А еще и вот это из рецензии из Кодда:
The formalism is needlessly complex and mathematical, using concepts and notation with which the average data bank practitioner is unfamiliar.
Батюшки, так ведь я сейчас подобным образом нападаю на функциональное программирование! Ай-яй, не хорошо как-то получается. :)))
Еще из Кодда:
…at first sight I doubt that anything complex enough to be of practical interest can be modeled using relations. The simplicity of the model prevents one from, for instance, representing hierarchies directly and forces their replacement with complicated systems of "foreign keys." In this situation, any realistic model might end up requiring dozens of interconnected tables-hardly a practical solution given that, probably, we can represent the same model using two or three properly formatted files.
Пробабахавшись последние несколько месяцев с проектом, который активно использует РСУБД, мне кажется, что воображаемый автор рецензии был не таким уж недальновидным :) Если, конечно, заменить properly formatted files на object oriented database ;)
А вот “замечательные” слова из рецензии на статью изобретателей RSA:
It is unlikely that any method that runs counter to this standard will be adopted in any significant degree. True, the IBM method presents the problem of distributing the encryption key, but their method is a standard and we must live with it. Instead of creating nonstandard methods that will soon be dead for lack of users, the authors should try to extend the standard and devise ways to distribute the encryption keys securely.
Имхо, эти слова нужно обязательно адресовать всем, кто бросается снисходительно-высокомерными характеристиками “велосипед” или верит в то, что существует “один правильный и стандартный” способ делать что-либо.