Applied Combinatorics is an open-source book for a course covering the fundamental enumeration techniques (permutations, combinations, subsets, pigeon hole principle), recursion and mathematical induction, more advanced enumeration techniques (inclusion-exclusion, generating functions, recurrence relations, Polyá theory), discrete structures (grap...
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 ...
This book integrates the classic fields of mechanics - statics, dynamics, and strength of materials - using examples from biology and medicine. The book is excellent for teaching either undergraduates in biomedical engineering programs or health care professionals studying biomechanics at the graduate level. Extensively revised from a successful th...
This comprehensive textbook describes the synthesis, characterization and technical and engineering applications of polymers. Offering a broad and balanced introduction to the basic concepts of macromolecular chemistry and to the synthesis and physical chemistry of polymers, it is the ideal text for graduate students and advanced Masters students s...
This book provides semester-length coverage of electronics for embedded systems, covering most common analog and digital circuit-related issues encountered while designing embedded system hardware. It is written for students and young professionals who have basic circuit theory background and want to learn more about passive circuits, diode and bi...
This book contains 157 problems in classical electromagnetism, most of them new and original compared to those found in other textbooks. Each problem is presented with a title in order to highlight its inspiration in different areas of physics or technology, so that the book is also a survey of historical discoveries and applications of classical e...
This easy-to-follow textbook/reference presents a concise introduction to mathematical analysis from an algorithmic point of view, with a particular focus on applications of analysis and aspects of mathematical modelling. The text describes the mathematical theory alongside the basic concepts and methods of numerical analysis, enriched by computer ...
This book offers a superb introduction to theoretical and practical soil mechanics. Special attention is given to the risks of failure in civil engineering, and themes covered include stresses in soils, groundwater flow, consolidation, testing of soils, and stability of slopes.
Readers will learn the major principles and methods of soil mechanics,...
Now in its 2nd English edition, Mechanics of Materials is the second volume of a three-volume textbook series on Engineering Mechanics. It was written with the intention of presenting to engineering students the basic concepts and principles of mechanics in as simple a form as the subject allows. A second objective of this book is to guide the stud...
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...
The CSS Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Algorithms Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The C Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Haskell Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Java Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
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....
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 ...
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 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...
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 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....
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...
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...
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 ...
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...
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...
This is an introductory book on algorithmic graph theory. Theory and algorithms are illustrated using the Sage open source mathematics software....
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...
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...
The PostgreSQL Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
The Objective-C Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
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...