FileMaker 16’s Invisible Brilliance
The just-released FileMaker 16 is the most significant update to the database platform in at least a decade, and yet most of the improvements have little to do with the company’s marquee products: FileMaker Go and FileMaker Pro. They are, respectively, the mobile and desktop clients used to run FileMaker databases. Yes, the company has enhanced each in a few welcome ways, but the big news in this release is in technologies that are invisible to end users: FileMaker Server, WebDirect, and beyond.
So Long, Pro. Hello, WebDirect! — First, a bit of disclosure: I’m a certified FileMaker developer and a paying member of the FileMaker Business Alliance. However, I am not an employee of FileMaker Inc. — I’m an independent developer who works only for my clients.
One of the best things about FileMaker 16 is that I can upgrade my users without them realizing it at all. At least, they won’t need to install a new version of FileMaker Pro. I’m simply sending them a URL and moving them all to the Web, thanks to WebDirect.
FileMaker’s WebDirect technology has been around for several years now. It was good but not great when it first appeared, but now it’s approaching what I might call “usability parity” with FileMaker Pro. WebDirect is a technology that translates a normal FileMaker database file into an HTML5 Web page that users can view and interact with in a Web browser.
An app presented via WebDirect looks almost exactly as it would when viewed in FileMaker Pro. Most of my clients don’t notice the difference, except that getting to their FileMaker app is now just a matter of loading a Web page. Because of WebDirect, your Web browser may turn out to be the thin FileMaker client that many of us have been wanting for years.
But the current fourth-generation release of WebDirect doesn’t just present FileMaker apps more reliably than its predecessors, it also provides a solution to the problem of generating formatted reports in a browser. Earlier versions of WebDirect were pretty good at displaying and editing records, but they were lousy at generating reports. With FileMaker 16, WebDirect now supports printing through the browser and generating PDFs as well, and the output is identical to what you’d get using FileMaker Pro. You can even ask the server to create a PDF and send it to you or to a client as an email attachment. In the screenshot below, you can see my FileMaker-based scheduling app accessed via WebDirect on the left and the same app in
FileMaker Pro on the right.
An added benefit of these developments is that they work well on smartphones. FileMaker Go, the mobile client program for FileMaker databases, runs only in iOS. But WebDirect works on Android as well. In fact, it works in pretty much any modern browser regardless of the device’s operating system. I haven’t tried this, but a developer friend pointed out that there’s no reason a WebDirect FileMaker app wouldn’t now work well in Linux.
But WebDirect hasn’t entirely caught up to the native FileMaker clients. The user experience via FileMaker Pro or Go is still richer than the user experience in a Web browser. For example, some of my apps support keyboard shortcuts that don’t work in a Web browser. And WebDirect isn’t free. Client connections to the server through WebDirect cost the same as client connections initiated from FileMaker Pro.
Still, my sense is that WebDirect is the future of FileMaker deployment. And FileMaker Inc. seems to have big plans for WebDirect. One hint: FileMaker Server 16 allows five different machines to be linked so that up to 500 users can access a file through WebDirect at the same time.
While We’re Talking about Access… — FileMaker 16 supports OAuth, an open authentication protocol. OAuth support will make it possible for users to get into FileMaker solutions by logging into Amazon, Google, or Windows Azure. I expect other services to become available for authentication in the future — we can hope that Apple eventually supports OAuth more generally. OAuth will work both in WebDirect (i.e. in your browser) and in FileMaker Pro and Go.
Once the FileMaker server has been configured properly, and a user account has been set up to use OAuth, a user trying to access the app will be given the opportunity to log in with credentials from one of the accounts mentioned above.
I had mixed feelings about this feature at first. In “Take Control of Your Passwords,” Joe Kissell advises that you not link your accounts on the Internet, and I usually take Joe’s advice. But Google and its ilk are surely more on top of security threats than I am, and these other services offer two-step authentication, which is a very good thing that’s not available using FileMaker security tools alone.
To Infinity and Beyond — Authentication through Google is great, and WebDirect access to FileMaker databases is even better. But there are other technical improvements in FileMaker 16 that are even more far-reaching. These new “features” are not just inherently hard to talk about (because, well, they’re difficult), they’re hard for me to talk about, because they’re breaking news, and like most other developers, I have only just started learning how to take advantage of them. But I’ll try to explain why these changes seem so promising.
In the past, FileMaker has relied on older data-exchange technologies like ODBC/JDBC to share data with non-FileMaker databases. In recent years, the reach of FileMaker has been extended through expensive plug-ins. FileMaker now has explicit, native support for a variety of technologies used widely on today’s Internet to exchange and manipulate data, technologies such as cURL, JSON, and RESTful APIs, including the new FileMaker Data API.
For some years, FileMaker has been able to send a request out to a resource on the Internet, get back some data, and copy that result into a field. That worked great for simple queries, say, grabbing a picture or looking up the city and state corresponding to a ZIP code. The addition of support for cURL URL-formatting functions in FileMaker 16 will enable developers to generate much more complex queries (for example, passing parameters to a remote page) and will also allow these queries to be passed more securely because the cURL parameters will be encrypted in transit.
I also expect that FileMaker 16’s support for JSON (JavaScript Object Notation) will improve the way advanced FileMaker developers work. A lot of the Web now uses the language-independent JSON data format for sharing of data, so being able to access and manipulate JSON in FileMaker will enable effective sharing of data with a huge variety of external, non-FileMaker sites. And even if you aren’t interacting with a remote site, JSON’s data manipulation functions extend FileMaker’s capabilities considerably.
Equally important — but even harder to appreciate at the moment — is the new FileMaker Data API (application programming interface). With FileMaker 16, it’s not just possible for a FileMaker app to connect to other services, it’s also possible for other services to connect to FileMaker. Until late in 2018, FileMaker Inc. considers the FileMaker Data API to be a trial feature. But I think it will eventually allow even simple Web sites to pull data from FileMaker databases and display it dynamically, without requiring PHP scripting.
FileMaker has long been a capable applications development platform and will no doubt be used to solve many business problems without the use of cURL, JSON, or the new FileMaker Data API. But developers who make an effort to learn these new technologies will find that they can now do things with FileMaker that they hardly dreamed of doing in the past.
Windows and windows — Of course, as with every release of a complex product, there are lots of new features. I’m skipping over almost everything that will matter only to developers (like the lists of new functions, changes in the way the Script Editor works, and so on). You can get the full scoop on what’s new in FileMaker 16 from FileMaker’s Web site.
But I do want to mention two improvements that, while not earth-shattering, are nevertheless welcome.
First, FileMaker Pro 16 on Windows 10 now supports SDI, the single-document interface model for windowing. FileMaker windows, now liberated from the application frame, stand on their own, pretty much the way they do on Macs. Actually — and I speak here as a dyed-in-the-wool Mac user — I almost prefer the way my apps look in Windows 10 because I can remove the application menu bar. These windows are cleaner and more modern in look and behavior.
Also cleaner and more modern is FileMaker’s new “card-style” window. A card window lacks a window frame or menu bar and can be configured to dim the window behind it. Some uses of card windows may just provide a more attractive look to things we could do before, but card windows also provide other rather nifty UI options like tying two windows together. I predict that card windows will be popular with FileMaker developers and users alike.
Bottom Line — In the 1980s and early 1990s, FileMaker Pro made a reputation for itself as a consumer-friendly, easy-to-use database. Whether or not that was accurate back then is arguable, but it hasn’t been targeted at end users for a long time. I sometimes compare FileMaker to the guitar. It’s easy to learn to “play the guitar” if all you want to play is “Louie, Louie.” On the other hand, if you want to play Sergio Assad’s Toccata (check out David Russell’s version), well, the guitar isn’t easy at all.
That’s how it is with FileMaker. Sure, you can crank up FileMaker Pro and create a simple one-user Christmas list. But creating a Christmas list in FileMaker is like using a New Holland Haybine with a 7-foot cutting width to mow the patch of grass in front of your apartment.
If a simple single-user database is all you want, you’d be better off using something like Knack or Airtable. With Airtable you can create a database on your smartphone and in minutes share it with other users. For users with limited needs, Airtable is basically free. With FileMaker, as we’ll see, not so much.
But if you need to both store and manipulate data, provide a flexible and creative user experience for your users, or have involved security and reporting requirements, you’ve gone beyond building a database to building an application. And while it takes some effort to see it, this is where the FileMaker 16 platform shines.
Pricing — How much does all this goodness cost? It’s a simple question, but there isn’t a simple answer.
With FileMaker 16, costs will vary roughly between $5 and $15 per user per month. There are at least half a dozen programs through which FileMaker can be purchased and whether your company’s monthly cost per user is closer to $5 or to $15 depends on many factors, including the number of licenses needed. And there are special programs available for educational users and non-profit organizations.
Moreover, pricing depends on your deployment scenario: Does your company want to keep up with upgrades as they happen, which is what I recommend, or buy fixed-price perpetual licenses and use them forever? Will users access the solution only on desktop computers using FileMaker Pro or will they also connect from their smartphones or in their Web browsers? Does your company want to host its databases internally or would it prefer to host in the cloud?
Note that a couple of the best purchasing options are not available through FileMaker’s online store, so your best bet is to call FileMaker for guidance or talk to your FileMaker developer.
As I noted, FileMaker is truly a database application development platform now, not an end-user database. With FileMaker 16, although the main FileMaker desktop and mobile apps haven’t changed all that significantly, FileMaker’s focus on WebDirect, support for OAuth, and integration of technologies that open it up to the Internet make it a compelling upgrade for many scenarios.
I'd like to hear more about how you view the option to log in from Amazon, Google, Microsoft, and perhaps others. While I can see the convenience, Mr. Porter's statement, that Google et al are more on top of security than he is, seems to sidestep the major issues. My concerns include 1) the fact that creating "fake" accounts on the big services is a significant professional and amateur pass time, 2) that I inherit all the vulnerabilities of Amazon plus Google plus Microsoft, so that even though problems are rare and quickly handled, I am multiplying the vectors by which my security can be attacked, and 3) unauthorized access to a login and password at any of these sites, through any kind of security failure, immediately gives identical access to my database, when I allow the use of the same login and password.
I'm unclear on how I would deal with these concerns, if I were to allow logins via Amazon, Google, and Microsoft credentials.
Derek, these are VERY GOOD AND VALID CONCERNS. I share them. But I'm getting more comfortable with OAuth.
Security is always a compromise. If I gave users passwords as long and hard as I'd like to, they'd stop using the database or fire me and hire a less troublesome developer. I know many of my users write their passwords on sticky notes and display them on their computers. And I know also that users share the logins I give them because sometime that's easy and they don't realize how bad it is. I suspect that they'll be less likely to share their login if they have a Google account (say), because they realize they're sharing their whole Google presence with somebody.
For the work I do personally, I'm most worried about improper or unauthorized access from somebody who is known to the owners of the data (say, an ex-employee). I'm not worried (much) about hackers in the Crimea. If a user leaves the company, the company's admin (who manages the Google domains account) can remove that employee immediately without having to contact me. That's a plus.
I am asking that users authenticating through Google have two-step authentication in place. I can't verify that, alas. But if they do as I ask, that's a big help and can't really be done in FileMaker yet.
Authenticating through Google (or Microsoft, or Amazon) means users have one less password to know, remember and/or manage.
In the end, unless we make our solutions really onerous to get into, there are vulnerabilities. By making sure that backups are made regularly and downloaded to an external location, we have an insurance policy to fall back on if something bad happens.
Keep in mind that you don't offer authentication through Google, Microsoft "and" Amazon. It's one or the other for each individual user (or perhaps just one -- say, Google -- for an entire office). I'm not using Amazon yet.
And I'm not giving up on FileMaker's native authentication yet. My own access is mostly through FileMaker, and I have passwords so long and strong that my developer friends laugh at me. I'm paranoid too. But I'm trying to deal with it.
I am in the parlous situation of being a very long time Filemaker programmer and user. But now I just have Filemaker databases for my personal use.
The new web based features, etc of Filemaker are of little interest or use for me as well as the expense of running new Filemaker is too much for my personal uses.
But I can't find a suitable replacement for Filemaker. Many of my personal databases are multidimensional in structure and use scripts, etc (because I can do the programming). The suggested database software such as Airtable seem underpowered using simple table approach. It is also difficult to work out if they can successfully convert Filemaker databases.
I am stuck with an old version of Filemaker and hope it continues to work with new versions of macOS.
Michel, I bet there are lots of people in your situation. FileMaker has been popular for a very long time. I did some research while writing the article and one tech research site estimates that as of June 2017 FileMaker is the THIRTEENTH most widely used database platform in the world, in a sample of over 300 apps and platforms.
Not trying to sell Airtable! It can handle some interesting relational projects but I use it mainly for fairly simple things where I don't care about much of a UI. There are plenty of other FileMaker alternatives out there though: Knack, Caspio, Xojo, Servoy. Knack has very nice balance of power and simplicity.
I don't take advantage of all of FileMaker's features myself. If I quit my job as a developer tomorrow, I'd probably continue to use it for my own stuff: it's what I know. If you're happy with FileMaker, absolutely no reason not to stick with it! Whether you need to upgrade, I can't say. I would, for card windows and SDI in Winidows 10.
Good luck.
I have a question about this paragraph:
"Equally important — but even harder to appreciate at the moment — is the new FileMaker Data API (application programming interface). With FileMaker 16, it’s not just possible for a FileMaker app to connect to other services, it’s also possible for other services to connect to FileMaker. Until late in 2018, FileMaker Inc. considers the FileMaker Data API to be a trial feature. But I think it will eventually allow even simple Web sites to pull data from FileMaker databases and display it dynamically, without requiring PHP scripting."
We've been using the FileMaker API for over a year now with FM 14 server, sending and receiving data, to and from our external non-FileMaker server. What is different about that and what you mention in your article?
Thanks.
Doug, there are APIs and then there are APIs.
I was building websites way back in 2000 that pulled data out of backend FileMaker databases using Lasso! In the intervening decade and a half I've helped build sites with PHP. I've used FileMaker's other web technologies too. The ability to pull data from FileMaker using SQL calls is another type of data exchange API that's been used very effectively by many of my colleagues.
But as I said in the article, the new Data API in FileMaker 16 is a *RESTful* API -- not what you're using with FileMaker Server 14, and not what I was using in the past. It's so new, it's not even completely "there": instead, we're getting a trial version of the API in 16 that will expire in fall 2018.
https://fmhelp.filemaker.com/docs/16/en/restapi/#fmdapi-architecture
Wim Decorte's Executive Summary about FileMaker 16 talks about the Data API and there are other sources of info both about FileMaker 16 and about RESTful APIs generally. I haven't used it yet, but with the new API, it should be possible to build dynamic websites pulling data from FileMaker 16 without using PHP and indeed, with a very minimal amount of programming.
Mixed feelings about all this. I built large, multi-user FM Pro applications back in the '90s. I loved it because of easy programming and especially ability to create well-designed reports, with fonts, page headers and everything!
Today I'm no longer gainfully employed (retired), but I build stuff for some groups with MySQL and PHP, and it's actually hard for me to understand why someone would invest the intellectual energy in FileMaker when other tools are far more widely used, have huge support communities, and can do just about anything. Why would someone invest dollars and brainpower in FM now instead of a LAMP environment?
The reason we did is because my client runs a large, popular social network for educators. There is the social network, and there are also webinars, and then there are communities, and member records, and special clients, and contacts, and different roles, and different markets, etc., etc., etc..
We bring it all together from various source into FM and the client has a central place to analyze all the data, and generate reports, and create segmented lists of contacts for newsletters - and a bunch of other stuff.
I think it would have been incredibly complicated to do it in a LAMP environment.
In fact last year we tried with that and Zoho and couldn't get it done, and so we switched to FM for this. It really saved the day.
By the way, is there a way we can get email notifications from these discussions? I had to come back and refresh the page to see new comments.
If you're logged in, there's a Receive Comments Via Email checkbox at the top of the comment stream.
Hi Adam. It says I'm logged in as Doug Lerner. And in this reply box it say, "Your name Doug Lerner."
But above the comments I only see a link to "Receive comments via RSS".
Huh. I'm not sure what's going wrong for you. When I'm not logged in, I see only the "Receive comments via RSS" link. But when I'm logged in (with a non-admin account), I get a "Receive comments via email" checkbox right next to the RSS link.
Are you sure that you're logged in, via the Log In link under My Account in the left sidebar? If you just authenticated for commenting via a cookie, it might look the same in some places, but we won't have your email address. For instance, if you're logged in, this link:
http://tidbits.com/subscriptions
will take you to your Subscriptions page directly, but if you're not logged in, you'll go to a Log In page first.
If I go to that link it does take me to a login page. Perhaps I don't even have an account.
I guess what's confusing is (1) it shows my name, (2) it lets me post, (3) and there is no login link anywhere on this page.
Thanks,
doug
You do have an account (everyone who get TidBITS via email does), so just ask for a new password and use that to login.
The site "knows" you to an extent because our commenting system doesn't require an account; it lets you authenticate once per browser by setting a cookie.
But to get posts via email, you have to really be logged in to an account.
OK, thanks. I'll try logging in.
I have a database I use to log my runs and what I eat, it calculates calories burned, week totals, distance and pace records, etc. It's been running on FM Pro for the past ten years. There are thousands of records by now.
I'm sure one of these days a macOS update will break my FM Pro (I'm currently on the already dated version 11). When that happens I'm pretty much certain I won't feel like spending hundreds of Dollars on a new FM pro license. I'm not too keen on having to run an emulated El Capitan just so I can continue to use my old database.
Is there any solution that would allow me to migrate my FM Pro database to something else? Something with a nice simple GUI (no, I'm not going to set up something in SQL that I then get to edit with vim) and with licenses that are more compatible with casual consumer use (i.e. less than $100)? Obviously I can export the data, but that's just archiving, I'm worried about actually preserving functionality.
Have you tried Map My Run? http://www.mapmyrun.com/
Thanks for the tip. I'm sure there are many such tools out there.
However, I'm not interested at all in sharing any of my running or diet data with anyone and in fact I prefer keeping such data off the cloud and restricted to my own computers at home.
That said, even in the event I would use such a service from here on, I'd need some way to preserve all the old FM Pro data I already have in my database. It appears there's no straightforward and simple way to display and manipulate data exported from FM Pro. At this point I can simply hope my FM pro v11 will continue to run on future versions of mac OS for as long as possible. /sticks head back into sand ;)
You can export the fields you select from the records in a set to files like CSV and Excel. Spreadsheets are pretty straightforward to and simple to manipulate and they have chart and graphing features. If you don't have Excel, Apple's Numbers is now free.
Thanks! I guess that would be a way forward. Excel is no FM Pro, but it's for sure better than nothing.
Google Sheets might be an option too. It works well on my iPhone. But really, if you think a spreadsheet might do, then I would urge you in fact to look at Airtable. For this use, I'm pretty sure it's going to cost you nothing. (Please don't hold me to that, but that's my recollection.) And it's an actual database with some really excellent smart phone capabilities -- unlike FileMaker Go, you can actually edit your database in Airtable on your smart phone.
Tidbits' own Adam Engst is an avid runner. I asked him and hope he won't mind if I share his response. He said MapMyRun is a fine solution, but most everyone he knows uses Strava, often fed by data loaded into Garmin Connect by a Garmin watch. I'm not a runner myself and don't own any Garmin products, so I hope this means more to you than it means to me. :-)
I highly recommend Tap Forms (I was disappointed that the article didn't mention this as one of the alternatives for simple personal databases!).
https://www.tapforms.com
I use it for all kinds of things, and I like it for the same reasons I used to like the AppleWorks database module: easy to use, solid database options. The advantage over AppleWorks is that the developer is very responsive, and always improving it. You can do basic linking of tables through relational fields, and you can create numerous forms/layouts for each table. In my opinion, it's pretty much perfect as a personal database, and reasonably priced. Available on Mac and iOS (with iPad-specific app, too).
By the way, I haven absolutely no connection with the developer, just a very happy customer of several years!
I'd never heard of TapForms so I'm glad you just mentioned 'em.
There are LOTS of options out there these days for configurable databases, way more than there used to be!
Like several other commenters, my personal databases are running on an old version of FileMaker Pro. I've got a database for my ~2000 books, another for a similar number of CDs and other media, and a slightly larger database for my tools and possessions. Because of synonyms, categories, and a little bit of meta-data, William Porter guided me to FM Pro and a simple relational structure fifteen years ago, or so. I've updated FM Pro multiple times since then, but my current version won't run on Sierra.
I see copies of FileMaker Pro 16 for sale on eBay for around $200. Educational versions for a few dollars less. I would be willing to pay that price for a software license that I could use for as long as I have been using my current one, but I don't want enroll in a ransomware model (vendors call it "subscription"). If the eBay software package is legit, that's one path that might work for me.
The other is to choose a new piece of software. I'm glad to hear about TapForms and AirTable, and I will investigate them. I'd like to hear about other alternatives for the simple databases that I described above. I think my needs are trivial and obvious, but the need to be able to find a given item via several different names and synonyms is too much for several database options that I have looked at.
Filemaker usually offers buy-one, get one free Black Friday deals for stand-alone versions, which is ideal for my two-person company that runs FM on two Mac Minis.
I generally skip four or five releases before upgrading, which saves money in the long run since I usually don't need the added features for each of the new releases and because when a new version is announced, my most recently bought FM doesn’t quality for upgrades. My current version is FM12, which converted my files flawlessly from FM7 when I moved from Snow Leopard to El Capitan. I've also converted files from FM2 via FM5 to FM7 to FM12, but that's a slightly different story.
I will probably upgrade to FM16 (or higher later) when I move to Sierra.
I will also investigate FM alternatives mentioned here. They look promising. But I’m afraid I’m so used to the FM way of doing things, and the flexibility in getting the program to do exactly what I want, that moving to something else would be painful.
Like others, I have some personal databases in FM 12 (my latest version) that I might open once in a month or so, but cannot open them now in High Sierra.
I cannot see buying FM16 at full price.
I would be a candiate to share the cost of their 2-for-1 offer, mucah as I hate the idea (FM user since FM2 or 3, BTW).
Ironically, the new pricing strategy for Panorama X would be perfect for your situation. I have no idea if it would be worth converting your databases or not.
http://tidbits.com/article/17613