2017-01-03 admin

Intro 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 or any of the bootcamps.

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 bit of the course.

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 www.python.org, 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
Functions

  • 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

Project
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 or Online Coaching 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

Certificate

  • 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 assesment.
  • External students that did not attend the course, may write the assessment at a cost of R950.

Bookings

Please click here.

Brochure

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

Questions

Please email us

Schedule

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.

2016-04-13 admin

Prerequisites

Matric with no previous training in computer programming. If you cannot pass the Introduction to Programming Test, you should be doing this course before attempting Beginner Java, Beginner C#, Beginner PHP , Beginner Python etc.

It is recommended that you have your own laptop – 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 www.python.org, 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
Functions

  • 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


Project

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) (R10995)
  • Part-time over 8 Saturdays, 3 hour sessions (R10995)
  • 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

Certificate

  • 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.
  • External students that did not attend the course, may write the assessment at a cost of R950.

BookingsPlease click here.BrochureYou may download a pdf copy of this page by clicking on the PDF icon at the top of the page.QuestionsPlease email usScheduleOn the calender 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

2015-05-19 Alta

Prerequisites

Matric with no previous training in computer programming. If you cannot pass the Intro to Programming Test, you should be doing this course before attempting Beginner Java, Beginner C#, Beginner PHP etc.

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)

Further Training

Beginner Java, Beginner C#, Beginner PHP

Course Material

Course Material is provided .

Course Contents

Day 1

  • 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
  • Your new gig at Starbuzz Coffee
  • 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?
  • The String Exposed
  • Beans’R’Us is rewarding loyal customers
  • Searching is complex
  • Python data is smart
  • Strings and numbers are different
  • The program has overloaded the Beans’R’Us Server
  • Time… if only you had more of it
  • You’re already using library code
  • Order is restored

 Day 3

  • 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!
  • Head First 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
  • $50,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

Day 5

  • What’s that smell?
  • Someone changed the file permissions
  • When it couldn’t write to the file, the program threw an exception
  • Catch the exception
  • Watch for exceptions with try/except
  • There’s an issue with the exception handler
  • A message box demands attention
  • Creating message boxes in Python
  • Time to mix it up
  • The music just kept on playing…
  • Not all events are generated by button clicks
  • Capturing the protocol event isn’t enough
  • Two buttons, or not two buttons? That is the question…
  • The checkbox is an on/off, flip/flop toggle
  • Working with checkboxes in tkinter
  • Model a slider on a scale
  • Use pygame to set the volume
  • Use tkinter for everything else
  • The DJ wants to play more than one track
  • Create code for each track as a function
  • The new function contains other functions
  • Your new function needs to create widgets and event handlers
  • The DJ is confused
  • Group widgets together
  • A frame widget contains other widgets
  • A class is a machine for creating objects
  • A class has methods that define behavior
  • But how does an object call a method?
  • The SoundPanel class looks a lot like the create gui() function
  • class = methods + data
  • The Class Exposed
  • The DJ has an entire directory of tracks
Day 2

  • Starbuzz 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, Luke
  • 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
  • Starbuzz is fully stocked!
  • Surf’s up in Codeville
  • 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

 Day 4

  • Head First TVN now produces game shows
  • pygame is cross platform
  • pygame Exposed
  • 0… 2… 1… 9… blast off!
  • tkinter gives you the event loop for free
  • tkinter is packed with options
  • The GUI works, but doesn’t do anything
  • Connect code to your button events
  • The GUI program’s now ready for a screentest
  • But TVN is still not happy
  • Label it
  • Head-Ex needs a new delivery system
  • They’ve already designed the interface
  • Read data from the GUI
  • The Entry and Text widgets let you enter text data into your GUI
  • Read and write data to text fields
  • Large Text fields are harder to handle
  • One of the Head-Ex deliveries went astray
  • Users can enter anything in the fields
  • Radio buttons force users to choose a valid depot
  • Creating radio buttons in tkinter
  • The radio buttons should work together
  • The radio buttons can share a model
  • The system tells the other widgets when the model changes
  • So how do you use models in tkinter?
  • Head-Ex’s business is expanding
  • There are too many depots on the GUI
  • An OptionMenu lets you have as many options as needed
  • The model stays the same
  • Things are going great at Head-Ex

