Digital technology has revolutionised the media landscape, as much for those of us consuming news, as for those gathering, producing and distributing it. While in the past, press clippings were manually gathered every morning and sent out by email, we now expect to have on-demand, real-time news from all over the globe 24/7.
Journalists, politicians, press officers and other communications professionals need fast, easy and real-time access to the news stories that interest them. Wherever they are, at any time of day. Which is why Belga News Agency asked us to develop a native mobile news app optimised for speed and performance.
But when it comes to how we receive our news, we don’t all want the same thing, at the same time. Which topics? Long- or short-form updates? Written, video or audio content?
November Five, together with Belga New Agency, have created Belga.press, a native app for both Android and iOS that responds to demands for fast, real-time access and personalised content.
Thanks to the mobile app, users have access to the news they want to read, whenever they want, wherever they want. And with features like trending topics, customised searches and push notifications, and sharing of specific news items, users can tailor the experience to suit their needs.
Read on to find out how we used agile product development for continuous performance optimisation.
As Belgium’s main news agency, Belga gathers and distributes news from a staggering number of sources and news brands, including print, online, multimedia and social media channels, 24 hours a day, 7 days a week.
With such a range and volume of information, the challenge lay in finding a way to give users instant access to exactly the news items that interest them.
From a development point of view, our decision to use React Native – one code base for both Android and iOS – brought considerable advantages in terms of development time, maintenance and bug fixing. But the downside was that this framework doesn’t support multi-threading as well as a pure native app does, meaning that several services couldn’t run in parallel.
To deliver the smooth and instantaneous experience users expect, we would need to find a way to optimise the app’s speed and performance.
Using an agile product development process, the app took shape over six product increments. Rather than optimising each individual functionality for speed and performance, we carried out performance testing at each stage in the process, and ranked any issues according to the impact they had on the user.
We then optimised each critical issue to enhance loading times and improve app performance. This approach made the most sense as it kept our focus and priorities on the areas that would bring the most benefit to the overall user experience.
One example of mobile app performance optimisation is how the ‘storytag’ functionality works. Through storytags, users can follow different topics they’re interested in, such as ‘climate change’. In this case, every news item tagged under ‘climate change’ is clustered to that storytag, which groups all the news items related to the topic.
In the app, each storytag topic is divided into 3 categories: News, Activity on social media and Related topics. To ensure optimal loading times, we first load the News tab, which is immediately visible to the user. Then in the background, we load the 2 other categories/tabs, which remain inactive.
When the user switches tabs, the content loads instantly because it has already loaded in the background while the user was in the News tab.
On this same page, we also optimised performance by storing the page information, allowing for even faster loading the next time the user opens it.
By loading only the News category in the foreground, and the Activity and Related categories in the background, loading speed is greatly improved compared to when all 3 categories are loaded and rendered at once.
We always work in partnership with our clients, and the Belga.press project was no different. Together with Belga Press Agency we created the product strategy and roadmap, defined the product, and developed it using an incremental agile process.
Through 6 product increments, we kept the end user at the centre of our focus, identifying and addressing the performance issues that would have the biggest impact on user experience.
As a result, we’ve been able to optimise the app’s speed and performance in 10 different ways, including decreasing the loading speed of the storytag detail page from 2 seconds to 300 milliseconds.
Now that’s what we call hot off the press!