There are many reasons that you might want to write software: you could be solving a problem that affects yourself, a small group of people or billions of people; you could be writing something to use once or setting the foundations of a project that will be used for decades; you could be analysing some data or writing a “cloud” service or an app that runs on a smartphone or in a web browser. Whatever the case, this guide will teach you how to do it well. You do not need any prior knowledge of or experience with computer programming or software development. All you need are:
- a reasonable command of the language in which this guide is written (i.e. English);
- convenient access to a computing device with a keyboard and reliable Internet access;
- a keen interest in learning how to create delightful software;
- familiarity with elementary-school arithmetic;
- enough time to read this guide thoroughly while completing the experiments described within it.
Start by reading about how computers work.