grzegorz@pc:~$ sh story.sh

Dawno, dawno temu, za górami, za lasami, był sobie chłopiec
 ^  ^   ^  ^      ___I_      ^   ^  ^
/|\/|\ /|\/|\    /\-_--\    /|\ /|\/|\
/|\/|\ /|\/|\   /  \_-__\   /|\ /|\/|\
/|\/|\ /|\/|\   |[]| [] |   /|\ /|\/|\
 ^   ^  ^  ^
/|\ /|\/|\/|\
/|\ /|\/|\/|\
/|\ /|\/|\/|\

Szukając potrzebnego programu odnalazł tajemniczy plik wsadowy
   _________________
  |.---------------.|
  ||             ˉ˟||
  || echo off      ||
  || echo "Hello"  ||
  || echo "World"  ||
  ||_______________||------.
  /.-.-.-.-.-.-.-.-.\       \
 /.-.-.-.-.-.-.-.-.-.\      .--.
/______/________\_____\     \-۱-\
\_____________________/      \ __)

Widząc kod zapragnął dowiedzieć się jak działa, a gdy raz spróbował potęgi programowania, nigdy nie potrafił oprzeć sie mocy tworzenia czegokolwiek zechce
 _______________________ 
| ← → |127.0.0.1   |  ˉ˟|
|¯¯¯¯|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
|----|  New Vue.js App  |
|----|                  |
|----| ····  ····  ···· |
|----| ····  ····  ···· |
|____|__________________|
  `       c l a      = " c o          `
        v        s s         n   a
      i      `                 t   i       `
    d                    `           n
  <              /---------------------------/|
        `      /-/-/-/-/-/-/-/-/-/-/-/-/-/-/ / 
             /-/-/-/-/-/-/-----/-/-/-/-/-/ /   
            '-----------------------------'

Przez lata rozwijał swoje zainteresowania do programowania, informatyki i elektroniki. A oto jego historia:


Loading story timeline . . .
2013 2014 2015 2016 2017

Hello world

Co robi 12-latek niemający pojęcia o internecie jak tylko wreszcie zyskuje do niego dostęp? Raczej nie zaczyna samotnie uczyć się programowania... ale wyjątki się zdarzają, chyba trafiłem w niewłaściwy zakątek internetu.

Po krótkiej przygodzie z plikami wsadowymi i decyzji o nauce programowania jako cel obrałem naukę C++. Poznałem podstawy języka wdrażając się w programowanie, a następnie zacząłem eksperymentować z różnymi bibliotekami graficznymi. Szczególnie miło wspominam SFML.

A co to ten WebDev

Goodgame Empire, Plemiona. Fajnie jest pograć w strategie, ale co zrobić, jeśli rozgrywka staje się nudna, a w głowie rodzi się pomysł na własną grę?

W pewnym momencie C++ przestał zaspokajać moją ciekawość i zacząłem się zastanawiać, czym różni się tworzenie stron internetowych i czy nie czułbym się w tym lepiej. Po ogólnym zapoznaniu z tematem oraz HTML-em i CSS-em wyznaczyłem sobie ambitny cel - stworzenie gry przeglądarkowej. Był to najważniejszy projekt w moim rozwoju związanym z webdevem. W jego trakcie poznałem PHP, JavaScript i jQuery oraz znacznie zwiększyłem swoje wcześniejsze umiejętności i wiedzę. W międzyczasie tworzyłem również inne, małe projekty jak np. TicTacToe

2D to za mało

Od zawsze lubiłem matematykę i byłem w niej dobry. To ciekawa przygoda, w jednej chwili nudzisz się rysując trójkąty i kwadraty, aby w następnej odkryć, że istnieje jeszcze trzeci wymiar i można w nim stworzyć o wiele ciekawsze rzeczy.

Przygodę z modelami 3D zacząłem od Google SketchUp, a kontynuowałem w Blenderze ucząc się modelowania, teksturowania i animacji. Nie wykonywałem większych projektów, ale wielokrotnie wracałem do modelowania dla przyjemności i planowania swoich projektów.

Z kwiatka na kwiatek

Trafiając na pobliską jabłoń możesz zadowolić się jej owocami lub poszukać czegoś lepszego, jednak im głębiej wejdziesz do sadu, tym więcej różnych smakowitych owoców znajdziesz... i zechcesz spróbować ich wszystkich.

Moje poszukiwania ciekawszych, lepszych dla mnie technologii nie skończyły się na tych użytych do stworzenia gry przeglądarkowej. Chęć spróbowania doprowadziła mnie do wielu języków, w niektórych przypadkach kończąc na kursie podstaw (np. C, Ruby) a w innych na realizacji własnych projektów, jednak zazwyczaj była to tylko krótka przygoda. Jednym z takich języków był C#, w którym zazwyczaj wyklikiwałem interfejs i dopisywałem logikę. Napisałem w nim m.in. prosty program do nagrywania ekranu.

Podczas eksploracji różnych technologi trafiłem również na Javę. Spróbowałem swoich sił w tworzeniu modów do Minecrafta oraz zapoznałem się z podstawami pisania aplikacji na Androida. Napisałem także prostą grę w aplecie Javy, w czasach gdy nie zostały one jeszcze porzucone.

Gdy informatyka nie wystarcza

Szczęście, potęga, duma? Czymże jest uczucie, gdy po wielkim wysiłku, przemyśleniach i debugowaniu niecne wyobrażenia stają się rzeczywistością i samodzielnie wykonany projekt zaczyna działać?

