Friday, 18 November 2011

Programming for learning mathematics: Project Euler

Last week I went to two events where the subject of programming came-up, and specifically how useful a tool it is for the learning of mathematics.  Essentially to be able to program a computer to perform a process you need to understand it first and also the process of thinking about how you would construct a program can help you to understand an idea.

Project Euler
At both events Project Euler was mentioned as a great resource/community to encourage people to learn maths through programming.  Michael Borcherds (twitter.com/mike_geogebra) suggested that I might be interested in it at the Computer Based Math summit: www.computerbasedmath.org/.  Then a couple of days later Matt Parker (twitter.com/standupmaths) promoted it at MathsJam: mathsjam.com/.

Project Euler (projecteuler.net/)  is a series of  mathematical/computer programming problems that require some mathematical insight and a little bit of programming knowledge to solve.  However, an understanding of a FOR … NEXT loop and an IF … THEN statement should be enough to get going.  The website is structured so that you aren’t restricted to any particular programming language – you just enter your numerical answer generated by your program and it checks the answer.  It also features a list of the problems you’ve solved and (once you’ve solved a problem) lets you see the forum for that problem.

Programming on the TI-Nspire
I tried the first problem on the TI-Nspire.  The Nspire has TI Basic built into it and is pretty easy to get going on.

One additional advantage is that it has all the mathematical functions built-in and easy to access which is especially useful if you’re using the CAS version.

Python
I tried the second problem using Python.  Python is an open-source programming language that is popular because it is also easy to read.

I downloaded Python from python.org/ and then installed the Ninja IDE front-end from ninja-ide.org/ (and then pointed it at where I’d installed Python).  Ninja is a lot easier to use than the command-line version of Python. 

Programming for learning maths
As generalisation is often the aim in mathematics programming is an excellent tool for learning the subject.  When programming is viewed as explaining a generalisation to a computer it is easy to see why it is so powerful.

Thursday, 3 November 2011

Using an Interactive Whiteboard (IWB) effectively for teaching Maths

Many mathematics classrooms are installed with interactive whiteboards (IWBs); but I often get asked by teachers how they can use them to their full potential.  There is a lot more that can be done with an IWB other than displaying a static demonstration.  The Ofsted report of 2008 highlighted that the full potential of IWBs is not being capitalised on in Maths lessons: “... too often teachers used (IWBs) simply for PowerPoint presentations with no interaction by the pupils.” (see http://www.ofsted.gov.uk/node/2255).  I discussed some of the problems with PowerPoint in my previous post: “What’s wrong with PowerPoint for Teaching Maths”.  In spite of this there are some features of IWBs that make the particularly useful for teaching maths relating to the immediacy of dynamic software.

The immediacy of dynamic software 
When using an IWB the projector is (almost) always on therefore it is easy to use a piece of mathematical software for a small component of a larger lesson.  This is especially useful when there is an object that can be dragged where it is on the screen (as opposed dragging it using a mouse which his hidden from the students’ views).

In comparison in the days before IWBs, when there were only a couple of projectors in the college I was teaching in, I found that if I signed the projector out for a lesson I had a tendency to overuse it – what could have been a very effective 5 minute explanation using some dynamic software turned into a longer and less-effective part of the lesson.

There are many pieces of dynamic software that can be used with an IWB but two that I find particularly effective are Autograph and TI-Nspire.

Autograph
Autograph has an IWB mode that can be enabled from the top menu (shown in the red square in the image below).  This implements a few very useful features:
  • On-screen keyboard (this is a very useful keyboard with built-in mathematical characters that works in other applications)
  • Multiple select without shift
  • The scribble tool: this allows you to make annotations that remain when the software is changed
  • Thicker lines

A single side of A4 with useful IWB tools can be found at: http://mei.org.uk/files/ict/autograph_tools.pdf.  This can be printed and stuck to the wall next to your IWB.

TI-Nspire
Nspire is a fantastic bit of software that I’ve also blogged about previously: “TI-Nspire 3.0”.  One particularly useful feature when using it on a IWB is the Keypad in the Documents Toolbox panel.  This displays an Nspire handheld keypad on the screen which can be used to fully operate the software.  This means that the software can be used without leaving the front of the class and, perhaps more importantly, the students can follow the steps on handhelds.  This is a very easy way to encourage student use of ICT.


Developing your IWB use
Subject-specific IWB professional development is not always easy to find so most teachers will develop their skills through using one.  The process of learning to use an IWB is an important one and it is likely that in the first instance teachers are going to want to use it in the same was as a traditional whiteboard.  This is not something to feel guilty about; however, it is useful when do this to consider how skills can be developed so that over time it is being used to its full potential.