O mnie

Jakub Gania

Kim jestem

Cześć, nazywam się Jakub Gania. Jestem programistą. Szeroko pojętym IT interesuję się od wielu lat. Około roku 2015 moje zainteresowanie ukierunkowało się na programowanie. Początkowo poznawałem technologie i języki programowania, które były wykładane w ramach studiów informatycznych. Dopiero wraz z biegiem czasu zacząłem specjalizować się w technologiach webowych zarówno od strony frontendu, jak i backendu. Z czystej ciekawości czasami analizuję i czytam również o innych technologiach niż te, które służą do tworzenia aplikacji webowych.
Moje stanowisko

Moje stanowisko

Dlaczego programuję

W ogólnie pojętym programowaniu fascynuje mnie nieskończona możliwość tworzenia. Za pomocą programowania i co za tym idzie oprogramowania, rozwiązuje się najróżniejsze problemy. Czasami niesamowicie skomplikowane a czasami mniej. Każda osoba, która tworzy trochę bardziej złożony kod niż prosty skrypt, robi to w jakiś swój indywidualny sposób. Jednak to jak dana osoba lub grupa osób rozwiązuje jakiś programistyczny problem to wypadkowa umiejętności programistów oraz ich wizji i postrzegania danego problemu i języka programowania, oraz zbioru technologii. Powszechnie wiadomo, że istnieją pewne standardy oraz wytyczne przy tworzeniu oprogramowania jednak nigdy nie ma idealnej receptury do stworzenia nowego złożonego oprogramowania, czy to jakiejś platformy obliczeniowej, czy może portalu internetowego, który znacząco różni się od obecnych rozwiązań. Naturalnie programowanie nie zawsze dla mnie jest czymś łatwym i jasnym. Programowanie to wiele abstrakcji oraz mechanizmów, które poznaje się właściwie cały czas. Powiedzieć, że programowanie, tworzenie softu daje duże możliwości to jak powiedzieć nic. Za niezwykle interesujące uznaję również to, że za pomocą nawet niewielkich prostych skryptów można osiągać ciekawe efekty w postaci obliczeń, automatyzacji różnego rodzaju operacji, można badać zbiory danych, można integrować różne usługi sieciowe lub API. Możliwości jest po prostu bez końca. To jest fascynujące w mojej opinii.
Wycinek pliku markdown z opisem moich skryptów w języku Python

Wycinek pliku markdown z opisem moich skryptów w języku Python

Technologie

Od dłuższego czasu specjalizuję się w stosie technologii webowych. Pierwsze bardzo proste strony internetowe zacząłem robić w połowie studiów inżynierskich, kiedy to przez chęć stworzenia aplikacji na telefony zacząłem z dnia na dzień zagłębiać się w podstawy HTML i SQL. I tak od tego czasu uczę się tego, co związane z szeroko pojętym webem. Obecnie technologia, którą najczęściej miałem okazję wykorzystać to Vue.js wraz z frameworkiem Nuxt.js. Ta strona również powstała na podstawie tej technologii. Poza własnymi projektami technologię Vue wykorzystywałem również w pracy zawodowej. Poza Vue miałem również styczność z innymi frontendowymi frameworkami oraz bibliotekami. Oczywiście wszystkie pochodzą z wielkiej trójki, czyli Angular oraz React. Z Angularem pierwszy raz się spotkałem, gdy istniał jeszcze projekt pod nazwą AngularJS oraz miałem okazję zawodowo współpracować przy projekcie bazującym na AngularJS. Natomiast w przypadku nowszych wydań Angulara to miałem styczność z wersją 6 oraz 8. W wersji 8 zrobiłem interesujący projekt w ramach zadania rekrutacyjnego. Z technologią Facebooka miałem niewielką styczność przy projekcie komercyjnym, jednak głównie poznaję Reacta przez projekty własne/domowe oraz zadanie rekrutacyjne również. Pracowałem również w oparciu o framewroki bazujące na PHP takie jak Laravel czy Symfony, również Presta, ale na szczęście przez niedługi czas. Wiadomo, aplikacje webowe to również HTML, CSS, JavaScript, Node.js, SCSS czy SASS, Webpack, RWD, PWA ... Tymi technologiami i pojęciami operuje się chyba zawsze, więc naturalnie również one są w obszerze moich zainteresowań oraz nauki. Jeśli interesuje Cię ten temat bardziej, możesz zobaczyć na podstronę Doświadczenie oraz Projekty.
Meetup - RST CodeMeetings #12 Technologie Przyszłości - 29.05.2019 Wrocław, Polska

