Ring on UWP : genesis of a technical challenge

illustration-wup-rin

Ring’s beta 2 version  is now available on the Universal Windows Platform (UWP). It’s not only a great step forward for Ring, an official GNU package, but a technical success for our development team.

This release of the beta 2 is the work of collaborative development between Savoir-faire Linux and the community of developers all over the world. Ring is still a work in progress, that’s why we invite all users- passionate or curious- to test our secure and decentralized multimedia communication platform and give us some feedback.
Since November 2016, Ring is part of GNU, this mile stone marks our involvement in the Free Software philosophy, for its purpose – the free access for all – as much as its development, where every contribution counts. Ring’s universal dimension, with distinctive aspects such as decentralization through OpenDHT, follows its path in the communication software industry, and it has to be available in UWP.
With this new platform, Microsoft’s goal is quite simple : all application developments will be unified, even if the client’s applications are on different devices, such as desktops, tablets, Surface computers, smartphones, Xbox or IoT. The developers‘ job is easier, the application’s code will need to be written only once, with some minor modifications to deploy it in different terminals. For our development team at Savoir-faire Linux, it is an opportunity to get in touch with all Microsoft users. « It offers a lot of potential; Ring could be used on Windows phone, Surface laptops, tablets, or games console such as Xbox, explains Guillaume Roguez, Ring development manager at Savoir-faire Linux.

From a closed system to open software engineering

At Savoir-faire Linux, as you can presume, we are not used to working with Windows environments, hence this was a big challenge for our team. Developers Andreas Traczyk and Nicolas Jäger took on the challenge from the very beginning, until this awaited release.

The genesis started during the first term of 2016, with a prospection phase and a feasibility study. Andreas Traczyk took on this mission,  porting the existing Ring code to Windows. Gradually, an idea arose to Andreas and Nicolas : why not use win32 already created to adapt it for UWP?

_mg_9963


Coding in C++/CX

However, the challenge got bigger, with the choice of the language. Whereas a majority of Windows developers use C#, both Savoir-faire Linux developers chose C++/CX. The first reason was the daemon, which is in C++, «it shall be wrapped to have a C#», explains Andreas Traczyk. The second reason is a pragmatical one, according Nicolas Jäger. « Ring is above all a multimedia software, with video, audio and real time network, and the C++ code allows for resource optimization». This practical choice has been approved by Cyrille Béraud, Savoir-faire Linux president, careful about «the application’s performance standards».

For us, whose core business is Linux code, we had to go off trail, get out of our comfort zone. « Loving complicated things is a way of life» grins Nicolas Jäger. As much as we did not only tackle the User Interface (UI), but also some fundamental parts, simply because they didn’t exist before».

To Guillaume Roguez, Ring’s development manager, it was a positive experience, «because we overcame obstacles, and the first was very colossal: starting from scratch. We tried and succeeded in developing free software in Windows’ universe. »

Free software development is our motivation through Ring. This project benefits from Montreal universities contributions, from Polytechnique Montreal to École de technologie Supérieure. One of them, Université du Québec à Montréal, works to improve the data persistence and indexation in its underlying distributed hash table software library, OpenDHT, with the help of professor Alexandre Blondin-Massé and his graduate and post graduate students. This confidentiality and security issue ignited more than a spark of interest among cybersecurity specialists, throughout the world.
As a Free Software Foundation and Linux Foundation partner, Savoir-faire Linux is an active member of the Free Software community and works towards resources availability, creating and diffusing users value. As a common goods producer, we claim the right of each user to have a free access to knowledge as much as free and universal resources.
Hence the importance of Ring’s release in UWP, because its takes part of  Free spirit.

For more informations
 To download Ring Beta 2 version for UWP, click here.
 To discover Ring, visit our website.
 To contribute to the Ring project, visit our page.
 To suscribe to our mailing list.
 Follow us on @JoinTheRing on Twitter.
 You can contact our developers Andreas Traczyk and Nicolas Jäger.

Published by

Jan Vailhé

Graduated in medias and Journalism at Sciences Po Paris, Jan Vailhé is communications officer at Savoir-faire Linux. His subjects of interest are privacy, big data, competitive intelligence and political issues related to IT. He's completing a Certificate in cyberfraud, specialized in human behavioral risks at Polytechnique Montréal.

3 thoughts on “Ring on UWP : genesis of a technical challenge”

  1. Ring seems to be an interesting approach to non-server-based communication. I also like the SIP integration. However, I’ve encountered some problems with the beta2 on Linux which I would like to report. I tried to register an account on https://tuleap.ring.cx/account/register.php but I didn’t received the email verification mail. I’m waiting for over 1 day now, and I retried to get an account today. Is the registration on your ticket system really working?!?

Leave a Reply

Your email address will not be published. Required fields are marked *