2 ms·
I suppose an algorithm that takes a little longer to run might make the user think that the software is doing something more advanced, but that would only apply
by davidcuddeback 17y ago
I suppose an algorithm that takes a little longer to run might make the user think that the software is doing something more advanced, but that would only apply when the software leaves room for the user to make qualitative judgements about the answer.
Take the filters in photo editing software for example. In Photoshop, you can apply many types of filters. Let's say you apply a noise-reduction filter in Photoshop and it takes 3 seconds to run, then you switch to the Gimp and apply a noise-reduction filter and it runs instantaneously. [1] The slowness may lead users to believe that Photoshop's algorithm is more advanced. Of course, this may partially be due to branding. Photoshop is the $1000 professional photo-editing software, whereas the Gimp is free editing software put together by hackers. This ties it to your analogy in the original post. Now if the situation were reversed, and Photoshop's algorithm ran faster than the Gimp's, I suspect it would be less likely for people to believe that the Gimp's algorithm is more advanced.
This may work for a noise-reduction algorithm, because there is no one correct answer. People may believe that the microscopic differences in the pixels represent a difference in quality. Obviously, if you compare two algorithms that are supposed to compute an answer for which there is an oracle (e.g., Fibonacci or factorial), then slowness is just slowness. If I write a slow implementation of fib(n) and you write a fast one, people will know yours is better because it's faster and there's no ambiguity in the answer that could allow room for people to believe that mine is "more advanced."
Of course, this is just me speculating. I don't know of anyone that's conducted research on this.
[1] This is hypothetical. I know nothing about the performance differences between Photoshop and the Gimp.