AlphaBaby

Version 1.4, March, 2004

What is it?

My kids love to play with the computer. Unfortunately, they also have the habit of renaming my hard drive to "axlfkaj". So, I wrote AlphaBaby so they could safely use the Mac without inflicting too much damage! AlphaBaby lets even infants and toddlers have fun playing with the computer. Every time a key is pressed or the mouse is clicked, a letter or shape is drawn. Sounds can be played every time something is drawn. Your own sounds and pictures can also be used. AlphaBaby helps kids to learn letters, plus provides a safe environment for kids to have fun "typing" on the keyboard!

Requirements and Installation

AlphaBaby requires Mac OS X (10.1 or higher). It was built and tested on Mac OS X 10.2.6 and Mac OS X 10.3.3. Drag the AlphaBaby application to your Applications folder (for example) to install. Just delete the application to uninstall. A preferences file is created in ~/Library/Preferences/com.alphababy.plist. You can delete this file to reset the preferences, or when uninstalling. To install the screensaver version of AlphaBaby, first make sure the folder ~/Library/Screen Savers exists. You may need to create it first. Then, drag the AlphaBabySaver.saver file to your ~/Library/Screen Savers directory. Then, use the Screen Saver (or Screen Effects) module in System Preferences to select AlphaBabySaver as your screen saver.

How to play

The most important thing to know about AlphaBaby is how to exit from it. The standard command-Q is disabled to prevent accidental quitting. Instead, you must use the following key combination:

control-option-command-Q
⌃⌥⌘Q

If command-Q is typed, a message appears on the screen displaying key combinations for quitting or changing preferences. An alternate way to quit out of AlphaBaby is to type the word "quit" somewhat quickly (2 seconds from the time the q is typed until the t is typed). If you are running the screen saver version of AlphaBaby, the only way to exit is to type "quit". If you have turned on the option to require a password to unlock the screen saver, the password dialog will only come up once you have first "quit" out of AlphaBaby. If you do not require a password, typing "quit" will unlock the screen immediately.

When a letter or number key is pressed, that letter or number is drawn on the screen in a random color and position. If any other key is pressed, a random shape is drawn instead. If the mouse is clicked, a random shape is drawn where the click occurred. If the mouse is click-dragged, a line of stars will be drawn. Nothing is drawn if the mouse is just moved. Each time a letter or shape is drawn, a random sound is played. You can also have AlphaBaby speak the names of both letters and shapes as they are drawn.

You can customize AlphaBaby by specifying your own folders of images and sounds. Images are randomly displayed when non-letter keys are pressed, or the mouse is clicked. Your own folder of sounds can be used instead of the default set of system sounds. My kids enjoy hearing their own voices when hitting the keys, so you may want to record some of your own sounds. Setting the images folder to one containing digital pictures of the kids is also fun. The speech capabilities of the Mac can also be used to speak the names of letters, or the names of images displayed. You can also match your own sounds to your own pictures, to provide a customized environment. One set of options that my beta testers (i.e. kids) particularly liked was loading a folder of digital pictures of themselves, turning on the Speak Images option (each image was named to describe the picture), and turning on the "Only Images" and "Map Images to Keys" options. They enjoyed hearing the computer "talk" and being able to display a certain picture by hitting the same key over again. See below for more information on these options.

AlphaBaby will, by default, clear the screen after 30 items are drawn. You can change this value in the Preferences panel. However, if you would like to clear the screen at any time, the following key combination can be used:

shift-command-C
⇧⌘C

AlphaBaby tries to trap most key combinations, so that it is difficult for kids to switch out of it and start typing into other programs. However, the volume keys still work, the keyboard eject button (if you have one) works, and the display brightness buttons work.

Preferences

If you want to customize AlphaBaby, the following key sequence brings up the Preferences panel:

control-option-command-P
⌃⌥⌘P

If you are running the screen saver, this key sequence is disabled. Instead, set the AlphaBabySaver options using the "Options" button in the System Preferences Screen Saver window. This brings up the same Preferences window described below. Pressing "Cancel" in this dialog box ignores any changes that were made. Pressing "Done" saves the changes, for this and future sessions of AlphaBaby. Clicking outside of the Preferences panel also saves the changes.

The following options can be set:

