Rozdział 1. Historia systemu SZARP

Wszystko zaczęło się w roku 1991. Inicjatorem był Witold Kowalewski, właściciel firmy Praterm. Praterm od momentu powstania w 1983 roku zajmował się automatyzacją ciepłownictwa. Początkowo wykorzystywał urządzenia elektro-mechaniczne, od 1989 roku zaczął wykorzystywać mikroprocesorowe sterowniki przemysłowe firmy Z-Elektronik należącej do Krystiana Zasadzińskiego. Wkrótce okazało się, że dla przeprowadzenia analiz prowadzenia przez automatykę procesów technologicznych w ciepłownictwie potrzebny jest system do rejestrowania danych charakteryzujących te procesy: temperatur, ciśnień itp. Zbiegło się to z początkiem ery komputerów PC. W 1991 roku Piotr Branecki stworzył pierwszy program w Turbo Pascalu pracujący pod DOSem, który zbierał dane ze sterowników podłączonych za pomocą terminala wieloportowego firmy Specialix przez RS-y 232. Dane zapisane były w formacie binarnym specyficznym dla tego programu. W roku 1992 do prac nad rozwojem SZARPa dołączył Lucjan Przykorski. Oprogramowanie zostało podzielone na dwie części:

Wszystko pracowało w jednowątkowym DOSie, stąd potrzeba dwóch komputerów, aby można było uruchomić w systemie więcej niż jeden program. Sieć pracowała na Novell NWLite 1.0, potem 1.1. Baza zapisywana była w systemie opartym na plikach dBaseIV: DBF + MDX, który to format zachował się aż do SZARP v2.1. W roku 1993 do zespołu programistów dołączył na chwilę Stanisław Kłosiński, autor innego programu klienckiego dedykowanego do pracy na terminalu, służącego do specjalistycznej analizy zarejestrowanych danych.

W tym samym roku 1993 Branecki i Przykorski przenieśli SZARP na platformę Unix - był to USL Unix SVR4.2 firmy Consensys, którego ilość egzemplarzy sprzedana w Polsce dała się policzyć na palcach. SZARP jako system pracujący w środowisku wielozadaniowym został podzielony na szereg programów. Część z nich działała jako demony pracujące w tle, interfejs użytkownika stanowiły zaś aplikacje klienckie wykorzystujące Motif 1.1.1. W roku 1994 do zespołu programistów dołączył Marcin Anderson, twórca kilku programów zarówno w kategorii demonów jak i aplikacji użytkowych.

We wrześniu 1994 Branecki i Przykorski obronili na Wydziale Elektroniki i Technik Informatycznych Politechniki Warszawskiej pracę dyplomową: "System zbierania danych i sterowania wolnozmiennych procesów technologicznych o rozproszonych punktach kontrolno-pomiarowych". Praca to dotyczyła SZARPa i współpracujących z nim sterowników przemysłowych. Pomimo innowacyjnego charakteru pracy, kilku działających w rzeczywistości instalacji i ewenementu w postaci filmu, który dyplomanci nakręcili w ramach pracy, spotkała się z pełną ignorancją ze strony uczelni.

Jeszcze w roku 1994 SZARP doczekał się nowego systemu operacyjnego: Novell UnixWare 1.1, który został przez Novella zakupiony od AT&T. Następną platformą był Novell UnixWare 2.03, po której to wersji Novell sprzedał ze stratą UnixWare do SCO. Ta ostatnia wypuściła w 1995 roku SCO UnixWare 2.1, który nie licząc kilku patchy był ostatnim z komercyjnych Unixów, na którym pracował SZARP.

W latach 1993-1995 jako terminale wykorzystywane były komputery pracujące w DOSie z programem XAppeal firmy Xtreme charakteryzujący się bardzo małymi wymaganiami sprzętowymi i jeszcze mniejszą listą obsługiwanego sprzętu nie różniąc się specjalnie w tym ostatnim od linii UnixWare. Od roku 1996 w swoich instalacjach Praterm zaczął wykorzystywać emulatory Xserwera pracujące pod MS-Windows: Starnet X-Win, SCO XVision Eclipse 7.1, Labf.com X-Win Pro / WinaXe. Najwięcej terminali zostało wykorzystanych w oparciu o ten ostatni, najtańszy, najlżejszy i najbardziej rozwijający się produkt fińskich programistów.

W 1996 roku pozostający do tego momentu bezimiennym system zbierania, archiwizacji i prezentacji danych doczekał się oficjalnej nazwy SZARP v2.0. Nazwa SZARP v1.0 miała dotyczyć instalacji pod DOSem. SZARP v2.0 składał się z 12 modułów, jego struktura pozwalała na dowolną rozbudowę o kolejne. W lecie roku 1996 od Pratermu odszedł Piotr Branecki, na początku roku 1997 firmę opuścił także Marcin Anderson. W roku 1997 w Legionowie dokonana została ostatnia instalacja SZARPa na SCO UnixWare. Pod koniec roku 1997 do zespołu programistów dołączyli Maciej Mochol i Jarosław Nowisz. To oni dokonali portu SZARP z UnixWare do Linuksa tworząc w ten sposób SZARP v2.1. Oprócz samego przeniesienia wykonali szereg usprawnień i usunęli niezliczoną masę błędów. W roku 1998 SZARP doczekał się repozytorium CVS, na którym rezyduje do dnia dzisiejszego. W tym samym roku Maciej Mochol zaadoptował SZARPa do autoconfa i stworzył z niego dystrybucję (wcześniej była to luźno rozrzucona grupa programów). Od roku 1998 SZARP był instalowany już tylko na Linuxie, początkowo na dystrybucji Red Hat poczynając od wersji 5.2.

