https://github.com/mikkokotila/jupyter4kids A series of notebooks that help teach kids principles of programming, python and maths.
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