Why the world needs reverse engineers
Published: 11 Oct 2000 15:05 BST
We especially need the ones who are willing to share what they find publicly, for free.
Companies don't like it when people take apart their products to see how they work. They would like it if their products were treated as black boxes. "No user serviceable parts inside," they say. Or, "Opening case will void the warranty." Many software shrink-wrap licenses even bind you contractually to not reverse engineer the software. Hex editors and disassemblers, which are common programmer tools, are not allowed.
What are they hiding in there?
Companies are hiding a lot of things: their mistakes, security vulnerabilities, privacy violations and trade secrets. Usually, if someone finds out how a product works by reverse engineering, the product will be less valuable. Companies think they have everything to lose with reverse engineering. This may be true, but the rest of the world has much to gain.
Take for example the :CueCat barcode scanner from Digital:Convergence, which Radio Shack, Forbes and Wired Magazine have been giving away. It scans small bar codes found in magazines and catalogs into your computer, then sends you to a Web site, which gives you more information. Linux programmers, ever eager to get a new device to work with the Linux operating system, took the thing apart.
They reverse engineered the encoding the device used and found out how it worked. This allowed them to write their own applications for the device. One of the better applications was one that allowed you to create a card catalog for your home library. By scanning in the ISBN barcodes on the back of your books the application is able to download information from Amazon.com and build a database. So here we have someone building something new by stitching together the :CueCat, Linux and Amazon.
Digital:Convergence didn't like this at all. It wanted to be in control of the Web site you went to when you swiped a barcode. The company didn't like the fact that other people could write software for the device it was giving away and that they didn't make any money from that. It also didn't like the fact that, in the process of reverse engineering the :CueCat, programmers discovered that every one of them has a unique serial number. These programmers later found out and publicised that this serial number is tied into the customer information you give when you register your :CueCat on the Digital:Convergence Web site. The end result is Digital:Convergence can record every barcode swipe you make along with your customer information.
Reverse engineering allowed people to truly understand what the product was doing. This wasn't at all clear from information that Digital:Convergence originally gave out...






