Ruby Programming Certification Training Course

Get the fundamentals concepts in programming with Ruby.

Upcoming Course Schedule

About this course

Learn more about our Ruby programming training course.

What is the course about

This course will introduce the fundamentals concepts for the Ruby programming language. Ruby is an easy programming language to learn. Its popularly used by startups in developing web applications and for administering systems. Ruby was developed to make programmers happy and is popularly knwon for the Rails web application framework. Ruby is also the language used for developing Puppet, a systems automation software and MetaSploit, a security assesment framework.This course is designed for both programmers and developers who want to get the fundamentals of programming in Ruby.


The course is full time and runs over 5 days. This course is primarily offered as a private course to a team, group or a company.

Programming Experience

This is a beginner's course and no prior programming experience is required. A good command of computer skills, the command line or the terminal are required.

Technical Skill

We primarily use Linux or Mac during the course. A Windows machine can also be used but some things might not work. So technical knowledge on the Linux environment is required.

Private Training

This course is primarily offered as a private course. A minimum of 4 delegates is required to schedule the course. The course can be run on your premises or our premises. When run on your premises, the course costs R9 500 per delegate with a minimum of 4 delegates to schedule the course. The cost is R12 500 to run the course on our premises and training can be done in either Johannesburg, Durban or Cape Town. There is no fixed date the course will run, we work with your team to find suitable dates to run the course.

Course Schedule

Download the full course schedule below

Introducing Ruby Programming Language

Ruby Language Overview
Who is Using Ruby in Production
Setting up the development environment
Using Interactive Ruby Shell(irb)
Hello World in Ruby
Everything is an object in Ruby

Creating and using variables
Using and commenting code
Number and Operators in Ruby
Ruby core language constructs

Ruby Expressions
Arithmetic Operators
Shift or Append Operators
Comparison Operators
Booleans Operators
Range Operators

Creating Arrays
Accessing Array Elements
Adding/Removing Items from an Array
Iterating Over an Array
Selecting Elements from an Array
Reversing an Array
Sorting Arrays
Sguffling an Array
Summing the Items of an Array
More Array Methods
Array Documentation

String Literals
String Methods
Concatenating Strings
Substituting Variables into String(String Interpolation)
Reversing Strings
Processing a String One Character at a Time
Changing Case Strings
Matching Strings with Regular Expressions
Validating an Email Address
Extracting Strings
String Methods
String Documentation
String Exercises
Range Operators

Ruby Hashes

Creating Hashes
Creating a Hash with Default Values
Adding Elements to a Hash
Using Symobls and Hash Keys
Sorting Hash Elements
Accessing Hash Elements
Iterating Over a Hash
Altering Hashes
Merging Hashes
Searching a Hash
More Hash Methods

Creating Numbers
Numeric Alterations
Numeric Comparisons
Number Exercises

Date Classes
Printing Today's Date
Formatting Date
Waiting a Certain Amount of Time
Converting Bwtween Date and Times

Creating Boolean values
Expression tests
Comparative operators


Ruby Loops and Iterators

Loop Method
While Loop
Until Loop
While and Until Loops – Alternative Syntax
Ruby Iterator Methods

Defining and Calling Methods
Default Parameters
Initialize Method
Returning from a Method
Returning Multiple Values
Named and Variable Parameters
Method Aliasing
Un-defining a Method
Class Methods versus Instance Methods

What are Classes
Class Properties
Private Methods
Protected Methods
Checking Class or Module Membership
Ruby Class Variables
Ruby Class Variables
Local Variables
Instance Variables
Global Variable

What are Errors
Catching Errors and Exceptions
Raising Exceptions
Creating Your Own Exceptions
Throwing and Catching Exceptions

File Input/Output
File Access Modes
Directory Modification
Checking if a File Exists
Checking File Access
Deleting a File
Changing Permissions on a File
Writing to a File
Reading Contents of File
Comparing Files
Redirecting Standard Input and Output
Network Input/Output
Higher Level Network Input/Output
Using Networking Libraries
Building a Chat Command Line App with WebSockets
Writing and Reading Input and Output from other Programs

Advanced Ruby Features with Blocks, Procs, and Lambdas

Creating and Invoking a Block
Writing Methods that Accept a Block
Yield Operator
Using Ruby Procs
Using Lambdas

Finding Object's Class and Super Class
Listing Object's Methods

Multiple Inheritance with Mixins
Extending Specific Objects with Modules
Mixing in Class Methods
Avoiding Naming Collision with Namespaces

