A series of notebooks that help teach kids principles of programming, python and maths.
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 9 commits behind mikkokotila:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


As much as this series is created to help educate aspiring computer programmers and data scientists of all ages with no previous programming experience, after playing with computers and numbers for nearly 4 decades, I've also made this as a reminder for myself on how to have fun with computers and maths.

Using Jupyter notebooks as the medium, this series provides an introduction to:

  • Computer Science
  • Python programming language
  • Numerical computing
  • Numbers theory
  • Prime numbers
  • Data visualization
  • Deep learning

Part 1 : Introduction

Start learning here.

What you will learn:

  • print() is the command to print something on the screen
  • Math operations are very easy to perform in Python
  • Python deals with numbers based on data types
  • In Python there are two numerical data types; int and float
  • Functions are powerful tools to easily perform various operations
  • Functions may accept arguments (parameters) as input
  • Functions are computer processes, and arguments are what is being processed
  • It's very easy to create your own functions

Part 2 : Prime Numbers

Continue learning here

What you will learn:

  • Prime numbers relate with divisibility
  • Divisibility means that when one number is divided by other, the product is not a whole number
  • A prime number is any number that is divisible only by itself and 1
  • Binary means 0 and 1
  • Boolean logic is the binary language of computers
  • Python gives us an easy to use way to instruct computers
  • Boolean logic statements involve 'is', 'is not', 'and' and 'or' statements
  • Boolean statements can be joined together
  • Boolean statements always return either True or False as output
  • It's easy to perform computing operations with small numbers
  • The biggest prime number is a really big number
  • Very big numbers require vast networks of computers joined together

Part 3 : Algorithms

Continue learning here.

What you will learn:

  • Algorithms are like insides of factories
  • Algorithms take inputs and give outputs
  • Conditional statements are a tool for putting boolean logic in to action
  • The three conditional statements in Python are 'if', 'else' and 'elif'
  • Even just 'if' alone can be used to create a conditional statement
  • With small changes to our code, we can make big improvements in capability
  • It's very convinient to store values in to memory
  • Computer memory is nothing like human memory, and also not like a safe deposit box
  • Any value can be stored in to memory
  • Numbers can be automatically generated with range() function