FileMaker 19 : entrée dans un nouveau monde
FileMaker 19 : entrée dans un nouveau monde
22 mai 2020 - Auteur : - Catégories : Blog, FileMaker

FileMaker 19 : entrée dans un nouveau monde

Claris FileMaker Icon

FileMaker 19 vient de sortir, et il y a beaucoup à dire, tant sur les nouvelles fonctionnalités que sur l’évolution de la plateforme en général.
Plutôt que de publier comme nous le faisons d’habitude une longue vidéo, nous avons pensé qu’un article de fond avait cette fois-ci plus de sens.

Quelques éléments de contexte tout d’abord. Tout a changé cette année chez Claris, à commencer par le nom de la société, encore FileMaker Inc. il y a moins d’un an. FileMaker 19 est donc la première sortie majeure depuis le changement de nom, mais aussi et surtout depuis l’arrivée d’une nouvelle équipe dirigeante, dont Brad Freitag (CEO), et Srini Gurrapu (Vice President of Products & Design) sont les membres plus visibles (mais il y a aussi du changement aux niveaux marketing et commercial)… bref, beaucoup a changé, et la baseline —a priori un peu naïve— de Claris « Anything is possible » prend en fait son sens.

En quelques mois, tout ce qui était impossible est devenu incontournable, donc possible.

Les effets sont tellement nombreux et tellement enthousiasmants qu’on ne pourrait les lister tous, mais disons quelques mots sur les cycles de développement de la plateforme.

Cycles de développement

Srini Gurrapu, ClarisTout d’abord, il a fallu environ 28 secondes à Srini Gurrapu pour comprendre l’anachronisme que constituait la maintenance des versions Windows et mac OS de FileMaker Server. Les dépendances à Java et à ses implémentations rendent cela très coûteux, et une des premières choses annoncées à la DevCon était qu’on irait vers un serveur unique, ce que Romain Dunand et moi-même avions bien compris comme signifiant une version Linux. Ce point avait été confirmé par le même Srini lors de la FM Conf, en France en 2019.

Donc sur le serveur, nous disposons maintenant —pour les tests uniquement à ce stade— d’une version Linux en plus des versions mac OS et Windows, et il est probable que ces deux dernières soient de l’histoire ancienne dans quelque temps. Cela ne signifie pas que vous ne pourrez plus installer un FileMaker Server sur un Mac ou un PC sous Windows, mais vraisemblablement l’installation inclura une machine virtuelle ou dockers Linux (Cent OS est mentionné, mais d’autres distributions peuvent être utilisées).

Sur les cycles de développement a proprement parler, FileMaker 19 est annoncée comme la dernière version numérotée. À partir de maintenant, on devrait avoir une sortie trimestrielle et non plus annuelle. La prochaine version devrait donc être la 2020.1, puis on aura 2020.2… Cela permet à Claris de diffuser des fonctionnalités beaucoup plus rapidement, et y compris dans un état « preview » afin de recueillir des feed-back d’utilisateurs plus tôt dans le cycle. C’est par exemple déjà le cas avec la fonctionnalité de création d’Add-ons, présente dans la version 19 mais susceptible de changer (et pleine de bugs d’ailleurs).

On passe donc d’un cycle « à l’ancienne », avec des fonctionnalités figées très tôt, un grand raout au mois de mai avec le besoin que les fonctionnalités soient suffisamment « bling-bling » pour que le marketing puisse en faire quelque chose, à des livraisons beaucoup plus agiles et des fonctionnalités plus adaptables et encore plus proches des besoins réels.

Ecosystème

La première chose qu’on remarque, c’est peut-être le changement d’icône. Voilà près de 30 ans que FileMaker est identifiable par un dossier en carton (ici l’icône de FileMaker 2.0, en 1992) [NB : les puristes —pour ne pas dire David Julot ;)— me feront remarquer que FileMaker 3 avait commis une infidélité], et d’un coup d’un seul cette image est abandonnée au profit d’une variante du logo de la société éditrice, Claris.

