Dzień Dobry {name} Raz na kwartał publikuje (nowe postanowienie noworoczne 2025 ;)) krótkie podsumowanie, które wysyłam do wszystkich. Dlaczego? Każdy z Państwa subskrybuje "swój temat" ale nie raz taki "temat" trudno jednoznacznie sklasyfikować więc samowolnie :) pomyślałem, że taki okólnik raz na kwartał nie zaszkodzi. Dodatkowo przemycę swoje przemyślanie, które nie znalazły okazji do napisania wpisu na Blogu. Wartości intelektualne. Rośnie ich świadomość, bo mamy czas gdy autorzy wielu systemów, mających swoje początki w latach 90-tych (to bardzo wiele obecnie dużych systemów!), odchodzą na emerytury lub po prostu wymierają. Te systemy to stare technologie, dzisiaj uznawane za antywzorce: " Java applications, possibly encouraged by technologies such as early versions of EJB's Entity Beans,[1] as well as in .NET applications " (https://en.wikipedia.org/wiki/Anemic_domain_model) Bardzo często są nieudokumentowane, a rozrośnięte do setek wzajemnie powiązanych tabel bazy danych stanowią sobą beczkę z prochem. Tylko w w ostatnich 12 miesiącach miałem cztery prośby o pomoc w takich przypadkach. Powodem były: rosnące koszty utrzymania, brak możliwości rozwoju (nikt nie wie jak to działa bo autorzy odeszli) oraz coraz częściej: "wartości intelektualne" a niestety kolejne firmy odkrywają sam kod źródłowy jest bezwartościowy bez "osoby która wie jako to działa". Najciekawsze było ubiegłoroczne pytanie o wycenę 1,2 mln linii nieudokumentowanego kodu w Java. Ja odmówiłem, bo było by to zapewne droższe od napisania tej aplikacji od zera. I wiem, że nadal nie znaleziono wykonawcy tej "usługi". Powodem była próba wniesienia tej aplikacji aportem do nowej spółki. Narasta problem nieudanych wdrożeń monolitycznych, wielomodułowych systemów ERP. Jako osoba angażowana do sporów w tym obszarze obserwuje standardowy scenariusz: firmy wdrażające ignorują zalecenia procentów systemów, niektórzy nawet jawnie wpisują to do umów (wdrożenie będzie prowadzone własna metodyką dostawcy, a nie metodyką zalecaną przez producenta). To się prosi o kłopoty. Wartości intelektualne w inżynierii (inżynieria oprogramowania to też inżynieria) to dwa odrębne przedmioty: prawo autorskie chroniące wyłącznie formę wyrazu (czyli nawet bezwartościowy niedziałający kod źródłowy jest chroniony jako tekst), oraz "mechanizm" (logika działania), który można w sposób jednoznaczny i zrozumiały wyrazić schematami blokowymi i wzorami matematycznymi, a zaimplementować na nieskończenie wiele sposobów jednym z wielu języków programowania. To pierwsze to know-how, bez którego sama implementacja (kod źródłowy) jest bezwartościowa (test Urzędy Patentowego: tu nie przyjmują kodu źródłowego). Pyrża, A. (Ed.). (2006). Poradnik wynalazcy: Metodyka badania zdolności patentowej wynalazków i wzorów użytkowych. Urząd Patentowy Rzeczypospolitej Polskiej. https://uprp.gov.pl/sites/default/files/inline-files/Poradnik%20wynalazcy.%20Metodyka%20badania%20zdolno%C5%9Bci%20patentowej%20wynalazk%C3%B3w%20i%20wzor%C3%B3w%20u%C5%BCytkowych.%20Wydanie%20I.pdf Sztuczna inteligencja? No cóż, być może szybko i świetnie koduje, ale nadal nie projektuje.... Poniżej ostanie wpisu na Blogu... Jarek Żeliński |