Tuesday, April 05, 2016

Forty Thousand Dollar Coin Flipper Program

Have you heard about the $47,400 piece of software that randomly points an arrow left or right? TSA says its Randomizer app only cost $47,400 This doesn’t seem very complicated so why/how could it possibly cost so much. I spent a few minutes coding a version in TouchDevelop. It’s called TSA Arrows and you can see it using that link. It works. It’s not pretty but it works.

imageI used images that were already in the TouchDevelop picture library and you have to touch the button on the bottom right of the screen. And there lies our first clue as to costs that are not obvious.

Chances are they had an artist either create or obtain rights to arrow images. Art work is not always (really not even often) free for commercial use. Sure an arrow is easy to draw but it’s still an effort. I would assume there were several people debating the size and color of the arrows as well. Believe it or not these sorts of things are not done in a vacuum.

Let’s think about the randomization. Is it just like flipping a coin or is there a ratio of right to left that has to be used? None of the articles I’ve read make that clear. If so there is a little more testing. Not a lot but you can’t just assume things work right when getting it wrong could inconvenience thousands of people.

These projects, any commercial project really, involved several people even for something this simple. Usually a designer, a coder, and a tester. Sure they could be all rolled up into one person but typically they are not so that there are several eyes on everything. The designer probably had to work with someone at TSA to determine all of the requirements. That takes some time. You’d be surprised how hard it can be to get a good set of project requirements – even for something that appears this simple.

The programmer has to create the program and have it tested. It probably had to run though several levels of approvals as well. That’s time and effort right there. One doesn’t just throw software on hundreds of devices without people trying it and approving it. It is very likely that the first version was not approved. I’ve seen some very picky customers in my time.

And there is management overhead. Remember that this is part of a much larger contract as well. Everything has to fit together and that requires some overhead. If all that was involved was the single randomizer things would be simpler and cheaper.

Now don’t get me wrong, I still think $47,400 is a lot of money for the program based on what I know about it. But I have to admit that I probably don’t know all I need to know to determine what a reasonable price might be. That is with many years of industry experience. There just isn’t enough information about the requirements to know what was requested. I can imagine it seems even more ridiculous to people who haven’t worked in a commercial software company.


Garth said...

I think I would have sold them a die with two colors. Red right, green left. Just roll the die. More fun.

Kevin said...

You also don't know whether it's truly 50/50 random, or if there are other variations. Or if there is a version for more than one line, or to push some smaller number of peopl to the Precheck line (but maybe only if traffic there is low). And you don't know how it ties in with back-end systems that track traffic flow -- you could imagine this would be a clever way to get accurate counts, as well as change the algorithm depending on how traffic is flowing in other lines. But then that communication needs to be secure.