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...
This book has extensive coverage of interfacing assembly and C code and so might be of interest to C programmers who want to learn about how C works under the hood. All the examples use the free NASM (Netwide) assembler. The tutorial only covers programming under 32-bit protected mode and requires a 32-bit protected mode compiler. It is possible to...
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...
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....
To tap into the power of Python's open data science stack - including NumPy, Pandas, Matplotlib, Scikit-Learn, and other tools - you first need to understand the syntax, semantics, and patterns of the Python language. This report provides a brief yet comprehensive introduction to Python for engineers, researchers, and data scientists who are a...
The subject of this book is automated learning, or, as we will more often call it, Machine Learning (ML). That is, we wish to program computers so that they can "learn" from input available to them. Roughly speaking, learning is the process of converting experience into expertise or knowledge. The input to a learning algorithm is training...
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, ...
Today we are witnessing an increased use of data visualization in society. Across domains such as work, education and the news, various forms of graphs, charts and maps are used to explain, convince and tell stories. In an era in which more and more data are produced and circulated digitally, and digital tools make visualization production increasi...
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...
Inferring and Explaining is a book in practical epistemology. It examines the notion of evidence and assumes that good evidence is the essence of rational thinking. Evidence is the cornerstone of the natural, social, and behavioral sciences. But it is equally central to almost all academic pursuits and, perhaps most importantly, to the basic need t...
This book presents a series of activities to teach the basics of computer networks. While you will not learn all aspects of computer networking, we hope that it will serve as a good starting point.
To network micro:bits, we use custom micro:bit radio to radio communication. When one hears the word radio, what comes to mind is the radio that blas...
Custom languages provide many benefits, but many people fear the complexity that comes with trying to deploy them. Author Vassili Kaplan sweeps away the obstacles and shows how custom languages are a tool within reach of any developer. With Implementing a Custom Language Succinctly, readers will discover just how much they can accomplish with the s...
Learning a new programming language can be a daunting task, but Scala Succinctly makes it a simple matter. Author Chris Rose guides readers through the basics of Scala, from installation to syntax shorthand, so that they can get up and running quickly....
The Oracle Database Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
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....
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...
The book heavily leans on examples to present features of regular expressions one by one. It is recommended that you manually type each example and experiment with them.
You should have a good understanding of basic-level programming concepts and prior experience working with JavaScript. Should also know functional programming concepts like map ...
Office 365 is Microsoft's smart and simple answer to cloud computing. Using the various programs in Office 365, you can do all the tasks you're used to doing in your favorite Office applications - write documents, create presentations, check email, manage your calendar, crunch numbers, and more - and then share what you create in real tim...
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...
The goals of this textbook are to help students acquire the technical skills of using software and managing a database, and develop research skills of collecting data, analyzing information and presenting results. We emphasize that the need to investigate the potential and practicality of GIS technologies in a typical planning setting and evaluate ...
Java is a high-level, cross-platform, object-oriented programming language that allows applications to be written once and run on a multitude of different devices. Java applications are ubiquitous, and the language is consistently ranked as one of the most popular and dominant in the world. Christopher Rose's Java Succinctly Part 1 describes t...
The Go programming language is relatively small and concise, but its depth makes it an ideal option for solving modern-day development problems. In Go Succinctly, author Mark Lewin guides readers through the basics of Go, and he provides documentation and resources that allow users to dive into the language and learn it for themselves. By the end o...
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...
A unified treatment of the most important results in the study of fractional graph concepts, this volume explores the various ways in which integer-valued concepts can be modified to derive nonintegral values. It begins with the general fractional theory of hypergraphs and presents in-depth coverage of fundamental and advanced topics. Subjects incl...
PicoLisp Works is a compilation of (almost) all available information about the technological gem PicoLisp - a programming language and environment that definitely deserves wider attention.
Built on the unique characteristics of Lisp (almost no syntax, code is equivalent to data), PicoLisp combines powerful abstractions with simplicity and purit...
The idea that the digital age has revolutionized our day-to-day experience of the world is nothing new, and has been amply recognized by cultural historians. In contrast, Stephen Robertson's BC: Before Computers is a work which questions the idea that the mid-twentieth century saw a single moment of rupture. It is about all the things that we ...
The Visual Basic .NET Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math majors, especially those who will go on to teach. Since Spring 2013, the book has been used as the primary textbook or a supplemental resource at more than 75 colleges and universities around the world (see...
This is a free textbook for a one-semester, undergraduate statistics course. It was used for Math 156 at Colorado State University - Pueblo in the spring semester of 2017....
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...