Depending on whether you count sales of Microsoft's Access product bundled in the Office package, FileMaker Pro has long been the number one choice in the stand-alone database market with a marketshare greater than 90% on the Mac OS platform and around 40% on the Windows platform.
The biggest advantage that FileMaker Pro has is that it is ridiculously easy to learn and deploy on a network with Mac and Windows clients. With a simple scripting language, easy to use layout editing and a one table per file concept, you can literally be up and running in minutes with a simple database for your workgroup or company. With the exception of field definitions, which can only be changed when one user is accessing the file, everything else can be changed on the fly with straight forward drag and drop editing. Even for more advanced solutions involving tens of interrelated tables, hundreds of layouts and complex scripts, the program is still a star. With its external plug-in API and XML support, it is perfectly possible to run a medium sized enterprise on nothing but FileMaker Pro. Here at Cookie Time, FileMaker Pro practically is our information system with tables managing information on everything from payroll to purchase orders.
While there were a handful of notable features in the upgrade to the version 6 release last year, the real banner feature was the XML importing and exporting. While it is a great feature that opens up FileMaker to integration with a host of third-party software, the lack of documentation and tools for dealing with it has been frustrating.
As an XML and XSLT novice, I had hoped that the software would ship with some sort of tool to generate the XSLT or sufficient documentation to get me started. Unfortunately, the documentation pretty much consisted of the document type definitions for the XML generated by FileMaker Pro and half a dozen essentially uncommented XSLT stylesheets to demonstrate some of the possibilities. FileMaker Pro's own XML Central website has plenty of whitepapers and links to external resources, but nothing really substantive that can get you started.
Fortunately, we have the internet and I was able to locate a couple of great XLST tutorials that really helped me. Still, it is disappointing that they went to all the trouble of implementing this feature and then didn't expend more than what could only have been an hour, at best, documenting it.
Probably the biggest annoyance, though, is the length of time it takes FileMaker to rectify bugs within its product. Earlier this year, FileMaker finally acknowledged that there was a non-zero chance that its server product for Mac OS X could damage beyond repair files it had open when it was shutdown. I have personally experienced this bug on more than one occasion, and it was not a pleasant experience any of those times. The only way to avoid it is to close all of the files before quitting the server process, but it is all too easy to forget this when in a rush to shutdown a machine.
Another issue is the fact that unlike other database products, most of the functionality in FileMaker is implemented in the client. This includes searching, web serving and security. While searches are annoying because your network gets flooded with traffic and web serving requires yet another computer, the lack of security is the most worrying.
Essentially, if you can compromise the stand-alone version of FileMaker Pro, then you can have full unrestricted access to any database served on the network. The only solution from FileMaker: don't share your databases.
And while you are at it you might as well turn off your computer and grab a spiral bound notebook for your data needs.
According to the rumour sites, FileMaker Pro 7 is going to be a serious upgrade that should fix these problems with a complete reimplementation of the server product to give it SQL like functionality. If true, this will be a serious upgrade that would really put it two steps ahead of competitors. It certainly will be very worthwhile keeping an eye on this year's developer convention in August.
While the future for the product looks assured, it is a bit disappointing that it also looks like a paid upgrade will be the only way to fix these issues for good.