Why we avoid Ioncube in Magento add-ons

Ioncube is a system for encoding PHP files so that they aren’t readable by humans. Many developers use Ioncube to protect their intellectual property.

While we understand the desire to protect source files (who wants other developers stealing and re-using your code???), we still avoid Ioncube encoded Magento extensions like the plague.

The primary reason we don’t like Ioncube encoded extensions is because it make our lives miserable when there’s a problem. If you can’t read the code, you can’t troubleshoot a problem. So you have to ask the developer questions. The problem is . . the developer doesn’t know about any other extensions are installed or other special circumstances, so they aren’t normally very helpful unless it’s a known issue with their own extension. This can cause hours of additional work (and fees) to a client; not to mention the frustration for the programmer trying very hard to solve a problem.

Another reason is that the site performance takes a hit. The extra overhead can be a small issue for some sites but much larger for others, depending on the number and type of additional extensions and what type of caching is used.

Posted in