Meetup - RST CodeMeetings #12 Technologie Przyszłości - 29.05.2019 Wrocław, Polska

Edukacja i wykształcenie

Po gimnazjum uczęszczałem do liceum, w którym miałem rozszerzone przedmioty takie jak matematyka, fizyka czy informatyka. Wtedy jeszcze nie programowałem, ale już interesowały mnie komputery, co następnie skłoniło mnie do podjęcia studiów informatycznych. Z wykształcenia jestem inżynierem magistrem informatyki. Studia zrobiłem we Wrocławiu. Równolegle z ostatnim rokiem studiów magisterskich zrealizowałem studia podyplomowe z zakresu Cloud. Więcej szczegółowych informacji odnośnie wykształcenia oraz certyfikatów można zobaczyć na podstronie Doświadczenie.
Meetup - Wrocław PHP #2 - 23.07.2019 Wrocław, Polska

Meetup - Wrocław PHP #2 - 23.07.2019 Wrocław, Polska

Doświadczenie

Posiadam już pewne doświadczenie zawodowe. Również ze względów zawodowych miałem okazję prowadzić działalność gospodarczą. Obecnie zdecydowana większość moich umiejętności oraz wiedzy bazuje na własnej nauce i własnych projektach, które nieustannie realizuję. Więcej o moim doświadczeniu można dowiedzieć się na podstronie Doświadczenie.
Narzędzie Google DevTools oraz Visual Studio Code podczas pracy nad projektem

Narzędzie Google DevTools oraz Visual Studio Code podczas pracy nad projektem

Rozwój

Stały rozwój to nieodłączny aspekt w branży IT. Staram się cały czas poszerzać i swoją wiedzę techniczną, ale i również ogólną. Oczywiście każdy człowiek nie jest w stanie pojąć niekończących się ilości informacji oraz nowych technologii ukazujących się właściwie każdego dnia. Jednak pogłębianie wiedzy za zakresu swojej specjalizacji jest jak najbardziej możliwe (mając oczywiście na uwadze, że są dziedziny czy tematy bardziej i mniej rozległe). Często zadaję sobie pytanie, co mogę zrobić lepiej ? Co mogę zrobić optymalnej ? A może co mógłbym zrobić szybciej niż dotychczas ? Staram się nieustannie udoskonalać, to co robię, analizuję różne podejście oraz koncepcje oczywiście głównie w kontekście tworzenia oprogramowania webowego, ale i nie tylko.
Część zbioru moich ksiażek o IT

Część zbioru moich ksiażek o IT

Rozwój to dla mnie takie rzeczy jak: tworzenie różnych projektów, wykorzystywanie różnych technologii, chodzenie na meetupy, uczęszczanie w webinarach, czytanie zasobów w sieci, tworzenie bloga, prowadzenie kanału na platformie YouTube, prowadzenie profilu na platformie GitHub, czytanie i analizowanie wypowiedzi ludzi na platformie Twitter, którzy są twórcami różnych technologii i frameworków, czytanie książek, prowadzenie merytorycznych dyskusji (niekoniecznie technicznych), uczestniczenie w szkoleniach, uzyskiwanie certyfikatów, analizowanie repozytoriów opensource na platformie GitHub, stworzenie i prowadzenie swojej strony - to dla mnie jest rozwój.
Zdjęcie wykonane na konkurs organizowany przez firmę RST #TwojaDroga

