From LQWiki
Reverse Engineering is the act of taking something apart to study how it works. This is commonly done in the software industry when trying to create a product compatible with another proprietary product. A good example would be common Instant Messaging protocols, such as AOL Instant Messenger, and Yahoo! Messenger. The protocols are picked apart to examine how they work, so one can create a multi-IM client such as GAIM to work with them, or simply an open source alternative such as aMSN. Another example of Reverse Engineering would be the creation of Samba where Microsoft's SMB was reverse engineered to make an open-source product capable of sharing files with Windows computers.

This page is available under a