Programming for Beginners
Programming for Beginners
Minimum price
Suggested price
Programming for Beginners

Last updated on 2018-02-23

About the Book

Check out the website for book info, and some beginner-freindly programming articles:

So you want to learn how to write code. As of 2015, software developers are in demand, which makes software development quite a lucrative career. I also think it's a lot of fun. You type in some text, then the computer does what you say! And if you already own a computer then it's basically free, other than the time that you invest.

Programming is a creative endeavour. You can create whatever you want, and then interact with your creation. It's an eye-opening experience to make something that asks you questions, and responds to your answers. I hope you will have that experience very soon, as you start working through this book.

However, the learning curve can be very steep and frustrating. The majority of programming books and tutorials are made for people who already know the basics. They are too advanced for true beginners – people who have never written any code before – which makes them difficult to absorb if you are just beginning to learn.

You don't need to know anything about writing code, or making software. You will need some basic computer skills – like downloading, opening, and saving files – but everything else will be explained here, step by step, starting from the very beginning.

This book is designed to be your first step into the world of computer programming. It teaches the fundamentals – the core concepts that programmers have used for over 50 years. With a knowledge of the fundamentals, you will have the ability to learn the more advanced concepts that come next.

About the Author

Tom Dalling
Tom Dalling

Converting caffeine into code for over a decade.

Got questions about the book? Shoot a tweet to @tom_dalling, or email tom(at)

Table of Contents

  • Introduction
    • What’s in This Book
    • What to Do When You Get Stuck
  • Level 1: Hello, World!
    • Install Ruby
    • Install a Text Editor
    • Write the Code
    • Download the Code Runner
    • Run the Code
    • Optional Further Exercises
  • Level 2: Input and Output
    • Make a Project Folder
    • Control Flow
    • Strings
    • Variables
    • Variable Names
    • Functions
    • Comments
    • Boss Project: Name the Ogre
    • Optional Further Exercises
  • Level 3: Branching
    • Some Terminology
    • Integers
    • Booleans
    • Conditional Execution
    • Conditionals Explained
    • Other Ways of Writing Conditionals
    • Beware the Difference between = and ==
    • Getting Integers from the User
    • Boss Project: Guess the Number
    • Optional Further Exercises
  • Level 4: Looping
    • Putting Variables into Strings
    • Random Numbers
    • Updating Variables
    • Looping
    • Beware of Infinite Loops
    • Displaying Empty Lines
    • Boss Project: Super Sums
    • Optional Further Exercises
  • Level 5: Composite Values
    • Arrays
    • Array Indices
    • Out of Bounds Errors
    • For Loops
    • Hashes
    • Composite Values
    • Representing Data with Values
    • Nil
    • Boss Project: Quiz Whiz
    • Optional Further Exercises
  • Level 6: Functions
    • Functions Refresher
    • Writing Functions
    • Returning from Functions
    • Function Control Flow
    • Arguments
    • Variable Scope
    • Composing Functions
    • Factoring the Previous Level
    • Mutating Arrays and Hashes
    • Boss Project: Tic Tac Toe
    • Optional Further Exercises
  • Conclusion
    • Advanced Example: Top of Reddit
    • Advanced Example: a 2D Game
    • What to Learn Next: OOP
    • Other Resources
    • Send Me Your Programs!
  • Acknowledgements
  • Boss Project Solutions
    • Level 2: Name the Ogre
    • Level 3: Guess the Number
    • Level 4: Super Sums
    • Level 5: Quiz Whiz
    • Level 6: Tic Tac Toe

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Write and Publish on Leanpub

Authors, publishers and universities use Leanpub to publish amazing in-progress and completed books and courses, just like this one. You can use Leanpub to write, publish and sell your book or course as well! Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks. Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. It really is that easy.

Learn more about writing on Leanpub