Duration and pricing

  • Full-time over 5 days (R7995 )
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R10995 )
  • Part-time over 8 Saturdays, 3 hour sessions (R10995 )
  • Distance-learning over up to 3 months (R6995)
  • Prices exclude Vat for Vat-registered companies

Certificate

  • 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.
  • External students that did not attend the course, may write the assessment at a cost of R950.

Schedule for Johannesburg (Jhb) and Cape Town (CT)

On the calender 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.

Bookings

You can download the course registration form on our home page or by clicking here

Brochure

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

Questions

Please email us

 

2014-11-28 Alta

Intro to Programming

Prerequisites

Matric with no previous training in computer programming. If you cannot pass the Intro to Programming Test, you should be doing this course before attempting Beginner Java, Beginner C#, Beginner PHP etc.

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)

Further Training

Beginner Java, Beginner C#, Beginner PHP

Course Material

We give you an original copy of the book: Head First Programming (by O’Reilly Press) as we use this mainly, but we also cover additional examples where it falls short.

Course Contents

Day 1

  • 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
  • Your new gig at Starbuzz Coffee
  • 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?
  • The String Exposed
  • Beans’R’Us is rewarding loyal customers
  • Searching is complex
  • Python data is smart
  • Strings and numbers are different
  • The program has overloaded the Beans’R’Us Server
  • Time… if only you had more of it
  • You’re already using library code
  • Order is restored

 Day 3

  • 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!
  • Head First 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
  • $50,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

Day 5

  • What’s that smell?
  • Someone changed the file permissions
  • When it couldn’t write to the file, the program threw an exception
  • Catch the exception
  • Watch for exceptions with try/except
  • There’s an issue with the exception handler
  • A message box demands attention
  • Creating message boxes in Python
  • Time to mix it up
  • The music just kept on playing…
  • Not all events are generated by button clicks
  • Capturing the protocol event isn’t enough
  • Two buttons, or not two buttons? That is the question…
  • The checkbox is an on/off, flip/flop toggle
  • Working with checkboxes in tkinter
  • Model a slider on a scale
  • Use pygame to set the volume
  • Use tkinter for everything else
  • The DJ wants to play more than one track
  • Create code for each track as a function
  • The new function contains other functions
  • Your new function needs to create widgets and event handlers
  • The DJ is confused
  • Group widgets together
  • A frame widget contains other widgets
  • A class is a machine for creating objects
  • A class has methods that define behavior
  • But how does an object call a method?
  • The SoundPanel class looks a lot like the create gui() function
  • class = methods + data
  • The Class Exposed
  • The DJ has an entire directory of tracks
Day 2

  • Starbuzz 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, Luke
  • 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
  • Starbuzz is fully stocked!
  • Surf’s up in Codeville
  • 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

 Day 4

  • Head First TVN now produces game shows
  • pygame is cross platform
  • pygame Exposed
  • 0… 2… 1… 9… blast off!
  • tkinter gives you the event loop for free
  • tkinter is packed with options
  • The GUI works, but doesn’t do anything
  • Connect code to your button events
  • The GUI program’s now ready for a screentest
  • But TVN is still not happy
  • Label it
  • Head-Ex needs a new delivery system
  • They’ve already designed the interface
  • Read data from the GUI
  • The Entry and Text widgets let you enter text data into your GUI
  • Read and write data to text fields
  • Large Text fields are harder to handle
  • One of the Head-Ex deliveries went astray
  • Users can enter anything in the fields
  • Radio buttons force users to choose a valid depot
  • Creating radio buttons in tkinter
  • The radio buttons should work together
  • The radio buttons can share a model
  • The system tells the other widgets when the model changes
  • So how do you use models in tkinter?
  • Head-Ex’s business is expanding
  • There are too many depots on the GUI
  • An OptionMenu lets you have as many options as needed
  • The model stays the same
  • Things are going great at Head-Ex

Duration and pricing

  • Full-time over 5 days (R8995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R10995 excl Vat)
  • Part-time over 8 Saturdays, 3 hour sessions (R10995 excl Vat)
  • Distance-learning over up to 3 months (R7995 excl Vat)

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book.

2014-11-06 Alta
Advanced PHP/MySQL Programmer

Prerequisite

You should be at the Beginner PHP course level – you might have to write the test at (cost of R500) to prove that.

