Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming IT Technology

What Is A Clean Room Implementation? 7

Bryan Brunton asks: "I am writing an open source game called Merchant Empires For now, it is almost completely based on a closed source game called Space Merchant. IMO, Space Merchant is slow, ugly, and bug-filled. I am getting Space Merchant users who log into my game, spew some profanity and claim that I will be sued. I have no access to Space Merchant source code. Can I be sued? If so, what do I need to do to make my game qualify as a clean room implementation?"
This discussion has been archived. No new comments can be posted.

What is a Clean Room Implementation?

Comments Filter:
  • Every product except the very first has been a copy of an original. When companys like Compaq released AT clones were they lame for doing it? No. There is a difference between a flat out copy and an improvement. Reinvention is not lame, its how we have better, safer and cheaper products than the original.
    -This sounds completely legal as long as you did not copy any part of the orginal code or reverse engineer and use any of the engine or game code.
  • The team that develops the product (ie the second team) has to have some way of showing that they do not know about the original product. This is often not easy to do since you need to find skilled people to develop a product but in the course of them gaining skills they never came accross your product. These people are refered to as software vigins and demand a pretty hefty price for the knowledge and *lack* of experience in certain areas, since after completion of a project they now have experience in that area.

    A famous example of virgins in action is the development of IBM PC clones. Sure you could buy an intel CPU chip off the shelf, and a video card from someone, but they key to an IBM clone was their ROM BIOS - something that IBM didn't want to sell to everyone. So people like compaq hired people (don't ask me where they found them) who had experience designing hardware, but had somehow never seen the IBM BIOS to develop a product based on team A (who are new dirty since they have intemately gotten to know the IBM BIOS)'s product design.

    A very imporant key is the cleanlyness of the virgins - since if you lie about them, the vendor being copied can show that your hole development process was a charade.

    An attempt to keep things from looking too obvious is to use sort of an OO approach wherein your dirty design team breaks the product down into so many sub components that the developer of each respective component has no clue of what the project is they are working on. This type of practice is common in governmnet positions where keeping lowly joe-coder from knowing if his sub-routine will be for a secretaries email cilent or for a missile pointed at Russia.
  • There were tons of Doom and Quake clones, and nobody cared.

    I would suspect the people spewing profanity are 18 years old and need a life. Don't let them worry you, as long as you don't have access to the source. But make certain you dont disassemble the commerical code at all.

    Was not IE a clone of Netscape which was a dressed-up clone of Mosaic? WordPerfect was pretty close to WordStar....

  • by Jason Pollock ( 45537 ) on Monday June 12, 2000 @10:52PM (#1006802) Homepage

    O.k. the standard clean room process is used to re-implement projects through reverse-engineering.

    First, one developer/team comes up with a detailed specification of what the program does. This person/team is the one who has complete access to the product being reverse engineered. The developer writes up a detailed specification, including file formats, interfaces, everything.

    Once the specification is completed, the first team will go to a lawyer and hand off the specification. The lawyer then goes to the implementation team and gives them the specification for implementation. There can be no communication except through the specification between the two teams, and the specification cannot include any of the original source, etc. (in other words, cut/paste, screen shots don't count). I don't even think that you are allowed to ask questions back to the original team. Once the spec is handed off, the original team is finished with the project, never to be heard from again. The members of the implementation team should also have never seen the original product that they are re-implementing.

    Then the implementation team implements the product according to the (hopefully very) detailed specification.

    Once this is all done, you should have a clean room re-implementation of the original. Of course, you will then end up with having to fight all of the lawsuits based on trademark infringement and copyright (see pac-man).

  • Could you please supply URLs for 'clean room' techniques? TIA

    ---
    disable your animated screen saver, it wasted your CPU time
  • All my info comes from Cringely's "Triumph of the Nerds" show. But a quick google search turns up the following pages, complete with some legal arguments:

    1. www.jonesaskew .com/articl es/97/0497avoidiplit.html [jonesaskew.com]
    2. www.jli.com/services.htm [jli.com] (look at clean room, further down the page)
    So it shouldn't be too hard to find others. Jason Pollock
  • Why? After the first proper car prototype was produced, was it lame that people should copy, and then improve upon it?

    If someone has a good idea, but implements it in a way that you do not like (or can see room for improvement in), then IMO it's not copying it if you attempt to develop a better one.

    I find this interesting that you mention this on /.. Since Linux is essentially a modified (arguably improved, since *ix is so diverse) Unix-like OS, it's probably the wrong place to state such silly opinions.


    --

What the gods would destroy they first submit to an IEEE standards committee.

Working...