Programming Books
Annotated Algorithms in Python, 2nd Edition
This open book is assembled from lectures given by the author over a period of 10 years at the School of Computing of DePaul University. The lectures cover multiple classes, including Analysis and Design of Algorithms, Scientific Computing, Monte Carlo Simulations, and Parallel Algorithms. These lectures teach the core knowledge required by any sci
Operating Systems: From 0 to 1
This book helps you gain the foundational knowledge required to write an operating system from scratch. Hence the title, 0 to 1. After completing this book, at the very least you will learn: - How to write an operating system from scratch by reading hardware datasheets. In the real world, it works like that. You won't be able to consult Google for
Handbook of Software Engineering Methods, 2nd Edition
This book does not purport to teach the reader how to be a software engineer, a skill that is cultivated over time through practice. Instead, it focuses on software engineering methods - defined as the approaches people use to achieve specific objectives in the field - which can salvage a project. The author's objective is for readers to feel bette
Modern Data Visualization with R
Modern Data Visualization with R describes the many ways that raw and summary data can be turned into visualizations that convey meaningful insights. It starts with basic graphs such as bar charts, scatter plots, and line charts, but progresses to less well-known visualizations such as tree maps, alluvial plots, radar charts, mosaic plots, effects
First Semester in Numerical Analysis with Julia
First Semester in Numerical Analysis with Julia presents the theory and methods, together with the implementation of the algorithms using the Julia programming language. The open access book covers computer arithmetic, root-finding, numerical quadrature and differentiation, and approximation theory. The reader is expected to have studied calculus a
C++ Notes for Professionals
The C++ Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow.
Scientific Computing for Chemists with Python
Scientific computing utilizes computers to aid in scientific tasks such as data processing and digital simulations, among others. The well-developed field of computational chemistry is part of scientific computing and focuses on utilizing computing to simulate chemical phenomena and calculate properties. However, there is less focus in the field of
Dynamic Programming
This book is about dynamic programming and its applications in economics, finance, and adjacent fields. It brings together recent innovations in the theory of dynamic programming and provides applications and code that can help readers approach the research frontier. The book is aimed at graduate students and researchers, although most chapters are
Modernizing Enterprise Java
While containers, microservices, and distributed systems dominate discussions in the tech world, the majority of applications in use today still run monolithic architectures that follow traditional development processes. This practical book helps developers examine long-established Java-based models and demonstrates how to bring these monolithic ap
R Packages, 2nd Edition
Turn your R code into packages that others can easily install and use. With this fully updated edition, developers and data scientists will learn how to bundle reusable R functions, sample data, and documentation together by applying the package development philosophy used by the team that maintains the "tidyverse" suite of packages. In the process