Intended Audience

This course is for web designers probably with HTML or XHTML who want to take their web pages
to the next level and build database-driven sites using PHP and MySQL

Further Training

If you do not know SQL, you should seriously consider doing the SQL course – this is a must
for any IT professional nowadays.

Course Material

Included

Day 1
  • Building personalized web apps
  • Prepping the database for log-ins
  • Constructing a log-in user interface
  • Encrypt passwords with SHA()
  • Comparing passwords
  • Authorizing users with HTTP
  • Logging In Users with HTTP Authentication
  • A form for signing up new users
  • Use cookies with PHP
  • A cookie-powered log-in
  • Logging out means deleting cookies
  • Sessions aren’t dependent on the client
  • Keeping up with session data
  • Log out with sessions
  • Complete the session transformation
  • Sessions + Cookies = Superior log-in persistence
  • Eliminate duplicate code
  • Using templates
  • Control your data, control your world
  • Model a database with a schema
  • Wire together multiple tables
  • Foreign keys in action
  • Tables can match row for row
  • One row leads to many
  • Matching rows many-to-many
  • Build a questionnaire
  • Get responses into the database
  • We can drive a form with data
  • Generate the questionnaire form
  • Strive for a bit of normalcy
  • When normalizing, think in atoms
  • Three steps to a normal database
  • Altering the database
  • A query within a query within a query…
  • Let’s all join tables
  • Connect with dots
  • Surely we can do more with inner joins
  • Nicknames for tables and columns
  • Joins to the rescue
  • Five steps to a successful mismatch
  • All we need is a FOR loop
Day 2
  • String and custom functions
  • The search leaves no margin for error
  • SQL queries can be flexible with LIKE
  • Explode a string into individual words
  • implode() builds a string from substrings
  • Preprocess the search string
  • Replace unwanted search characters
  • The query needs legit search terms
  • Copy non-empty elements to a new array
  • Extract substrings from either end
  • Multiple queries can sort our results
  • Functions let you reuse code
  • Build a query with a custom function
  • Custom functions: how custom are they really?
  • SWITCH makes far more decisions than IF
  • Give build_query() the ability to sort
  • We can paginate our results
  • Get only the rows you need with LIMIT
  • Control page links with LIMIT
  • Keep track of the pagination data
  • Set up the pagination variables
  • Revise the query for paginated results
  • Generate the page navigation links
  • Putting together the complete Search script
Day 3
  • Regular expressions
  • Decide what your data should look like
  • Formulate a pattern for phone numbers
  • Match patterns with regular expressions
  • Build patterns using metacharacters
  • Fine-tune patterns with character classes
  • Check for patterns with preg_match()
  • Standardize the phone number data
  • Get rid of the unwanted characters
  • Matching email addresses can be tricky
  • Domain suffixes are everywhere
  • Use PHP to check the domain
  • Email validation: putting it all together
  • Visualizing your data… and more!
  • No input form is safe
  • We need to separate man from machine
  • We can defeat automation with automation
  • Generate the CAPTCHA pass-phrase text
  • Visualizing the CAPTCHA image
  • Inside the GD graphics functions
  • Drawing text with a font
  • Generate a random CAPTCHA image
  • Add CAPTCHA to the Add Score script
  • Five degrees of opposability
  • Storing bar graph data
  • From one array to another
  • Formulating a bar graphing plan
  • Crunching categories
  • Doing the category math
  • Bar graphing basics
  • Draw and display the bar graph image
  • Individual bar graph images for all
  • Leftovers, Set up a Development Environment, Extend your PHP
Day 4
  • Syndication and web services
  • RSS pushes web content to the people
  • RSS is really XML
  • From database to newsreader
  • Visualizing RSS
  • Dynamically generate an RSS feed
  • Link to the RSS feed
  • A video is worth a million words
  • Pulling web content from others
  • Syndicating YouTube videos
  • Make a YouTube video request
  • REST request
  • YouTube speaks XML
  • Deconstruct a YouTube XML response
  • Visualize the XML video data
  • Access XML data with objects
  • From XML elements to PHP objects
  • Drill intoXML data with objects
  • Not without a namespace!
  • Lay out videos for viewing
  • Format video data for display
