Bezpieczeństwo systemów informatycznych niejednemu spędza sen z powiek, konsekwencje udanego włamania bowiem mogą oznaczać milionowe straty i zrujnowaną reputację. Przy czym odpowiednie zabezpieczenie systemu jest dla wielu podmiotów niezwykle trudne, gdyż w zespołach brakuje osób z odpowiednimi umiejętnościami. Nawet zatrudnienie zewnętrznego konsultanta nie daje gwarancji, że firmowy system informatyczny będzie bezpieczny i odpowiednio chroniony przed atakami. Okazuje się, ...
C jest systemowym językiem programowania, więc zapewnia maksymalną wydajność sprzętu bazowego. Program napisany w C współpracuje bezpośrednio z warstwą sprzętową, co daje pełną kontrolę nad jego wykonywaniem, a sam kod jest krótki, prosty i działa szybko. Równocześnie można korzystać z zalet programowania wysokiego poziomu. W efekcie C od dwóch dekad pozostaje jednym z najpopularniejszych języków programowania. Trzeba jednak pamiętać o bardzo ważnym szczególe: programista, kt...
Nie warto wyważać otwartych drzwi ani ponownie wynajdywać koła. Sprytniej jest skorzystać ze sprawdzonych rozwiązań, które ktoś już opracował i wdrożył. Dlatego właśnie mądrzy programiści lubią wzorce projektowe: to jest ich sekretny sposób, aby nie tracić sił na nudne drobiazgi, tylko zająć się trudniejszymi, ważniejszymi i ciekawszymi zadaniami. Nic dziwnego, że powstało naprawdę bardzo dużo wzorców projektowych. Przegląd ich wszystkich byłby niemożliwy. Które z nich więc s...
Coraz więcej złożonych, powtarzalnych zadań powierzamy automatom. Inteligentny robot nigdy się nie znudzi, nie zmęczy i będzie cały czas pracował z zadaną prędkością. Zapewnia nam to odpowiednią wydajność i bardzo dużą dokładność wykonywanych czynności. Oczywiście aby osiągnąć te korzyści, najpierw trzeba robota zbudować i zaprogramować. Warto spróbować własnych sił w tej materii. Wiedza o programowaniu autonomicznych robotów jest coraz cenniejsza na rynku pracy, a samo budow...
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 rzeczy ...
Pierwsze linie kodu powstawały w połowie ubiegłego wieku. Komputery, na które tworzono te programy, w bardzo niewielkim stopniu przypominały współczesne maszyny. Niezależnie od upływu lat, postępu technologii i powstawania wymyślnych narzędzi, języków programowania czy frameworków pewne zasady tworzenia kodu pozostają niezmienne. Są takie same jak w czasie, gdy Alan Turing pisał pierwszy kod maszynowy w 1946 roku. Respektowanie tych zasad to warunek, że uzyska się oprogramowa...
Scratch jest projektem MIT Media Lab. Początkowo miał służyć młodym ludziom do nauki programowania, ale szybko zaczął pełnić również inne funkcje. Jest jak cyfrowa piaskownica, w której każdy może nie tylko nauczyć się podstaw kodowania, ale także ćwiczyć kreatywność, umiejętność pracy w zespole i zdolność do wynajdywania nieszablonowych rozwiązań, na przykład podczas projektowania gier. Scratch jest bowiem świetnym narzędziem do tworzenia najróżniejszych gier, a poświęcona m...
Może się wydawać, że profesjonalne systemy uczenia maszynowego wymagają sporych zasobów mocy obliczeniowej i energii. Okazuje się, że niekoniecznie: można tworzyć zaawansowane, oparte na sieciach neuronowych aplikacje, które doskonale poradzą sobie bez potężnych procesorów. Owszem, praca na mikrokontrolerach podobnych do Arduino lub systemach wbudowanych wymaga pewnego przygotowania i odpowiedniego podejścia, jest to jednak fascynujący sposób na wykorzystanie niewielkich urzą...
Projektant UX musi rozmawiać. Dobry design sprawia, że produkt jest ładny i przyjemny w użytkowaniu. Zanim jednak ten produkt powstanie, projektant musi przedstawić i obronić swoje decyzje projektowe. Projektem są przecież zainteresowani klienci, przełożeni i oczywiście cały zespół produktowy. Bardzo wiele zatem zależy od poprawnej komunikacji zainteresowanych stron. Podczas spotkania można doprecyzować wymagania wobec produktu i zaprezentować wybrane rozwiązania projektowe. ...
Dane są obecnie zbierane, przetwarzane i analizowane dosłownie na każdym kroku, a otrzymane wyniki i płynące z nich wnioski oddziałują na każdy aspekt naszego życia. Modelowanie i symulacja to nieodzowne etapy projektowania wszelkiego rodzaju produktów i urządzeń przemysłowych. Pojazdy, budynki, konsumencki sprzęt elektroniczny, lecz także instalacje technologiczne, konstrukcje inżynierskie i specjalistyczna aparatura - wszystko to jest opracowywane i ulepszane właśnie dzięki...
Współczesny rynek wymusza na producentach konieczność szybkiego wdrażania usprawnień i dostosowywania się do wciąż zmieniających się wymagań klientów. Stały rozwój technologii projektowania i wytwarzania pozwala sprostać tym oczekiwaniom, wymaga też jednak od konstruktorów, programistów, technologów i operatorów bardzo wysokich kwalifikacji i ciągłego poszerzania wiedzy na temat dostępnych narzędzi. Jeśli należysz do tego grona specjalistów, z pewnością zainteresują Cię możli...
Kubernetes to system, który uruchamia aplikacje w kontenerach i nimi zarządza. Jest obsługiwany przez wszystkie ważne platformy chmurowe i znakomicie się sprawdza jako centrum danych. Został zbudowany w 2014 roku przez Google i do teraz prężnie się rozwija. Słynie ze skalowalności, z elastyczności, wszechstronności i potężnego zestawu funkcjonalności. Biegłość w posługiwaniu się Kubernetesem jest dziś receptą na sukces. Aby ją zdobyć, musisz zainwestować trochę zaangażowania ...
ASP.NET Core jest doskonałym narzędziem dla profesjonalnych programistów. Zapewnia kompletne środowisko wyposażone w bogaty zestaw funkcjonalności, pozwalające wykorzystywać najnowsze technologie w tworzonych aplikacjach. Kolejna wersja tej lubianej platformy, ASP.NET Core 3, imponuje potencjałem i wspaniałymi możliwościami. Przed rozpoczęciem tworzenia aplikacji jednak warto się zapoznać z nowymi elementami ASP.NET Core 3, by się dowiedzieć, jakie zaawansowane techniki oferu...
Bez Excela trudno sobie wyobrazić wykonywanie różnych złożonych zadań - to ulubione narzędzie naukowców, finansistów, analityków danych, a także profesjonalistów z innych branż. Każda z tych dziedzin ma swoje stale rosnące wymagania wobec Excela. Firma Microsoft wciąż rozwija ten kultowy arkusz kalkulacyjny, jednak język VBA nie nadąża za potrzebami wielu użytkowników. Osoby te często w codziennej pracy korzystają z Pythona do automatyzacji zadań, stąd integracja Excela i Pyt...
Arkusze Google są sieciowym odpowiednikiem Excela, programu szeroko rozpowszechnionego, nauczanego w szkołach i stosowanego w wielu firmach i urzędach. Dlatego ich twórcy starali się stworzyć środowisko pracy możliwie najdokładniej imitujące narzędzia Excela. Zadbali także o zgodność z formatem Excela - dlatego Arkusze potrafią odczytywać i zapisywać pliki w excelowych formatach .xls i .xlsx. Jest to niezwykle wygodne, pozwala bowiem dość swobodnie poruszać się między produkt...
W miarę rozwoju systemu rośnie jego złożoność. Skomplikowane systemy uważa się za trudniejsze w zarządzaniu i bardziej podatne na awarie. Nie można uniknąć złożoności systemu w czasach błyskawicznego rozwoju mikrousług i technologii rozproszonych, ale można nad nią zapanować. Odpowiednio zaplanowane testy i eksperymenty pozwalają wykryć podatności i zapobiec wystąpieniu problemów, zanim zaczną utrudniać realizację celów biznesowych firmy. Relatywnie nowym, lecz wyjątkowo obie...
Procesy gromadzenia danych, zarządzania nimi, przetwarzania ich i izolowania ze zbioru tych, które są aktualnie potrzebne, to wielkie wyzwanie XXI wieku. Dane to wiedza, wiedza to potęga - przy czym samo posiadanie wiedzy nie czyni jeszcze potężnym, trzeba być w stanie nią zarządzać dla swoich potrzeb. W firmie oznacza to na przykład sprawne poruszanie się w gąszczu zamówień klientów, zasobach magazynu, przepływach towarów i łańcuchach dostaw.By wspomóc procesy związane z zar...
Media bezustannie donoszą o spektakularnych wpadkach w zakresie bezpieczeństwa aplikacji. Konsekwencją udanego ataku bywają straty finansowe, kompromitacja, niekiedy zagrożenie bezpieczeństwa narodowego. Aby tego uniknąć, wszyscy zainteresowani - od architekta po użytkownika - powinni stale uaktualniać i stosować w praktyce zasady bezpieczeństwa systemów informatycznych. Jednak szczególna odpowiedzialność spoczywa na projektantach i programistach aplikacji, gdyż podejmowanie ...
Obecnie mamy dostęp do terabajtów danych. To nieprzebrane źródło cennych informacji, które mogą decydować o upadku albo o rozkwicie firmy. Aby jednak wydobyć z danych potrzebną wiedzę, trzeba się wykazać kompetencjami. Są to cenne umiejętności - profesjonalny analityk danych może przebierać w atrakcyjnych ofertach pracy. Spośród różnych technik analizy danych warto się przyjrzeć zastosowaniu zapytań SQL. SQL to język tworzony i rozwijany dla potrzeb pracy z bazami danych, jes...
React to bez wątpienia jedna z najpopularniejszych bibliotek służących do tworzenia interfejsów użytkownika. Zawdzięcza to dużej elastyczności, łatwości adaptacji i... reklamie, którą bibliotece zapewniło użycie jej przez kilka najbardziej rozpoznawalnych serwisów internetowych na świecie, takich jak Netflix, PayPal czy Imgur. Nie bez znaczenia są oczywiście możliwości Reacta, prostota jego zastosowania i czytelność kodu. Liczba ofert pracy dla programistów znających tę bibli...
Rozpoznawanie wzorców i ich trafne stosowanie to umiejętności, które przydają się w różnych sytuacjach. Są bardzo cenne dla architektów: pozwalają na szybkie opracowanie złożonych zagadnień, ale też ułatwiają rozwiązywanie konkretnych problemów na wiele sposobów. Pomagają w podejmowaniu decyzji o konkretnej technologii i niezbędnych kompromisach. Każda kolejna wersja języka programowania czy platformy, na której uruchamia się kod, jest dobrą okazją do przejrzenia istniejących...
Interesujesz się elektroniką? Marzysz o konstruowaniu zaawansowanych urządzeń, w których migają wyświetlacze, furkoczą serwomechanizmy i silniki krokowe? Dopiero zaczynasz przygodę w tej dziedzinie, a może jesteś weteranem, który chce poszerzyć swoją wiedzę? Ta książka jest właśnie dla Ciebie! Dla kogoś, kto chce się rozwijać, kto zamierza od podstaw, gruntownie poznać i opanować jedną z najważniejszych umiejętności XXI wieku, jaką jest programowanie mikrokontrolerów. Dziś ni...
Elektronika jest wszędzie i nie da się już od niej uciec. Telewizor, telefon komórkowy, komputer, a nawet kuchenka mikrofalowa czy niewinna z pozoru zmywarka - w każdym z tych urządzeń znajduje się magiczne coś, dzięki czemu możemy słuchać wiadomości, rozmawiać ze znajomymi, przeglądać strony internetowe, podgrzewać mleko do porannej kawy lub też zmywać po obiedzie, zbytnio się przy tym nie przemęczając. Tym magicznym czymś jest mniej lub bardziej skomplikowany układ elektron...
Też masz wrażenie, że Python jest ostatnimi czasy dosłownie wszędzie? Nic dziwnego - to najbardziej uniwersalny i przystępny język programowania, jaki kiedykolwiek powstał!Jeśli chcesz poznać go od podstaw, sięgnij po odpowiedni podręcznik - taki jak ta książka! To wydanie przeznaczone dla użytkowników Linuxa (także macOS) i Windowsa; ewentualne cechy specyficzne dla konkretnych systemów są na bieżąco wyjaśniane w tekście. Zawiera zagadnienia ukierunkowane na praktyczne potrz...
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).