Zapraszamy do zamówienia magazynu w >>prenumeracie<<. Miesięcznik jest dostępny w formie papierowej, PDF, EPUB i MOBI oraz AZW3. Do prenumeraty papierowej zawsze dołączamy wydania elektroniczne.
BIBLIOTEKI I NARZĘDZIA
Wizualizowanie struktur danych przy pomocy GraphViz (>>więcej o tym artykule<<)
Debugowanie kodu operującego na skomplikowanych strukturach danych jest często kłopotliwym zadaniem. Narzędzia obecne w środowiskach programistycznych pozwalają wprawdzie podglądać zawartość klas, z których są one zbudowane, ale zazwyczaj jest to zbyt mało, by móc wyrobić sobie pełne wyobrażenie o panujących wewnątrz nich zależnościach. Wystarczy jednak skorzystać z pewnego prostego narzędzia, by szybko uzyskać pełen obraz tego, co ukryte jest w pamięci naszej aplikacji.
Wojciech Sura
PROGRAMOWANIE ROZWIĄZAŃ SERWEROWYCH
REST API w języku R – rozwiązania i pułapki
Pomimo tego, że R jako język i środowisko jest zdecydowanie dojrzały i niemal wszystkie problemy dają się szybko rozwiązywać w oparciu o oficjalną dokumentację, to wciąż istnieją obszary, w których może on zaskoczyć, gdy trzeba go użyć „na produkcji”. Okazuje się, że pułapek, w jakie można dać się złapać, przygotowując REST API – korzystając z biblioteki Plumber – i uruchamiając je z poziomu systemu Linux, jest więcej niż można się spodziewać.
Piotr Szajowski
PROGRAMOWANIE SYSTEMOWE
Jak program staje się procesem (>>więcej o tym artykule<<)
Program zapisany na dysku nie jest użyteczny sam w sobie. Najpierw musi trafić do pamięci komputera, z której jego instrukcje będą pobierane i wykonywane na przydzielonym procesorze. Wykonywany program wraz ze swoim stanem, tj. przestrzenią adresową, zawartością rejestrów procesora, stosem itd., nazywany jest procesem.
Tomasz Duszyński
PROGRAMOWANIE APLIKACJI WEBOWYCH
Blazor jako nowoczesny ASP.NET Web Forms
Rozpoczynanie nowego projektu to marzenie wielu programistów. Projekt można lepiej zaplanować, ustrukturyzować, dobrać odpowiednie technologie i biblioteki. Można w końcu wykorzystać nowoczesne wzorce projektowe i architekturę aplikacji, o których czytamy i słuchamy na konferencjach. Taki właśnie „Hit refresh” zaoferował Microsoft programistom ASP.NET Web Forms, dostarczając Blazor, który opiszę w tym artykule.
Dawid Borycki
ALGORYTMIKA
Wybrane algorytmy i struktury danych. Część 8: algorytmy hill-climb (>>więcej o tym artykule<<)
Komputer jest narzędziem, które – przy zastosowaniu odpowiednich algorytmów – pomaga przy rozwiązywaniu ogromnej liczby różnych problemów. Wśród nich istnieje jednak szczególna grupa takich, których nie da się rozwiązać w bezpośredni sposób w akceptowalnym czasie. W ich przypadku konieczne jest zastosowanie nieco bardziej nieszablonowego podejścia.
Wojciech Sura
INŻYNIERIA OPROGRAMOWANIA
Przegląd wzorców projektowych w Magento 2
Zastosowanie wzorców projektowych we frameworku sklepowym Magento 2 jest niekiedy tak proste, że niektórzy developerzy nawet nie wiedzą, że je stosują. O tym, dlaczego to jest takie łatwe, co wspólnego ze wzorcami ma autogenerowanie kodu źródłowego i dlaczego nie warto wymyślać koła na nowo, przeczytasz w tym artykule.
Piotr Jaworski
TESTOWANIE I ZARZĄDZANIE JAKOŚCIĄ
Nie tylko kod i testy, czyli o jakości oprogramowania
Branża IT bardzo szybko się rozwija. Co sezon pojawiają się nowe narzędzia, dobre praktyki, wzorce projektowe. Żeby za nimi nadążyć, nieustannie się rozwijamy i dopasowujemy nasze procesy. Chcemy być dumni z naszej pracy. Opowiadać o niej podczas konferencji i chwalić się na blogach. Skupiamy się więc na tym, co robimy najlepiej, wkładamy serce w pisanie kodu i dostarczamy najlepsze rozwiązania. Czy to wystarczy, żeby tworzyć dobre produkty? Okazuje się, że problem jest dużo bardziej złożony i na efekt końcowy składa się wiele małych cegiełek, od zbierania wymagań, projektowania UX, przez komunikację w zespole i naukę na błędach. Jeśli choć jedna cegiełka zostanie zaniedbana, może się okazać, że piękna budowla, którą tworzymy, będzie krzywa lub całkiem się zawali.
Aleksandra Kunysz
STREFA CTF
Pwn2Win CTF 2021 – atak Spectre
Pwn2Win CTF, organizowany przez brazylijską ekipę Epic Leet Team, był ostatnim konkursem kwalifikującym zwycięską drużynę do DEF CON CTF 2021, prestiżowego turnieju odbywającego się w Las Vegas [0]. Zgodnie z tradycją konkursów typu „jeopardy” uczestnicy mogli się zmierzyć z zadaniami z takich kategorii jak web, rev, pwn, crypto, misc czy hardware.
Dominik "disconnect3d" Czarnota, Arkadiusz "Arusekk" Kozdra
Z ARCHIWUM CVE
Shellshock
„Z archiwum CVE” to nowy dział, w ramach którego będziemy opisywać znane i mniej znane błędy bezpieczeństwa. Na pierwszy ogień przedstawiona zostanie perełka, która wstrząsnęła światem w 2014 roku i do dziś przewija się w zadaniach typu „Hack The Box”. Dodatkowo jest to popularne zagadnienie pojawiające się na różnego rodzaju egzaminach na certyfikaty bezpieczeństwa.
Mariusz Zaborski
PLANETA IT
Mikrofale, czyli jak mały batonik zmienił świat
Wynalazek kuchenki mikrofalowej skończył już 75 lat. Jak działa? Skąd ciepło? Najwyższy
czas rozprawić się z kilkoma mitami na jego temat.
Wojciech Macek