Ryan's Tutorials

A collection of introductory technology tutorials.

Linux

...
Linux Tutorial

An introduction to the Linux command line using the Bash shell. This tutorial introduces a series of commands and concepts that will allow you to effectively manage a Linux/ Unix system.

Master Linux
...
Bash Tutorial

An introduction to Bash scripting on the Linux/ Unix command line. Learn how to automate tedious and repetitive tasks to make your life happier.

Learn BASH

Programming

PyGame
PyGame Tutorial

Learn how to build games using PyGame and Python. Includes a guided tutorial on PyGame as well as examples of creating games using Python and PyGame.

Program with PyGame
Software Engineering
Software Engineering

Learn about diagrams, charts, strategies and other tools to help effectively design and develop software. Skills which will help you to write more manageable code for larger and more complex programs.

Understand the Process
Software Engineering
Algorithms

Learn how to represent the logic required to solve a problem or explain a process through algorithms (pseudocode and flowchart). Express logic in specific and non ambiguous terms.

How to write Algorithms
Rocket
Coding Challenges

A range of programming challenges, at varying degrees of difficulty, to help you develop your coding skills and problem solving ability.

Build your Skill
Micro:bit
micro:bit Tutorial

Learn how to code through a series of fun activities using the micro:bit.

Tinker with micro:bit

Web Development

HTML
HTML Tutorial

Learn how to create web pages by writing clean and elegant HTML. In this tutorial you'll master the basic HTML tags used to format web pages.

Learn HTML
CSS
CSS Tutorial

Learn how to style web pages by writing clean and elegant CSS. In this tutorial you'll master basic CSS. Look at general rules to format your HTML from which you build to more complex layouts.

Learn CSS
Experiment
Web Development Challenges

A collection of guided challenges to run you through various methods and skills in website development.

Develop your skills

Logic and Data Manipulation

switches
Boolean Algebra

Learn how to read and manipulate Boolean Algebra. In this tutorial you'll learn about operators, laws and manipulating expressions. You'll learn how to manage data and simplify expressions.

Master Boolean Algebra
Search
Regular Expressions

Learn how to write regular expressions, a powerful pattern matching tool. In this tutorial you'll learn how to write elegant and powerful regular expressions.

Manage data with Regular Expressions
Abacus
Binary Tutorial

Learn how binary numbers work, how to convert them to decimal, hexadecimal and octal and how to do binary addition, subtraction, multiplication and division.

Understand Binary manipulations

Other

typewriter
Thoughts

Random thoughts about miscellaneous Technology Topics. Things that didn't really fit anywhere else.

General articles
Spreadsheets
Spreadsheets

Tips and Hints to make using spreadsheets more valuable and powerful. Ways to do common things that people want to do with their data.

Mangle data like a pro!
Map
Problem Solving

Learn how to be a better problem solver/ trouble shooter. This tutorial is a great refresher on how to get out of trouble when those gremlins rear their ugly little heads.

Solve Problems effectively
Paintbrush
Design Tutorial

You don't have to be a graphic designer to create elegant and stylish things. This tutorial introduces a series of easy to implement ideas and concepts that will make anything you create stand out. Learn simple colour theory and placement hacks to polish your content.

Make stuff look great!
Rubik's Cube
Solve the Rubik's Cube

Solving the Rubik's Cube is easy when you know how. This tutorial teaches you the algorithms involved in solving the cube as well as tips and hints on getting faster times. Interactive demonstrations for each step of solving the rubik's cube.

Solve the Rubik's Cube
 

About the Author

Hi. My name is Ryan and I have been teaching Linux, programming and other technology related skills to students for over 20 years now. It's something that I very much enjoy. In a world where we are increasingly hiding the complexities away from users (smart phones and tablets in particular), it is always satisfying to give that power back to people and allow them to do much more with their technology.

Technology is a powerful enabler. When you know how to use technology effectively it amplifies your ability to create, to be creative and to harness the immense power of our devices to do positive things. Also, in a world where AI is ever encroaching it is more important than ever for people to understand how technology operates and to develop their critical and analytical thinking.

This website is both for you, and for me. For you, it is a digital form of what I have been teaching my students over the years. For me, it is an opportunity to clarify and polish what I teach and how I deliver it. To these ends, if you have any feedback at all, be it to tell me you found a particular section confusing, or to let me know it was helpful, I would be more than happy to hear from you.

Drop us a message at

Using this material

Anyone may link to the content on this website.

If you are a teacher, academic, manager or trainer and wish to use this material in your classes or training you are more than welcome to link to these pages and refer your students here or show them in your classes, but please do not just copy my material.

I've put a fair amount of time and effort into creating these resources so please be cool and do the right thing.

bookmark