As you may already know, alarms have been raised today due to the group FaceTime Bug failure.
That allowed (before picking up) the calling user to see and hear the device they were calling without their consent.
About Facetime Bug
As is logical, and being Apple, people have begun to flood social networks and comments wholly offended. Right now, it is a trending topic on Twitter.
It is usual for us to think that a company like Apple that defends privacy tooth and nail should not have bugs in its software directly related to it. And from the first moment, my opinion is clear.
I agree that it is a significant error and that it should have been detecting and corrected long before the functionality was even releasing to the public.
Some Software Glitches
When a program finishes its development phase, it goes to testing.
These are automatic and manual. And when we talk about a company as large as Apple with so many developments, the tests are usually more intuitive than manual.
Automatic tests, also known as unit tests, are part of a development architecture called TDD or Test driven-development and translated into something like “test-driven development.”
In essence, it is the ability to create a program that can test the functionality of other programs. In the case of Apple, there are two types.
Unit tests that verify the functionality of the app and interface tests that prove that they are correct and well defined.
In the first case, the unit tests, imagine that I have a function that, when called, should return a specific result that I know is the correct one at a functional level.
Again, keeping it simple: I have a process that takes two numbers and returns the sum of their squares.
Errors, Difficult to Manage
The end of the article will clarify two things as a developer with more than 30 years of experience.
Detecting all software errors is impossible. And as obvious or silly as this FaceTime error may seem, the reality, as I have already said.
Is that no one (that we know of) has ever thought of testing the exact use case that led to that failure until 10 days ago since iOS 10.1 Group FaceTime calls were released.
Not even Apple. I don’t justify the company: I consider a software reality to all companies, including Apple.
On the other hand, I sincerely appreciate Apple’s ability to react when they finally realize the mistake.
But it seems more severe to me that the communication channels have failed to report this error and that it has had to be the press that has set off the alarms for the machinery in Cupertino to react and get to work.
What they’ve done in reacting seems exemplary to me, but they had a chance to do it earlier without all the fuss, and they’ve proven to have an important lesson to learn about privately reporting bugs to Apple.