• Welcome!
Total books

Computer & Internet

AI and Robotics

Communicaion and Telecommunication
Graphics & Design

Information Technology
Mobile Computing
Network Security

Operating System
Software Engineering

Web Design & Development
Web Development
Sort by
Learning to Code with C
Learning to Code with C Sented by Musa

Learning the C programming language will give you masterful control over a computer. “It can give you control over the smallest details of how a processor operates but is still simple to learn and read,” says Simon. “This series is an introduction to programming in C for absolute beginners; you don’t need any previous programming experience, and a Raspberry Pi running Raspbian is all you need to get started.”

Multiobjective Analysis and Inference of Phylogenetic Hypotheses by Means of Parallel and Bioinspired Computing

One of the most outstanding research topics in the field of bioinformatics is the reconstruction of evolutionary relationships among species. By studying the molecular features of living organisms, phylogenetic inference procedures seek to provide hypotheses about the evolutionary events which led to the current biodiversity in nature. The result of a phylogenetic analysis is given by a treeshaped data structure known as phylogenetic tree, whose topology describes the evolutionary history of the input species by defining ancestor-descendant relationships. The biological quality of the inferred phylogenies is usually evaluated by means of optimality criteria, which allow the modelling of phylogenetic inference as an optimization problem.

Knowledge Compilation for Online Decision-Making: Application to the Control of Autonomous Systems

Controlling autonomous systems requires to make decisions depending on current observations and objectives. This involves some tasks that must be executed online—with the embedded computational power only. However, these tasks are generally combinatory; their computation is long and requires a lot of memory space. Entirely executing them online thus compromises the system’s reactivity. But entirely executing them offline, by anticipating every possible situation, can lead to a result too large to be embedded. A tradeoff can be provided by knowledge compilation techniques, which shift as much as possible of the computational effort before the system’s launching. These techniques consists in a translation of a problem into some language, obtaining a compiled form of the problem, which is both easy to solve and as compact as possible. The translation step can be very long, but it is only executed once, and offline. There are numerous target compilation languages, among which the language of binary decision diagrams (BDDs), which have been successfully used in various domains of artificial intelligence, such as model-checking, configuration, or planning.

Hands-on Python Tutorial
Hands-on Python Tutorial Sented by Steve Bark

Python is a widely used general-purpose, high-level programming language. Its design philosophy emphasizes code readability, and its syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C.

Computer Science III
Computer Science III Sented by Emma

Computers are awesome. The human race has seen more advancements in the last 50 years than in the entire 10,000 years of human history.

Cryptography and Computer Security

Cryptography or cryptology is the practice and study of techniques for secure communication in the presence of third parties called adversaries.

Probabilistic Programming for Procedural Modeling and Design

Procedural modeling, or the use of pseudo-random programs to generate visual content, plays an important role in computer graphics and design. It facilitates content creation at massive scales, can automatically create painstakingly-detailed imagery, and can even generate pleasantly surprising results that can help people to navigate large and unintuitive design spaces.

OWASP, Testing Guide 4.0
OWASP, Testing Guide 4.0 Sented by Emma

The problem of insecure software is perhaps the most important technical challenge of our time. The dramatic rise of web applications enabling business, social networking etc has only compounded the requirements to establish a robust approach to writing and securing our Internet, Web Applications and Data.

Java, Java, Java: Object-Oriented Problem Solving

We have designed this third edition of Java, Java, Java to be suitable for a typical Introduction to Computer Science (CS1) course or for a slightly more advanced Java as a Second Language course. This edition retains the “objects first” approach to programming and problem solving that was characteristic of the first two editions. Throughout the text we emphasize careful coverage of Java language features, introductory programming concepts, and object-oriented design principles.

Introduction to MIPS Assembly Language Programming

One of the major goals of computer science is to use abstraction to insulate the users from how the computer works. For instance, computers can interpret speech and use natural language processing to allow novice users to perform some pretty amazing tasks. Even programming languages are written to enhance the ability of the person writing the code to create and support the program, and a goal of most modern languages is to be hardware agnostic.

Scientifc Computing with MATLAB

These are the course notes associated with my graduate-level course called Scientific Computing, given in the Department of Psychology at the University of Western Ontario.

The Type Astronaut’s Guide to Shapeless

Back at the beginning of 2011, when I first started doing the experiments in generic programming that would eventually turn into shapeless, I had no idea that five years later it would have evolved into such a widely used library.

The official Raspberry Pi Projects Book Vol2

Volume 2 of the official Raspberry Pi Projects Book is here with another 200 pages of ideas, inspiration and guides to help you with your next Raspberry Pi project!

DevOps for Digital Leaders

DevOps best practices are evolving rapidly, allowing organizations to build, test and deploy applications at a faster pace, and higher quality, than ever before.

The Undergraduate Guide to R

Congratulations on deciding to learn the R programming language. Learning R will give you a whole new set of tools with which to manipulate, analyze, compare, and view data. R is designed primarily for use in statistics, but it is useful regardless of which scientific discipline you are pursuing.

The GNU C Reference Manual

This is a reference manual for the C programming language as implemented by the GNU Compiler Collection (GCC). Specifcally, this manual aims to document:

Sort by