FileMaker 2.0

Il faut bien prendre en compte ici l’aspect stratégique de la chose : Claris n’est plus uniquement l’éditeur de FileMaker, elle a désormais d’autres cordes à son arc : Claris Connect, dont je reparlerai plus bas, et FileMaker Cloud. Ces deux derniers faisant de Claris une société de services en plus d’être un éditeur.

Personnellement, j’aurais aimé que l’on pousse la logique jusqu’à changer le nom du produit. FileMaker, le « faiseur de fichier » (ou — littéralement— le faiseur d’embouteillage en néerlandais, ce qui est très vendeur…), n’évoque rien aux générations n’ayant pas connu un index papier. Tiens, d’ailleurs, vous souvenez-vous de l’infidélité commise par FileMaker 3.0 sus-mentionnée ?

FileMaker Pro 3.0

Donc quitte à changer, j’avoue que j’aurais été content qu’on se débarrasse aussi de cette association avec un monde révolu, qui vaut d’ailleurs souvent des remarques du genre « tiens, FileMaker ! ça existe encore ? » par des personnes ayant connu le logiciel au millénaire précédent. Mais ce n’est pas ce qui a été décidé. Passons donc à la suite.

À propos de changement de nom, l’avez-vous remarqué ? FileMaker Pro Advanced a disparu, on parle maintenant de FileMaker Pro (le logiciel avait été unifié lors de la sortie de FileMaker 17, mais on avait opté -étrangement je trouve- pour le nom « Advanced »). Peut-être était-ce dans un premier temps pour que personne ne croit avoir perdu au change, mais quitte à garder ce nom antédiluvien, autant garder celui que tout le monde connaît : FileMaker Pro. C’est chose faite en 19.

Autre point très important à noter : la fin de la compatibilité de FileMaker Pro avec les versions 32 bit de Windows. La plateforme FileMaker achève donc sa transition : c’est 64bits ou rien, côté serveur comme côté client. Là encore, ce sont des versions de moins à maintenir, et plus de ressources pour le développement et l’innovation.

