Microsoft’s new cross platform software framework – What does it mean to your business?
Yesterday at the Microsoft Build conference they announced MAUI, the roadmap to their new cross platform software, single codebase framework, quoting from their release;
Introducing .NET Multi-platform App UI:
As we consider what building device applications will look like in a unified .NET, we see many devices across multiple platforms used, from Android and iOS to Windows and macOS. To address this need we are excited to announce a new first-class UI framework for doing just that: .NET Multi-platform App UI, affectionately call .NET MAUI.
This means a lot to us as developers, but what does it mean to you as business owners, decision makers, and end users? To your business?
App languages – how they differ
All computer software (apps are just software applications, all the same really) is traditionally designed to run on it’s intended platform, the Web, Windows PC, Apple Mac, iPhone, Android etc – an app written for one platform will traditionally be written in the language that platform expects, all these platforms have different native languages, ie an app written for one won’t work on another.
In layman’s terms, if you learn French it will stand you in great stead on a holiday to France, but pop next door to Spain and you’re stuck. Unless you learn Spanish too, but that’s twice as much work.
Multiple App Platforms
Which is where us developers come in, most developers speak more than one language, but certainly not all, and in the past you had to be careful that the language choice the developer was making for your project was because it was the right one for your needs. Not because it was the one they knew. But as IT expanded, people started using their own devices, and mobile computing became the norm it stopped being about which platform – Mac vs PC if you will, but which platforms – plural.
So if you ask a developer to create you a mobile app you are probably targeting iPhone and Android, two platforms, two languages (Objective C or Swift, and Java in case you were wondering!) – so that’s actually two apps you need, twice the work, twice the support, twice the cost!!! If only there were some (good – there are bad ways, we don’t do them) way of creating good, native, performant apps on both platforms, from one codebase, one product to support, and only one to pay for – cheaper is better right?
How can Xyroh help?
Well for most cases there is, it’s niche, here at Xyroh we do it, and have spent a lot of time and resources investing in these skills, the platform we use is Xamarin from Microsoft, and in *most* cases, certainly B2B projects it’s perfect – outputting great, custom mobile apps for iPhone, Android, Windows Phone – Tizen even – at good value to your business.
Well that’s what this announcement was about, the next stage. Microsoft’s new MAUI framework will allow us to create line of business apps that run on;
– Android
– iOS (iPhone and iPad)
– Mac OS
– Windows
All from one project, one codebase, one cost – but much more value. So if you have a need for apps, be it a mobile app, a desktop app, or even a web app in your business then we’d love to talk to you.
Related Articles:
– Native App, Hybrid App, or somewhere in between?
– Xamarin Cross Platform Application Development – Book Review
Andy, the founder of Xyroh, is a mobile app developer, specialising in cross platform mobile apps, iphone apps, android apps, as well as web applications and desktop software for business clients across the North East – feel free to contact him to engage his services
Service Engineers Reminders Software Case Study
Prior to Xyroh, Andy was the founder of dotUK (A software development firm based out of Yarm and Stockton on Tees here in the North East), again specialising as a developer in mobile apps, web applications and desktop software for a number of business clients – this is one of those portfolio case studies for windows based resource planning app
Desktop Software
Desktop Software, or desktop applications are the built in or installed apps available to you on your desktop / laptop computer of choice, for many this is a Windows based PC, but it could be an Apple Mac or a variant of Linux. We can develop desktop software for all of those platforms, often a cross platform application that can operate across all three. This case study is for a windows based desktop software application, operating in a client / server environment ie multiple desktop users puplling data from the central database server.
Project Summary
The Service Engineers Reminder Software is a simple, single user, windows desktop app that helps tradesmen keep track of scheduled work, services, safety checks etc
Sometimes the simplest solutions are best, this service reminder app, which has been commissioned by a local heating engineer, will start life as a single user, stand alone, windows desktop application. However it is easily scalable into a multi user networked environment (with little to no infrastructure costs) and even options to sync / backup data through cloud services to make a multi user, multi site product.
The core functionality is to record when clients have products, services, or schedules that are due for renewal and offer a range of reminder options. As an example landlords are required to have annual gas safety checks which is a service the client offers. This app will allow this to be recorded, and when comes due the option to remind via email, text message, or generate a mail merge document that allows letters to be sent out in the post.
As always the focus is on specific functionality, ease of use, and value.
Desktop Software for Resource Planning Case Study – RetroFlo
Prior to Xyroh, Andy was the founder of dotUK (A software development firm based out of Yarm and Stockton on Tees here in the North East), again specialising as a developer in mobile apps, web applications and desktop software for a number of business clients – this is one of those portfolio case studies for windows based resource planning app
Desktop Software
Desktop Software, or desktop applciations are the built in or installed apps available to you on your desktop / laptop computer of choice, for many this is a Windows based PC, but it could be an Apple Mac or a variant of Linux. We can develop desktop software for all of those platforms, often a cross platform application that can operate across all three. This case study is for a windows based desktop software application, operating in a client / server environment ie multiple desktop users puplling data from the central database server.
Project Summary
This project was to create a Windows Based Resource Planning Application, allowing businesses to see at a glance upcoming resource availability and holiday allocations
This was the second of our recent commissions for bespoke windows desktop software, and was for an electrical contractor based here in the North East. The challenge to overcome here is the ability to see clearly, quickly the spread of human resources in upcoming months, both those engineers and fitters allocated to existing projects, and of course holiday time when resource is unavailable.
Our bespoke solution will record the allocation of staff resources to projects, and allow the categorisation of the labour types. It will also record upcoming staff holidays, with this combination of data managers will be able to scroll to a specific timeline and view, filtering down if need be, the allocation of resources and ability to schedule in, or not, additional work based on the still free resource.
This project is the precursor to a bigger solution, but allows us to focus on and solve immediate business problems for the client in a cost effective and timely manner
Art Screen Prints – Cross Platform Mugs App Case Study
Prior to Xyroh, Andy was the founder of dotUK (A software development firm based out of Yarm and Stockton on Tees here in the North East), again specialising as a developer in mobile apps, web applications and desktop software for a number of business clients – this is one of those portfolio case studies
Summary
Art Screen Prints based in Guisborough here in the North East specialise in producing print based fund raising merchandise for schools, clubs and other associations. One such product is ceramic mugs printed with the pupils drawing. In order to best represent the potential end product the need to produce Parental Order Forms (POF’s) that are personalised with the pupil’s details, and as close as possible to a final representation of the Mug printed with the pupils drawing. We would also need, within the same workflow, to print the final print ready templates in PDF format for use in the printing process,
Technical
Client Art Screen Prints – Guisborough based School and Fundraising Print
Platforms Apple Mac, Windows
Technologies C#, Mono, GTK+, .Net, ImageMagick
Development Desktop Software, Mac Software, Windows Software, Cross Platform Software
Case Study
One of the unique requirements of this software development was the fact that the client used a mixture of both Apple Macs, and Windows based PC’s and as such this tool would potentially need to run, in the same manner, across both platforms.
The workflow is in essence two fold, presented with a folder of pre-scanned images (grouped by Class, or other equivalent organisational hierarchy), the desktop application we developed would need to take this feed of images, process them, and generate one, or both of;
- Print Ready, PDF Formatted print template for the actual scaled image to appear on the Mug
- A Parental Order Form to be distributed to the schools representing a final printed mug as closely as possible.
To do this we built the application utilising the Mono framework (a Cross platform representation of the C# language that allows applications to be built from a single codebase under Windows, Mac, and Linux). However as this was a desktop application and we had to consider the User Interface (UI) it was also necessary to make a decision on the UI framework. In the end we settled on GTK as the best performing, simplest, multi platform graphical interface framework, for what was as an interface quite simple.
The application itself was mostly a wrapper around pre-generated ImageMagick (A cross platform software suite for manipulating images programmatically) commands that we built to create both the print template, and the POF. Particularly challenging was the need to take a flat two dimensional image, and create the effect of wrapping and warping the image ‘around’ the Mug so as to represent what the human eye would see in the flesh.
In addition, owing to the batch processing and time it would take, we had to ensure to user asynchronous event based programming within the apps interface to ensure that a consistent update on progress was fed back to the user, without the application timing out, or ceasing to respond as it would with lengthy synchronous waits.
Thanks to our success the project grew to encompass a sister project for the generation of Calendar templates, and associated order forms.