The React Beginner's Handbook follows the 80/20 rule: learn in 20% of the time the 80% of a topic. The author find this approach gives a well-rounded overview.
This book does not try to cover everything under the sun related to React. It focuses on the core of the language, trying to simplify the more complex topics. The author hopes the co...
In this open book, our goal is to study the fundamental concepts in programming languages, as opposed to learning a range of specific languages. Languages are easy to learn, it is the concepts behind them that are difficult. The basic features we study in turn include higher-order functions, data structures in the form of records and variants, muta...
Types are the central organizing principle of the theory of programming languages. Language features are manifestations of type structure. The syntax of a language is governed by the constructs that define its types, and its semantics is determined by the interactions among those constructs. The soundness of a language design - the absence of ill-d...
This book started out as about 30 pages of notes for students in my introductory programming class at Mount St. Mary's University. Most of these students have no prior programming experience, and that has affected my approach. I leave out a lot of technical details and sometimes I oversimplify things. Some of these details are filled in later ...
The study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice ...
In this book, you'll find information about a set of libraries developed within the Apache Commons (also referred to as "Commons"). Commons is a set of small, popular components which forms a Top-level Project at the Apache Software Foundation. Ranging from the elementary to the complex, many would consider some of these libraries in...
Python for Everybody is designed to introduce students to programming and software development through the lens of exploring data. You can think of the Python programming language as your tool to solve data problems that are beyond the capability of a spreadsheet. Python is an easy to use and easy to learn programming language that is freely availa...
A stark departure from traditional philology, What is Authorial Philology? is the first comprehensive treatment of authorial philology as a discipline in its own right. It provides readers with an excellent introduction to the theory and practice of editing 'authorial texts' alongside an exploration of authorial philology in its cultural ...
Add buttons, boxes, pictures and colours and more to your Python programs using the guizero library, which is quick, accessible, and understandable for all.
This 156-page book is suitable for everyone, from beginners to experienced Python programmers who want to explore graphical user interfaces (GUIs).
There are ten fun projects for you to c...
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...
This is a simple open book to learn Python programming language, it is for the programmers who are new to Python.
Python is an interpreted, high-level and general-purpose programming language. Python consistently ranks as one of the most popular programming languages. Large organizations that use Python include Wikipedia, Google, Yahoo, CERN, NA...
This book looks at some of the central issues in the philosophy of computer science. It is not designed to answer all (or even any) of the philosophical questions that can be raised about the nature of computing, computers, and computer science. Rather, it is designed to "bring you up to speed" on a conversation about these issues - to gi...
The method of Do-It-Yourself (DIY) has been around for a long time, and in majority of the cases this has been associated with home renovation and make overs. But, in the past decade this mindset of DIY has shifted to the online world. It has now become the norm for anyone to create their own website without seeking the help of a website profession...
Vue.js is an open-source MVVM (model-view-viewmodel) front end JavaScript framework for building user interfaces and single-page applications.
It is an unofficial and free Vue.js ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overfl...
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: 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...
"How to Code in HTML5 and CSS3" is a free e-book about making websites in HTML5 and CSS for absolute beginners. It doesn't require any experience in IT to start. The aim of this book is to show the art of making websites using a plain language which is full of practical analogies. After reading over 100 pages you will get to know bas...
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....
The growth of social media over the last decade has revolutionized the way individuals interact and industries conduct business. Individuals produce data at an unprecedented rate by interacting, sharing, and consuming content through social media. Understanding and processing this new type of data to glean actionable patterns presents challenges an...
Anyone can be a scientist, and this issue we'll show you how. Whether you're interested in space, traffic, the oceans, or something else, there's a citizen science project for you. The world has never been more connected - so let's use that connectivity to make our planet better!
- We talk to a real-like scientist about the e...
The home computer boom of the 1980s brought with it now iconic machines such as the ZX Spectrum, BBC Micro, and Commodore 64. Those machines would inspire a generation. Written by Tim Danton.
The Computers That Made Britain (300 pages, hardback) tells the story of 19 of those computers - and what happened behind the scenes. With dozens of new in...
Ever fancied creating your own first-person shooter game? Now you can with this 140-page bookazine, brought to you by the Wireframe magazine team with tips from expert video game developers!
Making a fast-paced 3D action game needn't be as daunting as it sounds. Build Your Own First-Person Shooter in Unity will take you step-by- step throug...
This stunning 224-page hardback book not only tells the stories of some of the seminal video games of the 1970s and 1980s, but shows you how to create your own games inspired by them using Python and Pygame Zero, following examples programmed by Raspberry Pi founder Eben Upton.
In the first of two volumes, we remake five classic video games - ra...
Whether you want to build robots, smart devices, or any other electronically controlled projects, this is the book you need. We take you through how to program and connect an Arduino microcontroller board, then explore some great projects to make with it.
- Build a four-legged walking robot;
- Create a Tetris-inspired clock;
- Grow your own ve...
The book is based on "First semester in Numerical Analysis with Julia". The contents of the original book are retained, while all the algorithms are implemented in Python (Version 3.8.0). Python is an open source (under OSI), interpreted, general-purpose programming language that has a large number of users around the world. Python is ran...
Defend Dissent is an introduction to cryptography paired with the social impacts of surveillance and the protective potential of encryption, with a focus on US social movements. Each chapter ends with a story that brings social context to the material - from surveillance used against contemporary US protests to the African National Congress's ...
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, ...
The Tiny Book of Rulesis tiny and it's about the Rules module for Drupal.
Rules is a module usually used to auto-mate actions on your Drupal site. Rules can react on events occurring on your site - such as a user logging in or a node being created - and perform customized follow-up actions such as redirecting to a certain page or setting fi...
CakePHP 4 is a web development framework running on PHP 8.1 (min. PHP 7.2). Read CakePHP at a Glance to get an introduction to the fundamentals of CakePHP. The CakePHP cookbook is an openly developed and community editable documentation project....
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....
This guide aims to aid people interested in learning to work with BASH. It aspires to teach good practice techniques for using BASH, and writing simple scripts.
This guide is targeted at beginning users. It assumes no advanced knowledge - just the ability to login to a Unix-like system and open a command-line (terminal) interface. It will help i...
If you're new to programming, this book will introduce you to thepatterns and concepts used to build modern web applications. You'lllearn how to build a web app (and how the big pieces fit together) by building something from scratch! While this little book won't be able tocover absolutely everything you need to know about programmin...