Nadszedł czas, gdy informatyka przestała zaspokajać moją ciekawość i chęć tworzenia rzeczy samodzielnie. Zainteresowałem się wtedy elektroniką i zacząłem eksperymentować z projektami bazującymi na popularnych Arduino oraz Raspberry Pi. Dzięki nim programowanie zaczęło wykraczać poza ekran komputera i pozwalać na sterowanie różnymi elementami elektronicznymi. Dzięki Raspberry Pi miałem również okazję zapoznać się z Linuxem.

Edukacja informatyczna

Nauka w gimnazjum pozostawiała sporo wolnego czasu, który wykorzystywałem na naukę programowania oraz bycie aktywnym użytkownikiem i moderatorem w popularnym serwisie zadane.pl. Kończąc ten etap nauczania musiałem jednak skupić się na egzaminach oraz wyborze szkoły średniej. Naturalnym wyborem był kierunek informatyczny. Rozpocząłem naukę w rzeszowskim Technikum Elektronicznym, jednocześnie godząc naukę z programowaniem oraz nową pasją - elektroniką.

Sieci neuronowe i inne zjawiska

W trakcie nauki w technikum podląłem się nauki kolejnego języka - Pythona. Szybko polubiłem prostotę oraz możliwości tego języka i zacząłem wykorzystywać go do różnych celów. Stał się głównym językiem wykorzystywanym przeze mnie do programowania na Linuxie, w tym projektów bazujących na Raspberry Pi.

Zacząłem również interesować się rozpoznawaniem obrazów, z wykorzystaniem biblioteki OpenCV oraz sieciami neuronowymi wykonując przy ich użyciu m.in. program umiejący grać w Sapera.

Kodowanie to nie wszystko

Czasem okazuje się, że pisanie wszystkiego samodzielnie nie jest najlepszym rozwiązaniem i trzeba wrócić do gotowych, lecz ograniczających rozwiązań jak CMS-y. Tworząc strony internetowe miałem okazję wykorzystać WordPressa, jak również zaznajomić się z pisaniem do niego motywów.

2018 2019 2020

Javascript to też backend

O ile w firmach zazwyczaj występuje specjalizacja i podział obowiązków o tyle, aby samodzielnie tworzyć własne projekty i portfolio najlepiej być wręcz full stack informatykiem na miarę wymagań z rządowych ofert pracy.

Dalszy rozwój skłonił mnie do bliższego zapoznania się z back-endem i kolejną technologią serwerową. Jako że miałem już styczność z javascriptem, atrakcyjne wydało się wykorzystanie go do tworzenia serwerów. Eksperymentowałem z Node.js oraz Socket.IO, łącząc je również ze sterowaniem elektroniką i wykorzystując je np. do sterowania robotem przez sieć wraz z transmisją obrazu z pokładowej kamerki.

Czas zerwać relacje

Relacje bywają trudne, czasem ma się ich dość, trzeba je porzucić, odpocząć zajmując się czymś innym.

Po wieloletnim związku z SQL-em i relacyjnymi bazami danych nadszedł czas zerwania relacji i rozpoczęcia nowego rozdziału - płomiennego romansu z MongoDB. Zadowolony z wygody stosowania nierelacyjnych baz danych zacząłem je stosować w większości swoich projektów.

Wszystko i nic

Nadchodzi czas końca beztroskiej zabawy, nie można robić wszystkiego na raz, a tym bardziej oczekiwać spektakularnych rezultatów we wszystkich tych rzeczach.

W pewnym momencie uświadomiłem sobie, że nie jestem w stanie dalej zajmować się wszystkimi swoimi zainteresowaniami, muszę obrać kierunek, na którym się skupię i który będę kontynuował na drodze zawodowej. Musiałem także zwrócić większą uwagę na prezentowanie swoich projektów i dokonań. Kontynuowałem więc rozwój w tematyce front-endu tworząc kolejne projekty, ucząc się Vue, Sass-a oraz zapoznając m.in. z Angularem, Deno i pisaniem botów na Discorda.

Studia informatyczne - nudy

Przydatne w praktyce umiejętności czy zbyt ogólna wiedza i dokument spełniający wymagania nieświadomych realiów pracodawców? Czym są studia informatyczne?

Po zdaniu matury stanąłem przed wyborem kierunku studiów. W poszukiwaniu wrażeń i interesującej wiedzy, nie chcąc podejmować studiów dla samego ich ukończenia, moje poszukiwania wybiegły poza kierunek informatyczny. Rozpozcząłem studia na kierunku Bezpieczeństwo wewnętrzne ze specjalizacjami Cyberbezpieczeństwo oraz Kryminalistyka i Kryminologia.

2021

Narysuj mi baranka

Stworzenie grafiki na potrzeby własnych projektów od zawsze było dla mnie problemem i znacznym ograniczeniem. Do tej pory wielokrotnie wykorzystywałem rysowanie oraz grafikę rastrową jednak moje umiejętności graficzne zdecydowanie ograniczały ich przydatność. Polubiłem również grafikę 3D, lecz ma ona określone zastosowania i wymaga mocnego sprzętu. Finalnie nadszedł jednak czas na spróbowanie grafiki wektorowej. Stworzyło to również okazję do zapoznania z GSAPem i użycia grafik i animacji w projektach webowych.

Epilog

I tak oto dotarliśmy do chwili obecnej pomijając wiele przygód, których nie sposób spamiętać czy udokumentować. Dalej znajduje się tylko przyszłość, niespodziewana i nieokreślona, kryjąca w sobie nieskończone możliwości rozwoju i ambicje.