Written by 22:28 informatycy, IT 4 komentarze

Programista języka polskiego

“Years of experience working with programmers have taught me that programmers who can communicate their ideas clearly are going to be far, far more effective than programmers who can only really communicate well with the compiler.” J. Spolsky
(tu pełna wypowiedź,                                                                       polecana rekruterom IT).
W poprzednim wpisie nadmieniłem o istotnych korzyściach dobrego, komunikatywnego pisania. W tym, zgodnie z obietnicą, o możliwych korelacjach pomiędzy dobrym wypowiadaniem się na piśmie w swym ojczystym języku a dobrym programowaniem. Przez dobre pismo rozumiem przede wszystkim pismo zrozumiałe i klarowne. Zrozumiałość i klarowność przekazu od zawsze były dla mnie podstawowym wyznacznikiem dobrego tekstu – czy to prasie, czy w literaturze, czy w biznesie.
Dlaczego można przypuszczać, że źle piszący po polsku programista może tworzyć również słabszej jakości kod? Gdyż:
1) Niedbałość, nieprecyzyjność, nieuważność – jako raczej centralne i stałe składowe czyjegoś umysłu – będą prawdopodobnie ujawniać się w różnych formach komunikacji, tak w komunikacji z człowiekiem, jak i komputerem. Brak przecinka w wypowiedzi może zmienić sens zdania. Brak nawiasu w kodzie może zmienić “sens” danego fragmentu kodu.
2) Języki ludzi (np. angielski, polski itd.) i języki komputerów (C++, Java itd.) w swej istocie są podobne. Te i te mają swą specyficzną składnię, logikę, reguły i ograniczone środki wyrazu. Służą też do tego samego – do komunikacji. Jak trafnie zapytał ktoś w komentarzu do poprzedniego wpisu: “Czy programista, który ma problemy ze sprecyzowaniem i wyjaśnieniem o co mu chodzi, mając do dyspozycji swój bardzo obszerny język ojczysty, może być dobrym programistą w języku nieporównywalnie bardziej ubogim?”
3) Bycie dobrym programistą to nie tylko pisanie kodu, ale i często dokumentowanie i komentowanie go – często pisane “zwykłą prozą”.
4) Programiści rzadko pracują w pełni samodzielnie, często aplikacje są dzieckiem więcej niż “jednego ojca”. Stąd to, jak czytelny kod piszą dla siebie nawzajem, ma kluczowe znaczenie dla efektywności wspólnej pracy. Piszący nieczytelny i niechlujny kod programista spowolni pracę reszty zespołu.
5) Programiści coraz częściej pracują oddaleni przestrzennie od siebie, komunikując się mailowo czy przez tzw. instant messagery, a w takich środowiskach, jak zauważył inny znakomity czytelnik, “umiejętność precyzyjnego konstruowania zdań staje się kluczowa”.
Owszem, można pewnie podać przykłady programistów dobrych i bardzo dobrych, a nie najlepiej komunikujących się pisemnie. Zaryzykowałbym jednak, że to wyjątki (praca z nimi to “obsługa wyjątków”). 
_______
(Visited 7 times, 1 visits today)
Close