Chociaż nie jest to nowy pomysł , wydaje się, że w ciągu ostatnich kilku lat znacznie wzrosło zainteresowanie kunsztem oprogramowania (szczególnie często zalecanym tytułem książki Clean Code jest Clean Code: A Handbook of Agile Software Craftsmanship ).
Osobiście uważam, że kunszt oprogramowania jest dobrą inżynierią oprogramowania z dodatkowym zainteresowaniem zapewnianiem, że efekt końcowy jest przyjemnością w pracy (zarówno jako użytkownik końcowy, jak i ktoś, kto utrzymuje to oprogramowanie) - a także, że jego uwaga skupia się bardziej na poziomie kodowania rzeczy niż rzeczy przetwarzane na wyższym poziomie.
Aby narysować analogię - w latach 50. i 60. wybudowano wiele budynków w bardzo nowoczesnym stylu, które w niewielkim stopniu uwzględniały ludzi, którzy w nich mieszkali, ani tego, jak te budynki starzeją się z czasem. Wiele z tych budynków szybko przekształciło się w slumsy lub zostały rozebrane na długo przed przewidywaną długością życia. Jestem pewien, że większość programistów z kilkuletnim doświadczeniem będzie miała podobne bazy kodu.
Jakie są szczególne rzeczy, które może zrobić rzemieślnik oprogramowania, czego nie może zrobić inżynier oprogramowania (być może zły)?