General Tab


  • Clear the screen after a certain number of items have been drawn. If you never want the items cleared, select the "Never clear screen" radio button. The default value clears the screen after 30 items.
  • If "Only capital letters" is selected, then any letter keys typed will be converted to uppercase, regardless of the state of the caps lock key.
  • The Font field displays the current font used to display characters. The default font is Arial-Black. The default size depends on the resolution of the screen. It is larger for higher resolution screens. The "Select" button allows you to use a standard font picker to change the font used. In general, a thick, large font is the most readable. The "Reset" button sets the font back to the default typeface and size.
  • The mode popup list gives you different ways to display letters on the main AlphaBaby screen. They are:
  • The "⌃⌥⌘Q will quit" checkbox enables the ⌃⌥⌘Q key combination. If disabled, that combination will not quit out of AlphaBaby. Whether or not that item is selected, typing "quit" will always quit out of AlphaBaby.

    Images Tab

    Sound Tab

    Pressing "Cancel" in this dialog box ignores any changes that were made. Pressing "Done" saves the changes, for this and future sessions of AlphaBaby. Clicking outside of the Preferences panel also saves the changes.

    Using the Screen Saver

    A screen saver version of AlphaBaby is included in this release. It functions almost identically to the application version. To install the screen saver, first make sure you have a folder named "Screen Savers" in your home Library directory (i.e. ~/Library/Screen Savers). Create this folder if it does not exist. Next, copy the AlphaBabySaver.saver file from the disk image to the Screen Savers folder. Launch System Preferences, and select the Screen Savers (or Screen Effects) panel. AlphaBabySaver can be chosen from the list of displayed screen savers. Use the "Options" button to bring up the Preferences panel for AlphaBaby. Preferences for the screen saver can only be set through the System Preferences screen, not while the screen saver is actually running.

    When AlphaBabySaver first starts up, it will pause with no activity for 30 seconds. The background color is set to black instead of white. After 30 seconds, a character or shape will be drawn every second. Even if sound is enabled in the AlphaBaby options, no sound will be displayed for automatically displayed characters. If a user presses a key or clicks the mouse, the automatic display will stop, and user input will be used. Once there is no user activity for 30 seconds, the automatic display resumes. Type "quit" to exit from the screen saver. If a password is required to unlock the screen saver, the password screen will come up once you type "quit".

    The screen saver is an initial release, and many things about its behavior cannot currently be configured. This will be addressed in a future release.

    Source and Donations

    As of the 1.4 release, the source code for AlphaBaby is being released under the GNU General Public License. Any questions, comments, bugfixes, or enhancements to the code can be sent to alphababy.mac@gmail.com . The source code can be downloaded from the main AlphaBaby web site. It is an XCode project provided as a compressed tar file. AlphaBaby is written in Objective-C, using the Mac OS X Cocoa frameworks.

    I've really enjoyed the feedback I've received from users, and reading stories of how toddlers are using the program. Some users have even been nice enough to ask if there was a way to support AlphaBaby. I have made donations to AlphaBaby possible through a store on Kagi. A link to Kagi is also on the AlphaBaby web site. Although AlphaBaby will continue to be free, you can support ongoing development with a donation through Kagi. The Kagi web site is set up to accept multiples of $5 or $10 donations. Any donations are certainly appreciated!

    Purchase from Kagi

    Contact and Feedback

    New ideas are always welcome! Please send feedback, feature requests, and bug reports to:

    alphababy.mac@gmail.com

    I'm probably starting the approach the limit of the number of features that can be added to a simple hit-the-keyboard application. If you'd like to see any additional features for AlphaBaby, or have other ideas for programs for the infant-to-4 age group, let me know!

    Check for new versions at:

    http://alphababy.sourceforge.net

    AlphaBaby is made freely available for use and distribution. Copyrights are retained by the author.

    History

    Version 1.4, March, 2004 - Added new shapes (triangle, moon, star, hexagon, pentagon, octagon). Made ovals and rectangles distinct from circles and squares. Screensaver is now included. New typing mode. Source code available.

    Version 1.3, January, 2004 - Added new way to quit, different modes of operation, and fixed sound-related crash on Panther.

    Version 1.2, August, 2003 - Added option to speak images, match sounds to images, display only images, and map images to keys. Can change ratio of shapes to images displayed. New preferences panel design. Added diamond and heart shapes.

    Version 1.1, June 29, 2003 - Multiple monitors support. Command-tab now trapped. Added option to speak letters and shapes. Added option to manually clear the screen.

    Version 1.0, June 2003 - The first public release of AlphaBaby

    © 2003, 2004 Laura Dickey