Computer ScienceScience & MathematicsEconomics & FinanceBusiness & ManagementPolitics & GovernmentHistoryPhilosophy
The Unix Workbench
Learning the command line can be a difficult and intimidating task, but this book is designed to be your lighthouse in the modern computational storm. Unix is a 40 year old operating system that powers the internet, your phone, and the latest scientific research. This book aims to be a gateway to the world of computer programming, providing you wit...
Bioinformatics for Evolutionary Biologists
This self-contained textbook covers fundamental aspects of sequence analysis in evolutionary biology, including sequence alignment, phylogeny reconstruction, and coalescent simulation. It addresses these aspects through a series of over 400 computer problems, ranging from elementary to research level to enable learning by doing. Students solve the ...
Learning Vim
Vim is a console-based multi-mode (modal) text editor. It is widely used and available by default on all Unix, Linux, and Apple OS X systems. Vim has a large active community and a wide user base. The editor supports all popular programming languages, and many plugins are available to extend its features. It is an unofficial and free Vim book cr...
The Linux Command Line
The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell (or command line). Along the way you'll learn the timeless skills handed down by generations of experienced, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matchin...
Introduction to Data Science
The demand for skilled data science practitioners in industry, academia, and government is rapidly growing. This book introduces concepts and skills that can help you tackle real-world data analysis challenges. It covers concepts from probability, statistical inference, linear regression and machine learning. It also helps you develop skills such a...
Learn Programming
This book is aimed at readers who are interested in software development but have very little to no prior experience. The book focuses on teaching the core principles around software development. It uses several technologies to this goal (e.g. C, Python, JavaScript, HTML, etc.) but is not a book about the technologies themselves. The reader will le...
Linux Network Administrator's Guide
Linux, a Unix-compatible operating system that runs on personal computers and larger servers, is valued above all for its networking strengths. The Linux Network Administrator's Guide spells out all the information needed for joining a network, whether it's a simple UUCP connection or a full LAN with a Linux system serving as a firewall, ...
The Linux Commands Handbook
The Linux Commands Handbook follows the 80/20 rule: learn in 20% of the time the 80% of a topic. The author find this approach gives a well-rounded overview. This book does not try to cover everything under the sun related to Linux and its commands. It focuses on the small core commands that you will use the 80% or 90% of the time, trying to sim...
Bash Guide
This guide aims to aid people interested in learning to work with BASH. It aspires to teach good practice techniques for using BASH, and writing simple scripts. This guide is targeted at beginning users. It assumes no advanced knowledge - just the ability to login to a Unix-like system and open a command-line (terminal) interface. It will help i...
Data Science at the Command Line
This thoroughly revised guide demonstrates how the flexibility of the command line can help you become a more efficient and productive data scientist. You'll learn how to combine small yet powerful command-line tools to quickly obtain, scrub, explore, and model your data. To get you started, author Jeroen Janssens provides a Docker image packe...
Learn Ruby on Rails: Book One
This book contains the background that's missing from other tutorials. Here you'll learn key concepts so you'll have a solid foundation for continued study. Whether you choose to continue with another book in this series, a video course, or a code school, everything will make sense when you start here. You can read this book anywh...
Data and Text Processing for Health and Life Sciences
This book is a step-by-step introduction on how shell scripting can help solve many of the data processing tasks that Health and Life specialists face everyday with minimal software dependencies. The examples presented in the book show how simple command line tools can be used and combined to retrieve data and text from web resources, to filter and...
Lightweight Systems for Realtime Monitoring
If you're looking to access and make sense of all your data in real time, there's a more cost-effective and efficient way than using expensive commercial tool suites. In this O'Reilly report, Sam Newman from ThoughtWorks describes several small, freely available open source tools and frameworks for freeing data locked up in silos and...
Fundamentals of C++ Programming
Bjarne Stroustrup of AT&T Bell Labs created C++ in the mid 1980s. C++ is an extension of the programming language C, a product of AT&T Bell Labs from the early 1970s. C was developed to write the Unix operating system, and C is widely used for systems-level software and embedded systems development. C++ initially provided object-oriented...
PHP Notes for Professionals
The PHP Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Lisp Hackers
This book is a collection of short interviews with 14 prominent individuals from different parts of the world, from Australia to Canada, and of different occupations, from low-level programmers to physicists and musicians, asking them a more-or-less similar set of questions on the following topics: their general attitude to programming, attitude to...
CouchDB: The Definitive Guide
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...
Managing Projects with GNU Make
The utility simply known as make is one of the most enduring features of both Unix and other operating systems. First invented in the 1970s, make still turns up to this day as the central engine in most programming projects; it even builds the Linux kernel. In the third edition of the classic Managing Projects with GNU make, readers will learn why ...
Learning PHP
PHP is a widely-used open source programming language. It is especially suited for web development. The unique thing about PHP is that it serves both beginners as well as experienced developers. It has a low barrier to entry so it is easy to get started with, and at the same time, it provides advanced features offered in other programming languages...
NGINX Unit Cookbook
Alongside its popular web server, NGINX provides a dynamic application server that supports configuration through a RESTful JSON API. The open source NGINX Unit server deploys configuration changes without service disruptions and runs apps built with multiple languages and frameworks. This updated cookbook shows developers, DevOps personnel, networ...
Bash Reference Manual
Bash is the shell, or command language interpreter, for thegnuoperating system. Thename is an acronym for the 'Bourne-Again SHell', a pun on Stephen Bourne, the authorof the direct ancestor of the current Unix shellsh, which appeared in the Seventh Edition Bell Labs Research version of Unix. Bash is largely compatible withshand incorpo...
Ansible Succinctly
Ansible is an open-source software, automation engine, and automation language mainly used in software configuration management, infrastructure provisioning, configuration management, application deployment, and orchestration. The core Ansible is written in Python and can be used on Unix-like machines or Microsoft Windows. In Ansible Succinctly, Zo...
Apache HTTP Server Cookbook
The Apache HTTP Server, colloquially called Apache, is the world's most used web server software. Originally based on the NCSA HTTPd server, development of Apache began in early 1995 after work on the NCSA code stalled. Apache played a key role in the initial growth of the World Wide Web, quickly overtaking NCSA HTTPd as the dominant HTTP serv...
Beej's Guide to Network Programming
Back in the mid 90s, Beej got tired of all his friends asking him how to do this stuff with networking programming in C, so he put pen to paper on the early World Wide Web and wrote down everything he knew just to get them off his back. Since then, the Guide has expanded significantly, with plenty of examples, and covers IPv6. Inside you'll fi...
Linux Kernel Crash Book
Linux crash analysis - this is a subject that has lots of unanswered mail threads and plain text documents scattered all over the place, inaccessible to almost everyone, save the tiny percentage of super geeks. My personal and professional interest in the last three years has taken me down the path of Linux kernel secrets, all the way into assem...
Learn Ruby on Rails: Book Two
In this book, you'll build a working web application so you'll gain hands-on experience. Along the way, you'll practice techniques used by professional Rails developers. And I'll help you understand why Rails is a popular choice for web development. Read Book One to get the big picture that's missing from other tutorials...