Zdjęcie wykonane na konkurs organizowany przez firmę RST #TwojaDroga

Strona i blog

Własna prywatna strona internetowa to nie jest nic niezwykłego - wiadomo. Ja jednak prowadzę swoją już od kilku lat i jestem z tego działania zadowolony. Widzę, jak moje myślenie wraz z biegiem czasu zmienia się odnośnie designu, kodu i całego wykonania, chociaż jest to tylko zwykła strona. Kiedyś postanowiłem, ponieważ też tak poczułem, że chcę prowadzić bloga, by dzielić się swoimi przemyśleniami lub po prostu doświadczeniem. Tak też się następnie stało, że zaimplementowałem bardzo prosty moduł bloga i od czasu do czasu napiszę jakiś post. To daje niesamowitą satysfakcję, kiedy ludzie ze środowiska IT z wieloletnim doświadczeniem w branży, pochwalą wykonanie, wygląd czy treść posta i to również bardzo motywuje mnie do działania. Dlatego też staram się, by to, co tworzę w ramach tej strony, było dopracowane. Poświęcam temu czas i energię. Jest to ważny aspekt dla mnie. To też świetne miejsce, by móc stosować koncepcje (design, kolory, nietypowe elementy), których normalnie nie szłoby zastosować w innych projektach typowo komercyjnych. Własna strona to przede wszystkim miejsce, gdzie można zaprezentować siebie, swoje umiejętności oraz wszystkie ważniejsze informacje, oraz wykonane projekty.
Meetup organizowany przez firmę OVH - SysOps/DevOps #8 - 28.03.2019, Wrocław, Polska

Meetup organizowany przez firmę OVH - SysOps/DevOps #8 - 28.03.2019, Wrocław, Polska

Własne projekty

To jedna z najlepszych metod na naukę i eksperymentowanie z różnymi technologiami oraz koncepcjami. Ja swoje projekty tworzę właściwie na okrągło. Jedne są mniej inne bardziej zaawansowane. Są to nie tylko aplikacje webowe, ale również inne programy czy po prostu skrypty. Niektóre projekty tworzę, by zaznajomić się z daną technologią a niektóre po to, by zrealizować jakieś konkretne postanowienie, rozwiązać jakiś problem. Poza pełnoprawnymi projektami tworzę również bardziej rozbudowane pojedyncze skrypty w takich językach jak Bash, Python, JavaScript i PHP. Więcej o moich projektach można dowiedzieć się na podstronie Projekty oraz na moim profilu na platformie GitHub.
Meetup organizowany przez firmę PGS Software - ng-wroclaw #33, 05.03.2020, Wrocław, Polska

Meetup organizowany przez firmę PGS Software - ng-wroclaw #33, 05.03.2020, Wrocław, Polska

Zainteresowania

Poza wiedzą typowo z zakresu IT i programowania interesują mnie kwestie ogólnie technologiczne. Zawsze z zainteresowaniem obserwuję nowości na rynku sprzętu komputerowego. Mam tutaj na myśli takie rzeczy jak nowe generacje procesorów oraz kart graficznych, nowe dyski, komponenty do budowy komputerów stacjonarnych, nowe laptopy, kamery czy to klasyczne, czy też te w smartfonach. Ogólnie takie technologiczne zagadnienia. Często również oglądam kanały o takiej tematyce na YouTube. Jednak poza wszystkimi technologiami oraz sprzętem jestem również ciekaw świata. Dlatego też chętnie czytam informacje związane z tym, co dzieje się na świecie, czy to jakieś artykuły klimatyczno-przyrodnicze czy z jakimiś ciekawostkami. Czytam również artykuły o firmach, o ich planach rozwoju, o strategiach, ale i również problemach, które napotkały. Lubię czytać wypowiedzi fachowców w danym temacie czy dziedzinie. Bardzo lubię robić zdjęcia i fotografować. Nie posiadam profesjonalnego sprzętu a jedynie smartfon i to nim zawsze robię niezliczoną ilość zdjęć. Co fotografuję ? Właściwie wszystko, co zwróci w jakimś stopniu moją uwagę. Wszystkie zdjęcia na tej stronie i wszystkich innych podstronach łącznie z blogiem poza jakimiś logotypami są mojego wykonania. Kiedy tylko coś robię przy komputerze lub gdzieś idę i jest taka możliwość, to słucham muzyki.
Test zestawu gogli wirtualnej rzeczywistości - Oculus Rift Development Kit 1 - Politechnika Wrocławska

