Przejdź do treści

Uniwersytet Śląski w Katowicach

  • Polski
  • English
search
Wydział Nauk Ścisłych i Technicznych
Logo Europejskie Miasto Nauki Katowice 2024

Dzień programisty | dr inż. Roman Simiński

13.09.2021 - 13:31 aktualizacja 13.09.2021 - 14:02
Redakcja: jp
Tagi: kartka z kalendarza

13 wrzesień

DZIEŃ PROGRAMISTY

Save the date with our scientists

„Kartka z kalendarza” to cykl artykułów, które powstawały z okazji różnych nietypowych świąt. Autorami prezentowanych materiałów są studenci, doktoranci i pracownicy Wydziału Nauk Ścisłych i Technicznych UŚ.

Dzień Programisty to święto programistów obchodzone w 256. dniu roku 256=2^8 czyli liczba wszystkich możliwych wartości jednego bajtu informacji w jego najpopularniejszej, 8-bitowej postaci. Dzień Programisty w roku przestępnym wypada 12 września, a w pozostałe lata 13 września.

O tym, że każdy programista jest magiem tworzącym coś niezwykłego za pomocą zaklętego kodu opowiada dr inż. Roman Simiński.

dr inż. Roman Simiński
fot. archiwum prywatne

dr inż. ROMAN SIMIŃSKI


adiunkt

Na początku zwykle jest nic. Pusta kartka, puste okno edytora. No, czasem może coś jest: ileś tam standardowych linii jakiegoś „frejmłorka”. Ale nieważne, jak wiele użytecznych rzeczy te linie mogą zrobić, w istocie dalej na początku jest funkcjonalne nic. Technicznie, bo na początku coś jednak jest. Czasem ulotna myśl, nieuczesana idea, ledwie uchwytna koncepcja, a czasem bardzo konkretny pomysł. I rozpoczyna się przygoda. Przygoda tworzenia nowego programu. Przygoda przekuwania myśli, idei, koncepcji i pomysłów w coś, co sprawi, że powstanie ich komputerowa egzemplifikacja. Konkretna, namacalna, sensorycznie odczuwalna. Powstaje program, który może jest użyteczny i codziennie potrzebny, może tylko rozrywkowy, a może taki, który otwiera przed nami wrota nowych światów, nowych doznań i przeżyć. Programista to ktoś, kto przekuwa owe myśli, idee, koncepcje i pomysły w konkret. Konkret mierzony zwykle tysiącami linii kodu.

⌨️ Przekuwanie to coś, co kojarzy się z kowadłem i kowalem, który z niekształtnej zwykle bryły metalu tworzy to coś. Czasem to coś jest tylko po prostu użyteczne, jak końska podkowa czy sztacheta w płocie, czasem to coś jest wręcz dziełem sztuki, jak samurajski miecz czy szyszak Jana III Sobieskiego. Efekt pracy programisty też czasem bywa do bólu praktyczny w swojej użyteczności, a czasem jest prawie działem sztuki potrafiącym zachwycić kreacją i finezją zastosowanych rozwiązań. Wszystko to wpisuje się w nurt profesji, których immanentną cechą jest tworzenie, czasem efektem owego procesu jest coś praktycznego, czasem wręcz artystycznego, a czasem te dwie właściwości łączą się w jednym dziele.

⌨️ Wszędzie tam, gdzie efekt owego tworzenia znajduje odbiorców i staje się dobrem pożądanym, pojawia się tendencja do uczynienia z niego przemysłowego procesu produkcyjnego. Nie inaczej jest z tworzeniem oprogramowania. Aktualnie programowanie stało się elementem szeroko rozumianego procesu wytwarzania oprogramowania. Wytwarzania w sensie wręcz przemysłowym. Ponieważ oprogramowanie łatwo powielać w wielu kopiach, przemysłowe wytwarzanie oprogramowania nie ma zwykle na celu jego masowej produkcji. Przemysłowe podejście do wytwarzania oprogramowania chce doprowadzić do tego, aby ten proces był uporządkowany i zapewniał powstawanie oprogramowania jak najlepszej jakości. Dlatego, wspomniany wyżej proces przekuwania myśli, idei, koncepcji i pomysłów w gotowe oprogramowanie, został ujęty w rygory inżynierskie, a uczestnikami tego procesu stali się nie tylko programiści. Współczesne wytwarzanie programowania zakłada, że proces ten realizowany jest według uporządkowanego podejścia zwanego metodyką i w różnych fazach wytwarzania biorą w nim udział specjaliści o różnych kompetencjach, często zupełnie nieprogramistycznych. Jednak ciągle kluczowym elementem jest przejście od opisu wymagań dla oprogramowania, do działającego kodu. I to jest świat programisty, i tu programista jest niezbędny. I choć można pewne procesy zautomatyzować, choć można część kodu powielać, wygenerować, to zawsze w końcu dochodzi się do momentu, w którym niezbędna staje się interwencja programisty.

⌨️ Bo choć wytwarzanie oprogramowania stało się aktualnie procesem iście przemysłowym, pozornie zabijającym indywidualną kreatywność wtłoczeniem w sformalizowane ramy, tworzenie innowacyjnego, przecierającego szlak oprogramowania, to ciągle jest wyzwaniem dla tych, którzy chcą tworzyć. A samo programowanie wciąż jest przestrzenią do wyrażania siebie poprzez finezyjne algorytmy, wyrafinowane struktury danych, perfekcyjnie opracowany kod. Im nowsze i bardziej wyrafinowane służą do tego języki i narzędzia, tym ta przestrzeń może być większa. Tego się trzeba jednak nauczyć, na przykład na informatycznych studiach na Wydziale Nauk Ścisłych i Technicznych Uniwersytetu Śląskiego.

read this article in english

return to top