This 'FileMaker Server in the Cloud' Thing

{I'm sort of a re-beginner, I guess, as I've worked predominantly for one company in one niche for most of the last decade, and although we technically upgraded along the way from FileMaker and server 11 to 16, there's a lot I haven't kept up with...}

From the standpoint of developing, what's the (^$@#@!) difference between FileMaker Server Cloud and the ordinary incarnations of FileMaker Server whether installed on your own server-box down the hall or as operated by various professional hosting companies we're all familiar with?

I have a client who hired me to do a laundry list of fixes and improvements to a Filemaker 12 system. Now I've received an email saying they've purchased a contract to have all the files hosted on the FileMaker Cloud Server, and asking me to make sure I can "convert" everything to run. I told them the file format hasn't changed, so aside from opening them once in FileMaker 19 it's mostly a matter of uploading them and they should "just behave". But the pasted blurb about the Cloud Server mentioned that plugins are "not supported" — I'm guessing this merely means that rollout of plugins from FmServer to workstation installations of FileMaker Pro won't automatically happen, and not that you can't make use of plugins -- ??

Any compeling gotchas that a developer who has never done Cloud but has had solutions hosted on plain-ol' FileMaker Server since time immemorial oughta get up to speed about?

{hijack: I hate the term and concept "Cloud". As far as I can tell, it 99% of the time means "We have servers. Things are stored on computers that your company doesn't own", and maybe 1% of the time means "We do some distributed computing where an array of computers links forces to perform calculated processes in a tandem way". I detest the nomenclature that mythologizes and obscures what is happening where and iTunes the whole native sense of an informed computer user being expected to know such things}

1 Like

The 'Cloud' is someone else's computer (that you don't own and don't control). This is factual and no marketing language can make it go away.
After all it depends on the use case if 'Cloud' fits the need or not. It is a bit like buying a car or doing car sharing. I suspect that there are fewer use cases that are good for Cloud than Cloud vendors would like to have.

1 Like

Well, you may mix multiple things.

Having a FileMaker server deployed in 10 minutes with e.g. fmcloud.fm to demonstrate to a client and then up/downgrade the server as needed (CPU, RAM, disk) with a few mouse clicks is a great improvement over the old days, where you bought a server and put it in your basement.

Now I've received an email saying they've purchased a contract to have all the files hosted on the FileMaker Cloud Server, and asking me to make sure I can "convert" everything to run.

I admire that you kept your cool! The fact that he didn’t consult with you before getting into something he hasn’t made a feasibility assessment for the current structure and particularities of his system would have me screaming! There are limitations to the way Claris Cloud is structured that are problematic for some processes.

FileMaker Cloud is based on the Linux build of FileMaker Server. @WimDecorte has a good summary of the differences in the executive summary they published. Get Your FileMaker Cloud 2.0 Executive Summary Here

There is a purpose for first explaining our system here, as will become apparent below. We’ve been providing ‘cloud’ based solutions worldwide for over 10-years. We do not use the FileMaker/Claris cloud but manage our whole infrastructure and do all the support and work for our clients. Neither do we attempt to compete with Claris’s cloud, ours is mainly used to deliver our own CRM based solutions to our customers.

In the vast majority of cases, neither do we install FileMaker on any of our users’ computers, we ‘stream’ FileMaker to each computer device, so all software is managed and delivered centrally. The reason for this, is that 10-years ago bandwidth was pretty hopeless and FileMaker was almost unusable over low speed connections. We expected our chosen delivery method to have had its day by now, but despite improvement within both bandwidth and software, the productivity, hidden cost savings, central management, absolutely no compatibility problems with software and operating systems, delivery to any computer device and a gradual trend towards streaming has kept it very much to the fore.

Now to the point of leading with the above. In the 10-years since we started, development techniques have changed to minimise performance issues over the Internet compared to running a system on premises over brilliantly fast Ethernet networks. Using all of FileMaker’s available features will almost certainly cause problems running over the lower speed ‘Cloud’ network connections.

Our personal view is that FileMaker should now have features labelled as ‘Legacy’ and ‘Current’, with the former remaining to ensure older systems continue to run. Using these legacy features for new development can cause headaches (and/or heartbreaks) if moving to a cloud based server.

To give some practical examples, we hardly ever create a cross-table calculation field, stored or unstored. Virtually all validation and calculations are script based, as the only network or performance overhead of scripts is when they are performing, where as tables, table occurrences, fields, calculations, validation, etc. are part of the structure and have a constant impact on performance. By the way, a general rule for performance is ‘many tables with fewer fields is good, fewer tables with many fields is bad’.

