+25
Completed

Stop obfuscating ADAM dll's

Nik De Clercq 3 years ago in Archived • updated by petra.tant 2 years ago 13

ADAM has documentation on it's assemblies. I know you make a fair attempt to make that documentation as good as possible. But it will never be complete.

On some occasions you just want to see what the ADAM code is doing so you can imitate it or adapt it. That's why I prefer working with dotPeek or resharper over reading the documentation. Documentation is great for finding high level answers to high level questions. But once you're knee deep, the documentation can no longer help you.

But using dotPeek or resharper is just messy in ADAM because of obfuscation. Try figuring out how you can manipulate the OnPreCatalog so your custom indexer works exactly as the customer wants. Or try figuring out how you can create a custom FacetControl. Or try finding what ControlBuilder to override to create a custom control builder.

If ADAM dll's wouldn't be obfuscated, it would make my life as a developer a lot easier. It would make the lives of my colleagues a lot easier. They would find solutions to every day problems a lot faster, costing your/our customers a less money.

customization

Preach ! Fight the Power ! :p

I believe ADAM may only obfuscate if they succeed in documenting everything, wich I agree with NIk, will never be realistic. A lot of  valuable time is now lost by scanning obfuscated code to be able to see how things work. 100% agree.

Yup, agree.This would make things a lot more efficient! 

Hello everyone,

 

We hear you and fully understand why you want this. On the other hand, you'll also understand - as developers - that IP protection is important. Currently we don't plan to open up our code, but feedback like this certainly helps to keep it in the top of our minds.

Kind regards,

Petra

 

I understand that Petra Tandt wants to protect ADAM IP.

However companies like Sitecore or Microsoft have IP to protect, but they don't use obfuscation. In fact Microsoft has open sourced their core compiler (that means the sources and even change history is there to grab from github).

Furthermore, obfuscation doesn't protect your IP much. A friend of mine told me it took him 10 Google minutes to find a project on Github that undoes most of the obfuscation. He says it took him another minute to convert the source Adam.Core.dll to a de-obfuscated Adam.Core.dll . He also says the output dll is very readable and he told me that you can find further directions here: https://github.com/0xd4d/de4dot#find-all-obfuscated-files-and-deobfuscate-them

But of course that's just hearsay. I wouldn't try that kind of thing myself.

Changing the status from un-planned to planned :-)

The community got us to rethink our obfuscation strategy and we will be dropping obfuscation in the near future. If it's not in the summer release, it's going to be in the fall release.

Thank you community!

Will this apply for the whole solution stack?

Yes, the whole solution stack.

KR,

Petra

 

Allriiiiiight !!!

Very happy to hear you're considering this and are actually planning this. This will make a lot of my colleague developers and myself very happy !!

+3

As of our Fall release (5.7), you will see our ADAM components unobfuscated.

+1
Completed

Components released with Fall 2016 have been deobfuscated.

Have fun!