Ever wonder how you might be able to create a mobile app with data you already have in your FileMaker solution? I have, too! As it turns out, it’s not too outlandish of an idea thanks to the FileMaker Custom Web Publishing with XML API.
You might wonder, why build a native app? Depending on your data, or your use case, your users may benefit from the native functionality built into both iOS and Android which can provide advanced interfaces and features not readily available in FileMaker Go.
In this blog I will demonstrate how you can leverage the XML API to treat your FileMaker as a back-end and RESTful service. This technique allows for bidirectional communication from both a native iOS app in Swift, and a native Android app in Java. As a bonus, I will show you a workaround to upload container data to your database (according to FileMaker Inc. this is a limitation of the CWP XML API)!
- Installation of FileMaker Server
- FileMaker Intermediate to Advanced skills
- FileMaker file with fmxml Extended Privilege set enabled
- Permissions on the server to read and write
- Ability to update the php.ini post_max_size and upload_max_filesize to allow large enough files
- Installations of Xcode and/or Android Studio
- Knowledge of Swift and/or Java programming languages, iOS and/or Android SDK’s
That sounds like a lot of prerequisites, doesn’t it? Well, this article doesn’t require you to know both iOS and Android development. You can be familiar with only one or the other, and still be able to follow along.
Continue reading Building Native Mobile Apps with FileMaker Data
For quite a while, the documentation and product information for bBox has mentioned it as a way to run PHP scripts, but I only just recently realized that we never had any examples of how to do this.
Here are two methods to try.
Continue reading Run PHP code with FileMaker & bBox
If you are a developer, chances are very good that you know what Object-Oriented (OO) code is. You might have also heard about OO Design Patterns, things like single responsibilities, decoupled code, and my subject here: Dependency Injection (DI).
OO Design patterns help you write code that is easier to change, and easier to test. Being quite abstract concepts, they apply to many modern programming languages, including Java, Ruby and PHP. Each language has its own way to do things, thus each language implements the concepts in a different way. Some implementations are similar, others not so much. In this article I’ll talk about Dependency Injection with a special focus on web development. I’ll explain what DI is, and I’ll elaborate on Ruby’s implementation. Finally, I’ll compare the Ruby approach with PHP’s view on DI.
Continue reading What is Dependency Injection
What must an Operating System do to satisfy web developers’ needs? This is a tricky question, as each person is a whole different world, so it’s impossible to have a single answer to satisfy every person.
One could say “Well, because each person is different, the OS must be able to adapt to all different kinds of people”. Basically, meaning the OS must be easy to customize. This is great, but when is it too much customization? Systems that are very customizable also tend to be hard to use. In this post I’ll compare the three most used Operating Systems out there, namely Windows, OS X and GNU/Linux. I like FreeBSD but the userbase is so small I sadly won’t consider it here.
When talking about customization, I’d say Linux is king. Windows, on the other hand, is not natively customizable, but easy to use and with sane defaults. OS X gets the best of both worlds. That’s just my humble opinion, as I don’t consider myself to be a full power user of any of those systems, I just use them to get work done on a daily basis.
Continue reading A Web Developer’s OS