Probablement pour la même raison, la fenêtre de compatibilité a été réduite. Jusqu’à présent, le serveur supportait les clients jusqu’à 2 version antérieures ou postérieures (les clients 14 à 18 pouvaient par exemple se connecter à un serveur 16. Or FileMaker Server 19 n’est pas compatible avec les clients FileMaker Pro Advanced 17, et inversement.

Le Runtime a disparu, comme annoncé il y a déjà 5 ans. Il n’est donc plus possible de distribuer des applications autonomes mono-utilisateur sur Mac et Windows. Mais les runtime existants ainsi que les copies de FileMaker 18 n’ont pas disparu dans la nuit, donc il reste encore un peu de temps aux éditeurs d’applications « runtime » pour se retourner. Notamment, rappelons que le iOS SDK permet de compiler des applications pour iOS.

Premières impressions

Les changements les plus immédiatement visibles sont réservés à la version mac. Fini l’installateur à l’ancienne : on glisse simplement l’application dans le dossier Applications, et c’est parti. Petit détail induit : pour ceux qui comme moi travaillent en Anglais sur un mac OS en français, il faut passer l’étape de la validation. Autrement dit : avant de farfouiller dans le contenu du paquet pour déplacer le dossier fr.lproj, il faut d’abord lancer une fois l’application en français, sans quoi la validation échouera.

Autre point : le Dark mode. Pour les adeptes du mode sombre de mac OS, l’ensemble des interfaces de FileMaker -à l’exception du graphique des liens- a été adapté pour se conformer. Une fonction de calcul permet de savoir si l’application tourne en Dark mode ou non : Obtenir ( ApparenceSystème ). Personnellement, au-delà des considérations esthétiques, j’ai adopté le mode sombre pendant quelques mois pour pouvoir rapporter des problèmes à Claris, mais j’avoue avoir eu l’impression de recouvrer la vue en réactivant le mode clair. Malgré tout, nous avons plusieurs clients qui travaillent dans des environnements sombres (salles de projections, studios d’enregistrement…), et qui seront ravis de cette évolution.
Autre bonne nouvelle associée : pour faire cela, Claris a été obligé de moderniser certaines interfaces, et plusieurs générations de boutons aux styles divers ont (enfin !) été uniformisées (par exemple la fenêtre de gestion des modèles).

Nouveautés

Les nouveautés sont très nombreuses et ont pour certaines d’entre elles des implications très importantes. Si vous êtes en train de lire ce long post de blog sur le site de 1-more-thing, c’est parce que vous savez que bien que passionnés par FileMaker, nous conservons une liberté de ton et un regard critique. Aussi vous trouverez dans les explications ci-dessous, comme dans nos habituelles vidéos, des regrets ou des critiques, mais sachez que dans l’ensemble nous sommes extrêmement enthousiastes à propos de cette version.
J’aborderai ces nouveautés dans l’ordre d’importance, ce qui est bien sûr très subjectif. Toutefois, je regrouperai les fonctionnalités plus orientées FileMaker Go à la fin.

Add-ons

Cette fonctionnalité est en « preview », entendez par là qu’elle n’est pas exempte de bugs, et qu’elle n’a pas encore livré tout son potentiel. Mais cette fonction va révolutionner complètement la manière des concevoir des applications FileMaker.

Présents à titre d’exemple depuis FileMaker 17, les add-ons peuvent maintenant être conçus par des développeurs tiers ou par vous-mêmes. En mode modèle, on peut simplement glisser un module sur l’interface depuis le troisième onglet du volet gauche du mode modèle. Concrètement, on peut intégrer en quelques secondes un module de paiement, un calendrier, un éditeur de texte…
Dès maintenant, je vous encourage à « bookmarker » notre page dédiée.

Un nouveau pas de script, Save a copy as Add-on package, non documenté car en « preview », est là pour créer un Add-on à partir d’une fenêtre ouverte.

Au niveau des regrets —qu’il est encore une fois un peu tôt pour avoir, la fonctionnalité n’étant qu’en « preview »— on notera :

  • impossibilité de partager certaines ressources entre add-ons (si deux add-ons utilisent la même fonction, il faudra l’importer deux fois)
  • pas de mécanisme de mise à jour (si l’éditeur d’un add-on sort une nouvelle version)
  • obligation d’avoir au moins une table dans un add-on. Dommage, ç’aurait été un bon moyen de partager un thème, ou un ensemble de fonctions personnalisées…

Intégration Javascript

Deux nouvelles fonctionnalités concernent javascript : le pas de script Exécuter JavaScript dans Web Viewer et la possibilité depuis Javascript d’exécuter un script FileMaker : FileMaker.PerformScript

Intrinsèquement liée à la fonctionnalité des add-ons car permettant d’utiliser Javascript comme interface de composants, on peut toutefois regretter que dans cette implémentation :

  • Javascript ne puisse être exécuté que dans un web viewer. Il serait tellement pratique et puissant de pouvoir utiliser Javascript dans un calcul ou un script indépendant de l’interface. Ainsi limité, on ne peut pas tirer profit de cette nouvelle possibilité dans les scripts serveur. Heureusement, il existe des plugins tiers pour ça (dont l’excellent MBS)
  • La commande FileMaker.PerformScript ne permet pas de contrôler la reprise d’un script en pause en FileMaker. C’est extrêmement dommage pour une programmation synchrone, dans laquelle un script appelant, en pause, attend le résultat d’une action faite par l’utilisateur dans un web viewer.
  • Enfin, toujours pas de nouvelles de LA demande de tous les développeurs depuis l’introduction des web viewer en version 8.5 (2006) : la possibilité d’obtenir le contenu d’un web viewer après exécution du javascript avec la fonction ObtenirAttributObjetModele.

Ouverture d’un fichier par défaut

Default fileÇa c’est le genre de petites choses qui changent tout. Déjà présente en version 18, mais réservée aux installations automatisées, une nouvelle préférence fait son apparition dans l’interface.

Elle permet de configurer FileMaker Pro pour ouvrir systématiquement le même fichier dès le lancement. Une très grande majorité des utilisateurs de FileMaker utilisent toujours la même application personnalisée. Voici quelque chose qui leur simplifiera la vie.

Petits regrets :

  • on ne peut toujours pas définir ce réglage par script, il faudra donc passer sur chaque machine (sauf en cas d’installation automatisée)
  • comme dans la fenêtre d’ouverture à distance, le chemin d’un fichier distant s’exprime en fmnet:/serveur/fichier et ne convertit pas une éventuelle URL en fmp://serveur/fichier. On n’est donc pas encore entièrement débarrassé de ces explications compliquées pour un utilisateur final. Un petit mémo ici, sur notre portail de support.

 

Sélection de modèle

Layout Quick OpenAutre point qui va cette fois-ci changer la vie des développeurs : la sélection d’un modèle par moteur de recherche.

En mode modèle, utilisez la combinaison de touches cmd-alt-K (mac OS) ou ctrl-alt-K (Windows) pour activer un moteur de recherche permettant de sélectionner un modèle et de vous y rendre rapidement. La qualité de vie des développeurs sous Windows en sera grandement améliorée.

 

Execute FileMaker Data API

Ce pas de script, qui fait son entrée de manière très discrète puisque non mentionné dans la documentation (!) est en soi une petite révolution.

Il permet d’exposer l’API Data au moteur de calcul de FileMaker. Autrement dit, si vous savez créer une requête en JSON pour l’API Data, vous savez aussi le faire au sein de FileMaker. Dans bien des cas, cela peut remplacer (avantageusement) la fonction ExecuteSQL.

Plutôt que de décrire dans le détail ce pas de script, je vous mets en lien un poste de blog de Todd Geist qui a remarquablement synthétisé.

FileMaker 19 Execute FileMaker Data API Script Step

 

Malheureusement, et bien que je sois convaincu qu’il s’agisse d’un immense pas en avant (je serais prêt à parier que ce pas de script sera utilisé de manière intensive dans nos applications), il y a là encore matière à regrets.

  • Tout d’abord, il a été décidé d’implémenter cette fonctionnalité en tant que pas de script uniquement et pas en tant que fonction de calcul. Quel dommage ! Nous nous retrouvons donc avec ExecuterSQL qui est une fonction de calcul dont l’objet de la requête est la table et sans notion de contexte, et Execute FileMaker Data API qui est un pas de script qui requête un layout (modèle), et donc avec une notion de contexte. Faites votre choix ! Il aurait été tellement merveilleux de pouvoir requêter un contexte au sein d’un calcul !
  • D’un autre côté, la grosse limite de la fonction ExecuterSQL, c’est qu’elle ne prend en charge que la lecture (SELECT), et ce au prétexte que c’est une fonction, et donc qu’elle ne doit pas avoir d’effet de bord (passons sur le fait que l’API plugin permet depuis très longtemps à un plugin de contourner cela…). Et donc, l’avantage d’être un pas de script aurait pu être de permettre l’écriture ou l’exécution de scripts, ce que permet l’API Data. Et bien non ! Là encore, ce nouveau pas de script est limité à la lecture. On pourrait se dire que, si l’on a activé l’API Data sur le serveur et que les données entrantes ne sont pas comptabilisées dans la consommation de l’API (limitée en fonction de votre licence), il suffit pour cela d’utiliser Insérer depuis une URL pour poster des modifications de données. Ce serait oublier que la réponse faite par la Data API est elle une donnée sortante et est donc comptabilisée. Cela ne peut donc malheureusement pas être un mode viable de remplacement des écritures dans la base de données, sauf trafic très limité. Bref, on est passé à un cheveu d’une révolution, mais…

Nombre de pages et notation scientifique

Je ne vais pas faire long sur ces deux points. Ils arrivent avec une bonne vingtaine d’années de retard, ce qui nous a laissé tout le temps de trouver des contournements à ces manques, mais enfin… on peut enfin afficher le nombre total de pages d’un document imprimé ou d’un PDF sans recourir à des « trucs » et astuces. Également, on peut, au niveau du modèle formater un nombre au format notation scientifique (en puissances de 10 donc)

Les fenêtre carte dans Web Direct

Le titre dit tout. Les fenêtres cartes étaient déjà gérées mais occupaient toute la fenêtre du navigateur. Désormais on a le même comportement en Web Direct que FileMaker Pro. J’avoue que ça n’était pas un sujet qui me préoccupait beaucoup. Tant qu’on n’aura pas des interfaces vraiment responsive (avec « reflow ») ou des déclencheurs onObjectMouseOver, il me semble que Web Direct ne pourra pas faire illusion en termes d’interface. C’est toujours très adapté pour un intranet, mais si on est exigeant sur l’UX, un développement personnalisé comme nous les réalisons maintenant avec un vrai front end en Vue.js, et l’API Data en backend donne des résultats incomparables, et pour des budgets somme toute très raisonnables. J’avoue donc ne pas parvenir à l’extase avec cette nouveauté, mais c’est tout de même clairement un progrès.

Et du côté FileMaker Go…

Les fonctionnalités ci-dessous ne sont pas toutes strictement réservées à FileMaker Go, toutefois c’est dans ce cadre là qu’elles sont plus pertinentes, c’est pourquoi je les ai mises en fin de liste. Mais ça ne signifie pas que ce ne soit pas important.

Core ML

Core ML est le framework d’Apple permettant assez facilement aux application iOS et macOS d’intégrer des modèles extrêmement complexes d’intelligence artificielle (IA).

Ce qui est implémenté ici, ce sont les modèles dont le résultat est une chaîne de caractères (plus précisément : des données scalaires). Les modèles retournant, par exemple, une image ou un array multidimensionnel ne sont pas implémentés.

Concrètement, les modèles les plus utiles seront à n’en pas douter ceux de reconnaissance d’objet ou de régression… de quoi tout de même proposer des choses très intéressantes, par exemple dans des applications d’inventaire ou de gestion d’entrepôts.

La « fonctionnalité » tient en deux éléments : un pas de script : Configurer le modèle de Machine Learning, et une fonction de calcul : ComputeModel.

La compatibilité indiquée dans la documentation est : Oui pour FileMaker Go, et Partielle pour FileMaker Pro et pour FileMaker Server. Cela nous rappelle que CoreML est une composante de macOS. Les versions Windows, Linux, ou peut-être un jour Android ne sont pas concernées.

Lecture NFC (Near Field Communication)

Voilà une fonctionnalité qui tombe à pic ! À l’heure où tout contact est appréhendé comme un risque majeur pour la santé, FileMaker Go se dote de la capacité d’interagir avec des objets à proximité. Ainsi, avec notamment la facilité d’implémenter un paiement par carte au moyen d’add-on (voir ci-dessus), on peut en plus très facilement lire une carte sans contact. Ce n’est qu’une des nombreuses applications possible avec NFC, et c’est vraiment très simple à faire grâce au pas de script Configurer lecture du protocole NFC. Attention, il faut rappeler que l’iPhone est arrivé très tard au NFC (l’iPhone 6 le proposait déjà mais le réservait aux paiement avec Apple Pay, et il a fallu attendre l’iPhone 11 pour pouvoir en faire autre chose, il faut donc s’assurer que le parc hardware est compatible).

Raccourcis Siri

En ces temps de confinement, il est rassurant de savoir qu’on peut toujours, en cas de solitude extrême, parler à Siri.
Il est désormais possible de configurer un script pour qu’il soit accessible par l’application Raccourcis (Shortcuts).
Bon, je vous avoue qu’à titre personnel je ne suis pas trop fan des interfaces vocales mais j’ai testé et ça marche bien.
En cas de sortie dans l’espace, n’oubliez pas de configurer un raccourci Siri pour le script d’ouverture de la porte, on ne sait jamais.

Hal 9000

L’Univers et le reste

Bien sûr il y a beaucoup de choses à dire sur les fonctionnalités listées ci-dessus. Nous reviendrons notamment longuement sur les Add-ons, mais encore une fois, c’est la direction prise qui est passionnante.
Les Add-ons couplés à l’intégration de Javascript vont véritablement révolutionner la manière de créer des « custom apps » avec FileMaker. Jusqu’ici, on avait de belles longueurs d’avance sur d’autres plateformes comparables, mais il faut reconnaître que certaines avaient aussi leurs avantages, et notamment une architecture modulaire qui faisait défaut. Non seulement le retard sur ce point est en passe d’être comblé, mais on vient de reprendre sur d’autres points encore de l’avance. FileMaker devient difficilement contestable comme leader des plateformes low code.

Claris Connect

Je voudrais conclure sur un point passé presque inaperçu il y a quelques semaines : les nouveaux tarifs de Claris Connect. Lors de la sortie de Claris Connect en mars, nous qui l’avions testé pendant de longs mois et qui étions hyper enthousiastes sur le produit lui-même, étions, pour le dire gentiment, un peu gênés par les tarifs et les plans annoncés. Pour le dire moins gentiment et de manière concise : ces tarifs ne pouvaient absolument pas permettre à cette nouvelle plateforme d’automatisation et d’orchestration d’éclore et de devenir un standard du marché.
Or il semble que nous n’ayons pas été les seuls à penser ainsi. Et c’est intelligemment que l’équipe de Claris a décidé de réagir rapidement. Des nouveaux tarifs ont été publiés, et rendent non seulement la plateforme très intéressante, mais en font également un outil complémentaire de FileMaker. En effet si vous êtes client de FileMaker, le tarif pour Claris Connect (FM Plus) est devenu vraiment très abordable. Ceci signifie que nous entrons vraiment dans un monde beaucoup plus modulaire, où des applications complexes peuvent s’assembler plus facilement, dont les composantes peuvent être plus simples, plus robustes, et dont la maintenance est encore mieux assurée…

Après une version 18 un peu décevante, cette version 19 est un pas de géant !

Si cet article vous a plu, n’hésitez pas à laisser un commentaire ci-dessous.

Je vous rappelle que vous pouvez également sélectionner la licence FileMaker qui vous correspond le mieux grâce à notre petit module (développé en Web Direct !). Merci de passer par nous pour commander et gérer vos licences FileMaker !

Article précédent/suivant
Commentaires (3)
  • Cyril - 27 mai 2020 - Répondre

    Toujours un plaisir de te lire Fabrice ! C’est clair, net précis. Excitant de voir tout ce qu’on va pouvoir faire avec cette version. Au plaisir 😉

  • Gaston Forgues - 8 juin 2020 - Répondre

    Bravo Fabrice et à toute l’équipe de 1mt ! Un autre bel article, intéressant et pas trop marketing. Merci de conserver votre attitude critique car ce sont souvent les « commentaires constructifs » qui font avancer les choses !

  • Mario - 28 juin 2020 - Répondre

    Bien d’accord avec vous. L’avenir est au beau fixe et les mise-à-jour rapprochées permettront sans doute de répondre à plusieurs de vos regrets. Du moins, je l’espère. Sinon, pourquoi rapprocher les mise-à-jour?

Ajouter un commentaire