Computer ScienceScience & MathematicsEconomics & FinanceBusiness & ManagementPolitics & GovernmentHistoryPhilosophy
Algorithms
Algorithms are the lifeblood of computer science. They are the machines that proofs build and the music that programs play. Their history is as old as mathematics itself. This book is a wide-ranging, idiosyncratic treatise on the design and analysis of algorithms, covering several fundamental techniques, with an emphasis on intuition and the proble...
CSS Notes for Professionals
The CSS Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Algorithms Notes for Professionals
The Algorithms Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
C Programming 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....
Java Notes for Professionals
The Java Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Introduction to Python for Computational Science and Engineering
This book summarises a number of core ideas relevant to Computational Engineering and Scientific Computing using Python. The emphasis is on introducing some basic Python (programming) concepts that are relevant for numerical algorithms. The later chapters touch upon numerical libraries such as numpy and scipy each of which deserves much more space ...
Crypto 101
Crypto 101 is an introductory course on cryptography, freely available for programmers of all ages and skill levels. Learn how to exploit common cryptographic flaws, armed with nothing but a little time and your favorite programming language. Forge administrator cookies, recover passwords, and even backdoor your own random number generator....
A Graduate Course in Applied Cryptography
Cryptography is an indispensable tool used to protect information in computing systems. It is used everywhere and by billions of people worldwide on a daily basis. It is used to protect data at rest and data in motion. Cryptographic systems are an integral part of standard protocols, most notably the Transport Layer Security (TLS) protocol, making ...
I Love Ruby
Ruby is an easy to learn programming language, it was invented by a guy named Matz in Japan. Ruby is a free software and can be used by any one for zero cost. Ruby's popularity was initially confined to Japan, later it slowly trickled out to rest of the world. Things changed with the emergence of Ruby on Rails which is a popular web-developmen...
Modern C
Modern C focuses on the new and unique features of modern C programming. The book is based on the latest C standards and offers an up-to-date perspective on this tried-and-true language. C is extraordinarily modern for a 50-year-old programming language. Whether you're writing embedded code, low-level system routines, or high-performance ap...
Statistics with Julia
Ccurrently many of Julia's users are hard-core developers that contribute to the language's standard libraries, and to the extensive package eco-system that surrounds it. Therefore, much of the Julia material available at present is aimed at other developers rather than end users. This is where our book comes in, as it has been written wi...
The Little Go Book
The Little Go Book is a free introduction to Google's Go programming language. It's aimed at developers who might not be quite comfortable with the idea of pointers and static typing. It's longer than the other Little books, but hopefully still captures that little feeling....
SAT/SMT by Example
SAT/SMT solvers can be viewed as solvers of huge systems of equations. The difference is that SMT solvers takes systems in arbitrary format, while SAT solvers are limited to boolean equations in CNF 1 form. A lot of real world problems can be represented as problems of solving system of equations....
Biopython: Tutorial and Cookbook
The Biopython Project is an international association of developers tools for computational molecular biology. Python is an object oriented, interpreted,flexible language that is becoming increasingly popular for scientific computing. Python is easy to learn, hasa very clear syntax and can easily be extended with modules written in C, C++ or FORTRA...
Street-Fighting Mathematics
In problem solving, as in street fighting, rules are for fools: do whatever works - don't just stand there! Yet we often fear an unjustified leap even though it may land us on a correct result. Traditional mathematics teaching is largely about solving exactly stated problems exactly, yet life often hands us partly defined problems needing only...
Python re(gex)?
Scripting and automation tasks often need to extract particular portions of text from input data or modify them from one format to another. This book will help you learn Python Regular Expressions, a mini-programming language for all sorts of text processing needs. The book heavily leans on examples to present features of regular expressions ...
Ruby Regexp
Scripting and automation tasks often need to extract particular portions of text from input data or modify them from one format to another. This book will help you learn Ruby Regular Expressions, a mini-programming language for all sorts of text processing needs. The book heavily leans on examples to present features of regular expressions on...
The Art of Insight in Science and Engineering
This book shows us that the way to master complexity is through insight rather than precision. Precision can overwhelm us with information, whereas insight connects seemingly disparate pieces of information into a simple picture. Unlike computers, humans depend on insight. Based on the author's fifteen years of teaching at MIT, Cambridge Unive...
Algorithmic Graph Theory and Sage
This is an introductory book on algorithmic graph theory. Theory and algorithms are illustrated using the Sage open source mathematics software....
Support Vector Machines Succinctly
Support Vector Machines (SVMs) are some of the most performant off-the-shelf, supervised machine-learning algorithms. In Support Vector Machines Succinctly, author Alexandre Kowalczyk guides readers through the building blocks of SVMs, from basic concepts to crucial problem-solving algorithms. He also includes numerous code examples and a lengthy b...
Application Security in .NET Succinctly
Security in software development should be a first-order requirement, but it's often implemented in projects as an afterthought. With Application Security in .NET Succinctly, author Stan Drapkin provides a refresher of .NET security practices and fills common knowledge gaps for experienced developers and novices alike. Learn about hashes, mach...
PostgreSQL Notes for Professionals
The PostgreSQL Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Objective-C Notes for Professionals
The Objective-C Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Open Data Structures (in C++)
There are plenty of books that teach introductory data structures. Some of them are very good. Most of them cost money, and the vast majority of computer science undergraduate students will shell out at least some cash on a data structures book. Open Data Structures (in C++) - The goal of this project is to free undergraduate computer science stud...
Open Data Structures (in Java)
There are plenty of books that teach introductory data structures. Some of them are very good. Most of them cost money, and the vast majority of computer science undergraduate students will shell out at least some cash on a data structures book. Open Data Structures (in Java) - The goal of this book is to free undergraduate computer science stud...
Operating Systems and Middleware
Suppose you sit down at your computer to check your email. One of the messages includes an attached document, which you are to edit. You click the attachment, and it opens up in another window. After you start editing the document, you realize you need to leave for a trip. You save the document in its partially edited state and shut down the comput...
Smooth CoffeeScript
An introduction to CoffeeScript programming with an emphasis on clarity, abstraction and verification. Smooth CoffeeScript is a free book about CoffeeScript and programming. No previous programming knowledge is required. Over 200 pages and 35 exercises....
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
This book takes a single line of code - the extremely concise BASIC program for the Commodore 64 inscribed in the title - and uses it as a lens through which to consider the phenomenon of creative computing and the way computer programs exist in culture. The authors of this collaboratively written book treat code not as merely functional but as a t...
Certified Programming with Dependent Types
The technology of mechanized program verification can play a supporting role in many kinds of research projects in computer science, and related tools for formal proof-checking are seeing increasing adoption in mathematics and engineering. This book provides an introduction to the Coq software for writing and checking mathematical proofs. It takes ...
The Nature of Code
How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts ...
The Coder's Apprentice
The Coder's Apprentice is a course book, written by Pieter Spronck, that is aimed at teaching Python 3 to students and teenagers who are completely new to programming. Contrary to many of the other books that teach Python programming, this book assumes no previous knowledge of programming on the part of the students, and contains numerous exer...
Waltzing Through Europe
A refreshing intervention in dance studies, this book brings together elements of historiography, cultural memory, folklore, and dance across comparatively narrow but markedly heterogeneous localities. Rooted in investigations of often newly discovered primary sources, the essays afford many opportunities to compare sociocultural and political reac...

1 2 3 4 5 6