PP4S Home Page

Welcome to the PP4S Website!

The aim of the website is to provide valuable, but free, resources to help promote Pascal programming in schools by sharing ideas, knowledge and experience. We welcome contributions and feedback on the site. Please let us know what you think.

We advise beginners to:
  1. follow the instructions on Getting Started with Lazarus or our section on Getting Started with Delphi;
  2. start to work through the first few tutorials in the order shown in the left panel of the tutorial contents page;
  3. look at the student programs, starting with the more straightforward ones at the beginning of the table and also the first few using the Crt unit.
Note: We encourage confident Pascal programmers to write applications, applets and Android apps in Oxygene for Java with the help of our tutorial and to use Smart Mobile Studio (SMS) to develop applications for web pages.

Newest! This paragraph outlines a few changes made recently. Version 2 of George's online RandomPlatformScroller is attracting a lot of interest so we have added a section describing and linking to feedback. James has set up a web server and website on a Raspberry Pi and has successfully implemented methods for remote control. The website includes online games that students at his school have developed using Smart Mobile Studio. We have added to our introduction to James's programs links to his guidance on the use of the Raspberry Pi. Lastly, we have updated Acknowledgements and Links.

New! George was encouraged by the feedback we received to his RandomPlatformScroller and he has incorporated several of your suggestions in Version 2. Major new features include buttons that allow you to play the game on a mobile device, climbable platforms and turrets that shoot at you when you are not blocked from the path of their bullets.

New! We add to our Smart Mobile Studio tutorial guidance on getting started with WebGL to produce 3D motion graphics. We provide introductory examples of the GLSL shader language and gradually introduce several new concepts. This topic should attract talented and ambitious programmers who are willing to extend their expertise to challenging areas. We have also extended the Smart Mobile Studio General Index and the Index of Smart Routines to include links to recently added programs and tutorial sections.

The following four paragraphs summarise additions made in the preceding update.

We have been looking forward to publishing the first version of RandomPlatformScroller by George. Under supervision by Alex Karet and with valuable input from Steven Binns, this is our most collaborative contribution. It is an example of what can be achieved by a talented Year 9 student when given professional software to use free of charge both at school and at home.

Josh's SpaceInvaders has many advanced features in its code. Prevent a fatal collision with oncoming invaders by moving and by shooting them to clear your path. You should find it easy to tailor the game to suit your ability.

Felix Thompson adds BallTrajectory to his collection of educational short programs. He applies gravity, friction and restitution to the ball to give it a realistic trajectory. You will probably be tempted to refresh repeatedly to see different trajectories.

We add to our tutorial C# after Pascal a table giving links to more than thirty short Oxygene programs and their RemObjects C# equivalents. The table includes examples of language features that the demonstrations cover.

Site Statistics March 2014

The site contains among its 779 pages in the site map:

  • 344 pages of tutorial material for Pascal, 85 for Oxygene for Java and 22 for Smart Mobile Studio (SMS);
  • 74 student programs spread over 255 pages;
  • 22 SMS programs running on our web pages;
  • 52 pages of resources such as the Getting Started series;
  • 30 pages of challenges such as suggestions for programs, programs to complete and programs to debug;
  • A Pascal general index with 291 terms linked to relevant pages
  • A Pascal index of routines with links to examples of the use of 285 procedures/functions;
  • An Oxygene for Java general index with 149 terms linked to relevant pages;
  • An Oxygene for Java routine index with links to examples of the use of 193 methods.
On March 23, the top ten user countries and their percentages of visits over the previous 30 days were reported by Google Analytics to be: United Kingdom (15.20%), United States (9.67%), Germany (5.60%), Brazil (5.05%), India (4.66%), Netherlands (3.48%), France (3.10%), Indonesia (2.97%), Italy (2.95%) and Russia (2.88%).

During the same period the ten most frequently visited tutorial/resource pages were reported to be:

  1. ARM Assembler
  2. Writing your First Pascal Program using Lazarus
  3. Using a DBGrid in Lazarus
  4. Creating and Using Stored Procedures
  5. Using a String Grid
  6. Getting Started with Pascal on the Pi
  7. Common Error Checklists
  8. Using ClientDataSets in Delphi
  9. Delphi Canvas Demonstration
  10. Using a DBGrid in Delphi

The top ten most viewed pages of student programs were reported to be:

  1. Pascal Pokemon Code for Windows
  2. PascalPokemon
  3. MaxCircles
  4. ChristmasProg
  5. RockPaperScissors
  6. Battleships
  7. Morse Code
  8. SUVAT
  9. DelphiManager
  10. BigFibonacci
Programming - a skill for life!

Introducing Pascal Programming for Schools