Our ally, the Master Build

Exactly two years ago, Vivaldi 1.0 arrived. Get ready to give two minutes of your reading time to know what this number is all about.

5279. Does this number intrigue you?

Version 1.0 arrived on 6th April 2016 and was described as promising.

We try not to get too hung up on birthdays – we are moving ahead. But as we focus on the very important tasks on our collective plate, we wanted to take a quick pause and reflect on these past two years. It’s fun to dig in and share some insights with you once in awhile.

So, with that, let’s get back to that mystery number. 5279.

Over the last two years, we have made some great friends all over the globe including a friend that we simply can’t do without – the Master build.

Over these 730 days, our most bankable ally – the Master build – has helped us get this far. We have encountered this friend of ours 5279 times since then.

The number of Master builds is important because most Master builds represent a single fix or improvement (though occasionally if the machines doing the building are busy, they will have several fixes). A Master build is an automatic, complete build of the entire source tree. In other words, this number tells you a bit about just how much Vivaldi developers have gotten done in the last two years.

If you consider weekends and holidays it is somewhere around 10 builds per day (an exact calculation is tricky as we have devs in several countries with different national holidays, plus people occasionally work on weekends… and personal holidays, of course).

But… why this number?

We had asked Ruarí Ødegaard, who works in quality assurance and testing (QA), to come up with a measure of our activity over the last two years. After much internal debate, he selected the number of copies of Vivaldi Linux64 Master builds we’d made during this time period. Here’s his rationale:

“Internally our intention is to make a new version of Vivaldi for every commit to our Master branch. In practice, even our fastest build machine (Linux 64) takes around seven minutes to build and package a copy of Vivaldi. Thus, if two or more developers commit changes within those seven minutes, the builds may contain multiple commits. For the most part however, the Linux 64 build machine does a good job of keeping up, and so this is close to the number of changes to Master.”

Here are his thoughts on why this method (and every other one he could think of) is still not quite perfect:

“While 5279 provides one view point on the level of development, it is far from perfect. A commit can be multiple lines of code or it could be a single character change. And even this does not tell the whole story, as developers sometimes spend a very long time working out how to fix a bug, resulting in a single line change, and perhaps write fifty lines of code for the next commit and yet take half the time.”

“It also doesn’t really give you a clear idea of the total number of Vivaldi builds we produce and store internally because the number is for just one of the build machines. We actually make versions of Vivaldi for seven different desktop architectures (Windows 32Bit, Windows 64Bit, MacOS, Linux 32Bit, Linux 64Bit, Linux 32Bit ARM, Linux 64Bit ARM). We also make builds for test branches.”

Still going

5279! And this number will increase as you read this. This “increase” has quite a ring to it.

It’s a journey with ups and downs and crazy rabbit holes – but it doesn’t stop here. Good software, like wine, takes time.

For these two years and many more to come – the Master builds will continue to be our strongest ally while we develop more features and capabilities of the highest quality to give you a product that you deserve.

Stay tuned, throughout the month of April we will bring you more insights into how we work at Vivaldi!