Windows 8 Modern UI development

Microsoft has announced a technology called Windows 8.1 Universal App. This technology allows to develop an application for both Windows Phone and desktops.

When did Microsoft announce the official launch of Windows Modern UI and that it became possible to program using this technology? When did you start using it at Diatom Enterprises?

In April 2014 Microsoft has announced a technology called Windows 8.1 Universal App. This technology allows developing an application for both Windows Phone and desktops, taking all the advantages of Windows 8 Modern UI which is a feature of Windows 8.1. Several months prior to the official release of this technology, it was already possible to download and set up all the necessary in Visual Studio 2013, to get a closer look at it. We started to interact with this technology approximately 2 months before the release.


Can we discuss one of your applications that are already placed in Windows Store? How much time was spent on its developing, testing and publishing?

To get to know better the Windows 8.1 Universal App technology, we decided to revise the already existing application, DiatomArt Book, which was already developed for Windows 8. The application itself is a photo gallery, with function to view each photo in an enlarged size. We simultaneously developed a desktop version and one for Windows Phone. The task turned out to be a little more difficult than it first seemed. The fact is that in the previous version the third-party libraries were used, which were developed for Windows 7 and 8, but not yet developed for Windows 8.1. Finally, we decided to create all functionality from scratch, using native components of Windows 8.1. This resulted in a deeper understanding of new technology. For instance, we found out that at formal resemblance with Windows 8, the approach to developing an interface for Windows 8.1 differs quite significantly. Now that we know how it works from the inside, I can say that Microsoft did major work to improve the usability of applications for Windows.


To your point of view, what is conceptually new in developing technology for Windows 8.1?

While developing for Windows 8.1, the main difference is in approach to user interface development. If we are to compare the Microsoft guidelines for Windows 8 and Windows 8.1, it might seem they were designed for completely different versions. From the point of development, Microsoft did a great job so that it would be really easy and convenient to develop for Windows Phone and desktop. The means available for that in Visual Studio 2013 provide complete support.

What problems could be faced by a programmer (.NET 4-5 years of experience, 1-2 years of experience in developing applications for mobile devices) who is new at developing for Windows 8 RT? How much time could it take to have good command at programming in Windows 8 Modern UI?

The main problem that an experienced programmer will face is an approach to user interface development taking into account peculiarities of mobile devices for different platforms. Meaning, the way how a programmer got used to implement functionality in other applications may not work or can be very difficult to implement. But after studying the correspondent guidelines, everything clicks into place. (This is fair for developing on any mobile platform. Each has its own peculiarities). It might take a couple of months to master the peculiarities of user interface development for mobile devices. As for the rest, the already existing experience can be used successfully.


From your experience in developing applications for Windows 8, what do you think is the most unmaintainable, and what’s a delight for the eye?

Everything is really good and everything is a delight when it comes to development for one platform. Windows, Android and iOS developers mostly prefer the environment they develop for. When it comes to cross-platform development, they must choose technologies that allow doing it faster but withdraw all the advantages of the native development environment for each particular platform. In this case, the biggest delight is such a promising cross-platform technology as Xamarin, which is the most similar to programming for Windows.

How many members are there in your team with experience in developing for Windows 8?

At the moment we have 4 developers ready for large-scale project development. But should the necessity occur, any professional experienced in programming with C# and WPF (Silverlight) can join us.

Do you feel this technology is promising?

I think that Windows 8.1 has become much more user-friendly. Mobile devices where this operating system is used have become more easy-to-use and they have become more widespread. Thus, Windows 8.1 is becoming a serious competitor to iOS and Macintosh.


What is important and what took most of the time before placing in Windows Store? What do you suggest to all future Windows 8 Modern UI developers?

Microsoft has made a serious step to the application publishing process. Before its placement, the application is tested for compatibility and compliance with the requirements to all applications for Windows 8.1. If we compare to Android and iOS platforms, the publishing process for a Windows application looks the most complicated. But on the other hand, it allows making sure the users are not going to face problems with further search and purchasing of an application in Windows Store and Windows Mobile Store. To all junior developers for mobile devices, I would suggest starting from studying the guidelines for UI and UX for a corresponding platform. At the early stages, this allows to design and consider many nuances of developing an application. As for the rest, what comes to business logic and data access, know-how and previous experience can be used.