Use of cross table sorting, replace field contents or navigating to a layout containing a summary field can result in extended coffee breaks or lunches, although development continues to try to improve this by moving the responsibility from the FileMaker client to the server. We have written scripted routines to replicate the behaviour of summary fields in sub summary parts using standard fields to overcome some of the aforementioned behaviour.

We are huge fans of ‘cloud’ computing and have been doing so long before Claris (and many of the large vendors), but just putting a server on the Internet and installing a solution that has not been designed for it will cause problems. How big these will be will depend on some of the above and how much data is being processed.

Personally, I don’t believe something should be called ‘cloud computing’ unless everything is processed within the cloud. Having client software running on a computer requires it to be installed and maintained with all the local problems that are associated with any software running locally. Data is processed at the client end resulting in network bottlenecks between the client and server. Claris know this, which is why they are putting so much effort into moving processing to the server and their push towards a web interface.

My most important advice is to test your client’s solution thoroughly before moving it. The testing should be carried out by the regular users, not by anyone in IT, development or management. The problems will only become apparent if the workflow is replicated completely using a copy of the current data.

Good luck, and please feel free to put this in front of your client. We’ve client systems that are used by a couple of users up to systems that are pushing through multi-million USD worth of international business and the above is all written from hard won experience.

Kind regards
Andy

2 Likes

There are a lot of differences. With Cloud you get FMS as an app. You have no access to the OS. You cannot run other apps beside it. You cannot modify other apps that are running, such as the web server.

You can get a test account for 14 days. That wasn’t enough time for me to discover all the issues but it is a help.

Could you please clarify the term “cross-table”?

Hi Steve

‘Cross-table’ would require 2 fields from different table occurrence joins in a calculation, so maybe ‘Contacts <-> Addresses’ or ‘Orders <-> Order Line Items’ for example.

Hence ‘First Name’ & “ “ & ‘Last Name’ from a Contacts table would be fine, as they coexist in the same table. Even then, we would use an auto entered calculation rather than an actual calculation field, as it only calculates when one of the fields in the calculation is changed and it can also be indexed for searching (unindexed fields take an awful long time to search on).

We use calculation fields so rarely. An example where we may use one is to calculate someone’s age using Get (CurrentDate) and the person’s date of birth.

However, in the vast majority of cases we use standard number, text or date fields and use script triggers or overnight server scripts to set field values that historically would have been setup as calculation fields. This is often referred to as ‘lean development’ (along with the fewer fields per table approach, which we are not currently where we’d like to be due to the legacy of our existing systems). We aim at reducing the complexity of the design structure to increase performance, particularly over lower speed network connections.

Our design ethos is that processing of the data should be as quick as possible for the users (data entry and editing) and if necessary reports can take a little longer to produce.

3 Likes

Thanks for the clarification. I’m slowly cleaning up my POS to improve performance and am very interested in lean design. I appreciate your thorough response.

2 Likes

Having now read Wim Delacorte's summary, I have to say it sounds bloody awful. I'm sure they mean well but if my job involved driving racecars at the track I would not want to be handed a self-driving car.

I may be reaching my obsolescence. For every new feature that I appreciate since ~ FileMaker 10 there are about six that strike me as disimprovements or unwanted clutter. I still detest the modern replacement for the ScriptMaker. I'm going to seek certification in 19 and maybe drilling on it will put me in a better mood but I may soon consign myself to FileMaker's past.

1 Like

I like that you remain open to learn more to give it a chance instead of crystallizing like many do!

1 Like

+1000 on this. On top that, there are some situations where a calculations can't be stored. That can be a performance killer when performing a report.

Using scripts to calculate values provides a good (the best ?) performance.

2 Likes

From the article — “There are several cases where moving to the cloud has caused more complications and headaches for the company before its migration. This has caused new concerns and questions to crop up about cloud computing and whether it is a feasible solution for all companies in every business niche...”

Not every problem is a nail. Conclusion: a hammer is not the solution to all problems.
Before moving business-critical infrastructure around, a thorough analysis should be made in order to identify possible gains AND identify risks.
Cloud can be a solution with assorted advantages. An informed decision is necessarily based on said analysis.

3 Likes

I have my own prejudices. I'm a person who still uses POP mail because I want all my email stored on my own freaking computer, because putting something important on someone else's server, insead of evoking confidence and security, fills me with unease. Paid professional services as well as free ones yank resources out from under you or change policy on a dime. Things that were included as part of what you were paying for get discontinued by unilateral decision and you have to migrate all your stuff or frantically rescue it to your hard disk. Or it gets hacked. Or they change the protocols in a way that breaks all your carefully designed applications, informing you of this in an email off of which the smell of self-congratulatory pride is annoyingly wafting.