Day 5
  • What Is a Function?
  • Why Functions Are Useful
  • Calling Functions
  • Working with Variable Functions
  • Writing Your Own Functions
  • Working with References
  • What Is Object-Oriented Programming?
  • Advantages of OOP
  • Understanding Basic OOP Concepts
  • Creating Classes and Objects in PHP
  • Creating and Using Properties
  • Working with Methods
  • Object Overloading with _get(), _set(),
  • and _call()
  • Using Inheritance to Extend the Power of Objects
  • Constructors and Destructors
  • Automatically Loading Class Files
  • Storing Objects as Strings
  • Determining an Object’s Class
  • Handling HTML Forms with PHP
  • Preserving State With Query Strings, Cookies, and Sessions
  • Making Your Job Easier with PEAR
  • String Matching with Regular Expressions

 

Duration and pricing

    • Full-time over 5 days (R7995 excl VAT)
    • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R9995 excl Vat)
    • Part-time over 8 Saturdays, 3 hour sessions (R9995 excl Vat)
    • Distance-learning over up to 3 months (R6995 excl Vat)

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book
The project is useful for unemployed students who want to enter the job market. This project and certificate can be used to show employers your abilities.

Schedule

On the calender on this page below.  This course is repeated approximately once every 6 weeks, unless a customised specific booking is requested via email.
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.

2014-10-04 Alta

SAP is one of the most advanced computerised business systems in the world. Many IT professionals have built life-long careers around this complex application and are considered to be top experts in the industry. So it was a welcome validation that one school leaver’s father, himself a SAP programmer, advised his son to attend GetCertified’s Java development course.

Java is a programming language favoured by corporations due to its robust security, technical detail, and ability to easily process large amounts of data. It is also used extensively to write Android apps and, of course, SAP programs.

The student hoped to follow in his father’s footsteps and approached him for advice on how to get started. While researching available study avenues, the elder came across GetCertified’s web site and reviewed the details of our Basic and Advanced Java courses. Impressed by the course content, he encouraged his son to enrol.

Although the student’s matric math marks were average, his aptitude test and face-to-face interviews revealed a strong capability to master Java, and he was accepted on this basis.

The student himself had no previous programming experience, having only recently matriculated. He found the initial course difficult as he grappled with the basics of programming as well as the Java language. However, he commends his lecturer, Arnold Graaff, for helping him gain the insight needed to succeed. “Arnold was always ready to provide me with additional mentoring,” he says. Under that tutelage, by the time the student tackled his practical project in the advanced course, he had a solid understanding of Java and general programming principles.

Graaff’s own qualifications – a BSc in Computer Science with Honours and 30 years in the IT industry – make him the perfect instructor.

After training, all participants register to sit for the internationally recognised Oracle Certified Associate Java exam and Oracle Certified Professional Java exam. The student achieved an outstanding 96% pass at his first sitting. Total time studying was 6 months.

After exams, he was afforded the opportunity to work on a 6 month contract with BMW South Africa as a junior Java developer. Should his work meet their standard, the company will consider offering him a permanent position.

GetCertified partners with Compuways – a top IT recruitment company placing tech personnel since 1990 – to find positions for students who successfully complete the course. “Junior Java developers are in demand and we have standing orders for their skills, enabling us to place them very quickly” says Graaff.

Bursaries or study loans are available on request to applicants who passed pure maths in matric, or who perform favourably in GetCertified’s aptitude test and face-to-face interviews.

For course details, visit www.getcertified.co.za.

——

About GetCertified IT Training

Johannesburg-based GetCertified IT Training was established in 2004 as a subsidiary of Compuways IT Consulting. The company provides targeted, quality IT training to two markets: IT professionals who want to cross-train themselves to improve their career prospects, and individuals wanting to enter the IT job market for the first time. All courses are aligned to recognised international certification syllabi and are designed to achieve a level of practical proficiency required by prospective employers.

2014-01-30 getcertarn

For kids of at least 10 years old, we teach computer programming the right way. The course is expertly designed and internationally acclaimed content is used. Groom your child into the exciting world of computer programming. We are using examples that kids understand easily and find relevant and exciting at their level. Concepts that they learn here will become part of their overall intellectual assets and will also complement their Mathematical ability at school. At the end of the course, the student should have the competencies to enable them to proceed into even more relevant topics like games, robotics and IT.

We start this course every first Saturday of every even – numbered month.