Computer Programming

Standard Grade Programming - PHP

This is assessed internally (by the class teacher) through practical programming work. Most pupils learn the popular PHP programming language using the text 'PHP Coding with the Penguin' written by C. McGinlay.

All pupils will attempt at least two assessed programming exercises in third year, with the option to complete a larger programming project in fourth year.

Beyong SG with PHP

Those pupils who reach credit level and wish to go further can look at additional features of the PHP language and the way it is used in industry and academia.

  • Object Oriented Programming
  • MySQL database connections (to existing databases provided by teacher)
  • PHP and HTML to create dynamic web-pages
  • Using PHP-GTK2 to create and explore simple Graphical User Interface programs.

Other Language Resources and Ideas

If you are choosing computing and already have good knowledge of PHP (or another language) you may be given the option to begin to learn a second programming language such as C++. You will need to be able to demonstrate your competence first!

Either as an extension project or as a replacement for the main body of work on PHP, you might be interested in C++, Python or Java. If you are interested in learning about one of these languages, you should speak to Mr. McGinlay and have a look at some of the resources below. Note that this is intended for pupils wishing to go well beyond credit level.

  1. C++. This is typically a compiled language - we'll use the GCC compiler. For editing your source code, use Kate or Gedit. (Scite on Windows). You don't need to use an integrated development environment (IDE) at this level however, use KDevelop or Code::Blocks (or even Eclipse, although trickier to set up.) if you want to try an IDE. There are some good tutorials at http://www.cplusplus.com/doc/tutorial/
  2. BASH scripting. Powerful scripting tool but tricky to get to grips with. Lots of quirks. To get started all you need is a text editor such as Kate or Gedit. Personally I use the nano editor from the linux command line. This online book on the command line will be useful, although you will probably need some guidance from class teacher too.
  3. Python. As yet, no pupils have used this, but if you are interested then arrangements will be made.
  4. Is your favourite language missing? So long as it is a command line language, not closely linked to a graphical user interfance, and if the tools/interpreter/compiler are licenced under GPL (or similar), then it should be OK.