Fog Creek Software
Discussion Board

Reflector, .NET and Open Source

I have been digging around in the .NET Framework for a while with the excellent Reflector.

Reflector makes all .NET code effectively "Open Source", in that you can learn from it and (where appropriate) apply lessons learnt to your own work.

This is one of the best aspects of the Open Source movement, as far as I can see, although it is ironic that the same thing applies to Microsoft's flagship technology.

I know we've always had disassemblers, etc (I know, 20 years ago I was writing them), but it seems so much easier nowadays.

Thursday, July 29, 2004

What about obfuscated code? Can it deal with that too?

Also there's a lot more to open source than being able to look at source code...

Thursday, July 29, 2004

binaries and 'source' are equivillents.  It has always been possible to take a binary and convert it to sensible sourcecode that a human can more easily digest.

Open Source doesn't mean that you can look at the 'source' (you've always been able to do that, even by reverse-engineering binaries); it means you have the *right* to look at the source.

i like i
Thursday, July 29, 2004

I have all ways assioated Open Source with the concept of many people contrubuting to application by colabarition over the internet.

anyway HP sauce tastes better

Gary van der Merwe
Thursday, July 29, 2004

No, this has nothing to do with being "Open Source" unless you have the rights to disassemble the binary.

You're talking about hooking a monitor up to a black box and then saying "I know what's in the box".  No, you don't.  You can make some reasonable approximations, but they are just that.

Thursday, July 29, 2004

A quick note on Reverse Engineering:  You have ALWAYS had the right to reverse engineer.  This is NOT like 'copyright', where you can't copy.  Reverse Engineering means you take it apart and see what makes it tick -- with the goal of understanding and applying it better, or with the goal of takeing the 'Trade Secrets' and applying them to your product.  This is legal. 

The 'anti-reverse engineering' clauses in most eula's are not legal, nor are they enforceable.  (Note I am NOT a lawyer, this is merely my understanding from reading websites)

Company ideas and techniques that are protected by Patents, that you learn about through reverse-engineering, still belong to the Company, of course.  So, you must be careful how you apply the things you learn from reverse-engineering.  The process itself, however, is allowed.

Thursday, July 29, 2004

Unless you live in the US, where some reverse engineering is explicitly illegal (see: DMCA).

Brad Wilson (
Friday, July 30, 2004

*  Recent Topics

*  Fog Creek Home