Introduction To Programming


No Matric required, neither any previous training in computer programming for our Intro to Programming course. If you can pass this Entry Test, you may skip this course before doing Beginner Java, Beginner C#, Beginner PHP , Beginner Python etc.

It is recommended that you have your own laptop, because we do give homework – please check with us the configuration as we use Python for this course and if you are not able to install it yourself, we will assist you in the first part of Monday morning.

Intended Audience

This course is for complete beginners, we cover the basics of Computer Programming Languages not focusing on OO, but on the fundamentals of programming like variables, arrays, data structures. Program flow and decision making with if, else etc. Also re-usability by using functions and methods. We also build a complete shopping cart system without Object-oriented programming – that will be covered in the beginner Java / C# / PHP etc.

After this course you should be able to

  • Have a good understanding of programming and the building blocks of a programming language.
  • Write useful programs using variables, arrays, loops, subroutines, functions (methods)
  • Be familiar with the basics of the Python programming language (at a complete beginner level)

Further Training

Beginner Java, Beginner C#, Beginner PHP , Beginner Python

Course Material

Course Material is provided . We are using the Python IDLE, downloadable on, together with the Python installation. If you want to pre-install the software on your laptop, you can, otherwise we normally do it on the first day of the course.

Course Contents

Day 1
Starting to code

  • Programming lets you do more
  • How to run your code
  • Create a new program file
  • Prepare and run your code
  • A program is more than a list of commands
  • Your program is like a network of roads
  • Branches are code intersections
  • If/else branches
  • The Python code needs interconnecting paths
  • Python uses indents to connect paths
  • Loops let you run the same piece of code over and over again
  • Python’s while loop
  • Extra exercises and tutorials

Day 2
Textual Data

  • Your new gig at our Coffee Shop
  • Here’s the current Starbuzz code
  • The cost is embedded in the HTML
  • A string is a series of characters
  • Find characters inside the text
  • But how do you get at more than one character?
  • Let us distinguish loyal customers by rewarding them
  • Searching is complex
  • Python data is smart
  • Strings and numbers are different
  • The program has overloaded the Web Server
  • Time… if only you had more of it
  • You’re already using library code
  • Order is restored
  • Extra exercises and tutorials

Day 3

  • Our Coffee Shop is out of beans!
  • What does the new program need to do?
  • Don’t duplicate your code…
  • …Reuse your code instead
  • Reuse code with functions
  • Always get things in the right order
  • Return data with the return command
  • Use the Web, Dude
  • The function always sends the same message
  • Use parameters to avoid duplicating functions
  • Someone decided to mess with your code
  • The rest of the program can’t see the password variable
  • When you call a function, the computer creates a fresh list of variables
  • When you leave a function, its variables get thrown away
  • Our Coffe Shop is fully stocked!
  • Extra exercises and tutorials

Day 4
Data Files and Arrays

  • Surfers Contest
  • Find the highest score in the results file
  • Iterate through the file with the open, for, close pattern
  • The file contains more than numbers…
  • Split each line as you read it
  • The split() method cuts the string
  • But you need more than one top score
  • Keeping track of 3 scores makes the code more complex
  • An ordered list makes code much simpler
  • Sorting is easier in memory
  • You can’t use a separate variable for each line of data
  • An array lets you manage a whole train of data
  • Python gives you arrays with lists
  • Sort the array before displaying the results
  • Sort the scores from highest to lowest
  • Extra exercises and tutorials

Hashes and Databases

  • Who won the surfing contest?
  • Associate the name with the score
  • Associate a key with a value using a hash
  • Iterate hash data with for
  • The data isn’t sorted
  • When data gets complex
  • Return a data structure from a function
  • The code remains the same; it’s the function that changes
  • TVN’s data is on the money!
  • Extra exercises and tutorials

Day 5
Modular Programming

  • The Local Health Club is upgrading some systems
  • The program needs to create a transaction file
  • Use strings to format strings
  • The Format String Exposed
  • A late night email ruins your day – the need for modularisation!
  • R50,000… for a donut?!
  • Only the sales from your program were rejected
  • The new bank uses a new format
  • Your coffee bar program still uses the old format
  • Don’t just update your copy
  • So how do you create a module…?
  • The transaction file is working great, too
  • The health club has a new requirement
  • The Starbuzz code
  • The two discount functions have the same name
  • Fully Qualified Names (FQNs) prevent your programs from getting confused
  • Extra exercises and tutorials

Let us build a shopping cart and menu program
Duration and pricing

  • Full-time over 5 days (R8995)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R8995)
  • Part-time over 8 Saturdays, 3 hour sessions (R8995)
  • Please note : For part-time courses we do not have a fixed schedule and you will be placed on a waiting list until we get a group of 4+ together. Please book with no dates on the bookings form. This will automatically put you on the waiting list. We will confirm with you as soon as we have a part-time group together.
  • Distance-learning over up to 3 months (R8995)
  • Prices exclude Vat for Vat-registered companies

Monthly payment options for Distance Learning / Self Study
If you want to pay the course on a monthly basis, we divide the course in 3 sections – one per month. You then have to complete a third of the course per month. The payments are as follows:

  1. R3000 registration fee and covering the first month and section 1
  2. R3000 – month 2 and section 2
  3. R3000 – month 3 and section 3, the last section


  • Upon completion of this course you will be issue with an attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
  • Competency assessment is included and you will be issued with a competency certificate if you pass the competency level required in our final assessment.
  • External students that did not attend the course, may write the assessment at a cost of R950.


Please click here.


You may download a pdf copy of this page by clicking on the PDF icon at the top of the page.


Please email us


On the calendar on this page below.
If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.

Print Friendly, PDF & Email