Wyśledzenie luki w zabezpieczeniach aplikacji i przejęcie kontroli nad chronionym zasobem jest wyjątkowo ekscytującym doświadczeniem: oto dzięki własnym umiejętnościom można pokonywać kolejne ograniczenia i osiągać cele, które na pozór wydają się nierealne. Od pewnego czasu takie eksperymenty z hakowaniem można prowadzić całkowicie legalnie, a nawet nieźle na tym zarabiać. Wiele firm uruchamia programy bug bounty, w ramach których nagradza hakerów ...
C# jest uważany za flagowy produkt firmy Microsoft. Od początku był konsekwentnie rozwijany - z najwyższą troską o elastyczność i wszechstronność. W efekcie pozwala na pisanie bezpiecznego kodu. Wersja 9.0 jest ósmą poważną aktualizacją tego języka. Zapewnia wysokopoziomowe abstrakcje, takie jak wyrażenia, zapytania i kontynuacje asynchroniczne, ale także udostępnia niskopoziomowe mechanizmy pozwalające uzyskać maksymalną wydajność aplikacji. Cel ten jest osiągany dzię...
Konsekwencje udanego ataku na IoT mogą być niezwykle poważne. Zagrożenie dotyczy przecież wszystkiego, co działa pod kontrolą komputera. Mogą to być samochód, rozrusznik serca, zamki w inteligentnym domu czy też system sterujący maszynami w fabryce. Zabezpieczanie i testowanie bezpieczeństwa urządzeń internetu rzeczy jest jednak specyficzną dziedziną. Przesądza o tym jego charakter, ale także budowa i ekonomika produkcji urządzeń IoT. Inżynier bezpieczeństwa internetu ...
Niektórzy twierdzą, że kiedyś po ukończeniu dobrej szkoły nie było potrzeby, by się dalej uczyć. Dziś każdy informatyk albo programista, który chce sobie zagwarantować dobrą posadę, musi przyjąć postawę zawsze się uczę. Jeśli nie masz za sobą studiów informatycznych, ale bardzo chcesz pracować jako inżynier oprogramowania, musisz poznać podstawy informatyki, jakimi są struktury danych i algorytmika. Znajomość tych zagadnień jest potrzebna każdemu programi...
Domain-driven design, czyli projektowanie dziedzinowe, w skrócie DDD, jest zbiorem praktyk tworzenia architektury oprogramowania z uwzględnieniem dziedziny biznesu i jej problemów. W ten sposób logika biznesowa staje się sercem aplikacji. Wielu architektów jednak nie radzi sobie ze złożonością tworzonego oprogramowania. Nauczenie się zasad i wzorców DDD, przyswojenie technik dekompozycji dużego systemu, modelowania i projektowania integracji...
Technologie Kubernetes i Docker szybko zdobyły zaufanie dużych firm i dziś są standardową infrastrukturą pozwalającą na tworzenie, testowanie i uruchamianie aplikacji. W porównaniu z wcześniej stosowanymi rozwiązaniami wymagają jednak zupełnie innego podejścia do budowy i wdrażania oprogramowania. Oznacza to, że jeśli korporacja chce w pełni skorzystać z potencjału Kubernetesa i Dockera, musi znaleźć osoby dysponujące wiedzą i umiejętnościami pozwalającymi na zintegrow...
Z Linuksem za pan brat Autor znanych czytelnikom wydawnictwa Helion książek między innymi na temat otwartoźródłowego systemu operacyjnego przygotował szóstą już edycję przewodnika po komendach i poleceniach Linuksa. W kieszonkowym leksykonie omówił posługiwanie się komputerem z Linuksem na pokładzie za pomocą poleceń, operacje na plikach, plikach specjalnych, katalogach, łączach i potokach, pisanie własnych skryptów powłoki, obsługę programu Midni...
Praktycznie rzecz ujmując… o sieciach Paweł Zaręba, autor Praktycznych projektów sieciowych, od wielu lat związany z branżą IT i ICT, za namową swoich wiernych czytelników napisał drugą książkę. Tę wcześniejszą można traktować jako kompendium wiedzy na temat sieci komputerowych - Projekty i rozwiązania sieciowe w praktyce są niejako kontynuacją tamtej publikacji. Podczas lektury tej książki, wymagającej znajomości zagadnień sieciowych, przyswoisz podsta...
Mimo upływu lat relacyjne bazy danych wciąż mają się świetnie! Z każdym rokiem stają się coraz doskonalsze i radzą sobie z coraz większymi zbiorami danych. Wciąż jednak podstawą dobrej aplikacji bazodanowej jest dobry projekt samej bazy. Wielu osobom projektowanie poprawnych struktur bazodanowych wydaje się czymś z pogranicza wyższej matematyki i czarnej magii. Tymczasem zdobycie tej umiejętności jest możliwe bez lat studiowania skomplikowanych teorii matematycznych. Wystarcz...
Od oprogramowania wymaga się solidności i poprawności, a równocześnie oczekuje wydajnego działania i skalowalności. Jako programista odpowiadasz za zapewnienie aplikacjom tych właśnie cech. Niezależnie od tego, jakiego języka programowania używasz, praca zgodnie z paradygmatem TDD umożliwi Ci otrzymanie testowalnego kodu o wysokiej jakości. Choć te korzyści przeważają nad niedogodnościami podejścia TDD, wielu programistów narzeka na czasochłonność, pracochłonnoś...
Możliwość porozmawiania ze swoim komputerem od lat rozpalała wyobraźnię inżynierów, użytkowników i... artystów. Jak się okazało, sprawa nie jest - i nigdy nie była - oczywista: rozumienie naturalnej mowy to skomplikowany proces. Języki, którymi posługują się ludzie, są bowiem przepełnione subtelnościami i niejednoznacznością, a ich zrozumienie wymaga znajomości kontekstu. Intensywny rozwój technologii VUI doprowadził do tego, że komputer wyk...
Python - prosto, szybko, skutecznie Konstrukcje języka Python Sposoby ich użycia Zadania z rozwiązaniami Python to nowoczesny, potężny i uniwersalny język programowania, który zdobył dużą popularność zarówno wśród zawodowców z branży IT, jak i w szkołach i na uczelniach - jako doskonałe narzędzie do nauki programowania na różnych poziomach. Duże możliwości, prostota i zwartość składni, czytelność kodu, wszechstronność zastosowań i wsp...
JavaScript pozwala na tworzenie znakomitego kodu, ale wymaga od programisty sporych umiejętności. Tworzenie nawet bardzo złożonych aplikacji jest jednak łatwiejsze dzięki dostępnym narzędziom. Szczególnym uznaniem cieszy się React - popularna biblioteka open source służąca do tworzenia dynamicznych aplikacji na bazie niewielkich komponentów wielokrotnego użytku. React jest narzędziem, które w stosunkowo prosty sposób pozwala w pełni skorzystać z mo...
Django zaskarbił sobie uznanie wielu programistów. Jest to platforma, która udostępnia wszystkie narzędzia potrzebne do tworzenia aplikacji internetowych w Pythonie. To również narzędzie pozwalające na sprawne rozpoczęcie pracy i rozwijanie solidnego i bezpiecznego kodu. Aby jednak zapewnić sobie satysfakcję, a tworzonym projektom profesjonalną jakość, trzeba przyswoić koncepcje i zasady pracy z Django._x005F_x000D_ _x005F_x000D_ Dzięki temu praktycznemu ...
Przeczytaj i zrozum - język branży IT dla każdego_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Informatyczny żargon dla przeciętnego odbiorcy_x005F_x000D_ Praktyczna wiedza o wytwarzaniu oprogramowania_x005F_x000D_ Skuteczna komunikacja z przedstawicielami branży IT_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Jeśli nie mieszkasz w jaskini na końcu świata, komputery prawdopodobnie opanowały już niemal każdy obszar Twojego życia. Otaczają Cię dosłownie ze wszystkich stron i pomagaj...
Korporacyjny system informatyczny musi być stale gotowy do obrony. Trzeba mieć strategię reagowania na incydenty bezpieczeństwa i zachować czujność. Cyberprzestępczość jest dziś stałym elementem środowiska biznesowego i jeśli nie chcesz narazić swojego przedsiębiorstwa na niepowetowane straty, musisz opracować solidny zestaw narzędzi umożliwiających obronę i tropienie cyberprzestępców. Mimo że w pewnych okolicznościach należy zaangażować organy ścigania, spora część do...
Excel z VBA - nowy poziom wydajności_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Odkryj język VBA i jego zastosowania_x005F_x000D_ Poznaj sztukę tworzenia makropoleceń_x005F_x000D_ Zautomatyzuj swoją pracę w Excelu_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Masz dość wykonywania ciągle tych samych zadań? Musisz pilnie opracować kolejny raport dla szefa? Od wpatrywania się w tabele w Excelu Twoje oczy robią się kwadratowe? A może masz już dość bycia zwykłym użytkownikiem aplikac...
Język SQL jest istotnym narzędziem nie tylko dla programistów, ale także dla analityków biznesowych i inżynierów danych. Nawet jeśli nieźle znasz składnię SQL, może się zdarzyć, że podczas pracy poczujesz potrzebę odświeżenia wiedzy czy też sprawdzenia jakiegoś szczegółu działania swojego zapytania SQL. W takich wypadkach nie potrzebujesz drobiazgowej specyfikacji technicznej ani opasłego podręcznika: po prostu zależy Ci na szybkim i pewnym odnalez...
Od zera do SEO-bohatera! Trzecia książka duetu Agnieszka Ciborowska i Jarosław Lipiński (po WordPress dla początkujących i WordPress 5 dla początkujących) wydana przez Helion dotyczy pozycjonowania stron internetowych. Dwie pierwsze powstały z myślą o tych, którzy chcą samodzielnie nauczyć się tworzyć strony internetowe - najnowsza publikacja stanowi niejako dopełnienie tamtych podręczników. Jest przeznaczona dla osób, które chciałyby się zająć zw...
Finanse i Python. Łagodne wprowadzenie do teorii finansów Rozwój technologii i dostęp do danych finansowych stały się ogromnym ułatwieniem w korzystaniu z globalnych rynków finansowych. Jeśli zechcesz, możesz szybko zacząć przygodę na przykład z handlem algorytmicznym. Wystarczy, że masz niewielkie pojęcie o matematyce, programowaniu i ekonomii. Niestety, nieliczne programy nauczania o finansach integrują ze sobą te trzy dziedziny. Tymczasem koncepcje ma...
Hardware i testy penetracyjne. Przewodnik po metodach ataku i obrony Wraz z rozwojem internetu rzeczy, a także upowszechnianiem się elektronicznego sterowania i kontrolowania różnych procesów przestępcy doskonalą techniki łamania zabezpieczeń systemów wbudowanych. Konsekwencje skutecznego ataku na jakiś kluczowy element infrastruktury mogą się okazać dotkliwe i niezwykle kosztowne. Oznacza to, że testowanie pod kątem bezpieczeństwa powinno dotyczyć sprzę...
Majsterkowiczów wyróżnia ciekawość. Pasjonuje ich wyjaśnianie, jak działają poszczególne obiekty, i praktyczne zastosowanie wiedzy w coraz to ambitniejszych projektach. Bogatym źródłem inspiracji dla wszystkich złotych rączek jest inżynieria mechaniczna. Przydaje się również odrobina wiedzy o prawidłach fizyki i matematyki. Można ją zdobyć podczas lektury trudnych podręczników akademickich albo na wyczerpujących studiach inżynierskich...
Mimo że osiągnięcia matematyczne stały się podwalinami algorytmiki, wielu inżynierów nie w pełni rozumie reguły matematyki dyskretnej. Nawet jeśli nie stanowi to szczególnego problemu w codziennej pracy, w końcu okazuje się, że matematyka dyskretna jest niezbędna do osiągnięcia prawdziwej biegłości w operowaniu algorytmami i w pracy na danych. Co więcej, znajomość tej dziedziny bardzo ułatwia rozwiązywanie problemów z zakresu uczenia maszynowego. W ten sp...
Uczenie maszynowe staje się wszechobecne. Dzięki coraz lepszym narzędziom służącym do tworzenia aplikacji szczegóły techniczne związane z obliczeniami i modelami matematycznymi są często pomijane przez projektantów. Owszem, to wygodne podejście, ale wiąże się z ryzykiem braku świadomości co do wszystkich konsekwencji wybranych rozwiązań projektowych, szczególnie ich mocnych i słabych stron. A zatem bez ugruntowanych podstaw matematyki nie można mów...
Kategoria „Internet, komputery, informatyka” zawiera publikacje skupiające się na wszystkich zagadnieniach związanych z siecią, komputerami, programami komputerowymi czy oprogramowaniem. Książki z tej kategorii poświęcone są w głównej mierze programowaniu – znajdują się tu m.in. podręcznik „Wstęp do informatyki” Jacka Lembasa i Rafała Kawy przeznaczony dla studentów pierwszego roku kierunków informatycznych, poradnik „Sztuka dobrego programowania” Krzysztofa Jassego i Andrzeja Ziemkiewicza, w którym dobre rady znajdą zarówno początkujący, jak i zaawansowani programiści, poradnik „Java. Uniwersalne techniki programowania” pod redakcją naukową Krzysztofa Barteczki dotyczący programowania w języku Java, podręcznik „HTML. Tworzenie stron www i programów desktopowych” Rafała Strychalskiego (podzielony na 3 części: dla początkujących, średniozaawansowanych i zaawansowanych). Znajdują się tu także poradniki z innych dziedzin, jak np. e-commerce („Narzędzia Google dla e-commerce” Krzysztofa Marca), marketingu internetowego („AdWords i Analytics” Krzysztofa Marca i Tomasza Trzósły), praktyk zwinnych („W poszukiwaniu zwinności w architekturze systemów IT” Krzysztofa Bończaka”), rzeczywistości wirtualnej („Rzeczywistość wirtualna (VR) dla każdego – Aframe i HTML 5” Krzysztofa Wońka). Nie brakuje również pozycji dla dzieci, które już od małego chcą rozpocząć swoją przygodę z programowaniem w Scratchu, Pythonie czy Javie („Bawimy się, programując w Scratchu” i „Twórz własne gry komputerowe w Pythonie” Ala Sweigarta, „JavaScript dla dzieci. Programowanie na wesoło” Nicka Morgana), grafiką komputerową („Piksele, wektory i inne stwory” Alicji Żarowskiej-Mazur i Dawida Mazura), produkcją filmową („Zostań gwiazdą YouTube'a” Nicka Willoughby’ego).