This book provides a handbook of algorithmic recipes from the fields of Metaheuristics, Biologically Inspired Computation and Computational Intelligence that have been described in a complete, consistent, and centralized manner. These standardized descriptions were carefully designed to be accessible, usable, and understandable. Most of the algorit...
Streamline software development with Jenkins, the popular Java-based open source tool that has revolutionized the way teams think about Continuous Integration (CI). This complete guide shows you how to automate your build, integration, release, and deployment processes with Jenkins - and demonstrates how CI can save you time, money, and many headac...
Three of CouchDB's creators show you how to use this document-oriented database as a standalone application framework or with high-volume, distributed applications. With its simple model for storing, processing, and accessing data, CouchDB is ideal for web applications that handle huge amounts of loosely structured data. That alone would stret...
This instructive book takes you step by step through ways to track, merge, and manage both open source and commercial software projects with Mercurial, using Windows, Mac OS X, Linux, Solaris, and other systems. Mercurial is the easiest system to learn when it comes to distributed revision control. And it's a very flexible tool that's ide...
How do you write truly elegant code with Ruby? Ruby Best Practices is for programmers who want to use Ruby as experienced Rubyists do. Written by the developer of the Ruby project Prawn, this concise book explains how to design beautiful APIs and domain-specific languages with Ruby, as well as how to work with functional programming ideas and techn...
Written by members of the development team that maintains Subversion, this is the official guide and reference manual for the popular open source revision control technology. The new edition covers Subversion 1.7 with a complete introduction and guided tour of its capabilities, along with best practice recommendations.
Version Control with Subve...
Applied Discrete Structures, is a two semester undergraduate text in discrete mathematics, focusing on the structural properties of mathematical objects. These include matrices, functions, graphs, trees, lattices and algebraic structures. The algebraic structures that are discussed are monoids, groups, rings, fields and vector spaces.
Applied D...
With the ascent of DevOps, microservices, containers, and cloud-based development platforms, the gap between state-of-the-art solutions and the technology that enterprises typically support has greatly increased. But as Markus Eisele explains in this O'Reilly report, some enterprises are now looking to bridge that gap by building microservice-...
Cosmos DB is a NoSQL database service included in Azure that is continuously adding new features and has quickly become one of the most innovative services found in Azure, targeting mission-critical applications at a global scale. This book starts off by showing you the main features of Cosmos DB, their supported NoSQL data models and the foundatio...
Australia invoked the ANZUS Alliance following the Al Qaeda attacks in the United States on 11 September 2001. But unlike the calls to arms at the onset of the world wars, Australia decided to make only carefully calibrated force contributions in support of the US-led coalition campaigns in Afghanistan and Iraq. Why is this so?
Niche Wars examin...
Bayesian methods for statistical analysis is a book on statistical methods for analysing a wide variety of data. The book consists of 12 chapters, starting with basic concepts and covering numerous topics, including Bayesian estimation, decision theory, prediction, hypothesis testing, hierarchical models, Markov chain Monte Carlo methods, finite po...
This open book brings together oral histories that record the experiences of individuals with intellectual disabilities in Shanghai as they participate in their careers. Employees with intellectual disabilities describe their experiences seeking, attaining, and maintaining employment. Their managers, colleagues, and family members also provide keen...
This open book synthesizes leading-edge science and management information about forest and rangeland soils of the United States. It offers ways to better understand changing conditions and their impacts on soils, and explores directions that positively affect the future of forest and rangeland soil health. This book outlines soil processes and ide...
Simplified Signs presents a system of manual sign communication intended for special populations who have had limited success mastering spoken or full sign languages. It is the culmination of over twenty years of research and development by the authors. The Simplified Sign System has been developed and tested for ease of sign comprehension, memoriz...
Arriving in the remote Arnhem Land Aboriginal settlement of Oenpelli (Gunbalanya) in 1925, Alf and Mary Dyer aimed to bring Christ to a former buffalo shooting camp and an Aboriginal population many whites considered difficult to control. The Bible in Buffalo Country: Oenpelli Mission 1925 - 1931 represents a snapshot of the tumultuous first six ye...
Types are the central organizing principle of the theory of programming languages. Language features are manifestations of type structure. The syntax of a language is governed by the constructs that define its types, and its semantics is determined by the interactions among those constructs. The soundness of a language design - the absence of ill-d...
Add buttons, boxes, pictures and colours and more to your Python programs using the guizero library, which is quick, accessible, and understandable for all.
This 156-page book is suitable for everyone, from beginners to experienced Python programmers who want to explore graphical user interfaces (GUIs).
There are ten fun projects for you to c...
Functional and flexible, this guide takes an objects-first approach to Java programming and problem using games and puzzles. Offers independent introductions to both a command-line interface and a graphical user interface (GUI). Features coverage of Unified Modeling Language (UML), the industry-standard, object-oriented design tool. Illustrates key...
The purpose of this book is to help you program shared-memory parallel systems without risking your sanity. Nevertheless, you should think of the information in this book as a foundation on which to build, rather than as a completed cathedral. Your mission, if you choose to accept, is to help make further progress in the exciting field of parallel ...
This book looks at some of the central issues in the philosophy of computer science. It is not designed to answer all (or even any) of the philosophical questions that can be raised about the nature of computing, computers, and computer science. Rather, it is designed to "bring you up to speed" on a conversation about these issues - to gi...
Raspberry Pi Pico is a new low-cost, high-performance microcontroller board with flexible digital interfaces. Microcontrollers are computers stripped back to their bare essentials. You don't use monitors or keyboards, but program them to take their input from, and send their output to the input/output pins. Using these programmable connections...
How to Think Like a Computer Scientist is an introductory programming book based on the OCaml language. It is a modified version of Think Python by Allen Downey. It is intended for newcomers to programming and also those who know some programming but want to learn programming in the function-oriented paradigm, or those who simply want to learn OCam...
How to Think Like a Computer Scientist: Learning with Python - is an introduction to computer science using the Python programming language. It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structu...
This is an introduction to the Go language from Google. Its aim is to provide a guide to this new and innovative language.
The intended audience of this book is people who are familiar with programming and know multiple programming languages,be it C, C++, Perl, Java, Erlang, Scala or Haskell. This is not a book which teaches you how to program, ...
Covering the design and implementation of assemblers and loaders, this comprehensive book opens with an introduction to one-pass and two-pass assemblers. Important concepts such as absolute and relocatable object files are discussed, as are assembler features such as local labels and multiple location counters. The format, meaning and implementatio...
The fact that current compact cameras produce good (or at least, adequate) pictures in most photographic situations is at the root of this book. The main aim of the book is to show how such a camera can be operated and its controls tweaked to cover many different photographic conditions and requirements. (To put it another way, the chief goal of th...
With Kubernetes came many new concepts, particularly around networking and traffic management. Alongside these new concepts were entirely new classes of tools, designed for ephemeral, containerized, and distributed application deployments. In particular, Ingress controllers and service meshes did not exist prior to the Kubernetes era. Nor were Laye...
Lecture notes for the Yale Computer Science course CPSC 469/569 Randomized Algorithms. Suitable for use as a supplementary text for an introductory graduate or advanced undergraduate course on randomized algorithms. Discusses tools from probability theory, including random variables and expectations, union bound arguments, concentration bounds, app...
A new edition of a graduate-level machine learning textbook that focuses on the analysis and theory of algorithms.
This book is a general introduction to machine learning that can serve as a textbook for graduate students and a reference for researchers. It covers fundamental modern topics in machine learning while providing the theoretical basi...
Statistical studies over the last forty-five years show that, although there are success stories, very many mergers and acquisitions do not result in the increased operating profits that economics textbooks would lead one to expect. As consultancy McKinsey have put it, 'Anyone who has researched merger success rates knows that roughly 70% fail...
This book provides an algorithmic perspective to autonomous robotics to students with a sophomore-level of linear algebra and probability theory. Robotics is an emerging field at the intersection of mechanical engineering, electrical engineering, and computer science. With computers becoming more powerful, making robots smart is getting more and mo...
The aim of this short book is to introduce the general themes, challenges, and opportunities in the world of managing API traffic. Most of the examples and recommendations come from my own experience (or that of colleagues) while working with customers, ranging from small local startups to global enterprises.
This book is for those just getting ...