Dobry
Gdzieś tam mały czerwony samochód sportowy zmierza w kierunku pasa asteroidów i to my programiści umieściliśmy go tam. Ooo, nie mam zamiaru umniejszać dokonań Elona Muska i wszystkich tych kosmicznych naukowców i inżynierów ze SpaceX. To była ich wizja i ich osiągnięcie. Ale oni nie mogliby tego dokonać bez nas.
Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony :
Proszę o komentarze, o ile ta luźność jest zbyt daleko posunięta.
Pomyśl, przez chwilę, o tym całym oprogramowaniu zaangażowanym w ten projekt. Pomyśl o całej automatyce samego statku kosmicznego.
Pomyśl o zdolności tych boosterów do wylądowania w duecie. Pomyśl o statecznikach sterujących, o stabilizatorach silnika,
o przepustnicach. Pomyśl o kontroli naziemnej, i o protokołach komunikacyjnych, i ...
Pomyśl o tym, jak pracowali inżynierowie. Pomyśl o oprogramowaniu
CAD /
CAM. Pomyśl o
maszynach CNC i oprogramowaniu do modelowania 3D.
Pomyśl o symulacjach dynamiki płynów,
analizie elementów skończonych, obliczeniach orbitalnych, arkuszach kalkulacyjnych,
procesorach tekstu, e-mailach, SMS-ach, rozmowach telefonicznych...
Myślę, iż widzisz, co chcę pokazać. Każdy malutki krok na ścieżce od marzenia do realizacji był oliwiony, umożliwiany,
rozszerzany i ułatwiany przez oprogramowanie. Oprogramowanie, którego miliardy miliardów linii
kodu napisaliśmy my programiści.
[Tak, saganizm był zamierzony]
A teraz pomyśl co to oznacza dla naszej cywilizacji. Tak, to był znak - gest - zaledwie kropla w morzu możliwości.
Ale co za kropla! Tylko pomyśl o tej zwykłej chucpie, ogromnym, żywiołowym,
radosnym marnotrawstwie! To był paw okazujący swoje bogate pióra nad ogonem.
To była antylopa widłoroga skacząca
w górę w akcie zwykłego entuzjazmu. To był wyraz odrzucenia ograniczeń i nasza ochota do nonszalanckiego poświęcenia
ogromnych zasobów w celu zrobienia małego kroku do spełnienia namiętnego marzenia.
To była wiadomość, którą wysłaliśmy do nas samych, i do całego wszechświata, mówiąc, iż oto nadchodzimy i nic w tym
wszechświecie nas nie powstrzyma. I to my programiści byliśmy tymi, którzy bardziej niż ktokolwiek
inny umożliwili wysłanie tej wiadomości. To jest coś z czym Ty, ja, i wszyscy inni programiści powinniśmy czuć się bardzo dobrze.
Zły
Elaine Herzberg jest martwa.
Została uderzona przez "autonomiczny" samochód przeprowadzając swój rower przez drogę.
I to my programiści ją zabiliśmy. Ooo, nie mam na myśli tego, iż jakikolwiek programista złośliwie, czy
przez niedbalstwo napisał kod, który ją zabił. Ale, bez jakichkolwiek wątpliwości, to kod ją zabił.
Być może była tam, gdzieś w kodzie, instrukcja IF, która, przy odwrotnej wartości predykatu, uchroniłaby od wypadku.
Albo być może była tam funkcja, która wygenerowałaby wynik różny o kilka bitów i to uchroniłoby od wypadku.
Możemy nigdy nie wychwycić tej instrukcji IF lub tej funkcji. Sieci neuronowe uczone maszynowo są zdradliwie trudne do zrozumienia.
Nawet, gdy pliki logu samochodu zawierają wszystkie wejścia, i możemy powtarzać zdarzenie w kółko i w kółko, możemy nigdy nie zrozumieć,
w głębinie wag, średnich i pętli zwrotnych, dlaczego samochód zachował się tak, jak się zachował.
Jedyne co możemy powiedzieć, to to, iż my programiści napisaliśmy kod, który ją zabił. I to jest coś,
z czym Ty, ja, i wszyscy inni programiści powinniśmy się czuć bardzo źle.
Brzydki
Jest przekonanie wśród programistów, iż argumenty etyczne i moralność nie powinny brać udziału w naszych dyskusjach
o dyscyplinach i praktykach. Ci, którzy mają takie przekonanie sugerują, iż nasze praktyki i dyscypliny powinny być
sprawą czystej logiki i ekonomii. Biorąc pod uwagę te dwa scenariusze powyżej uważam to za niepokojące. Mi wydaje się, że
etyka i moralność stały się nieodłączne od wszystkiego, co my programiści robimy; ponieważ tak wiele zależy
od jakości naszej pracy.
Nasze Motto
Już dawno minął czas, w którym my programiści mogliśmy bezpiecznie odizolować się od reszty świata. My programiści
nie możemy dłużej chować się w naszych technologicznych bańkach. Kod, który my programiści piszemy ma znaczenie.
Ma znaczenie dla nadziei i marzeń naszego społeczeństwa i naszej cywilizacji. Ma znaczenie dla ludzi przeprowadzających swoje
rowery przez ulice. Ma znaczenie dla wszystkich i każdego, ponieważ kod, który my programiści piszemy oliwi, umożliwia,
rozszerza i ułatwia praktycznie każdy aspekt naszego codziennego życia. Od czegoś tak małego, jak monitor oddechu,
którym młoda mama sprawdza swoje dziecko, po coś tak ogromnego jak międzynarodowe polityki broni nuklearnej i
podróże międzyplanetarne, nasz kod ma znaczenie.
Ostatnio Grady Booch twittnął coś, co myślę, iż my programiści powinniśmy przyjąć jako nasze motto:
Każda linia kodu reprezentuje etyczną i moralną decyzję.
Powyższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina ze strony :
Proszę o komentarze, o ile ta luźność jest zbyt daleko posunięta.