It's not that I've always advised all my clients to buy a server, learn how to maintain it in a temperature-controlled and electrically redundant safe room, and host their own FileMaker solutions on their own copy of FileMaker Server. Although I've done that often, I've also recommended reliable hosting companies. Usually ones that, in addition to being well-established as Filemaker-centric and to not stretch their capabilities too thin, and to having responsive tech support, also have the advantages of letting you upload with mainstream tools instead of propretary web interfaces, that let you manage FmServer with the regular FmServer console interface and not some stripped-down simplified version, that don't impose a lot of "my way or the highway" / one-rule-fits-all template stuff and lets the client implement their solution as they wish.

My early experience of Mac versus PC is directly contrary to the legend of Apple being closed and PCs being open: in a world where PC programs couldn't give you choices, early Mac apps were chock-full of options, and in a world where DOS and Windows users were terrified of downloading anything new for fear of DLL conflicts or viruses, we Mac users changed the default behaviors of the OS to fit our liking with shareware and freeware quite fearlessly. But yeah, there's no denying that Apple has some heavy-handed attitudes and an annoying fondness for abstracting the real situation and representing it to end users in babytalk.

Their version of 'Cloud' extends that far beyond merely promotiong 'We will house your creations on OUR server' as this mystical mythological Cloud thing (which they're all guilty of).

1 Like

@AHunter3

“Microsoft argues the cloud offers more protection; rivals point to the need of firms to hold, access their information on-premises.”

It's true that large cloud providers like Microsoft, Amazon etc. can protect their infrastructure better than the average company can do. Thing is if you rent a server, virtual or not, and are the one that manages that server, that's very interesting. You decides when you will upgrade the server OS and FMS.

But when upgrading the OS and FMS is done out of you control, that can interfere with your operations. That already happened when FMS Cloud was handled by AWS and may also happen with FMS Cloud 2.0.

I have always been in favor of using on premise hardware, but then you have the burden of protecting against attack, have two ISP, should one come down the other one will handle the connections. That can be a chore.

There is no need for that old protocol. I use IMAP, but keep all email local on my computer. The key is that I move all email after reading in a folder on my computer, so the INBOX is usually empty when I read all my emails and sorted them away (in read folder, in trash, in spam folder or whatever)

1 Like

I hear your pain. As ever, it is horses for courses. Large organisations do as they wish, look at the number of services that Google has released and then canned. I seriously feel for anyone who also invested in the original FileMaker Cloud and are now being forced to move. Equally, one browser update can break a perfectly good cloud based system.

On the other hand, there are the little guys, like us. We’ve spent over 10-years investing in our cloud security. I could give you the address, username and password for any of our servers and you would not be able to log in.

The vast majority of our clients have been with us for many, many years. Although we’re not really taking on new hosting clients, as mentioned above our infrastructure is now a delivery mechanism for our SaleFaith CRM systems. In 10 years no customer has had a compatibility problem, you can run FileMaker 15 on Big Sur or FileMaker 19 on Mac OS X Panther, and any changes needed are managed and carried out by us with no disruption to our customers.

This is due to our approach of using more classic technology in the cloud, rather than looking for pure web interfaces. Yes, with WebDirect we can offer it, but it is not yet fully featured.

However, the key thing is that we’re a family firm, our customers are just one level down in importance to that of our children. If people want to contact us they call us, we talk to them and know most users personally, despite the many countries they may be based in.

This brings me back to the definition of cloud computing. Other than uploading, downloading files and printing, everything is processed in the cloud in our streaming system. We take responsibility for absolutely everything for the service we provide, as there is no software installed on Windows and only RDP workspace software on Macs, IOS, Android, Chromebooks, etc.

We are still at the mercy of Apple and Microsoft, it wasn’t long ago Microsoft released an update to Windows 10 that broke their own RDP services. Microsoft were not interested in this and grudgingly released an update a couple of months later. At great cost in time we found a work around with the help of a Microsoft forum, that was so similar in contribution to the old FileMaker community. This ensured our customers continued to work despite the problem being a Windows 10 issue, not our cloud service. When Microsoft released their ‘fix’ it broke the temporary fix that enabled our customers to continue working. Hence, we had to redo all the work again via site visits and remote support.

The point of the above is to show, like everything, one word cannot describe everything.

3 Likes