Or search by topic
This series introduces Logo programming for beginners. These 12 challenges are written for you to work through at your own pace.
You don't need to know anything about programming at the start: you will learn enough at the first stage to write your own programs, and you may surprise yourself by how much you can achieve right away.
Windows users can download a free copy of FMSlogo.
A good free version for Mac users is ACSlogo.
There's a version you can run directly in your browser at http://calormen.com/logo/.
A Short introduction to using Logo. This is the first in a twelve part series.
This is the second in a twelve part introduction to Logo for beginners. In this part you learn to draw polygons.
More Logo for beginners. Now learn more about the REPEAT command.
Learn how to draw circles using Logo. Wait a minute! Are they really circles? If not what are they?
Learn about Pen Up and Pen Down in Logo
Learn to write procedures and build them into Logo programs. Learn to use variables.
More Logo for beginners. Learn to calculate exterior angles and draw regular polygons using procedures and variables.
Write a Logo program, putting in variables, and see the effect when you change the variables.
Turn through bigger angles and draw stars with Logo.
What happens when a procedure calls itself?
This part introduces the use of Logo for number work. Learn how to use Logo to generate sequences of numbers.
Can you puzzle out what sequences these Logo programs will give? Then write your own Logo programs to generate sequences.
Unfortunately logo is really the name of a family of languages, rather than one single standard language. You can't expect programs written for one logo to run unchanged in another implementation.
Once you have picked up a taste for programming, try moving on to other more useful languages. We'd recommend Processing (java) or Nodebox (python) for graphics, or the excellent Eloquent Javascript text as an introduction to web programming.
For general purpose mathematical programming, try python or ruby. Both these languages can handle integer arithmetic without introducing rounding errors, and there are plenty of free web resources to get you started.