Test zestawu gogli wirtualnej rzeczywistości - Oculus Rift Development Kit 1 - Politechnika Wrocławska

Od roku 2010 nieustannie obserwuję rozwój krypto walut, a co za tym idzie technologii Blockchain, która obecnie wykorzystywana jest już w wielu rozwiązaniach. Interesowałem się również kiedyś dosyć mocno zagadnieniem bezpieczeństwa komputerowego oraz testami penetracyjnymi i narzędziami do tego przeznaczonymi (Kali Linux, Wireshark, Metasploit). Obecnie wiedza z zakresu zabezpieczania aplikacji webowych dla webdevelopera jest również bardzo ważna tzn. rozumienie zagrożeń i stosowanie, chociażby najbardziej elementarnych praktyk mających na celu przeciwdziałać próbom ataku.
Warsztaty - "Praktyczne sposoby wykrywania podatności w aplikacjach webowych", 21.07.2019, Warszawa, Polska

Warsztaty - "Praktyczne sposoby wykrywania podatności w aplikacjach webowych", 21.07.2019, Warszawa, Polska

Będąc na wielu meetupach, cały czas słyszałem i widziałem implementacje różnych projektów w oparciu o usługi chmurowe. W pewnym momencie bardzo zaciekawił mnie ten temat i od końcówki roku 2019 nieustannie interesuję się usługami oraz całą ideą `Cloud`. Poznaję różne usługi i eksperymentuję z własnymi projektami, wykorzystując różne elementy i usługi, głównie z wykorzystaniem AWS. Zrobiłem studia podyplomowe z zakresu chmury - `Multi Cloud Architect`. Na tych studiach poznałem przede wszystkim ideę chmury, jak to działa, po co to jest, jakie daje możliwości. Następnie zaznajomiłem się z głównymi dostawcami usług chmurowych na rynku takimi jak AWS, AZURE, GCP, IBM. Studia te również poruszały zagadnienia sztucznej inteligencji, Big Data oraz IoT. Wszystko oczywiście w oparciu o usługi chmurowe.
Pomieszczenie serwerowni - Klaster BEM, Wrocławskie Centrum Sieciowo-Superkomputerowe, Wrocław, Polska

Pomieszczenie serwerowni - Klaster BEM, Wrocławskie Centrum Sieciowo-Superkomputerowe, Wrocław, Polska

Ciekawostki / przeszłość

Na koniec kilka ciekawostek z mojego życia. Gdy byłem jeszcze w gimnazjum i liceum bardzo interesowałem się astronomią, fizyką i chemią, ale astronomią najbardziej. Czytałem o tym dużo książek i artykułów. Przez pewien czas prowadziłem również obserwacje nieba z wykorzystaniem 3 różnych teleskopów. W związku z dużym zainteresowaniem tą dziedziną brałem również udział w konkursach fizyczno-astronomicznych, ale i również chemicznych oczywiście na przełomie gimnazjum i liceum.
Teleskop SkyWatcher 254/1200 DOB 10"

Teleskop SkyWatcher 254/1200 DOB 10"

