Blog

Mój pierwszy Capture The Flag

Niedawno, w ramach projektu na studia, miałem okazję brać udział w swoim pierwszym konkursie Capture The Flag (CTF). Z uwagi na to, że było to niesamowicie ciekawe doświadczenie, postanowiłem podzielić się w tym wpisie swoimi przemyśleniami i spostrzeżeniami odnośnie konkursów Capture The Flag. Czym jest Capture The Flag? Capture The Flag, w skrócie CTF, to konkurs z dziedziny cyberbezpieczeństwa. Zadaniem uczestników jest znalezienie tzw. flag w podatnym systemie, … Czytaj dalej Mój pierwszy Capture The Flag

Transakcje ACID

Tym razem będzie nieco o bazach danych, a dokładniej mówiąc o zasadach transakcyjności, czyli ACID. Czym jest transakcja? W kontekście relacyjnych baz danych transakcja to mechanizm, który oczekuje zestawu operacji do wykonania. Do zaistnienia transakcji konieczne jest pomyślne wykonanie wszystkich operacji. W przeciwnym wypadku wszystkie operacje są odrzucane. Załóżmy, że mamy transakcję składającą się z 10 zapytań. Jeżeli ostatnie zapytanie będzie skutkowało błędem, to zmiany dokonane przez poprzednie … Czytaj dalej Transakcje ACID

Web developer – pytania rekrutacyjne cz. 8 – Git

Jest to kolejny wpis z serii wpisów z pytaniami rekrutacyjnymi na stanowisko web developera. Listę wszystkich poprzednich wpisów z tej serii znajdziesz poniżej. Zachęcam Cię do zapoznania się jeśli jeszcze nie miałeś/aś okazji: Web developer – pytania rekrutacyjne cz. 1 Web developer – pytania rekrutacyjne cz. 2 Web developer – pytania rekrutacyjne cz. 3 Web developer – pytania rekrutacyjne cz. 4 Web developer – pytania rekrutacyjne cz. 5 … Czytaj dalej Web developer – pytania rekrutacyjne cz. 8 – Git

Web developer – pytania rekrutacyjne cz. 7 – TypeScript

Jest to kolejny wpis z serii wpisów z pytaniami rekrutacyjnymi na stanowisko web developera. Listę wszystkich poprzednich wpisów z tej serii znajdziesz poniżej. Zachęcam Cię do zapoznania się jeśli jeszcze nie miałeś/aś okazji: Web developer – pytania rekrutacyjne cz. 1 Web developer – pytania rekrutacyjne cz. 2 Web developer – pytania rekrutacyjne cz. 3 Web developer – pytania rekrutacyjne cz. 4 Web developer – pytania rekrutacyjne cz. 5 … Czytaj dalej Web developer – pytania rekrutacyjne cz. 7 – TypeScript

Testy jednostkowe FIRST

Tematowi testów jednostkowych poświęciłem kilka artykułów na swoim blogu: Podstawy testów automatycznych oprogramowania O Test Driven Development Jeśli jeszcze się z nimi nie zapoznałeś/aś to serdecznie zachęcam. Tym razem poruszę temat zasad, którymi warto się kierować w trakcie pisania testów jednostkowych. Zasady te zostały zebrane pod akronimem FIRST. Owy skrótowiec możemy rozszyfrować jako: Fast Isolated Repeatable Self-validating Timely/Thorough Fast Testy jednostkowe powinny … Czytaj dalej Testy jednostkowe FIRST

Wzorzec projektowy Singleton

Ten wpis jest jednym z serii wpisów o wzorcach projektowych. Zachęcam też do sprawdzenia innych wzorców: Wzorzec projektowy Command (Polecenie), Wzorzec projektowy Factory (Fabryka) Wzorzec projektowy Proxy Struktura Na sam początek przedstawiam strukturę wzorca projektowego Singleton w postaci diagramu klas. Już sam diagram powinien powiedzieć Ci wiele o charakterystyce oraz potencjalnych zastosowaniach tego wzorca. Klasa Singleton posiada prywatną właściwość typu Singleton, w której przechowywana … Czytaj dalej Wzorzec projektowy Singleton

Dlaczego nie warto być programistą?

Mimo, że tytuł tego wpisu może brzmieć dość kontrowersyjnie, to uważam że taki post powinien znaleźć się na blogu skupionym wokół tematyki programowania i szeroko pojętego IT. Tym artykułem chcę nieco odczarować branżę IT z wizerunku utopijnego miejsca pracy pozbawionego skaz. Mimo przewrotnego tytułu, moim zadaniem nie jest nikogo zniechęcić do pracy w branży IT. Chcę jedynie pokazać, że każdy medal ma dwie strony i decydując … Czytaj dalej Dlaczego nie warto być programistą?

O Test Driven Development

W jednym z ostatnich wpisów na blogu poruszałem zagadnienia związane z testowaniem oprogramowania. Jednym z zagadnień, które pominąłem w tamtym artykule było podejście Test Driven Development, w skrócie TDD. W tym poście powiem nieco więcej o tym podejściu. Jednakże do pełnego zrozumienia wpisu warto wcześniej zapoznać się z moim poprzednim artykułem dotyczącym testowania oprogramowania – Podstawy testów automatycznych oprogramowania. Geneza Test Driven Development Myślę, że dobrym punktem … Czytaj dalej O Test Driven Development

Wzorzec projektowy Command (Polecenie)

Wzorzec projektowy Command (Polecenie) uważam za jeden z najprostszych do zrozumienia. Pisząc ten artykuł wzorowałem się na interpretacji przedstawionej przez Roberta C. Martina w książce pt. “Agile Programowanie zwinne zasady wzorce i praktyki zwinnego wytwarzania oprogramowania w C#”. Szukając dodatkowych informacji na temat tego wzorca napotkałem na wersje znacznie bardziej rozbudowane. Niemniej jednak do zrozumienia zasady działania i celu tego wzorca, interpretacja z wcześniej wymienionej książki powinna być wystarczająca. … Czytaj dalej Wzorzec projektowy Command (Polecenie)

Podstawy testów automatycznych oprogramowania

Przez początkujących programistów temat testów automatycznych oprogramowania zwykle jest pomijany lub co najmniej zaniedbywany. Poniekąd rozumiem motywacje, ponieważ komuś początkującemu może się wydawać, że testowanie czegoś co zostało sprawdzone manualnie nie ma sensu. W końcu działa a poza tym to testy są trudne. Chciałbym tu od razu zaznaczyć – pisanie testów nie jest trudne pod warunkiem, że nasz kod pisany jest zgodnie z dobrymi praktykami. Jeśli … Czytaj dalej Podstawy testów automatycznych oprogramowania