Programowanie
PKS Prakash, Avishek Pal
Time Series Analysis allows us to analyze data which is generated over a period of time and has sequential interdependencies between the observations. This book describes special mathematical tricks and techniques which are geared towards exploring the internal structures of time series data and generating powerful descriptive and predictive insights. Also, the book is full of real-life examples of time series and their analyses using cutting-edge solutions developed in Python. The book starts with descriptive analysis to create insightful visualizations of internal structures such as trend, seasonality, and autocorrelation. Next, the statistical methods of dealing with autocorrelation and non-stationary time series are described. This is followed by exponential smoothing to produce meaningful insights from noisy time series data. At this point, we shift focus towards predictive analysis and introduce autoregressive models such as ARMA and ARIMA for time series forecasting. Later, powerful deep learning methods are presented, to develop accurate forecasting models for complex time series, and under the availability of little domain knowledge. All the topics are illustrated with real-life problem scenarios and their solutions by best-practice implementations in Python.The book concludes with the Appendix, with a brief discussion of programming and solving data science problems using Python.
Lloyd Watkin, Steven Watkin, David Koelle
XMPP (eXtensible Messaging and Presence Protocol) is a messaging protocol that enables communication between two or more devices via the Internet.With this book, developers will learn about the fundamentals of XMPP, be able to work with the core functionality both server-side and in the browser, as well as starting to explore several of the protocol extensions. You will not only have a solid grasp of XMPP and how it works, but will also be able to use the protocol to build real-world applications that utilize the power of XMPP. By the end of this book, you will know more about networking applications in general, and have a good understanding of how to extend XMPP, as well as using it in sample applications.
Adam Tibi
Test-driven development is a manifesto for incrementally adding features to a product but starting with the unit tests first. Today’s project templates come with unit tests by default and implementing them has become an expectation. It’s no surprise that TDD/unit tests feature in most job specifications and are important ingredients for most interviews and coding challenges. Adopting TDD will enforce good design practices and expedite your journey toward becoming a better coding architect.This book goes beyond the theoretical debates and focuses on familiarizing you with TDD in a real-world setting by using popular frameworks such as ASP.NET Core and Entity Framework. The book starts with the foundational elements before showing you how to use Visual Studio 2022 to build an appointment booking web application. To mimic real-life, you’ll be using EF, SQL Server, and Cosmos, and utilize patterns including repository, service, and builder. This book will also familiarize you with domain-driven design (DDD) and other software best practices, including SOLID and FIRSTHAND.By the end of this TDD book, you’ll have become confident enough to champion a TDD implementation. You’ll also be equipped with a business and technical case for rolling out TDD or unit testing to present to your management and colleagues.
Pragmatyczny programista. Od czeladnika do mistrza. Wydanie II
David Thomas, Andrew Hunt
Wydanie jubileuszowe z okazji 20. rocznicy pierwszej edycji 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 dobrych praktyk. Jeśli pilnuje się jakości swojej pracy i nieustannie pamięta, co i po co się robi, można w końcu stać się pragmatycznym programistą. W drugim wydaniu tego kultowego przewodnika wskazówki techniczne harmonijnie łączą się z aspektami filozofii pragmatycznego programisty. Książka została zaktualizowana i gruntownie przejrzana, aby teraz, dwadzieścia lat po pierwszym wydaniu, ponownie pokazać, co to znaczy być nowoczesnym, pragmatycznym programistą. Poruszono tu tematy osobistej odpowiedzialności i rozwoju zawodowego, komunikacji i poznawania prawdziwych wymagań, nowoczesnych technik architektonicznych oraz coraz ważniejszych kwestii zachowania bezpieczeństwa i prywatności. Książka składa się z krótkich rozdziałów, które tworzą szeroki kontekst, dzięki czemu zyskasz wiedzę o najlepszych podejściach, unikniesz głównych pułapek, a co najważniejsze — rozwiniesz nawyki i postawy, które staną się fundamentem Twojego sukcesu zawodowego. Dowiedz się, jak: pisać kod dynamiczny, elastyczny i łatwy do dostosowywania unikać pułapek związanych z powielaniem wiedzy chronić oprogramowanie przed lukami w zabezpieczeniach budować zespoły pragmatycznych programistów skutecznie testować wziąć odpowiedzialność za swoją pracę i karierę Dbaj o swoje rzemiosło i myśl o tym, co robisz!
Mike Cohen
Pozornie nie dzieje się nic złego, jeśli inżynier lub analityk danych nie rozumie algebry liniowej. Może korzystać z już istniejących narzędzi i nie przejmować się szczegółami ich implementacji. Warto jednak dokładnie poznać algorytmy używane w nauce o danych i dostosować do swoich potrzeb istniejące metody obliczeniowe, tutaj więc nowoczesna algebra liniowa okazuje się nieodzowna. Jeśli chcesz ją poznać w nowoczesnej, praktycznej formie, najlepiej posłużyć się kodem i zastosowaniem algebry liniowej w analizie danych czy symulacjach numerycznych. To książka przeznaczona dla osób, które pracują ze zbiorami danych. Jest praktycznym przewodnikiem po koncepcjach algebry liniowej, pomyślanym tak, by ułatwić ich zrozumienie i zastosowanie w użytecznych obliczeniach. Poszczególne zagadnienia przedstawiono za pomocą kodu Pythona, wraz z przykładami ich wykorzystania w nauce o danych, uczeniu maszynowym, uczeniu głębokim, symulacjach i przetwarzaniu danych biomedycznych. Dzięki podręcznikowi nauczysz się arytmetyki macierzowej, poznasz istotne rozkłady macierzy, w tym LU i QR, a także rozkład według wartości osobliwych, zapoznasz się też z takimi zagadnieniami jak model najmniejszych kwadratów i analiza głównych składowych.
Praktyczne uczenie maszynowe w języku R
Fred Nwanganga, Mike Chapple
WPROWADZENIE DO UCZENIA MASZYNOWEGO Z WYKORZYSTANIEM INTUICYJNEGO JĘZYKA R Uczenie maszynowe i analiza danych pełnią coraz ważniejszą rolę w tworzeniu wartości dodanej. Uczenie maszynowe pozwala znajdować ukryte w danych zależności, wnosząc nowe pomysły i wiedzę, którą trudno byłoby osiągnąć bez tej zaawansowanej techniki. Książka Praktyczne uczenie maszynowe w języku R to wstępne przygotowanie do pracy z dużymi zbiorami danych w języku R, który jest łatwy w zrozumieniu i został opracowany specjalnie z myślą o analizie statystycznej. Nawet osoby bez doświadczenia w programowaniu mogą skorzystać z tej książki, dowiadując się, w jaki sposób praktyczne zastosowania uczenia maszynowego pozwalają analitykom danych pozyskiwać strategiczne informacje biznesowe, solidne prognozy i podejmować trafniejsze decyzje. W odróżnieniu od innych książek na ten temat, Praktyczne uczenie maszynowe w języku R oferuje zarówno teoretyczne, jak i techniczne wprowadzenie do uczenia maszynowego. W przykładach i ćwiczeniach wykorzystywany jest język programowania R oraz najnowsze narzędzia analizy danych, co pozwala zacząć pracę bez nadmiernego zagłębiania się w zaawansowaną matematykę. Dzięki tej książce techniki uczenia maszynowego – począwszy od regresji logistycznej po reguły asocjacyjne i analizę skupień – są w zasięgu ręki. Jedyna publikacja, która łączy intuicyjne wprowadzenie do uczenia maszynowego z opisami zastosowań technicznych krok po kroku. Praktyczne uczenie maszynowe w języku R pokaże jak: przyswoić koncepcje różnych typów uczenia maszynowego, odkrywać wzorce ukryte w dużych zbiorach danych, pisać i wykonywać skrypty R za pomocą RStudio, używać języka R w połączeniu z pakietami Tidyverse do zarządzania danymi i ich wizualizacji, stosować podstawowe techniki statystyczne, takie jak regresja logistyczna czy naiwny klasyfikator Bayesa, oceniać i ulepszać modele uczenia maszynowego. DR FRED NWANGANGA jest profesorem uczelni na wydziale Business Analytics w Mendoza College of Business na uniwersytecie Notre Dame, Indiana, USA. Ma ponad 15-letnie doświadczenie w pełnieniu roli lidera technicznego. DR MIKE CHAPPLE jest profesorem uczelni na wydziale Technology, Analytics, and Operations w Mendoza College of Business. Mike jest autorem ponad 25 poczytnych książek i pełni funkcję dyrektora naukowego programu studiów magisterskich z analizy biznesowej.
Praktyczne uczenie nienadzorowane przy użyciu języka Python
Ankur A. Patel
Wielu ekspertów branżowych uważa uczenie nienadzorowane za kolejną granicę w dziedzinie sztucznej inteligencji, która może stanowić klucz do pełnej sztucznej inteligencji. Ponieważ większość danych na świecie jest nieoznakowana, nie można do nich zastosować konwencjonalnego uczenia nadzorowanego. Z kolei uczenie nienadzorowane może być stosowane wobec nieoznakowanych zbiorów danych w celu odkrycia istotnych wzorców ukrytych głęboko w tych danych, które dla człowieka mogą być niemal niemożliwe do odkrycia. Autor Ankur Patel pokazuje, jak stosować uczenie nienadzorowane przy wykorzystaniu dwóch prostych platform dla języka Python: Scikit-learn oraz TensorFlow (wraz z Keras). Dzięki dołączonemu kodowi i praktycznym przykładom analitycy danych będą mogli identyfikować trudne do znalezienia wzorce w danych i odkrywać dogłębne zależności biznesowe, wykrywać anomalie, przeprowadzać automatyczną selekcję zmiennych i generować syntetyczne zbiory danych. Wystarczy znajomość programowania i nieco doświadczenia w uczeniu maszynowym, aby zająć się: Porównywaniem mocnych i słabych stron różnych podejść do uczenia maszynowego: uczenia nadzorowanego, nienadzorowanego i wzmacnianego. Przygotowywaniem i zarządzaniem projektami uczenia maszynowego. Budowaniem systemu wykrywania anomalii w celu wychwycenia oszustwa dotyczącego kard kredytowych. Rozdzielaniem użytkowników na wydzielone i jednorodne grupy. Przeprowadzaniem uczenia pół-nadzorowanego. Opracowywaniem systemów polecania filmów z użyciem ograniczonych automatów Boltzmanna. Generowaniem syntetycznych obrazów przy użyciu generujących sieci antagonistycznych. Badacze, inżynierowie i studenci docenią tę książkę pełną praktycznych technik uczenia nienadzorowanego, napisaną prostym językiem z nieskomplikowanymi przykładami w języku Python, które można szybko i skutecznie implementować. Sarah Nagy Główny analityk danych w firmie Edison Ankur A. Patel jest wiceprezesem ds. informatyki analitycznej w firmie 7Park Data, wspieranej przez firmę inwestycyjną Vista Equity Partners. W firmie 7Park Data, Ankur i jego zespół analizy danych wykorzystują dane alternatywne do opracowywania produktów związanych z danymi dla funduszy hedgingowych i korporacji oraz rozwijają usługi uczenia maszynowego dla klientów firmowych.
Praktyczny kurs asemblera. Wydanie II
Eugeniusz Wróbel
Wejdź w świat programowania w języku asemblera Dowiedz się, kiedy użycie asemblera jest niezbędne Poznaj zasady programowania w asemblerze Napisz szybkie i wydajne programy dla DOS-a i Windows Zdobądź wiedzę o zasadach działania procesora i pamięci Uważasz, że możliwości języków programowania wysokiego poziomu nie pozwalają na napisanie programu, którego potrzebujesz? Chcesz stworzyć sterownik, program rezydentny, demo lub... wirusa? Interesuje Cię, co dzieje się w komputerze podczas wykonywania programu? Wykorzystaj potencjał asemblera! Programowanie w języku niskiego poziomu daje niemal nieograniczoną kontrolę nad sprzętem i działaniem aplikacji. Programy napisane w języku asemblera działają szybko, są niewielkie i zajmują mało pamięci. Są bardzo wydajne i otwierają dostęp do takich obszarów komputera, do których dostęp z poziomu C++ czy Visual Basica jest niemożliwy. Książka "Praktyczny kurs asemblera" wprowadzi Cię w świat programowania w tym języku. Dowiesz się, jak działa procesor, w jaki sposób komunikuje się z pamięcią i pozostałymi elementami komputera. Poznasz typy rozkazów procesora, tryby adresowania i zasady tworzenia programów w asemblerze. Lepiej poznasz swój komputer i dowiesz się, w jaki sposób zapamiętuje i przetwarza dane. Komputer przestanie być dla Ciebie "czarną skrzynką" wykonującą w czarodziejski sposób Twoje polecenia. Podstawowe wiadomości o architekturze procesorów Intel Organizacja pamięci i tryby adresowania Omówienie listy rozkazów procesora Narzędzia do tworzenia programów w języku asemblera Struktura programu w asemblerze Definiowanie zmiennych Tworzenie podprogramów i makrorozkazów Wykorzystanie funkcji BIOS-a oraz MS-DOS Programy w asemblerze uruchamiane w systemie Windows Optymalizacja kodu Tworzenie modułów dla innych języków programowania Po przeczytaniu tej książki przestaniesz postrzegać asemblera jako zbiór magicznych zaklęć, zrozumiałych jedynie dla brodatych guru pamiętających jeszcze czasy komputerów zajmujących powierzchnię sali gimnastycznej. Napiszesz programy, których uruchomienie nie będzie wymagało od użytkownika posiadania superkomputera. Poznasz wszystkie, nawet najgłębiej ukryte, możliwości komputera.