The death of software engineering and the last methodologist

Disclaimer: This is a translation of a recent article by Professor Bertrand Meier from the Communications of the ACM blog. [/b]
Professor Bertrand Meyer is an honorary doctor and head of the department ITMO, teaches at the University of Innopolis. And, what is important to know commentators, is fluent in Russian. ;)
The death of software engineering and the last methodologist
The theme of software engineering has never been particularly popular. This area began as a "programming methodology," which evokes the image of a middle-aged bearded man calling you, with a Dutch, Swiss-German or Oxford accent, to repent and embark on a true path. Covered (paraphrasing Mark Twain) is the obsessive fear that someone, somewhere, can actually enjoy programming.
But it was so in ancient times. With a few exceptions, one of which will be mentioned below, if anyone continues to study programming methodology, he is already doing it in world agile , where the decisive arguments often begin with the phrase "I always say " (Example from of the page of the consultant : "I always tell the team: 'I would like the[пользовательские]stories to be small, fit into one iteration , but such a path is not always acceptable " ). Dijkstra, occasionally, appealed to inner feelings, but supported them with rigorous conceptual evidence.
from 2017 , it is shown that in the top 100 universities providing professorships, software design took only 3% of all vacancies! (In higher education institutions, which are limited to the master's level, this figure is 6%, not to say that it is insignificant, but also not impressive, given that these institutions are mainly responsible for the training of future software engineers.) From the academic point of view careers, the obvious direction for selection is "Artificial Intelligence, Data Analysis and Machine Learning," which gained 23% of the number employed in these top 100 universities.
I have nothing against colleagues from AI; I always thought that "AI winter" was a search for[1]and they have the right to spring. Does this mean that now software engineering should go into the winter? This is madness. Software engineering is more important than ever. Recent article "apocalypse from PO" (more about the problem than about the solution) is one of the latest reviews that sound like an alarm. Or, as one of the recent examples - read about the Russian loss of the satellite [2](a luscious quote that you can use the next time you teach the class the complexity of software testing: "This revealed a hidden problem in an algorithm that was not shown by decades of successful launches of the Soyuz-Fregat bundle" ) .
Such cases, by the way, illustrate what I would call the dilemma of the software engineering professor, which is much more interesting, in my opinion, than the bizarre ethical puzzles (you understand what I mean -
? the trolley problem [/b] ? etc.) over which people with philosophical faculty spend their days: is it ethical, for the software engineering professor, to open a site every morning, immediately after awakening, in the hope of accomplishing some program-initiated catastrophe that would finally legitimize his profession? The answer is simple - no, it's not ethical. Nevertheless, when you observe the state of usual software development, it is terrible to think (though it is wrong to wish for it) about all the catastrophes that are waiting for you, which, as you suspect, are laid there and just wait for the right combination of circumstances.
So, yes, software engineering is as important as ever, as is the programming methodology. (Personal exposure: I think of myself as [i] about the very model of the modern methodologist
?[3], Without a beard or Dutch accent, but trying to take the torch of fruitful works of the seventies and eighties on the modern IT scene.)
Valuable, however, is not what the world needs, but what the world considers necessary. It does not seem that the world considers it necessary for itself more software engineering. Even when the software leads to disasters, we see headlines a day or two and then nothing. Radio silence. I argued to nausea, including four times in this blog (now five), about the need for a simple rule that would require a public audit of each such event; quoting itself : air transportation becomes safer not accidentally, but because of accidents. These warnings remain deaf. As another sign of a decline in interest, many, including myself, received most of their understanding about software engineering from forum ACM on the risks of , a long-standing and unique source of technical information about troubles in the software. The forum is still thriving and still, at times, informs about the problems of software engineering, but most of the traffic is about privacy and security (with special tenderness for libertarian rants against any reasonable privacy rules that are approved in the EU). Important topics, of course, but where do we go for comprehensive information about what goes wrong with the software?
Another circumstance that deserves attention is the evolution of programming languages. Creating languages ​​again became like a buzzing hive thanks to every kind of smart newcomer. I see one example (TypeScript) in which the driving force is the engineering goal: to make Web programs safer, more scalable and more manageable by introducing some discipline into the world of jаvascript. But this is an exception. The arguments of many new languages ​​tend to be how skillful they are and what expressive designs they introduce into use. Excellent. We need new ideas. They could be even more convincing if they were aimed at solving old and boring software design problems: correctness, reliability, extensibility and the ability to reuse.
None of this makes software engineering less important and does not reduce the passions of those of us who have dedicated their careers to this field. But it was time to put on our coats and hats: winter is before us.
[1]AI was my first love, thank you for this Jean-Claude Simon of the Polytechnic /Paris VI and John McCarthy at Stanford.
[2]I thank Nikolai Shilov for drawing my attention to this information. The text is in Russian, but you can skip it through a web-translator, which will allow you to understand the most important thing.
[3]This time I'll borrow the phrase from James Nobel.

Add comment