Types of Testing
Unit Testing
Integration Testing
Automated Testing
Behaviour Driven Development
Test Driven Development Testing
Introduction to Testing with RSpec

Getting Web Page Contents
Performing a DNS Query
Sending Email
Interacting with Remote Servers using SSH
Checking if a Server is Available with Ping

Using Libraries

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type.

Finding and Installing RubyGems
Developing APIs and Web Apps with Sinatra
Building Web Apps with Rails Gem
Some Popular RubyGems

Automatically Running Tasks with Rake
Automatically Generating Documentation Creating a RubyGem
Distributing RubyGem

Installing the Heroku Command Line Client
Installing git
Generating an SSH Key
Creating a Proc file
Creating a new app
Pushing to Heroku

Download Course Outline
Course Pricing

Choose your training options. Attend a public or private training.

Public Training
  • Training at our center
  • Small class size
  • 5 days instructor led
  • Access to Slack channel
  • Access to materials website
  • 6 months after training support
  • Teamviewer, email and telephone support
  • Personalized feedback
  • Light lunches
Reserve Seat
Private Training - Onsite
  • Training on your site
  • Choose as many delegates as you want
  • 5 days instructor led
  • Access to Slack channel
  • Access to materials website
  • 6 months after training support
  • Teamviewer, email and telephone support
  • Personalized feedback
  • Customized course content
  • You provide the lunches
Enquire Now

Newsletter Sign Up

No Spam - Only latest news, price and activity updates
What people say about our courses

This is what our clients have to say

After attending the Xamarin training from Peruzal on our site, we were able to drastically accelerate our internal mobile app development efforts. Peruzal was a phone call away each time we needed support.
Jonathan Winnaar Scientist @ Institute for Maritime Technology
Came across your courses on Google search, after searching for Ruby training around South Africa. We were completely blown away with how much your trainers know stuff.
Divan Santan Infrastrucutre Engineer @ First National Bank
After our DBA left, we were left with noone with the skills to manage the research and scientific database Infrastrucutre. With Peruzal, we were able to get our team running in a matter of a week.
Encarni Colmenero Astronomer @ Southern African Large Telescope
Our team had different backgrounds, application programmers and astronomers with varied database interactions, we did not have formal training in the MySQL database. Peruzal delivered the training onsite and we were comfortable working with MySQL.
Lucian Botha Astronomy Information System Specialist @ South African Astronomical Observatory
“Coming from an academic background, with no prior exposure to programming, I had to develop an Android mobile app for tuition and research purposes. Peruzal helped me to build and implement the app in record time!”
Thuli Shandu Lecturer @ Univeristy of South Africa
Having years of experience in automation and embedded systems, we wanted our team to have experience in developing for Android. Peruzal did send a trainer onsite and we were blown away with the amount of information we had learnt in just 5 days
Cobus Smith Automation Manager @ ArcelorMittal

Answers to some of the most frequently asked questions.

Public Training
What is public training

With public training you attend the course with other delegates from other companies at our premises. If you would like private training we can arrange that the training be done at your premises, however, we require a minimum of 4 delegates for a private course.

What is private training

The training runs at your premises or you can come to us. We require a minimum of 4 delegates for a private training.

Refund Policy

Should you not be happy with the training, this should be raised within the first hour of training. We will try to resolve the issue and if we can't we refund 100% your money.

Cancelling Training

You can not cancel the course once you have booked. Please make sure that you have resolved your dates before making a booking. It takes a long time to organise the training, so we will not be able to refund once you book, however we can try to re-schedule the course at a later date for you.

Course Pricing
How much does the course cost?

The course price depends on whether the course will be on your site(private training) or at our offices(public). For a private course we require a minimum of 4 delegates in order to schedule the course.

How long does it take to complete the course

Most of our coruses are offered over 5 days full time, except for the Xamarin Cross Platform Mobile App Development course which is offered over 2 weeks. No part-time courses are offered at the moment.


We don't provide accomodation but we can help you find accomodation close to the center. We can also help you with arranging transport to pick you up from the airport.

Our preferred accomodation provider is AirBnb. We recommmend if its your first time, only book from a Super Host on AirBnB.

Certificate of Completetion

Our mobile app development courses are hands on, for you to receive a certificate of completion, you will need to demonstrate that you have master the concepts during the course by developing a production mobile application and deploying it to the Google Play or Apple store. No certificates of completion will be awarded without proof that you have developed and deployed your app to the relevant store.