 Okay. The sun is good. Is it good? Okay. So, welcome everyone. Thank you to be here and to attend my second session this year. Thank you so much. So, my name is Yannick Herzalgedo. I'm French. The video shows my city of Nice, where I was last week. I'm a filmmaker developer since a long time ago. I'm an FBA partner. My company is Infographics. I'm an FBA partner. I'm a certified developer. I used to speak in many different conferences around the world. And it's my third DEF CON in a row. I'm really into UI and design. And I'm proud to won the iPod Pro contest. Final Maker did a contest in last November. And I am the European winner. I think there's never an American winner for my solution called Moby Pharma. I will show you probably a few screen later on. So, my topic today is to bring apps from Final Maker ago to something else. Probably the App Store. And the way I will explain things today, and we can do solutions, but we have to think about apps too, and what are the differences between a solution, a Final Maker solution, and a Final Maker apps. For that, I will start showing you a few projects I've worked on the last 12 months to explain what I did. So, I have a short explanation. Yes. So, when the SD care was released in the beginning of the year, I started with a solution called GoTip. I used to present that solution from many conferences. This is an app made for calculating and sharing tips. This is now an app on the App Store. It's a free app made with Final Maker and only with Final Maker. So, sorry. What's happened? I have a bug. Oh, there it is. So, you enter any number. You can share by any number of person. And this is 100% Final Maker apps. You can download it for free from the App Store now. Second thing I want to show you, it's an app I released last week. It's a new version of something older. I use it for my session on Monday about the grid system. This is a paid app on the App Store. It was accepted by Apple in two days because the process is really quick now. So, I enter project. I enter window size. I enter the number column I need. This is for grid system. If you are aware about the grid system, it's really useful when you have a lot of different sizes for layout, different device. And it gives me the guides I need on my layouts. And I can even tag what I like the most. Or I can delete things easily. Once again, it's 100% Final Maker. All the sliding you see, it's slide panel or slide panel. And I explained this technique last year in the session in the same place called Advanced Power Power and Advanced Slide Control. Since the beginning of Final Maker Go on the iPad and the iPhone, I'm a customer developer. I didn't explain that so much. All my projects are related to iOS devices. Even big business solution, part of the user are desktop. But I always, my customers always need remote connect user with iPad or iPhone. And for the first time this year, I have a customer ask me for 100% iPad Pro solution. So I will show you something later on. It will be a solution on iPad Pro with Final Maker server. But all the users are connected with the iPad Pro to a server. So it's really important to understand that it's a market now. I don't know for you guys, but for me in France, for my company, iPad, iPhone are a huge deal. So I will show you a few things on my iPad mini. So there it is. So maybe you have seen this solution. I made it for the DevCon. I needed something to try to show you how I work with responsive screens. So this solution was available in my repository. Probably you have downloaded it. So I needed something to know what happened next in the same room. So you can navigate per date, per schedule. And when you click a specific event, you have the right venue. Okay, because this hotel is so huge, I never know where I am. So thank you. It's a jQuery library. The map. I did the 3D things, but this is jQuery embedded in Final Maker. But the nice thing I want to show you is with these devices, we can rotate the devices. Okay. And with iOS 9, we have iOS 9, sorry. We have new behavior like slide over. Let's say I open my Twitter. I expand to split view. And my Final Maker solution adapts to this new size. Okay. A sneak peek of the solution who won the contest, Moby Pharma. So this is a solution for sales team in the pharmaceutical industry. So this is the startup screen with the next appointment. And where are these appointments? You have the main numbers of the period, a month, a quarter. You can once again rotate. This is the same layout rotating. Okay. And nothing moved. I scroll my finger on that and the screen is still fixed. And this is basically a big CRM. And I can go to the account. I can, I click on the screen. Nothing happened because I protect the data. If I want to edit data, I enter an edit mode with an on-gester tap to show you more what I call responsive. This is my charts. You see the free widget on the right? When I rotate my screen, you have the widget on the bottom, right? You can do that on the same layout. There's a tutorial I give. You find this file in my example in my repository called ACB13. It was slide the block method. You have to open this specific file into an iPad. You can open it in your FileMaker Pro and it's free to see under the hood how it works. I present 15 different patterns the way I do things on iPad. And only 15 because you have the navigation bar on the bottom on the right or on the left. I never use on an iPad the navigation or the navigation on the top because it's not really user friendly. I present a solution where you can add a content on the left, on the right, on the bottom. Basically, I embed elements into a pattern. I will explain it later. What can I show you? This template will be an example. I will explain later on that the biggest issue when you want to design something for iPad, there are the sizes, so many different sizes. So I prepare a template for you. The same template when you with specific color to show how you change a layout when you change of size. If something changing into your device because of split view or slide over. With a script, I'm going to another layout and to emphasize that I change the color so you understand how it works. So this is something I will give to you. And last thing, I hope I could do this. Okay, as I said, this is my first attempt to deliver an iPad Pro only solution for FileMaker Pro. This is a wedding planner company in France. A big company doing really high standard wedding. And this solution is iPad Pro only. And you have to deal to rotation. You have to deal with all the points I mentioned earlier. And it's made to be really user friendly with your fingertip. So you can see the proposal. This is just the first release of the device, of the solution, right? And I can expand my proposal. I kind of froze. You can expand or close. And it's easy to work on a really large proposal or large order on a small screen because I made the elements resizable. So this is a big peek of this solution. And I want to show you again my IMAP DEF CON solution on a really big screen. So this is the same solution. You can filter by domain. And once again, you can resize because they are not the same sizes between iPad Pro and iPad Mini. Okay, this is it for the showcase. Okay, doing things for iPads and iPhone is not only a big deal for me. As Dominic Goupil said during the opening keynote, more than one billion units of iOS devices have been sold from today. And Apple has announced at the beginning of the year that there are one billion active iOS devices running every day. Most of these iOS devices are iPhone, but a huge amount of iPad are running every day. So it's a huge opportunity of business for us and more and more of these devices are in use in the company, small and bigger ones. And with the release of the fan maker iOS FDK, we have the opportunity to address this billion of potential users. So with the power we have, because fan maker, we all know that it's really easy to use and we can develop a really professional solution really fast. As I said, now in two days, your solution could be validated to be on the App Store. We have a great power, so we also have great responsibility. The responsibility to deliver a product with a quality as good as any other apps on the App Store. In terms of design, in terms of interaction, giving to the user the right size for the right devices. Sadly, I'm sharing a lot of with developers all over the world and some developers still thinking that they can take the desktop solution and bring the same solution without any works to the iPad or the iPhone just because it works. Okay, you can do that. It will work, but it will work a really bad way. And from a UI point of view, from a user experience point of view, it's really not an app, okay? So we have to build desktop solution when you want to use it on laptop or desktop, but we have to work on the specific layout for specific devices. I try to focus on some major issues we have when we have to deal with these devices. The first are the value sizes of these devices. As you know, FileMaker go because every solution running FileMaker go could go to the App Store, so that's why I'm talking about FileMaker go. The apps after on the App Store have the same requirements. FileMaker go could run from iPhone 4S with 320 points width to the big iPad Pro, the 12 inches, okay? Many devices, many different sizes, but it's not the only problem. You also have to deal with the rotation. The same device can have two different sizes at the same time, okay? You can stop that with a script, but if you stop this rotation by script, the user experience is not as good as your competitor, so you have to learn how to deal with that. Another variable is, as I presented earlier, some new behaviors from iOS 9, the slide over and the speed view. So this is the slide over and now the speed view, okay? You have to be aware that you cannot stop that with FileMaker go. With FileMaker go, it's always on. On Xcode, if you are going to the store with Xcode, you have a function called fullscreen where you can get rid of these two behaviors. So you have, with these two points, you have four more sizes. Don't forget that on some new device, as the iPhone 6 and 6 Plus and the same as the new iPad Pro, the user has the possibility to increase or get an increase in size by zooming or go back to a normal size. So, for instance, the iPad Pro has 1,000 and 366 points on the normal display and if you zoom, you get a regular iPad display with 1,024. So if you're designing a solution for an iPad Pro 12 inches, you cannot forbid your user to change in the settings the zoom. So you have to anticipate that and create a layout with the regular iPad size. And at the end, you have a FileMaker object, the FileMaker menu and the FileMaker toolbar that you can activate or not. Every object can change the sizes. And at the end, you have 78 different variations. So it's impossible to design a solution with 78 variations, but we have solutions. So how to deal with so many different sizes? Because at the end of the day, I want to work as less as possible. I don't want to make so many different layouts. So we can focus on some specific problems and we can fix the rotation and the number of layouts. So what is not a good approach is to work on FileMaker resizable function. You know with the inspector, you can resize. This is not a solution. You cannot use that. For a simple pattern, for one column pattern on an iPhone, you can expand things. But you all know that you cannot expand all the objects on the layout proportionally with the resize tool. When you have a complex form, when you have a lot of columns, only one column can be expanded. So on large and complex layout, resizing is not an option. And in the same time, you have to work on that because if you don't work on prepare your layout to be in use in various sizes, everything must be pixel perfect. That means any layout you design must be at least as the size of the screen at the end. It could be smaller, but never bigger, even when a pixel because if the layout opening on the specific screen is bigger from one pixel, when the user swipe it, everything is moving and it's not a really good user experience. In my opinion, when I design a layout, I want all the content in the screen without scrolling. I know that on some situation on an iPhone, for example, you can design very long form and scroll. For myself, I don't do that at any time you user doesn't see all the information. It doesn't have the feedback or what is missing. Now we have the sliding panel, sliding control panel. It's much more easy to give a feedback to the user. You are at the first, second or third panel. You have more content to discover. So avoid scrolling and at the end, design the fewest layouts as possible. So I try to eliminate some variables. I will try to design my layout smarter and I will explain. And I will try to build some layouts which can fit different sizes. So first of all, eliminate some variables. What does it mean? The first question you have to ask to yourself is, is my app universal? Is it iPhone only or is it iPad only? Some of the apps I did present, some of these apps are iPhone only, some are universal. So no need to design an iPad layout if your solution is iPhone only. Try to design full screen. This way you get away the FileMaker object, the menu and the FileMaker toolbar. You have a little bit more work to do designing your own navigation, but you're pretty sure that you don't have the user activating or not something in your layout. You can, in certain cases, cancel rotation. We are all iPhone user or iPad user. I don't know for you, but for instance, my iPhone, most of the time, I use my iPhone in portrait mode. So if I design something on iPhone, I get rid of the landscape mode and we can do that with a script. For the iPad, it's a little bit more complicated because it's half-alf. We use it in landscape or in portrait. You can ask yourself if you design something for iPad Pro. As Apple has designed the iPad Pro, you know that the keyboard is made for a landscape usage. The connector you have for landscape. The size of the device made it for a landscape usage. So in certain circumstances, you can design on iPad Pro only landscape. And once again, you can deal with that with a script. So it's easier for us. And as I said earlier, you can fix the slide problem if you go to the store with Xcode because you have functionality or behavior in Xcode to use a full screen. If you stay in FileMaker Go, you have to deal with that. When it's matter of sizes, width and height, these two dimensions don't have the same impact on the layout. I think it's much more easy to deal with a vertical resizable thing than horizontal resizing. Let's say different, the first smaller iPhone share the same width. They only have various eighths. So you can address three iPhones with only one layout It's much more easy to deal with a vertical resizing than an horizontal resizing. We have plenty of objects in FileMaker like the list, the portals, or the fields to field the blank creating from the small screen to a bigger screen. So I can address values, vertical, eighths very easily. It's much more complicated to address the rotation because you have vertical modification and horizontal modification. So I have my technique called slide the block. So basically I embed objects, fix objects into a panel, that stretch. You probably know that when you put an object on a tap panel, let's say a field, a container, a portal, whatever you want, whatever FileMaker object, you can shrink the tap panel and the object is hidden. You can open the tap panel and you show the object. So it's the same tap panel that can shrink vertically or horizontally. And at the end, if the first two methods are not enough, you have to create extra layouts and by a script, a script trigger, the only outside change, you can go from one layout to another if there's a big modification of the display. And as I show you with the same device, like the iPad Mini or the iPad Pro, the same device, the same screen can change. You can have a big change of dimension of display because of the split view and slide over. To be more clear, let's say you have to design for an iPhone app. My advice is starting with a smaller size. So the size of the smaller iPhone, 320 points and a square of 320 to 460 because I have 20 points of vertical margin. I don't know the word in English, sorry. And this part can expand. This is the dark blue part. They could expand when you are going from iPhone 4s to 5 or to 6. So you have a fixed content, constant, and you have a variable part. And it could be a list, it could be a portal, it could be a field. The problem we have to fix, it's a desktop publishing problem. It's not a technical problem. You are in the situation or at a certain point, the size of the element must change. So you have to be smart the way you should the element to change. It could be, maybe it's not a good solution to change the size of the button because from one device to another, the user doesn't understand why on this small iPhone the button is really small and not the big iPhone, the button or the navigation bar is really huge. Probably it's better to fill the variable space with a list or a portal because it's much more natural on the small device. I've got only two rows and on a big iPhone 6, my system, my app displays six rows. It's natural and the user doesn't ask any questions. It's consistent and it's nice. So you will have this example in my file. So basically to address all the iPhone with all the variation with the settings, the display settings without the rotation because as I said I do not rotate an iPhone app. I have six different layouts. That means that each time you have to design a screen you have to do it six times in six different sizes. So this is the minimum. This is a short explanation about the slide block technique but if you open the example you can also go to my website there's a tutorial and with the example I give free video so it would be much more understandable. The basic is as I said earlier the way you can put things into a panel. It could be a tap panel or side control panel, whatever and you can expand it to display things. So the same tap panel can change when you rotate because with the anchors it's straight to the border. It's on the border so the border changes and the panel adapts. Okay, maybe a little demo. So let's say I take this in layout mode. This is what you have. So let me show you in browse mode. I try to reproduce the rotation. I just expand my window. And when I expand it's like a rotation from portrait to landscape. A new content area appears. So this is a panel and there's something that could stretch. Okay, I have to undo everything. But you have to dig into this example to understand how it works. So basically there's object under other object, object into layers, object that expands, object that moves. In this specific example the tap panel moves to the right as long as you turn your iPad the panel moves to the right and the blank space create is filled by the subject and the subject could be another tap panel with a portal inside. Okay, I create a tap panel. I put a large object maybe 256 points and I shrink the tap panel to one pixel and I put it close to my nav bar and my nav bar is fixed. Okay, so I give you 15 different patterns. Most of them share the same principle and few of them are few little tricks but everything is open you have to dig a little bit. Do a copy of that because as long as you move something it's really hard to understand after what was the starting point. But it's really simple as long as you understand the principle of the panel hiding and showing things it's really simple. So the results when you are comfortable with this technique you can do pretty much anything with an iPad and an iPhone. You can do the rotation the way you want. You can choose to have the moving part on the left, on the right, on the bottom everywhere you want. We have solutions for every situation. So in this example when I rotate I just expand it's a portal with the list of my events, the events of the day. This is my application Moby Pharma. Okay, I hide the widgets and I display more events. This is a short explanation of the values pattern with the color code I use to show that you can handle any situation. I show you earlier a short explanation about how I start designing an iPhone layout. This is the same explanation for iPad layout. You all know that iPad dimensions are 768 to 1024. So I start building a square body, square content fixed. So 768 and 748. 48 only because the iOS bar is 20 points. I have only one solution to deal with the landscape mode because I expand the display when I use that on an iPad and I turn from portrait to landscape. I have a new area of 256 points. I can fill it with my technique, slider block. When you resize vertically, as I said, it's much more easy. You have two solutions, my slider block method, or you can expand with contents. Once again, you can put a list in the middle of the screen. You can put a portal or a big field, a not field, whatever you want, a container. So with this technique, you can mimic responsive behavior, responsive compartments, like this one. So I have this widget twice. The widget is on the right and on the bottom too. It's not the same widget moving. I did the work twice only for the free widgets. I can hide objects. I can display more content. And at the end, for a universal app that can handle from iPhone to iPad, at the minimum, you have to design six different layouts. And I give you this file, the template file with this specific color. So when you try this template on your device, when you rotate and you move the sizes, the color will change because when you have multiple layouts, the thing is I use the trigger to bring from a layout to another when the size changes. So the color helps you understand where you are. You see, when you move the display, the layout is changing. So we have a solution to deal with the size. Second problem to fix is the design. So remember, if your solution stays on D for your customer with FileMakerGo, inside FileMakerGo, you can do pretty much anything you want. If you want to go to the App Store, the Apple evaluation system can stop your submission if you don't respect the guidelines, if some requirements are not in your app, if it's not nice enough, if it's not working the good way, you can reject your app. I will show you something, this solution. This solution is something I did for a customer in France. He runs five shops for six to eight million euro business a year. And he wanted something to collect the data every day. Before the solution, the manager of each shops has to send every night data as Excel. Each shop has FileMaker Point of Sale, local, and he wanted something on his iPhone. So I did for him, so I will try to connect to a server in Nice using the hotel Wi-Fi. It will be faster than my local backup because there's a lot of performance script on server. So we have 15 years of history. I did a sneak peek of that on my first session. So he opened the iPhone at the time he wants. He has the numbers of the day he wants. Actually, the system is deployed only on three shops. I need to deploy on two more shops. We are in Nice, Cannes, Bordeaux, and two shops in Toulouse if you know France. So he just have to click on the city once and he has various charts, various numbers, updated at any invoice. He can compare the datas and he has the total with much more charts. You understand the principle and he can also work on a range of dates and he has the same result plus a few more. And this is running actually in France on a Mac mini server. So this is fast enough. This is really easy to use and this is made with FileMaker, of course. The graph are just jQuery, chart.dgs. And so we can basically do whatever we want and you could have a solution in the palm of your hand. So when I design not only for iOS but also for desktop, I try to make things not only nice as possible but really user-friendly. You have to understand an interface really quick so with this kind of accordion. Behind that, this layout is only tap panel. This is buttons. I'm going from one tap panel to another. This is really simple. So you have to work on nice UI, best graphic design as possible. We are using touching devices. So we have to deal with swiping, touching, double touch. It's important. Most of the users now are used to this kind of navigation of interaction. So you have to embed your solution with this interaction. That's why I presented last year. You could do so many things with the slide panel. You can trigger any action you want with free slide panel. When you design a layout for iOS, you have to learn new behavior. Designing for mouse and cursor is really different than designing for finger. Everything has to be bigger. You have to create space between elements. You don't want your user delete by accident an important record because the delete button is close to the add button. You have to think of that. The best thing to do is to use your own solution, your own development. So when you read the guidelines, you have minimum size required. So start with that. Use the gesture as much as you can. The swipe, when I slide, I move the slide, you see the sliding effects. That's what I call advanced integration of the slide control panel. So with FileMaker, we don't have all the library of the gesture made by iOS, but we have enough to do a great job. Last point I want to mention. There's many potential errors a user can do using a touching device. You probably, as I've experienced calling, you didn't expect you send a call because your iPhone touched your skin or your pants. Just imagine you have a complex solution on iPad and by accident. Your user touched something, erased something. You can prevent that. What I did on my solution, I have a form, for instance. The user cannot edit directly the form. This is only for reading, for browsing. When I did the presentation of Moby Pharma, I said to you, I touch my screen and nothing happens because my user has to do a specific interaction to enter an edit mode. So I use the gesture tap with twice tap or one tap and a few fingers. I trigger an edit mode or I trigger a search mode. And with that, it delete only if you follow a specific process. So that gives to your user confidence in your solution. Even if you touch by mistake, nothing happens. Because you are dealing with something we have in our hand, things about putting important control at the bottom. This slide is called UI, UI and UI again because that's the surface that the user sees. So this is really important and much more important if you want to go to the Apple Store where great UI are really important. So start by sketching. Everything helps you to bring some ideas to collect the content to define user flows. So it's an important first step. You have to optimize the UI for the device. As I said, for the interaction, everything has to be bigger but the text has to be bigger too. Don't try to put all the content on the same layout. We all have customers asking, I want all the things in the layout but it's an iPhone. I don't care, I want everything in there. So we have solution with slide panel with popover with multiple layouts. So work this way. Use negative space to create areas or to create separation not only to avoid error but to improve usability and reading. Work on the aesthetic of your design. So this is the way that the user perceives your work. And if you go to the Apple Store, you have to work also on your icons. You have to make icons, a regular custom developer. Never care about an icon. But I will explain at the end, the App Store requires new assets and a lot of assets. So you have to work a lot. Probably you have to work with third-part software like Photoshop or SketchUp on Mac, graphic tools. You have to really care about, I was talking about the graphic and the buttons earlier. What is affordance is the way... I use a lot of icons in my solution but sometimes icons are for buttons and have a time only for illustrate labels. So if you are working like me, you have to take really care of the way you display this kind of element. For instance, a button must look like a button. And if you use a lot of illustration in your design, it's really important that the user at the first sight recognize a button and just an illustration. And you have probably heard about visual hierarchy. This is a good way to focus on the main element on small screen. Work on the consistency of your design. My navigation bar is always at the same place, same size, same color. My elements have the same look. This is important. The right pattern for the right device. So the best example for me is Apple Mail. If you look at Apple Mail on iPhone, Apple Mail on iPad and Apple Mail on Mac, you see on iPhone I have a list of letter box. You say that in English. Mail box. You have the list of the mailboxes. You click on the mailboxes. You have another list of the emails and you are going from one step to another. This is the way to do an iPhone kind of model. You focus on one problem at a time. On iPad or iPad Pro, you have a bigger screen. So you can design patterns much more like desktop. But on iPhone, it's really a lot of work to divide the content. So as I said, on really big screen, you can make use of bigger screen to deliver the same experience as desktop. You can design more complex layouts. And as I said earlier, I made a distinction between a filmmaker solution I designed for a filmmaker ago. It's still a solution and a filmmaker solution I designed to be a nap. And to illustrate that, I'm starting from a starter solution, the contact solution. I feel the starter solution with my information and I change just few things to explain what I mean. I use more merge fields than fields. I use slider buttons, just illustrations and a bunch of scripts instead of textbox. And I get rid of all what could look like too much to filmmaker. The navigation bar, the menu bar, the toolbar. And instead of the toolbar, I create my own button. And if you read the guidelines for filmmaker SDK, if I remember well, filmmaker told you just don't use the toolbar and the nav bar. So as always, this is the same design basic principle. Pay attention to details, navigation, typography, clarity, so I don't spend time on that. And about the design point, I like what Marissa Mayer, Yahoo! CEO, said. She asked the design team to follow three rules. The first one is the two-tap rules. When you are going from point A to point B, no more than two taps. If there's more than two taps, you have to redesign. She has the three-point rules, and I really like this one. You have to count the points for any different font, any different font size, or any different column. If you are more than five, you have to redesign. That means keep only one font, one size, maybe two, one smaller size for the label and one regular size for the fields. Don't play with many fonts. I will say ugly, but still it's not nice. It's too many information. Don't put too many colors if you don't master well a palette. So keep the thing simple. And the last rule is the 98%, 98% rules. She said a product should be designed for the way it will be used 98% of the time. She gave the example of the Xerox machine. Xerox machine cannot do many, many things, but the main functionality is to copy. And that's why the button to copy is a big green one in the middle. It's really easy to use and you go for the usage you need the most. So design your solution this way. Things that you are designing for many different users, many different devices, and it's worse when you are going to the app store. When you design for yourself or for your customer, you know your customer, you know their devices. When you address the app store, you have, I expect for you, thousands, billions of users. You cannot connect all of them and know all the problems and all the devices. So you have to anticipate these potential issues. You have to test a lot. If you are on the Xcode yet, you know you could use Simulator, but you have to know that testing something on Simulator, testing you up on the Xcode Simulator is not enough. Sometimes Simulator don't show you specific bugs. When I have in France working on my first app called GoTip, in the same time I have a friend, the Sébastien Saint-Jean, the guy who delivers for you Addendum. Addendum, maybe you know this app. It's basically the knowledge, the filmmaker knowledge base into a solution you could use every day on your iPhone. You can download Addendum for free on the app store. And at the beginning of the year we were all working on our solution and he called me because on his device he has an iPad mini. He was testing the solution and he has a kind of specific bug. One from layout to another, he has a kind of white flash, annoying, was not a crash, but annoying white flash. Simulator nothing, I try it on my devices and I have no bug at all. And because we don't have the same devices, I have new devices, we figure that it was because it's CPU, it was an iPad 2, was too slow for the charge. So just to say that on Simulator, with the Xcode Simulator you can test on any device, but it's not real devices. So the simulator doesn't react as real devices. So if you are going on the Apple Store and you intend to address a lot of people, you have to test on real devices. I don't know if Christine is in the room. Yeah, she is here. Before the iOS SDK, if you are a filmmaker developer, the only way to go to the App Store and if you don't develop an Xcode or Swift, the only way to go to the App Store is to be a singer. And we have in the room Christine from Sweden who is on the iTunes Store. Yes, you can stand up. And she was on the iTunes Store a long time ago, and if she delivers a solution for the App Store, she could be one of the few who has something, who has a song and an app. So since January, as a filmmaker developer, we can have our product on the App Store really quickly. And as I said, the last solution I proposed was accepted in two days only. So my first test was, as I said, GoTip. For many years, I'm only a filmmaker developer. I didn't know nothing to the process of the App Store. So I took my Apple Developer subscription. I learned on Google how the things are working. And I changed few things in my habits. I did this app to learn the process. So I have worked on my versioning log. It's really important when you're going to the App Store to track your version. I have to modify some habits for the main thing when you have a solution, a filmmaker solution from filmmaker ago to the App Store. You have to remember that you never kill an application and an iPhone. So for instance, your solution starts only once. So if you have a bunch of scripts running on the startup script, that doesn't work on an iPhone. That's the first time, but it doesn't work anymore. The app is kind of a slip. So if you have a lot of scripts running on the startup and you need the thing running multiple times, you have to move these scripts to a kind of unenter script, or a time tracker script. The best thing is I have certain layouts. I'm pretty sure my user uses these layouts multiple times a day. And I have a script trigger on the page because the startup script runs only one time. And no need of a quit button anymore. Most of my filmmaker solution for go has a quit button. But you don't need a quit button. You just swipe up to clear off the app. So the first test, I learned a lot with this test. With the second app, the grid system, I wanted to test because it's the pay app. I wanted to test the payment process and the marketing process. And I also wanted to test the updating process of user data and their solutions. You can deliver an app on the app store where in case of an update, you can track the previous record and save the previous record for your user. I have no time here to explain the whole process. It's pretty simple. I will give you a link. But basically, you have to understand that when you create an app from a filmmaker solution in Xcode, the filmmaker SDK create a template of a project with a folder. You give the name to this project. It will be the name of your app linked to a certificate. And you can put anything you want in this folder. The solution can have a different name. For instance, my solution is called grid system with the official iTunes name. But the filmmaker file could be grid system 001, grid system 002. So you can have a versioning. You can track this. And you have a config file, the text. And in the config file, you can instruct the app to do specific things in case of updating. You can say to the system, to the app, if there's an update, you can erase the previous file or you can add this file to the other previous file. And with this behavior, you have the possibility, availability to push the first app. And when you want to push an update, as long as the update has another name, you can add the second file to the first one and to run a script because with Xcode, you can create your own URL schema. And this way, as long as you have this rice script in all your versions, you have to think about that early on, you can open the file, track all the records, import all the records, and you can erase the previous file with the old way. You have to export an empty fan set with the right name and you can erase the thing. So the process is, I'm the user. I don't know the app. A few months later, there's an update. During this time, I have worked. I have created records. I don't know the updates. The system runs. It finds there's two files in the same folder. Okay, there's two files. I run the script. I collect all the records. I import the records and I erase the previous and you have the solution updated. So it works. But I'm not sure at 100% it's accurate because a lot of things could happen. I don't have enough history. For instance, you can have a call. You can have a notification. The iPhone can go to sleep mode during the script. So I try to test all the tests are good for now. But on a micro second, the test could be different with a phone call or something like that. So it works. You can try it. There's an update. We find Maker 15. You can manipulate the file to go to the iCloud, to go to Dropbox, to bring the file back. It's a new way to give a save system to the user. So with a good save system plus another update, we can have a solution to prevent user data because at the end of the day, user data are really too important to play with and to take risk. But we have solution. But it's so new. Also, when you are going to the app store, as I said earlier, you have to provide a lot of assets, a lot of graphic materials, icons, screenshot, launch image. So if you don't have the graphics tool, you need someone to do this work for you in multiple sizes because of retina and non-retina displays. So this is a bunch of extra work. About the important thing, I came from the work of a guy named Jedrus Godelaitis. He is a file maker developer. He has a solution called Ben Roy Business App. He runs blogs. He's very active in the file maker community. So he finds this way to update solution because he starts developing this update, his file maker pro solution. And with few works, he finds that the system could work on iOS too. So start with his work. If you are interested by doing this, read carefully the blog. I didn't do that. So I lose a lot of time because a lot of information is hard-coded. So you need to create your own URL schema. In this code, it's really easy. And after everything works so far. So you have to anticipate if you want to the app store and to implement an auto edit, you have to anticipate all the script because all the script must exist since version one. It works, but be careful. I think everyone say that. I heard that Todd Gaste did a presentation and at the end he said, take care. Everything is new. So don't try to probably publish a big CRM or a big invoicing with after one year hundreds of datas and at the first update, your user lose every datas. This could be bad. It could be bad. So take care. So this is... I'm close to the end. So about the design part. The main problem are the multiple size. I show you a way to find solutions. You can deal with rotation too. You have to work on the UI. With FileMaker, we can develop really a quick way. We can go now on the app store really fast in two days. So we have time again to work on the design and to test a lot. So I encourage you for yourself in the first time to build a solution and going to the app store. For your customer, you can use SDK for MDM and a little bit more secure. So I have updated this slide because this version is 0.2. I updated everything at 12. So you can download it. There's plenty of examples too. And this is the end of my session. And thank you. And I'm waiting for a question.