How to think like a Computer Scientist (C++ Version)
by Allen B. Downey
Number of pages: 189
The goal of this book is to teach you to think like a computer scientist. I like the way computer scientists think because they combine some of the best features of Mathematics, Engineering, and Natural Science. Like mathematicians, computer scientist use formal languages to denote ideas (specifically compuations). Like engineers, they design things, assembling components into systems and evaluating tradeoffs among alternatives. Like scientists, they observe the behavior of complex systems, form hypotheses, and test predictions.
Home page url
Download or read it online for free here:
by Samy Pesse - GitHub
Online book about how to write a computer operating system in C/C++ from scratch. The goal is to build a very simple UNIX-based operating system, not just a 'proof-of-concept'. The OS should be able to boot, start a userland shell, and be extensible.
by JT Kalnay - Smashwords
A book with exhaustive examples of C++ intended to help a C programmer learn and use C++. The book is not organized in a traditional chapter format, included are example programs that illustrate the important points of C++ in an evolutionary manner.
by Jason Turner - GitBook
This document is meant to be a collaborative discussion of the best practices in C++. We fill in some of the lower level details and provide specific stylistic recommendations while also discussing how to ensure overall code quality.
The objective is to present modern C++ idioms to programmers who have moderate level of familiarity with C++, and help elevate their knowledge so that C++ feels much friendlier to them. It is designed to be an exhaustive catalog of reusable idioms.