W roku 1999 do zespołu programistów dołączył Michał Rój. Na początku roku 2000 Maciej Mochol stworzył narzędzie parconf, które później wielokrotnie udoskonalane znakomicie usprawniło zmiany w konfiguracji poszczególnych serwerów, które to zmiany wcześniej wymagały dużej ilości ręcznych operacji. W połowie 2000 roku zespół rozszerzył się o Pawła Pałuchę. Pod koniec roku 2000 zrezygnował z pracy nad projektem Jarosław Nowisz. W połowie kwietnia 2001 uruchomiona została pierwsza instalacja BODASa - Bazy Ogólnopolskiej Danych Archiwalnych SZARP. Część systemów z SZARPem podłączonych do internetu przez stałe łącze zrzuca aktualne dane co 10 minut, nieliczne już hosty z modemami łączą się raz na dobę zgrywając dane na serwer praterm.com.pl. Do centralnego serwera Pratermu podłączane są sukcesywnie kolejne hosty z SZARPem. W kwietniu 2001 do zespołu developerów SZARPa dołączył Stanisław Sawa. Pod koniec roku 2001 Paweł Pałucha dodał do SZARPa pierwszą od dłuższego czasu aplikację z graficznym interfejsem użytkownika - Dyspozytor.

Na początku 2002 zrezygnował z pracy w zespole Maciej Mochol. We wrześniu 2002 roku Paweł Pałucha obronił na Wydziale Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego kolejną pracę magisterską dotyczącą SZARPa - Zdalne sterowanie i kontrola procesu przemysłowego z wykorzystaniem technologii XML/SVG, tworząc tym samym nową wersję wizualizacyjnej części systemu. Pod koniec roku 2002 ten sam developer rozpoczął przenoszenie części aplikacji użytkowych SZARPa na platformę MS-Windows, z wykorzystaniem biblioteki wxWindows/wxWidgets.

W roku 2003 SZARP był instalowany na pochodnych dystrybucji Red Hat - Aurox 9.x. W tym samym roku, w związku z wycofaniem się Red Hat z rozwijania dystrybucji niekomercyjnych, SZARP zaczął być instalowany na Debianie, którego specjalizowaną dystrybucję przygotował Stanisław Sawa. W tym samym roku terminale windowsowe zaczęły być wyposażane w Xserwer Cygwin - w odróżnieniu od WinaXe darmowy i wyposażony w wiele funkcji jak np. serwer sshd. Także w 2003 roku Paweł Pałucha rozpoczął prace nad przeniesieniem konfiguracji do IPK - Idealnego Pliku Konfiguracyjnego - w formacie XML.

W roku 2004 do zespołu "sterownikowego" firmy Praterm S.A. dołączył Paweł Kolega, także uczestniczący w rozwoju oprogramowania. Paweł Pałucha zaprojektował i zaimplementował nowy, prostszy format bazy danych, co pozwoliło na stopniowe wycofywanie się z ostatniego komercyjnego elementu systemu - biblioteki Codebase do obsługi bazy dBase IV. Jako emulator X-terminala dla terminali z Windows, ze względu na prostotę instalacji, zaczął być stosowany freeware'owy Pexus X/Deep32.

06.12.2004 akcje Praterm SA zadebiutowały na GPW, co w praktyce oznaczało szereg poważnych zmian dla SZARPa. Skończył się etap pilnowania każdej złotówki przy pracach rozwojowych (rozpatrywanie każdego tematu pod kątem zwrotu w jak najkrótszym czasie), zamiast tego należało położyć nacisk na bezpieczeństwo. 01.01.2005 Lucjan Przykorski oficjalnie przestał być aktywnym członkiem zespołu programistów (co stało się faktem jakiś czas wcześniej), zajmując się w Pratermie sprawami technicznymi, informatyka zaś pozostała jego hobby. Szefem działu IT został Paweł Pałucha, który od tego momentu decydował o przyjmowaniu nowych informatyków i szczegółowych pracach nad SZARPem.

Na przełomie roku 2004/2005 współpracę przy tworzeniu SZARP'a zakończył Michał Rój, natomiast dołączyli trzej nowi programiści - Michał Blajerski, Dariusz Marcinkiewicz i Krzysztof Gałązka. Do działu sterownikowego dołączył Jarek Janik. Dokończono przenoszenie całości konfiguracji do formatu XML. Powstało wiele sterowników do nowych urządzeń, oprogramowanie do importu danych z innych systemów telemetrycznych, zrealizowano instalacje wykorzystujące łączność bezprzewodową WLAN i komunikację GSM/GPRS.

Pod koniec III-go kwartału 2005 z pracy w zespole programistów zrezygnował Stanisław Sawa. Na wszystkich ciepłownie Pratermu dokonano aktualizacji systemów operacyjnych do Debiana, przeprowadzono konwersję istniejących baz na nowy format. Działania te udało się także podjąć u większości klientów zewnętrznych - mimo kilku nowo zakupionych przedsiębiorstw nadal około połowy instalacji to spółki spoza grupy Praterm.

Rok 2006 to okres dość intensywnego rozwoju aplikacji klienckich, w szczególności pierwszym użytkownikom zaoferowano wersje programu przeglądającego nowej generacji, pracującego także pod kontrolą Windows. W połowie roku do zespołu programistów dołączył Krzysztof Ołowski, choć w dużej mierze z myślą o pracy przy oprogramowaniu do sprawozdawczości finansowej w holdingu.