Vinai Kopp

Magento Expert, Developer & Trainer

  • Magento Connect for Merchants

    October 17, 2014

    I am a bit surprised and a little embarrassed how much discussion this simple tweet kicked off.

    One response was

    so I wrote down the technical reasons why I think merchants should be made aware of what it means to install an extension (see the link in Marius tweet above for details).

    One important part of the explanation there is missing: the emails I regularly get from merchants asking for help.

    And since I kicked this loose somehow, I feel I should complete the picture and then I can move on to more productive work.

    My hope is that this hubbub will raise the general awareness of what installing an extension in Magento actually means and that it might even save a small merchant from choosing Magento under the false impression that he can manage site extension himself.

    Here are a few examples of the emails I receive on a regular basis, usually between 1 to 2 per week.

    Hi Vinai,  
    I install your Extension on my magneto store but its not working.
    After installing the extension the customer  under 
    customer --> customer manger is not display and Customer 
    Configuration is also not show anything its totally blank.  
    I just install this extension from magneto connect under the
    system in admin. And after install i just go to customer that  
    are not visible. So please guide me if i miss any step to  
    install this extension.
    I am Using Magneto .

    The cause of the issue mentioned in the above email was a combined issue of some setup scripts not executing and a conflict with a different extension.

    I have installed your "Customer Activation" module in a Magento
    shop, but when i try to access "Customer Configuration" in the
    backend, i get this error:
    Fatal error: Call to a member function toOptionArray() on a non-
    object in app/code/core/Mage/Adminhtml/Block/System/Config/Form.php on line 463
    If i disable the module in /app/etc/modules/Netzarbeiter_CustomerActivation.xml,
    i can access "Customer Configuration" again.
    Any help you can provide, will be greatly appreciated.

    In the above case the Magento Connect installer had created some files as folders (WTF!).

    Hi there,
    Really like to try the customer groups catalog2 extension, we
    have to make a dealer selection on our webshop.
    But after installation, i wanted to return to the admin panel 
    from magento connect to make the reindex and admin logout.
    But i get blank page back- and frontend.
    What can i do about this, i had to restore an old backup to 
    make the website work again.
    Im using magento 1.7

    How do I even start educating a non-developer how to enable developer mode, so he can see the error message and provide me with more information so I am able to help?

    How do I tell them to read the module description which includes the SQL statements to run to update the eav attribute table so it doesn’t point to attribute backend models from the extension any more?

    Dear Sir,
    We installed your module Customer Groups Catalog2 on our website.
    Website was slowed down, so we uninstalled the module, but that
    resulted in crash of our website.
    Then we installed the module again and had it disabled, so 
    the website works but we are having problems with our categories,
    and we want to uninstall it completely. Would you be so kind to 
    help us in doing so?

    Turns out (after many emails) the slowdown was caused by a different extension.
    A developer to review the extension and to use profiling to pinpoint the real cause of the issue is really required.

    I've downloaded and installed the customer activation module but
    i cannot find the settings onto system -> configuration -> customers.
    Can you help me, I didn`t received any error messages while making
    installation. Can you help me im sending a screenshoot i hope it
    Thank You.

    This person simply didn’t look in the right place. So after some discussion the configuration suddenly was there after all.
    How would someone who is not capable to find a configuration setting in the backend be able to find the cause of deeper

    By the way, this is not a rare case. It happens a lot.

    Hi Vinai,
    I have installed your Login Only Catalog on my website and it
    works a treat, redirecting customers back to the customer login
    page if they haven't logged in.
    The only issue I have is that my site is set up with a vendor
    login, and when they go to add a new product, it redirects
    them to the customer login page too!
    Can you please give me a screenshot of exactly what I would need 
    to put in the 'disable on routes' box for it to work?

    This is a complex interaction between different customizations.
    Most non-technical people are not able to judge the complexity of a feature.

    I went through this magento extension and felt it fabulous.
    Also read reviews that really earned my interest. The only
    issue i am having is that some of the product pictures, in fact 
    a lot of pictures do not show. Is there anything that 
    can be done to resolve. I tried clearing the cache including 
    image cache but it did not work.

    One again a conflict with another extension.
    Enough of this, I think I’ve made my point.

    And this simply goes on and on and on… these are just a few random examples I grabbed out of my “Magento” email folder.

    As part of my work I also worked with many merchants who didn’t use any of my extensions. This is a general issue.

    It is not possible in the Magento Framework to create extensions that are guaranteed to be free of conflicts.

    Magento is a amazing and highly customizable platform, but that comes with the cost of complexity.

    That means, you need a specialist to work with it. And for Magento extensions, that means a developer is required.

    One does not simply "install an extension"

    Once I came to that conclusion (I’m not the fastest, it took me years), I decided to not support my extensions being installed by non-technical merchants any more.

    If they are technical enough, or if they have an in-house or an external developer, I’m the last to stop them.
    In fact I’m happy if they try out my extensions. And if they turn out to provide business value to them, even better! That is why I released them in the first place!

    In hindsight, maybe I should have reached out to Magento and asked them to simply clarify the message on Magento Connect before removing my extensions.
    I would much prefer they also took the approach to educate merchants before these run into issues.
    But I didn’t, mostly because I believe it would have made no difference.

    Finally, I don’t care if other developers leave their extensions on Connect.
    If you are a extension developer and want to keep your extensions on Magento Connect, great! I’m absolutely fine with that.
    Its your choice.

    I simply drew my own conclusions based on years of experience working with merchants and did what I think is the right and responsible thing to do.

    Should Magento change the message Magento Connect communicates to merchants and make them aware how to treat extensions, I will happily add my extensions on Magento Connect again.

    comments powered by Disqus