Rethinking Software Interfaces - Art Licensing Manager 3 - FileMaker to Xojo Rewrite

xojo-xanadu-sqlite-audit-log-using-triggers

We started on Art Licensing Manager 3 a bit more than year ago, but our attention was needed on another project to rewrite a FileMaker solution to a Xojo Web App. We're getting back to working on ALM3 now which also happens to be a FileMaker to Xojo rewrite.

We'll get into the why and and discuss our journey starting with this post.

Why Leave FileMaker for Xojo?


Xojo is designed for making just about any kind of app which makes Xojo extremely powerful, but it does require writing more code than with FileMaker. This might sound obvious, but the more code you write means you'll have less to write later if you write it to be reusable. We're developing the Art Licensing Manager 3 as a Web App which can be run on Mac, Windows, or Linux. Users will access the Web App use a Web Browser.

FileMaker has become incredibly expensive due to the price increases in version 13, 14, and 15 along with the new "FileMaker Licensing for Teams". There are several threads on the FileMaker Community Forums that show how incredibly upset many community members are about the pricing.

The saga of the increased costs of FileMaker is an excellent opportunity to look at other platforms. FileMaker and Xojo's licensing are completely different. FileMaker Developers and every one of their users must pay FileMaker to use the solution, Even worse, if you go with FileMaker Annual Licensing, you have to pay FileMaker every year you use the solution you developed and when you stop paying you must uninstall FileMaker. Xojo Developers pay for the development environment and the developer users pay nothing.

We're not planning on any new FileMaker development since the costs are just so high. Instead, we're redirecting the huge difference in platform costs to Xojo. Yes, we'll have to write a lot of code, but we'll save an incredible amount of money in the licensing savings.

Xanadu

During that process of writing Xojo code, we created "Xanadu", formerly known as "EasyData". Xanadu is a Xojo Class that we developed to simplify working with databases. It's purpose is to do the stuff that FileMaker did for us, but within Xojo.

Our first version of Xanadu did what our FileMaker solutions did. Load and save records along with buttons for going to the Previous, Next, First or Last Records. Xanadu worked out great. In fact, I'll be attending the Xojo Developers Conference in October and will be presenting Xanadu in our Database Driven Apps session.

Xanadu does a lot for us. It loads lists of records and detail record fields with very little code since the Class does most of the work. However as we use Xanadu we're finding it can do so much more and we're seeing a huge pay off.

Rethinking in Xanadu v2

Now that we're back working on Art Licensing Manager v3, we decided it would be a great time to rethink the interface we've used for two decades. Over that time just about every FileMaker solution we've developed required a status bar so the user could navigate around the solution. We could have hidden the FileMaker Status Bar, but exposing it was easier than writing all that extra code. Now that we're seeing our FileMaker solutions as Xojo apps, it's giving us the opportunity to rethink our designs.

So we started looking around the internet for ideas and ended up finding something very interesting in the Xojo forums. In Albin Kiln's post, he shared his interface for his internal app, shown below. In our opinion, the most interesting feature is the lack of a Filemaker like Status Bar. There are no buttons to navigate back and forth or thru records. Instead, there's a menu, a list of records, and the selected record detail. You just click on objects to drill deeper.

Based on this new simplicity, we're going to use Xanadu v1 to make Xanadu v2 even simpler.

Sk_rmavbild_2014_11_01_kl_00_20_49

Meet the Art Licensing Manager 3 Interface

As you can see, our new interface is similar to Albin's interface in this mock up. There's no working code here yet as it's just a mockup. Based on the clean looks, we're going to start on the coding today, reusing much of Xanadu v1.

On the left, we have our menu used to move around the modules and access to the app settings. The record list provides a way to find records and click on them to show the details. You can also use the "Alphabet" menu to jump to a record alphabetically. On the right are the details which happened to be in a Xojo Container which allows for scrolling. If the right side happens to be longer than the user's web browser window, that will allow the content to be visible via a quick scroll of the mouse or finger swipe.

Pasted Graphic 1


We'll Be Back

This is just the first step though. We'll post more about the rewrite to Xojo later. If you'd like, subscribe to our blog by going to the homepage and enter your email address. We'll send you an email soon after we post something new.

If you're interested in developing a Xojo Web and not sure what to do, we offer Coaching and would love to help any way we can.