Wdrożenie zasad projektowania dziedzinowego (DDD) jest szansą na uzyskanie doskonałych wyników projektowania oprogramowania dla złożonych wymagań biznesowych. Aby podejście DDD ujawniło swoje zalety, konieczne jest zrozumienie potrzeb użytkowników i zidentyfikowanie właściwych problemów do rozwiązania. Dopiero potem można przystąpić do budowania modeli. Zaangażowanie zainteresowanych stron biznesowych w ten proces nie zawsze jednak przebiega efektywnie. Konieczne jest zrozumi...
Uczenie głębokie zmienia oblicze wielu branż. Ta rewolucja już się zaczęła, jednak potencjał AI i sieci neuronowych jest znacznie większy. Korzystamy więc dziś z osiągnięć komputerowej analizy obrazu i języka naturalnego, wspierania badań naukowych czy budowania skutecznych strategii biznesowych - wchodzimy do świata, który do niedawna był dostępny głównie dla naukowców. W konsekwencji trudno o źródła wiedzy, które równocześnie byłyby przystępne dla zwykłych programistów i mi...
Grono entuzjastów sztucznej inteligencji stale rośnie. Jest już bowiem jasne, że stanowi ona dostępną metodę zmiany świata na lepsze. Pełnymi garściami ze zdobyczy AI czerpią naukowcy, analitycy danych, przedsiębiorcy i menedżerowie, a nawet politycy i ekonomiści. Jej możliwości wydają się dziś nieograniczone - aby je wykorzystać, wystarczy zdobyć gruntowną wiedzę i dobrze zrozumieć podstawy sztucznej inteligencji. Na pierwszy rzut oka nie są to trudne zadania. Choćby ze wzgl...
Szyfrowanie do niedawna było wiązane z bezpieczeństwem publicznym. Najbezpieczniejsze implementacje podlegały takim samym rządowym regulacjom jak przemysł zbrojeniowy. Do dzisiaj rządy i różnego rodzaju służby dążą do uzyskania możliwości odczytywania zaszyfrowanych danych. Tymczasem silna kryptografia jest podstawą globalnej ekonomii, zapewnia codzienną ochronę milionom użytkowników i większości organizacji. A to nie wszystko. Algorytmy szyfrujące, ich implementacja czy prog...
Robert C. Martin, znany jako Uncle Bob, to jeden z prawdziwych gwiazdorów branży IT, człowiek o niezwykłej charyzmie, rewelacyjnym podejściu do słuchaczy i poczuciu humoru. O jego czas wciąż biją się konferencje branżowe. Poza działalnością ekspercką Martin zajmuje się pisaniem książek — m.in. jest autorem znanego każdemu programiście tytułu „Czysty kod”. Książka, którą trzymasz w rękach, jest udaną kontynuacją tej pozycji.W trakcie lektury dowiesz się, jakie cechy charaktery...
Metody statystyczne są kluczowym narzędziem w data science, mimo to niewielu analityków danych zdobyło wykształcenie w ich zakresie. Może im to utrudniać uzyskiwanie dobrych efektów. Zrozumienie praktycznych zasad statystyki okazuje się ważne również dla programistów R i Pythona, którzy tworzą rozwiązania dla data science. Kursy podstaw statystyki rzadko jednak uwzględniają tę perspektywę, a większość podręczników do statystyki w ogóle nie zajmuje się narzędziami wywodzącymi ...
Komputer do pracy potrzebuje liczb i danych. Człowiek chętniej wysnuwa wnioski i wyodrębnia kontekst na podstawie relacji. Te dwa sposoby myślenia są tak odmienne, że komputery do niedawna z trudem wykonywały zadania związane z operowaniem na relacjach. Obecnie może się to zmienić dzięki grafom. Technologie grafowe łączą ludzkie postrzeganie świata i liniową pamięć komputerów. Ich wdrożenie na szerszą skalę będzie stanowić przełom i pozwoli osiągnąć nieznany dziś poziom. Ale ...
Solver to dodatek do programu Microsoft Excel sprawiający, że ten doskonały arkusz kalkulacyjny zyskuje możliwość wyznaczania wartości wielu zmiennych decyzyjnych w taki sposób, aby przy zadanych ograniczeniach osiągać określony cel. Narzędzie nadaje się do rozwiązywania niewielkich i średnich problemów optymalizacyjnych i znajduje zastosowanie w ekonomii, finansach, zarządzaniu i planowaniu produkcji przemysłowej.Jeśli w swojej pracy masz do czynienia z koniecznością optymal...
Zapewnienie bezpieczeństwa IT jest wyjątkowo ważne. Organizacja musi pozostawać w ciągłej gotowości do wykrywania zagrożeń i reagowania na incydenty bezpieczeństwa. Przeciwnicy nieustannie się doskonalą i standardowy zestaw zabezpieczeń jakiś czas temu przestał wystarczać. Konieczne jest zbudowanie i wdrożenie kompleksowego systemu zapobiegania zagrożeniom, ich wykrywania i reagowania na nie. Podobnie jak na polu bitwy, tak i w planowaniu bezpieczeństwa IT zyskuje się przewag...
Nazwą PowerShell określa się dwa powiązane składniki: powłokę wiersza poleceń, instalowaną domyślnie praktycznie we wszystkich nowoczesnych systemach operacyjnych, oraz język skryptowy powłoki. Oba te elementy tworzą potężne i uniwersalne narzędzie, którego możesz używać do automatyzacji niemal wszystkiego: od szybkiego restartu setki serwerów po zbudowanie kompletnego systemu kontrolującego centrum danych. Aby nie tracić czasu na żmudne, powtarzalne obowiązki administratora,...
Komputer jest wszechstronnym narzędziem, które szybko i dokładnie wykona wiele pracochłonnych zadań. Wystarczy przekazać mu instrukcje w zrozumiałym dla niego języku. Takim jak Python, który jest łatwy do nauczenia się, pozwala pisać wyrazisty, zwięzły kod i stwarza imponujące możliwości dzięki niezliczonej liczbie rozszerzeń i bibliotek. Tymczasem wciąż wiele osób wykonuje żmudne i męczące zadania ręcznie: pracując z arkuszem kalkulacyjnym, plikami albo pocztą e-mail. Czas t...
Jeśli uważasz, że język C dawno został odłożony do lamusa, jesteś w błędzie. Wielu inżynierów oprogramowania o nim zapomniało, jednak C wciąż cieszy się popularnością. Jest przy tym uważany za dość trudny język programowania, gdyż samo opanowanie jego składni to za mało, aby efektywnie go wykorzystywać. Właśnie dlatego ceni się programistów z wnikliwym i naukowym podejściem do reguł i praktyk. Tylko wtedy można wykorzystać możliwości języka C do tworzenia efektywnych systemów...
Sztuczna inteligencja ma umożliwiać wykorzystywanie danych i algorytmów do podejmowania lepszych decyzji, rozwiązywania trudnych problemów i automatyzowania złożonych zadań. Ma też zwiększać produktywność człowieka. Obecnie sztuczna inteligencja z rozmachem wkracza do kolejnych dziedzin. Budzi zachwyt, ale też kontrowersje i obawy. Nowe narzędzia, choćby były tworzone z najlepszymi intencjami, zawsze mogą zostać wykorzystane w niewłaściwy czy szkodliwy sposób. Oznacza to, że ...
Mam narysować mapę? Przecież ja nic nie pamiętam z geografii!" - znasz ten ból? Sama myśl o przedstawieniu jakichś danych przestrzennych, naniesieniu trasy na mapę albo wyborze na niej obiektów powoduje, że czujesz dreszcze? Czy jesteś informatykiem, dziennikarzem, psychologiem, handlowcem, czy logistykiem - te umiejętności mogą Ci się przydać. Jeżeli nie znasz tajników kartografii, dzięki tej książce odkryjesz je bezboleśnie. W dodatku będzie to całkiem przyjemne doświadczen...
W pewnych kwestiach nic się nie zmienia - Arduino pozostaje praktycznym, tanim mikrokontrolerem, który może komunikować się ze światem zewnętrznym i obsługiwać przeróżne urządzenia elektroniczne. Daje też pole do popisu licznym amatorom i hobbystom. Środowisko programistyczne wciąż ma prosty interfejs, a programowanie płytki samo w sobie jest łatwym zadaniem nawet dla ludzi bez doświadczenia w pisaniu kodu. Zmiany w świecie Arduino dotyczą większych możliwości oraz sukcesywni...
Rewolucja technologiczna i szalona ekspansja internetu zmieniły wszystko. Coś, co nazywamy rewolucją informatyczną, grozi przesunięciem granic międzypaństwowych, zniszczeniem potężnych i szanowanych instytucji, naruszeniem tkanki społecznej i norm, a także zakwestionowaniem naszej prywatności oraz podważeniem tego, co dobre i co złe. Prywatne porachunki, pospolita przestępczość, wreszcie operacje wojenne przeniosły się do cyberprzestrzeni. Cyfrowa wojna stała się rzeczywistoś...
Nauka programowania na dobre zadomowiła się w szkołach, a umiejętności informatyczne są od lat sprawdzane na egzaminach maturalnych. Jej adepci zapewne zdają sobie sprawę, jakim wzięciem na rynku cieszą się osoby, które mogą się pochwalić znajomością Pythona. To język, który dzięki swoim możliwościom i wszechstronności znajduje zastosowanie w najróżniejszych dziedzinach nauki, przemysłu i biznesu.Książka Python na maturze. Rozwiązania i analiza wybranych zadań programistyczny...
Programiści dysponują coraz lepszym, szybszym i wszechstronniejszym sprzętem. Pojawiają się nowe języki programowania i nowe paradygmaty tworzenia architektury oprogramowania. Są jednak rzeczy, które w świecie programowania pozostają stałe i niezmienne. Wciąż proces stawania się programistą wymaga od adeptów tego rzemiosła sporego wysiłku. Akt kodowania to za mało. Trzeba zmienić sposób myślenia, nawyki, zachowania i oczekiwania. Konieczne jest świadome dążenie do stosowania ...
Termin jednorożec w odniesieniu do innowacyjnych, wartych co najmniej miliard dolarów startupów technologicznych pojawił się po raz pierwszy w 2013 roku i od razu zelektryzował świat. Wówczas do tej kategorii zaliczało się czterdzieści firm. Dziś stajnia jednorożców jest liczniejsza, rezyduje w niej bowiem ponad sześćset startupów, wywodzących się przede wszystkim z USA i Chin. Jednorożce, choć rozbudzają wyobraźnię i marzenia biznesowych wizjonerów na całym świecie, wciąż po...
Twórcy Javy od początku historii tego języka śmiało wprowadzali kolejne awangardowe innowacje, a pisane w niej aplikacje miały swój udział w napędzaniu internetowego postępu. Obecnie Java jest uważana za najpopularniejszy język programowania na świecie, a miliony deweloperów wciąż tworzą za jej pomocą oprogramowanie dla niemal każdego urządzenia wyposażonego w procesor. Java jest wyjątkowo wszechstronnym narzędziem: pozwala napisać zarówno prostą aplikację mobilną, jak i złoż...
Podstawy systemów operacyjnych to dziesiąte, najnowsze wydanie najlepszego na świecie podręcznika o systemach operacyjnych, stosowanego powszechnie na uczelniach wyższych w Polsce. Opisano w nim rozwój systemów, budowę sprzętu, zarządzanie procesami i pamięcią. Omówiono podsystem wejścia-wyjścia, nowe technologie i rozwiązania programowe, związane z rozwojem urządzeń pamięci zewnętrznej oraz szyn łączących je z procesorem i pamięcią główną. Sporo miejsca poświęcono...
Wzorce projektowe powinny się znaleźć w przyborniku każdego profesjonalnego programisty. Ich zaletą jest nie tylko łatwość tworzenia kodu wielokrotnego użytku, ale także możliwość szybkiego rozwiązywania złożonych zagadnień. Osoby, które chcą rozwijać swoje umiejętności programistyczne, mogą również wykorzystać wzorce projektowe do inspirującego dochodzenia, jak można rozwiązać konkretny problem na wiele sposobów - o zróżnicowanym stopniu zaawansowania technicznego i z zastos...
Rozwój technologiczny nie tylko zwiększył ilość i dostępność danych, ale również zaowocował wszechobecnością narzędzi do ich obróbki i prezentacji. W zasadzie każdy może tworzyć diagramy i prezentacje. Aby przykuć uwagę odbiorcy i przekazać mu informację zawartą w zbiorze danych, sama wiedza techniczna nie wystarczy. Problem wynika z tego, że większość ludzi nie ma naturalnej umiejętności przekładania danych na interesujące historie. Tego się po prostu trzeba nauczyć. Dopiero...
Java jest jednym z najpopularniejszych języków programowania. Równocześnie należy do najbardziej innowacyjnych technologii informatycznych; zawsze stanowiła awangardę. Programiści cenią Javę za dojrzałość, bezpieczeństwo i wszechstronność. Jednak nawet tak znakomity język niekiedy przysparza problemów podczas pracy. Mogą się one okazać całkiem proste do rozwiązania, jeśli tylko wiadomo, jak się do tego zabrać.Oto zbiór aktualnych i kompletnych receptur instruktażowych, z któr...
Książka jest dokumentem piśmienniczym, obszernym zazwyczaj zapisem wszelkiej ludzkiej myśli. Występuje w postaci wielostronicowej publikacji o określonej liczbie stron i trwałym charakterze.
Postać dzisiejszej książki drukowanej ma formę kodeksu będącego zbiorem kartek połączonych grzbietem. Taki sposób utrwalania zapisu w momencie upowszechnienia pergaminu zastąpił wcześniejszą formę dokumentu piśmienniczego, jakim był zwój.
Według definicji Słownika języka polskiego PWN książka jest złożonym oraz oprawionym arkuszem papieru zadrukowanym tekstem o charakterze literackim, użytkowym bądź naukowym. Jednak współcześnie definicja ta powinna zostać poszerzona o książki elektroniczne będące cyfrowym odpowiednikiem tych drukowanych. Do książek elektronicznych zaliczane są zarówno ebooki, jak i audiobooki. Treść utrwaloną w formie elektronicznej można odczytać za pomocą odpowiedniego oprogramowania na laptopach, tabletach, smartfonach, a przede wszystkim na przeznaczonych do tego celu czytnikach.
E-książki odgrywają bardzo dużą rolę. Podjęty jakiś czas temu proces digitalizacji książek umożliwia dostęp do światowych zasobów wiedzy znacznie większej liczbie osób. Zbiory ksiąg to niepodważalne światowe dziedzictwo kultury, jednak ze względu na ograniczoną możliwość szybkiego dostępu do przechowywanych w księgozbiorach publikacji, a także brak możliwości jakiegokolwiek dostępu do dzieł o znacznej wartości historycznej proces digitalizacji daje szansę na udostępnianie światowych dzieł szerokiej masie odbiorców.
Okładka to wszystko, co zostało od zewnątrz trwale złączone ze znajdującym się w środku wkładem. Składa się z przedniej i tylnej okładziny (potocznie zwanej okładką), a także z grzbietu okładki. To właśnie okładka definiuje i określa ostateczny wygląd książki, gdyż determinuje między innymi sposób, w jaki łączą się ze sobą wszystkie kartki i jaka jest wewnętrzna budowa książki. Oprawy mogą być miękkie, twarde czy też zintegrowane – różnią się przede wszystkim wielkością, wagą, wytrzymałością oraz ceną. Przykładowo książki w twardej oprawie są większe, cięższe, bardziej wytrzymałe i droższe od tych w miękkiej.
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).