We learned to fly by examining / observing birds and other flying creatures. Leonardo Da Vinci started developing the design of a flying machine based on the shape/pattern of a bat’s wings. Recently, the US Army was working on a boat surface that’s similar to shark skins, in order to stop bio-fouling (caused by small sea creatures that get stuck to the sides of ships). Also, a new adhesive based on how geckos grab the surface with their feet is under development.
As such, we see that quite a lot of innovations come from imitation, but that definitely doesn’t have to be the case always.
Recently, one of our clients requested a test case that would help check whether any user, calling from a mobile device to their specific customer service numbers, would be hearing the correct automated voice messages or not. I looked through different audio comparison tools, but none seemed to function reliably in collaboration with the E2E environment that we worked with. If it would have been an image comparison, then I would’ve known how to go forward. However, that was not the case here.
So, I tried to think about how Shazam or SoundHound works. These devices create sound fingerprints with an algorithm that they (tightly) keep under the wraps. They are very complex and I myself didn’t quite understand everything about them. Then I thought of something. What if I create those fingerprints myself? What if I adopt the idea instead of the exact technology? They didn’t necessarily have to have all the features that a Shazam would have. It just needs to work in the end.
I recorded a reference version and added a test recording to the test case. Then I ran spectrograms from both of them and did an image comparison. After tweaking the configurations a bit, I noticed that I could reliably check the correctness of the recording.
I think that’s the key point here: You don’t need to imitate something to innovate for your projects. You should simply try to create something that would help achieve your goal; and if, what you create is close enough to fulfill the needs, then rest assured that your efforts have paid off.
About Tuomas Peurakoski
Tuomas Peurakoski has been Consultant for Sogeti Group since 2013. During this time he has been continuously trying to find new ways to think outside the box and connect the already defined processes into more logical and streamlined gestalt entities. He has worked during this time in several different roles: test automator, manual tester, test manager and training. He is also the Finnish representative of Sogeti Mobile Testing STS and works a lot with sales to find the best solution for customers’ mobile testing needs.
More on Tuomas Peurakoski.