A team of three developers at MIT Innovation AG, a subsidiary of MIT-GROUP, used Xamarin to develop Picturex, a powerful, private photo sharing app that targets two different user groups: consumers who use it as a freemium app to collect and share all photos taken by all guests during an event such as a wedding or a concert, and corporate customers who can purchase a branded version to deploy in their internal app stores for their employees and/or customers. For example, one of Picturex’s early customers uses Picturex to enable employees to share images of retail store designs and merchandising to improve sales.
“One of the key selling points for Picturex is that users don’t need to worry about their private and sensitive data,” says Linard Moll, Senior IT Consultant, MIT Innovation AG. “All of the uploaded photos are deleted from our servers after 14 days by default, and data is encrypted in transit.”
The app has many features that help distinguish it from the competition. Users can create a shared photo space with just a few clicks and invite others to take part with one of the many invitation mechanisms such as a QR code, PIN, near-field communication, or sharing via email or message. The app suggests photos to upload, and all of the photos taken at an event can be downloaded to keep. Users can also stay in contact during and after the event with private messages and push notifications.
Cross-platform, Native Development with Existing Skills
MIT Innovation AG was in search of the ideal cross-platform solution from the beginning. “We had previously worked on multi-platform apps using Apache Cordova,” says André Meyer, Developer at MIT Innovation AG, “but we were always looking for other opportunities. We built a version of Picturex for Windows Phone and got great feedback, so we set out to build Android and iOS versions. That was when we decided to give Xamarin a try. We were happy with the results, and have developed several more apps with the platform since then.”
Native performance was a must for Picturex. “We found that hybrid and web-based development models did not deliver the performance we needed, so we decided to develop Picturex as a native app only,” Meyer reports. “Given the work involved in rewriting the app for each platform compared to using the Xamarin framework, it was not a difficult decision. With Xamarin, we can create true native apps that offer a device-specific experience and run at full speed compared to web-based frameworks.”
With Xamarin, MIT Innovation AG can work in a familiar development environment with a language it knows well. “Being able to use Xamarin in Visual Studio together with common tools like ReSharper is very comfortable and accelerates development. Xamarin also allows us to program in C#, where we had the most experience,” says Michael Jöhl, Software Developer at Picturex.
Building with Shared Code and Microsoft Azure Saves Time and Money
One of the key benefits of Xamarin is the ability to reuse code across iOS, Android, and Windows. “We estimate that we can share around 80% of the Picturex business logic code thanks to Xamarin,” says Jöhl. In addition to cross-platform efficiency, code sharing makes branding the app for corporate customers faster and easier. “Xamarin simplifies software maintenance and evolution, freeing time for new ideas and innovations. We save time and money, which we can invest in other apps or additional features for Picturex,” Moll adds.
The app also relies on high-performance web services to deliver a great user experience. The team has created a web API for Picturex, which is built on Microsoft Azure App Service along with Azure Database and Storage Services and runs on Microsoft Azure. The services are set up for high scalability, redundancy, and automatic failover.
A Cross-Platform Future with Xamarin
Xamarin is supporting MIT Innovation AG’s growth and future plans. “Since launching Picturex, we have successfully launched a couple of other multi-platform apps developed with Xamarin. One of our most successful apps for the Windows platform is TouchMountain, an augmented reality app that helps users recognize mountain peaks worldwide. Users consistently request this app on iOS and Android,” says Meyer. “Now there’s a way we can add a version for these platforms—using Xamarin, of course.”