Programming for Young Beginners

(Older beginners welcome also)

Learn to program! Today, everyone uses a computer. Most of us, though, are just using programs that have been created by someone else. To be a creator of software, and not just a consumer of it, means learning to program.

I offer tutoring services in computer programming in the Sydney area for children. Ages 10+. (If a child younger than 10 is very motivated, feel free to contact me and we can talk about what's possible.)

Why they might be interested

Children typically have an immediate and powerful affinity for computers. Many imaginative children, seeing what is possible, begin to think of things they would like the computer to do, that it should be able to do, and yet which it presently does not do. They want to make it do things that they have imagined, for the same reason they want to draw their own pictures or write their own stories.

You may have heard stories of Bill Gates or Steve Wozniak teaching themselves to program at a very young age, with nothing but technical manuals to aid them. And it's true; for a tiny minority of people, all that's needed is a computer and a book. But most children will have a different experience of self-teaching; the books are too dry and the problems are too difficult. They need the help of a teacher to get over the substantial initial hurdles. But secondary schools typically offer little in the way of real programming instruction, and when you're 13, university seems a very long way off.

Why you might be interested

“Education is the best provision for old age”, said Aristotle, and in general terms this is certainly true. If you wanted to assure a person's financial future, you could hardly make a better choice than educating them in computer programming. It is a skill for which there is huge and growing market demand, and there is no reason to imagine that this will be any less the case in the future. Starting salaries in the IT world are approximately double the median wage in Australia, and for the experienced programmer there are few limits.

And yet the benefits are not just financial. Fundamentally, programming is the art of problem solving through logical thinking. The child who applies themselves to this art from an early age is liable to experience benefits flowing on through their other school work, and in the approach they take to other work, even if they never choose to work in IT for a living. If you despair at the time your child spends playing computer games, there's a real possibility to harness that enthusiasm and energy to the activity of making games, a genuinely creative and challenging discipline.

Who I am

I have been teaching in various contexts for 12 years. I have been a tutor and a lecturer at the University of New South Wales, a teacher of English as a second language, and done IT work on a variety of small scale projects. I am a patient, thoughtful, and adaptable teacher. I first began learning to program as a child, and I have developed this course of teaching partially as a response to the difficulties I experienced then.

How I Teach

I will begin my course of teaching with a conversation with the student about what they already understand, and what they want to learn to be able to do. I develop materials based on the level the student is already at and the pace they can best proceed at. I work more or less on the model of a music teacher; we work together during the lesson, and then I assign some practice problems for the student to work on alone before the next lesson. By breaking the large, difficult concepts that present such a hurdle to the child programmer into small, manageable pieces, I ensure that every student can make steady progress toward achieving their goal.


I charge $40 per half-hour lesson or $70 per one hour lesson. Length of lessons depends partly on your preference and partly on what the student is ready for. All lesson materials prepared by me in advance are included in this price. No textbooks are necessary, but if your child is eager to study more on their own, I can recommend what is most likely to be suitable.

I will travel to your home and teach there. I believe it is conducive to learning to be in a familiar, comfortable environment, so long as the normal distractions of home life can be kept away for the duration of the lesson. If you live in the Balmain, Rozelle, Drummoyne, Glebe, Newtown, Pyrmont, or Lilyfield area, I will not charge for travel. However, if you are in the Leichhardt, Five Dock, Haberfield, Petersham, or Surry Hills area, I will need to add a $15 surcharge to cover my travel time. Beyond those areas, it is unlikely I will be able to fit you into my schedule, but feel free to ask just in case something can be arranged.

Because the work involves me travelling, advance warning of cancellations are very important. Please give me at least 24 hours notice of any cancellation of a lesson. If you give less than 24 hours notice, I will charge a cancellation fee of one-half the normal cost of the lesson, payable at the next lesson. If you give less than one hour's notice, I will charge a cancellation fee of the full cost of the lesson. I am understanding about the sometimes chaotic nature of family life, but in the event of a pattern of frequent late cancellation developing, it may not be feasible for me to maintain the relationship. If you want to give the lessons a “rest”, with the option of returning to them later, I am always happy to discuss this.

I am happy to give the first three lessons on a trial, pay-per-lesson basis. Once you are satisfied that I am doing an excellent job, I prefer to be paid in advance for blocks of 5 lessons. If this is inconvenient for you, I am very happy to discuss alternatives.


Most lessons take place after school, during the week. Weekend lessons are also possible. I will do my best to find a slot that is mutually workable.


My email address is If you'd prefer to talk on the phone, send me an email with your phone number and a time (in the evening) and I will give you a call.