You can also listen to our podcast to learn a lot more!
Would you rather listen to an amusing conversation instead of reading this blog post? We've got some great news for you: This blog post is a summary of the eleventh episode of our Power Lab Podcast series, in which two of our most entertaining experts explore the platform's features each month and even come up with new insights.
Lennert’s experiment: the wonderful world of NFC tags
This month, Lennert opened his own store where all products have an NFC chip. Of course, he also built a Power App to read the tags using the “Read NFC” function. An NFC tag can contain all kinds of information such as text, a link to a location in Google Maps, or an email. Using the built-in Power Store app, the items in the store can be scanned and you can see what you have and how much it costs. What about a barcode, we hear you thinking. That’s certainly possible, but NFC tags cannot be abraded or become dirty in a warehouse, you can update the information in NFC tags, and the tags can be encrypted. Lennert also came up with another practical application. He put an NFC tag on his bedside table to generate an automatic email to his manager saying he will not be able to go to work that day due to certain circumstances. This shows that automating tasks is also possible, but we would advise you to focus on productivity-enhancing tasks, unlike Lennert.
The difference between a canvas app and a model-driven app
A canvas app is an easy way to create an app. You can choose exactly what the app will look like, for example using your corporate colors, and you can make the layout pixel-perfect. This doesn't take much effort because a number of fixed components, such as text boxes and buttons, are available. Connections to databases such as Dataverse or SharePoint can be established quickly. An app like this works very well for capturing information, for example using a form. People who do not use an app like this on a daily basis will also be able to quickly find their way around it.
The other option is a model-driven app. When you build an app like this, you start from data in Dataverse. You can use ready-made components and screens built with a few clicks based on the selected data, such as dashboards or graphs. This type of app is ideal for processes based on complex business logic. The design of the app can be adjusted, but this is more limited and complex than with a canvas app.
Choosing is (not always) losing
In some cases the choice is easy. The best way to implement ticket logging when you’re on the go or let visitors register via an iPad is a canvas app. You should also opt for a canvas app for apps that need to be integrated into Microsoft Teams. Apps with a much broader set-up, needing advanced functions or containing a complex business process fit perfectly with a model-driven app. For example, an app for a bicycle rental company where you want to keep a clear overview of all available bicycles and reservations on a dashboard or keep track of which bicycles need maintenance.
It's not always possible to make clear distinctions; sometimes both types of app have advantages and disadvantages. So how do you make the right choice?
- Define your target audience. Which profiles will use the app? And how often? A canvas app is perfect for a relatively large audience who won't use it often.
- Look at the underlying data source. Is there a lot of data to display? A model-driven app can display a lot of data and offers an extensive user experience.
- Is responsiveness important? A model-driven app is responsive by default, even with large data sources. With a canvas app, you have to build this in yourself, and it’s not easy to make the data manageable.
- Is UX important? With a canvas app you build everything yourself, giving you the freedom to create a beautiful UX.
- Choose a solution that is future-proof and scalable.
It’s also good to keep in mind that a mix can have positive effects. You can display a canvas app in a model-driven app to make it easier for users to upload photos, for example. Always look for the win-win situation!