Computer ScienceScience & MathematicsEconomics & FinanceBusiness & ManagementPolitics & GovernmentHistoryPhilosophy
Java, Java, Java
Functional and flexible, this guide takes an objects-first approach to Java programming and problem using games and puzzles. Offers independent introductions to both a command-line interface and a graphical user interface (GUI). Features coverage of Unified Modeling Language (UML), the industry-standard, object-oriented design tool. Illustrates key...
Think OCaml
How to Think Like a Computer Scientist is an introductory programming book based on the OCaml language. It is a modified version of Think Python by Allen Downey. It is intended for newcomers to programming and also those who know some programming but want to learn programming in the function-oriented paradigm, or those who simply want to learn OCam...
How to Think Like a Computer Scientist
How to Think Like a Computer Scientist: Learning with Python - is an introduction to computer science using the Python programming language. It covers the basics of computer programming, including variables and values, functions, conditionals and control flow, program development and debugging. Later chapters cover basic algorithms and data structu...
The C Programming Language Handbook
C is a general-purpose, procedural computer programming language supporting structured programming, lexical variable scope, and recursion, with a static type system. The C Programming Language Handbook follows the 80/20 rule: learn in 20% of the time the 80% of a topic. In particular, the goal is to get you up to speed quickly with C....
Learning Go
This is an introduction to the Go language from Google. Its aim is to provide a guide to this new and innovative language. The intended audience of this book is people who are familiar with programming and know multiple programming languages,be it C, C++, Perl, Java, Erlang, Scala or Haskell. This is not a book which teaches you how to program, ...
100 Laravel Quick Tips
Laravel is full of hidden gems, undocumented or less-known features, functions parameters and "hacks". While finding them in work of my team, I decided to compile them into an ebook....
Modern Object Pascal Introduction for Programmers
There are many books and resources about Pascal out there, but too many of themtalk about the old Pascal, without classes, units or generics. So I wrote this quick introduction to what I call modern Object Pascal. Most of theprogrammers using it don't really call it "modern Object Pascal", we just call it "ourPascal". Bu...
Algebra
This open book is an introduction to algebra for undergraduates who are interested in careers which require a strong background in mathematics. It will benefit students studying computer science and physical sciences, who plan to teach mathematics in schools, or to work in industry or finance. The book assumes that the reader has a solid background...
The Essence of Mathematics
It is increasingly clear that the shapes of reality - whether of the natural world, or of the built environment - are in some profound sense mathematical. Therefore it would benefit students and educated adults to understand what makes mathematics itself 'tick', and to appreciate why its shapes, patterns and formulae provide us with preci...
Database Design Succinctly
The way a user might perceive and use data and the optimal way a computer system might store it are often very different. In this Database Design Succinctly, learn how to model the user's information into data in a computer database system in such a way as to allow the system to produce useful results for the end user. Joseph D. Booth will cov...
Patterns for Beginning Programmers
Programming patterns are solutions to problems that require the creation of a small fragment of code that will be part of a larger program. Hence, this book is about teaching you how to write such fragments of code. However, it is not about teaching you the syntax of the statements in the fragments, it assumes that you already know the syntax. Inst...
The Julia Express
Julia is a high-level, dynamic programming language. Its features are well suited for numerical analysis and computational science. Julia works with other languages (C, Python, R, Rust, C++, SQL, JavaScript, ...) The Purpose of this open book is to introduce programmers to the Julia programming by example. This is a simplified exposition of the l...
Erlang Handbook
Erlang is the result of a project at Ericsson's Computer Science Laboratory to improve the programming of telecommunication applications. A critical requirement was supporting the characteristics of such applications, that include: massive concurrency, fault-tolerance, isolation, dynamic code upgrading at runtime, transactions. Throughout t...
An Introduction to C & GUI Programming
Freshly updated for GTK3, the 2nd edition of An Introduction to C & GUI Programming will teach you all you need to know to write simple programs in C and start creating GUIs, even if you're an absolute beginner. The first half of the book is an introduction to C, and covers the basics of writing simple command-line programs. The second ...

1 2 3