Mimo że dysponujemy coraz szybszym i wydajniejszym sprzętem, oprogramowaniu wciąż stawia się wyśrubowane wymagania: musi działać błyskawicznie i niezawodnie. Nieraz od jakości pracy systemu zależy bardzo dużo, nawet bezpieczeństwo i życie człowieka. Eliminacja źródłowych przyczyn problemów wydajnościowych jest jednak niezwykle trudnym zadaniem. Wymaga wiedzy o działaniu sprzętu, interakcjach między komponentami systemu, a także wysokiej klasy umiejętności programistycznych.Ta...
React jest biblioteką służącą do tworzenia interfejsów użytkownika. Ułatwia pisanie aplikacji internetowych, natywnych aplikacji dla iOS i Androida, oprogramowania dla telewizorów czy też natywnych aplikacji dla komputerów stacjonarnych. Dzięki tej bibliotece można szybko zbudować interfejs, który automatycznie będzie reagował na zmiany stanu aplikacji. Idea polega na użyciu małych, zarządzalnych komponentów do budowy nawet dużych i bardzo złożonych aplikacji. Aby zacząć prac...
Apache Spark jest oprogramowaniem open source, przeznaczonym do klastrowego przetwarzania danych dostarczanych w różnych formatach. Pozwala na uzyskanie niespotykanej wydajności, umożliwia też pracę w trybie wsadowym i strumieniowym. Framework ten jest również świetnie przygotowany do uruchamiania złożonych aplikacji, włączając w to algorytmy uczenia maszynowego czy analizy predykcyjnej. To wszystko sprawia, że Apache Spark stanowi znakomity wybór dla programistów zajmujących...
C++ to jeden z najpopularniejszych i najpotężniejszych języków programowania. Stanowi punkt wyjścia dla wielu innych języków, które odziedziczyły po nim składnię i liczne możliwości, dzięki czemu można śmiało stwierdzić, że znajomość C++ otwiera drzwi do świata nowoczesnego programowania i jest podstawą na wymagającym rynku pracy w branży informatycznej. Czasy się zmieniają, lecz to C++ jest wciąż wybierany wszędzie tam, gdzie liczą się możliwości, elastyczność, wydajność i s...
Tworzenie oprogramowania to wymagający obszar branży technologicznej - trzeba szybko reagować na zmieniające się uwarunkowania i w każdej chwili być gotowym na kolejną innowację, a wszystko po to, by budować przewagę konkurencyjną. Rozwijanie skomplikowanych systemów informatycznych powoli przypomina ciągły wyścig z czasem. Często ceną za skrócenie czasu pisania kodu i wdrożenia oprogramowania bywa zmniejszenie stabilności lub większa awaryjność systemów w środowiskach produk...
Zapewnienie bezpieczeństwa systemu informatycznego jest dziś nie lada wyzwaniem. Między administratorami a napastnikami trwa ciągły wyścig zbrojeń. Agresorzy dysponują bardzo różnymi narzędziami i często postępują w sposób nieprzewidywalny. W efekcie każde zabezpieczenie usługi czy zasobu, mimo że początkowo wydaje się doskonałe, prędzej czy później okazuje się podatne na ataki. Jedyną rzeczą, jaką może zrobić administrator bezpieczeństwa systemu, jest ciągłe utrzymywanie sta...
Filozofia Agile początkowo rozwijała się w zespołach programistów i szybko stała się synonimem elastyczności, wydajności i zdrowego rozsądku. Podejście to zakłada, że zespoły powinny się samoorganizować i samodzielnie decydować o wykonywaniu poszczególnych części projektu. W rzeczywistości nie wszystkie zespoły radzą sobie z tym stylem pracy. Szczególnie jest to widoczne w organizacjach z innych branż niż tworzenie oprogramowania. Pokonanie tych przeszkód jest niezwykle trudn...
W lutym 2001 roku grupa kilkunastu pasjonatów programowania zebrała się w Snowbird w stanie Utah, aby podyskutować na temat efektywności tworzenia oprogramowania i określić nowe zasady pracy. Nie był to cel łatwy do osiągnięcia. Siedemnaście osób o całkowicie różnych doświadczeniach i przekonaniach raczej rzadko wypracowuje wspólne stanowisko. A jednak w tym przypadku tak się stało i powstał Manifest Agile. Właśnie wtedy narodziła się jedna z najważniejszych idei w świecie op...
Posiadanie zbiorów danych to połowa sukcesu. Druga połowa to umiejętność ich skutecznej analizy i wyciągania wniosków! Dopiero na tej podstawie będziesz w stanie właściwie ocenić kondycję Twojej firmy oraz podjąć słuszne decyzje. Wiedza zawarta w tej książce może zadecydować o sukcesie biznesowym lub porażce. Nie ryzykuj i sięgnij po to doskonałe źródło wiedzy, poświęcone nauce o danych.To unikalny podręcznik, który pomoże Ci sprawnie opanować nawet najtrudniejsze zagadnienia...
Tempo rozwoju współczesnych aplikacji jest zbyt duże, aby wciąż stosować skostniałe, stare metodyki zarządzania projektami. Obecnie należy błyskawicznie dostarczyć klientowi pierwszą wersję aplikacji i dopiero na podstawie jego uwag rozwijać oraz modyfikować program. Zwinne metodyki, w tym Scrum, pozwalają tego dokonać. Takie projekty nie zawsze są perfekcyjnie dopracowane, ale zazwyczaj pozwalają poznać opinię zleceniodawcy i lepiej zaplanować kolejne przebiegi - tzw. sprint...
Ile czasu marnujesz na wykonywanie monotonnych, długotrwałych zadań? Mowa o przeglądaniu setek stron czy plików, ręcznym przekształcaniu danych, rozsyłaniu e-maili, tworzeniu wykresów i wielu innych nudnych czynnościach. A gdyby tak zlecić tę pracę komputerowi, a samemu zająć się bardziej odpowiedzialnymi i kreatywnymi zadaniami? To jest do zrobienia — trzeba tylko poświęcić nieco czasu i odpowiednio wykorzystać dostępne rozwiązania, takie jak Python i imponująca kolekcja opr...
Drogi Czytelniku, właśnie trzymasz w rękach nowe wydanie książki zaliczanej do klasyki literatury informatycznej. Napisana przez autorów języka ANSI C w najlepszy możliwy sposób przedstawia arkana tego języka. A co można powiedzieć o samym języku? To też klasyka. To język wymagający systematyczności i skupienia, ale dający w zamian wiele możliwości i świetne wyniki. To najczęściej nauczany język programowania - jego znajomość stanowi znakomity fundament do poznania kolejnych,...
Bezpieczeństwo systemu informatycznego od dawna nie jest problemem wyłącznie administratora IT i jego zespołu. Różnorodność metod, socjotechnik i wyrafinowanych narzędzi wykorzystywanych do ataków oraz zacierania śladów sprawia, że zabezpieczenie usług czy zasobów musi być obowiązkiem całego personelu firmy - od prezesa po stażystę. Co więcej, bezpieczeństwo zasobów informatycznych wymaga systematycznej kontroli i systemowego podejścia, co wcale nie jest łatwym zadaniem. Z je...
Nauka o danych, znana również pod nazwą data science, jest stosunkowo nową, interdyscyplinarną dziedziną, zajmującą się różnymi technikami analizy danych, ich implementacją i wykorzystywaniem do różnych celów. Zalety nauki o danych doceniają specjaliści z wielu branż: analitycy biznesowi, statystycy, architekci oprogramowania i osoby zajmujące się sztuczną inteligencją. Tak naprawdę ta dziedzina nie koncentruje się na kodowaniu i bazach danych, ale raczej na metodach wyłuskiw...
Uczenie maszynowe (ML) i sztuczna inteligencja (AI). Obok komputerów kwantowych to dwa główne, gorące tematy we współczesnej informatyce. Oba nieco tajemnicze, futurystyczne i przede wszystkim wymagające posiadania dość sporej wiedzy i umiejętności matematycznych. Stąd podręczniki akademickie poświęcone sztucznej inteligencji i uczeniu maszynowemu zwykle są grube, ciężkie i naszpikowane detalami. Niesprzyjające szybkiej nauce i w rzeczywistości wcale nie takie… podręczne.Inac...
Ta książka to fascynująca wyprawa w historię rozwoju tego, co dziś jest dla nas codziennością – programów, narzędzi, poczty, internetu. Panorama ludzi światowej i polskiej informatyki, w tym niezwykłych kobiet, takich jak Ada Lovelace (córka Byrona, która napisała pierwszy program komputerowy), Grace Murray Hopper czy Vera Shirley. Napisana ze swadą, autoironią i poczuciem humoru opowieść, która w telegraficznym skrócie i przystępnej formie przemyca rzetelną wiedzę. Okraszona...
Mijają lata, a systemy Unix i Linux są ciągle gwarancją najwyższej niezawodności, wydajności i elastyczności. Ich potencjał jest niekwestionowany, a odporność na niestandardowe warunki zapewnia bezawaryjną pracę w różnych sytuacjach. To wszystko sprawia, że systemy te wykorzystywane są w dużych i złożonych organizacjach. Ich sieci wymagają profesjonalnego administrowania, co jest trudną i odpowiedzialną pracą. Łatwo skonfigurować pojedynczy system, znacznie trudniej jednak za...
Urządzenia mobilne zapewniają ogromną wygodę. Natychmiastowy dostęp do informacji czy dokumentu, niezależnie od lokalizacji użytkownika, jest czymś oczywistym. W ten sposób wszelkie ważne i wrażliwe informacje, takie jak dane pozwalające na identyfikację, dane finansowe czy poufne dokumenty, są cały czas na wyciągnięcie ręki — niestety, często ta ręka należy do kogoś, kto w żadnym przypadku nie powinien tych informacji uzyskać. Każdy, kto pisze aplikacje mobilne, musi pamięta...
Systemy operacyjne Windows 10 i Windows Server 2016 bardzo różnią się od swoich poprzedników. Są bardziej złożone, a niektóre zastosowane rozwiązania można określić jako zaawansowane i wysublimowane. Zwłaszcza znajomość wewnętrznych mechanizmów systemu, architektury jądra i systemowego modelu bezpieczeństwa okazuje się niezwykle istotna dla programistów i inżynierów ds. bezpieczeństwa. Bez tej wiedzy trudno mówić o prawdziwie niezawodnej pracy oprogramowania tworzonego dla ma...
Zagadnienia związane z sieciami komputerowymi są wyjątkowo złożone. Opanowanie tej tematyki wymaga przyswojenia sobie wielu pojęć oraz zrozumienia licznych protokołów i technologii, które dodatkowo są ze sobą powiązane w zawiły sposób. Konieczne jest również uwzględnienie gwałtownego rozwoju technologii sieciowych i rosnącej złożoności nowych aplikacji. Aby poradzić sobie z tymi zagadnieniami, konieczne jest całościowe ujęcie tematyki sieci komputerowych.Ta książka jest siódm...
Potencjał blockchainu jest ogromny i zapewne wciąż nie znamy wszystkich jego możliwych zastosowań. Jest to dosyć nowa, dynamicznie rozwijająca się technologia, jednak już teraz dostrzegalne są pewne jej ograniczenia. Problemem jest na przykład skalowalność Bitcoina. Rozwiązaniem wydaje się Lightning Network (LN), protokół drugiej warstwy, który zapewnia niemal natychmiastowe transakcje w systemie Bitcoin. Umożliwia on również zwiększenie szybkości i prywatności zawieranych tr...
Amazon Web Services (AWS) zdobywa coraz większe uznanie. Platforma AWS udostępnia znakomite rozwiązania, w tym usługi obliczeniowe, magazyn danych, obsługę sieci i usług zarządzanych. Aplikacje korporacyjne wdrożone w chmurze AWS mogą być wyjątkowo odporne, skalowalne i niezawodne. Aby takie były, administrator systemu musi jednak zrozumieć koncepcje zaawansowanego zarządzania chmurą i nauczyć się wykorzystywać je w praktyce zarówno podczas wdrażania systemu, jak i zarządzani...
Autor tego zbioru zadań jest programistą i nauczycielem. To prawdziwy pasjonat programowania ― w tym w języku C++ ― które traktuje jak przedłużenie ludzkiej mowy. Uważa, że praktycznie na wszystko, co robimy w życiu, można spojrzeć jak na wykonywanie funkcji i algorytmów, które opisujemy za pomocą słów. Od razu widać związek między podejściem humanistycznym i informatycznym! Dlatego też nauka programowania w żadnym stopniu nie jest opanowywaniem jakiejś specjalnej wiedzy tylk...
Czy praca na danych kojarzy Ci się z frustrującym ręcznym wklejaniem i oczyszczaniem danych w Excelu? A może tracisz mnóstwo energii na importowanie nieuporządkowanych danych pochodzących z różnych źródeł? Być może podejrzewasz, że Twoje arkusze kryją mnóstwo wartościowych informacji, ale nie wiesz, w jaki sposób je wydobyć i ile godzin musisz na to poświęcić? A może spędzasz sporo czasu na tworzeniu skomplikowanych raportów w Power BI lub programowaniu baz danych SQL Server?...
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).