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...
Uczenie głębokie fascynuje wielu inżynierów i praktyków. Mimo że systemy oparte na uczeniu maszynowym stosuje się w rozlicznych branżach, wciąż są uważane za niepokojącą technologię. Istotnie, w wypadku na przykład sieci neuronowych nie wiemy, czego dokładnie uczy się model. Możemy tylko ocenić, czy dobrze realizuje swoje zadanie. Wydaje się, że w sposobie pracy algorytmów uczenia głębokiego tkwi magia. Właśnie dlatego dobrze jest zająć się faktami i dowi...
Oto propozycja dla specjalistów zajmujących się programowaniem sztucznej inteligencji i studentów kształcących się w tej dziedzinie. Autor przybliża tajniki tworzenia sieci neuronowych stosowanych w uczeniu głębokim i pokazuje, w jaki sposób używać w tym celu bibliotek Keras i TensorFlow. Objaśnia zagadnienia dotyczące programowania AI zarówno w teorii, jak i praktyce. Liczne przykłady, czytelna oprawa graficzna i logiczne wywody sprawiają, że to s...
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ę...
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...
SQL stanowi podstawowe narzędzie komunikowania się z relacyjnymi bazami danych. Jest to dość skomplikowany język o rozbudowanych możliwościach. Pozwala na pobieranie z bazy zestawów danych wyszukiwanych na podstawie wyrafinowanych kryteriów. Umożliwia też modyfikację zarówno danych, jak i struktury bazy, w której są gromadzone. To potężne narzędzie powinni znać nie tylko programiści baz danych, ale również specjaliści zajmujący się ich anali...
Wyróżnij się treścią. Internet to doceni! Choć (teoretycznie) żyjemy w kulturze obrazkowej, świat wirtualny (jednak) treściami stoi. Internet, szczególnie branża e-commerce, jest wypełniony tekstami, które konkurują o uwagę odbiorców i wyszukiwarek. Z założenia każdy opis produktu, artykuł na blogu i post w social mediach powinien być oryginalny, nieść cenne treści, jakich nie znajdzie się nigdzie indziej. W praktyce rzadko się zdarza, by słowa w ...
W ostatnich latach zdecydowanie wzrosła popularność frameworka React, pozwalającego w pełni skorzystać z możliwości nowoczesnych przeglądarek i urządzeń mobilnych. Nowym narzędziem służącym do testowania obiektowego modelu dokumentu (DOM) jest React Testing Library. Zostało ono zaprojektowane tak, aby ułatwiać projektantom pracę zgodną z podejściem test-driven development (TDD). Jest to bardzo cenna właściwość, gdyż prawidłowo napisane komponenty testowe znacznie obniżają ryz...
TypeScript szybko stał się ulubionym językiem programowania zawodowców. Pozwala na tworzenie czystego, efektywnego i łatwego w utrzymaniu kodu, a także zastosowanie zaawansowanych konstrukcji programistycznych. Co więcej, pracę w tym języku uprzyjemniają liczne frameworki i biblioteki, które pozwalają na sprawną budowę dojrzałych aplikacji. Jednak z punktu widzenia początkującego programisty TypeScript ma inną ogromną zaletę: jest świetnym punktem startu dla każ...
Linux od dawna jest chętnie używanym systemem operacyjnym, na jego bazie powstało wiele dystrybucji odpowiadających zróżnicowanym potrzebom. Na pierwszy rzut oka może się wydawać, że większość zadań administracyjnych w Linuksie najwygodniej wykonywać za pomocą myszy. Wiersz poleceń jest o wiele trudniejszym interfejsem: na ekranie wyświetla się znak zachęty, a system oczekuje na wpisanie poprawnie zbudowanego polecenia. Taki sposób pracy jednak pozwala na uzyska...
Poznaj rewelacyjną nowość na rynku frontendu_x005F_x000D_ _x005F_x000D_ Framework Tailwind CSS to prawdziwy webmasterski hit ostatniego roku. Wyjątkowym i nowatorskim czyni go przyjęta filozofia pracy. Twórcy frameworka proponują bowiem oryginalne podejście do tworzenia stron i aplikacji internetowych. Zamiast ściśle semantycznego sposobu tworzenia klas CSS Tailwind opiera się na fundamencie zwanym Utility-First. Dzięki temu architekt interfejsu nie marnuje czasu na ge...
Książka "CCNP 350-401 ENCOR. Zaawansowane administrowanie siecią Cisco" Adama Józefioka zdobyła wyróżnienie w kategorii podręczników w konkursie na Najlepszą Polską Książkę Informatyczną 2023r. organizowanym przez Polskie Towarzystwo Informatyczne._x005F_x000D_ _x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Zostań administratorem sieci!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Poznaj technologie sieciowe_x005F_x000D_ Naucz się je wykorzystywa...
Bez znajomości algorytmów nie można się nauczyć programowania. Algorytmy są też przydatne w pracy naukowców i inżynierów. Właściwie każdy z nas codziennie z nich korzysta: gotując, wypełniając urzędowe formularze czy przeprowadzając mniej lub bardziej złożone procedury. Co więcej, ludzki organizm również wykonuje skomplikowane działania bez udziału świadomości, ale zgodnie z ukrytymi algorytmami. Łatwo się przekonać, że dzięki umiejętności zastosow...
Język Python jest znany jako wszechstronny, elastyczny i łatwy do nauczenia. Te zalety doceniają naukowcy, programiści i oczywiście hakerzy. Testowanie penetracyjne bowiem wymaga umiejętności szybkiego tworzenia skutecznych narzędzi, a do tego Python nadaje się znakomicie. Jednak wiedza o mrocznej stronie Pythona przydaje się nie tylko pentesterom i napastnikom. Świadomość o możliwościach kodu Pythona jest pomocna również podczas pracy administratorów i programi...
Blockchain, czyli łańcuch bloków, niefortunnie kojarzy się z kryptowalutami i przestępczością. Tymczasem potencjał tej technologii jest ogromny i zapewne wciąż nie znamy wszystkich możliwych jej zastosowań. Łańcuch bloków jest w istocie publicznym rejestrem, który może się stać ogólnoświatową, zdecentralizowaną księgą służącą do rejestrowania, inwentaryzacji i organizowania transferów wszelkiego rodzaju aktywów. Najwyższy więc czas, a...
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...
Popularność Pythona, ulubionego języka programistów i naukowców, stale rośnie. Jest on bowiem łatwy do nauczenia się: nawet początkujący programista może napisać działający kod. W efekcie, mimo że Python pozwala na pisanie kodu przejrzystego i prostego w konserwacji, zdarzają się przypadki kodu źle zorganizowanego, nieczytelnego i praktycznie nietestowalnego. Jedną z przyczyn tego stanu rzeczy jest tendencja niektórych programistów do pisania kodu ...
Montuj filmy jak profesjonalista! Program DaVinci Resolve to absolutny fenomen wśród oprogramowania służącego do montażu wideo. Równie chętnie bowiem korzystają z niego specjaliści z największych wytwórni filmowych Hollywood, jak amatorzy w zaciszu własnych domów. Dzieje się tak, ponieważ DaVinci oferuje szerokie możliwości, i to zarówno w wydaniu płatnym (Studio), jak i darmowym ― prawdę mówiąc, wersje różnią się ledwie...
Król Excel do Twoich usług Czterysta lat. Tyle czasu zajęłoby Ci uzupełnienie ― choćby jednym znakiem ― wszystkich komórek w arkuszu Excela. A tych w nowszych wersjach programu jest ponad 17 miliardów ― przeszło milion wierszy i dobrze ponad 16 tysięcy kolumn. Ktoś kiedyś dokonał takich (chyba zbędnych?) komórkowo-czasowych obliczeń. Po co? Pewnie dla zabawy. Gdzie? Może… w arkuszu Excela? Właściwie dlaczego nie. Wszak Exc...
Wydajny i niezależny od platformy język wysokopoziomowy? To C++! Poznaj konstrukcje składniowe języka C++ Naucz się je stosować w praktyce Napisz swoje pierwsze programy Programowanie to w dużym uproszczeniu wydawanie komputerowi odpowiednich poleceń. Aby jednak móc to robić, trzeba opanować trudną sztukę komunikacji z maszyną, co w praktyce sprowadza się do posługiwania się zrozumiałym dla niej językiem. Obecnie niemal nikt nie musi się już uczyć językó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).