C / C++ Books
Data Structures and Algorithms
This book provides implementations of common and uncommon algorithms in pseudocode which is language independent and provides for easy porting to most imperative programming languages. It is not a definitive book on the theory of data structures and algorithms. For the most part this book presents implementations devised by the authors themselves b
Learning Go
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, thi
Beej's Guide to Network Programming
This practical guide offers a clear introduction to network programming using Internet sockets, commonly referred to as 'sockets programming.' While the sockets API originated in Berkeley, it has since been adapted across various platforms, including Unix, Linux, and Windows. Though the API can be overwhelming at first, this book simplifies the lea
Debugging with GDB, 10th Edition
The GNU Debugger allows you to see what is going on "inside" a program while it executes - or what a program was doing at the moment it crashed. GDB supports C, C++, Java, Fortran and Assembly among other languages; it is also designed to work closely with the GNU Compiler Collection (GCC). The GNU Debugger Program has four special features that he
Effective AWK Programming, 5th Edition
When processing text files, the awk language is ideal for handling data extraction, reporting, and data-reformatting jobs. This practical guide serves as both a reference and tutorial for POSIX-standard awk and for the GNU implementation, called gawk. This book is useful for novices and awk experts alike. In this thoroughly revised 5th edition, aut
The Julia Express
Julia is a high-level, dynamic programming language. Its features are well suited for numerical analysis and computational science. Julia works with other languages (C, Python, R, Rust, C++, SQL, JavaScript, ...) The Purpose of this open book is to introduce programmers to the Julia programming by example. This is a simplified exposition of the lan
PC Assembly Language
The book provides extensive coverage of interfacing assembly and C code, making it of potential interest to C programmers seeking to understand how C operates at a lower level. All examples utilize the free NASM (Netwide) assembler. The tutorial focuses exclusively on programming for 32-bit protected mode and requires a 32-bit protected mode compil
Biopython: Tutorial and Cookbook
Biopython is a collection of freely available Python modules for computational molecular biology. Python is an object oriented, interpreted, flexible language that is widely used for scientific computing. Python is easy to learn, has a very clear syntax and can easily be extended with modules written in C, C++ or FORTRAN. Since its inception in 200
Code Connected Volume 1: Learning ZeroMQ
Even connecting a few programs across a few sockets is plain nasty when you start to handle real life situations. Trillions? The cost would be unimaginable. Connecting computers is so difficult that software and services to do this is a multi-billion dollar business. So today we're still connecting applications using raw UDP and TCP, proprietary pr
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