In a recent FileMaker Pro development stress-relieving exercise, our FileMaker Pro developers were offered a simple challenge to create a Tic-Tac-Toe game using FileMaker Pro while following a few basic requirements:
- The Quality must be apparent in the user interface. It doesn’t have to look stunning…just clean, consistent, fun and professional.
- Creativity should be apparent behind the scenes. Step out of your normal routine and challenge yourself to use techniques demonstrating modern advancements in your development platform. Try to complete the task with as few fields, scripts, and table occurrences as possible, while still maintaining a structure that’s reasonably approachable by an average FileMaker developer.
- Games will be played by a single user against the computer. The computer can make the first move of each game, and must at least be smarter than choosing the next move by random selection of available spaces.
- Use of X and O is the norm, what fun can we have using other images?
This limited scope for such a well-known game could allow plenty of time for creative techniques, and would likely result in similar solutions…or so we thought!
Only three developers were up to the challenge; Andy Persons (Sr. Lead FileMaker Pro Developer), Doug West (Project Manager), and Ken Moorhead (Sr. Lead FileMaker Pro Developer). Each of these FileMaker Experts demonstrated not only different techniques in achieving the goal, but also significantly different interpretations of the requirements. Here’s an overview of the concepts you will discover in the accompanying files:
Andy: Minimalist’s Spin on a Classic
No fields, no custom functions, one layout (plus a bonus alternate view), and less than a dozen scripts are all it takes for what you would typically expect of a Tic-Tac-Toe game against a formidable opponent. In the first layout, merge variables are used to display the appropriate letter in each cell of the grid. In the alternate view, each cell of the grid contains separate tab panels with three tabs; “blank”, “x”, and “o”. The tabs are named in a consistent way that allows use of the Go to Object script step to toggle the view accordingly.
Doug: Winning’s Not an Option
No fields, no custom functions, one layout (plus an intro screen), and only one script make this a pretty lean package. This is achieved through script parameters, global variables, conditional formatting, and a strict interpretation of the requirements. The computer always starts by playing the top left corner before the user is given a turn. This simplifies the possible game states to allow a manageable list of known board configurations and the corresponding move to ensure the computer cannot lose. Graphics are stored on the layout as fill images in the background of text regions. Conditional formatting makes the unwanted images disappear when appropriate.
Ken: What the Client Hinted, But Didn’t Really Say
This thing has it all! Here you’ll find custom menus, 13 custom functions, a few tables, 30+ fields, and nearly 30 scripts. Ken’s experience has taught him that “when a client starts talking about user interface at all, they CARE, so be sure to give interface design adequate attention.” This inspired a variety of layouts allowing the game to be played from web browsers via Instant Web Publishing (IWP), on iPads and iPhones in FileMaker Go, and, of course, in the standard FileMaker Pro. With user-configurable options for the level of difficulty and the tokens used in place of the old-school X and O, there’s enough flexibility to please the whole family.
Our internal FileMaker Pro development contest guidelines specifically encouraged the use of “as few fields, scripts, and table occurrences as possible”. Files from Andy and Doug held this as a core principle. However, Ken’s file veered away from this guideline in favor of providing features typically expected in a marketable solution. Is there a right and a wrong? Do you include features in your FileMaker Pro development solutions that you’re confident users will want, even if they haven’t asked for them?
Sharpen your pencils, hone your skills, and give these files a try. After you’ve battled your way through each, tell us your favorite feature and weigh in with your guess on which submission won the in-house vote for grand prize. Download the files from our Tips-N-Trix Page.
We’ve assembled a team of brilliant developers creative problem solvers and consummate professionals, workhorses and web wizards, who work tirelessly to provide you with the best custom solutions to your data management needs. If you’re looking for spineless, Fritos-munching, Mountain-Dew-drinking, living-in-mommy’s-basement, tunnel-visioned order-takers, you won’t find them at Excelisys. We only hire the best.
And you should too.
Our team brings more than 200 years of combined experience in custom database development and management to bear on your solutions. In developer years, just like in dog years, that’s closer to 1,400 years. And 1,400 years ago the Byzantine Empire still existed. Think about it.
We’ve worked with everyone under the sun-from Adobe, the Ayn Rand Foundation, Chevron and Cisco Systems to the University of Chicago, Yoga Journal and Zenith Travel-and they all love us. We know you’re probably thinking, “Those are all huge companies with truckloads of money.” Don’t worry about that; from our perspective, no job is too small! In fact, size really doesn’t matter to us. And unlike most people who say it, we really mean it. Just ask Ted Cheeseman, CEO of Cheeseman’s Ecology Safaris, or Neil King, President of King Shots, Inc., or Todd Golebiewski, Manager of River View Campground & Canoe Livery. You can even call them. Just check our references section and you’ll find their numbers there.
We’ve received the most feedback and some of the highest scores on FindFileMakerDevelopers.com, the data management world’s Service Magic-esque client feedback interface. See what our clients are saying: http://filemakertoday.com/filemaker-integration/item/excelisys?category_id=20.
Call us geeks, but we love solving database management problems. Seriously. And our love for what we do shows in the solutions we provide to our clients. And our solutions make our clients love us back. In fact, we have a 95 percent client retention rate. They just keep coming back for more.Website: www.excelisys.com