updated 01:10 pm EDT, Fri August 1, 2008
If you want to write a program for Mac OS X or the iPhone, you'll have to use Apple's Xcode tool. Since Xcode is designed for professional programmers to create complicated applications such as Microsoft Word and Adobe Photoshop, it's not easy for novice programmers to learn or master. If you just want the fun of learning to program without the steep learning curve, you may be interested in TileStack, which is currently in beta testing.
To simplify programming, this tool models itself after HyperCard, a revolutionary programming tool that was used to create the original Myst game. Like HyperCard, TileStack offers a simpler programming paradigm along with an English-like programming language.
This programming paradigm uses the visual concepts of stacks and tiles. A tile is simply a window where you can place objects such as buttons, check boxes, or text. Since most programs rely on displaying multiple windows, a typical program consists of one or more tiles, which represents a stack.
Thinking in terms of tiles and stacks can be more intuitive for novices because you can design a program's user interface visually without writing any code whatsoever. However, the real key for beginners is the tool's programming language called Speak.
Most programming languages, such as Objective-C, the primary programming language for Mac OS X and the iPhone, consists of cryptic symbols and commands that are easy to mistype and confusing to understand. A typical C command might look like this:
The Speak language more closely resembles English words, which makes writing programs easier and reading programs far simpler than traditional programming languages. A typical Speak command looks like this:
ask "What is your name" with "No Name"
Besides using English-like commands, Speak also includes more sophisticated commands that other programming tools lack. For example, modifying how many pixels the mouse pointer moves when dragging an item might take a dozen or more commands in a language like C. In Speak, you can define the speed of dragging the mouse by using a single command like this:
set dragSpeed to 120.
When you create a program using this tool, your application runs within a browser. Anyone with a compatible browser (Safari 3, Firefox 2, Internet Explorer 7. or Opera 9) on Windows, Linux, Mac OS X, or even an iPhone can run your program.
Perhaps the most curious feature of this tool is its ability to import and run old HyperCard stacks. Since Apple abandoned HyperCard several years ago with OS 9, this tool can give HyperCard stacks a new lease on life while allowing them to run on multiple operating systems at the same time.
If you're looking for a simple, fast, and fun way to write your own programs without learning a professional tool like Xcode, TileStack may be the tool for you. Although the beta version only creates web applications, the final release promises to create Mac OS X Dashboard widgets, Vista Gadgets, and even embed stacks on blogs and social websites like MySpace or FaceBook. Since TileStack will be free upon its final release, it can be a great introduction to programming on different platforms for both novices and experienced programmers alike.