Zdjęcie powyżej oraz poniżej pokazuje jeden z moich teleskopów, który służył do wizualnej obserwacji nieba. Temat na tyle mnie interesował, że nieustannie przyswajałem wszelkie książki oraz wiadomości związane z kosmosem. Jednymi z moich większych osiągnięć było zajęcie pierwszego miejsca w grupie gimnazjalnej w finale VII międzypowiatowego Konkursu Astronomicznego URANIA w Częstochowie. Konkurs był zorganizowany przez Częstochowski Oddział PTMA we współpracy z Instytutem Fizyki AJD. Następnym większym osiągnięciem było zakwalifikowanie do zawodów II stopnia (okręgowych) w Katowicach w ramach LIV Olimpiady Astronomicznej. W jednym z kilku konkursów powiatowych z fizyki i astronomii udało mi się również zająć pierwsze miejsce za stworzenie prezentacji na bazie kilkutygodniowych badań powierzchni słońca za pomocą zdjęć i danych pochodzących z satelity SOHO. Przynależałem również do koła astronomicznego, gdzie były prowadzone głównie obserwacje za pomocą teleskopu w układzie Schmidta-Cassegraina. Podczas obserwacji była również praktykowana astrofotografia, bywały organizowane wyjazdy do planetarium, oraz były również organizowane większe pokazy w przypadku zaćmień słońca, księżyca lub tranzytów planet na tle tarczy słonecznej. Zainteresowanie tą dziedziną sprawiało mi naprawdę dużo przyjemności i znacząco poszerzyło wiedzę zarówno ogólną, jak i tą ścisłą.
Teleskop SkyWatcher 254/1200 DOB 10"

Teleskop SkyWatcher 254/1200 DOB 10"

Miałem również okazję kilkukrotnie poeksperymentować z elektroniką za pomocą płytki Arduino. Nie były to jakieś zaawansowane projekty, lecz bardzo proste jednak również pozwoliło mi to szerzej zainteresować się łączeniem hardweru z softwarem i realizowaniem prostych pomiarów za pomocą dostępnych czujników. Swego czasu interesowałem się trochę robotyką i automatyką, dlatego też poznawałem zagadnienia związane z tą dziedziną. Widok na żywo pracującej grupy robotów przemysłowych robi niesamowite wrażenie !. W ramach studiów inżynierskich miałem okazję zrealizować kilka prostych elektronicznych projektów w tym jeden widoczny na zdjęciu poniżej. Miałem okazję poznać trochę bliżej takie zagadnienia, jak VHDL, Verilog, układy FPGA itp. jednak z czasem nie zagłębiałem się dalej w to, lecz ukierunkowałem się z biegiem czasu na programowanie webowe.
Porównanie czujników ultradzwiękowych w zależności od parametrów otoczenia. Wykorzystane komponenty to czujnik HC-SR04 oraz czujnik przemysłowy mic+130/D/TC firmy microsonic oraz płytka Arduino

Porównanie czujników ultradzwiękowych w zależności od parametrów otoczenia. Wykorzystane komponenty to czujnik HC-SR04 oraz czujnik przemysłowy mic+130/D/TC firmy microsonic oraz płytka Arduino

Tak jak napisałem wyżej, bardzo lubię robić zdjęcia, dlatego też na tej stronie przedstawiam tyle fotografii. Dziedziną IT oraz różnymi jej dziedzinami interesują się już od wielu lat i nieustannie mnie zaskakują rzeczy, które poznaję i których się uczę. To jest niesamowite, co za pomocą współczesnych technologii można zrealizować. Świat nie stoi w miejscu i wszystko ewoluuje w tym rozwój aplikacji i sposób, w jaki korzystamy z tych możliwości. Jeżeli zainteresowała cię jakaś kwestia po przeczytaniu tej strony, możesz się ze mną skontaktować lub zapoznać się z innymi podstronami takimi jak projekty, blog czy doświadczenie. Staram się być również aktywny na platformie Twitter, GitHub czy YouTube.