There is a permanent discussion about modules on Magento (ok, and about open source model also, is it viable doing business on this model?): some people defend that open source should always be free (of no cost), totally open, with no blocked parts.Other people says that is possible close some modules and charge for them, even if based on open source softwares, like Magento. Who is right? Is possible charge for a module for Magento? Or a Magento module must always be free of charge?
When thinking of Magento modules, the model I like the most is freemium, where you offer a basic and no-cost version, allowing people to know more about your module and use it, without advanced features. If somebody needs more advanced features, she can buy a premium version of this module. Earned money with paid versions makes the operation profitable and allow more and more persons to try this code. But most developers stop here and forget another main stream of revenues: support.
The point is: you don’t need to offer support only for your paid modules. Lots of store owners don’t need advanced features and are happy with functionalities they get from basic version but would pay for support in a happy way, getting updates and fast support when something goes wrong. This is special when we talk about critical modules, like payment and shipment methods.
Going beyond, support can be offered not only for own-developed modules. There are several plugins availlable on Magento Connect without developer’s support. They are academic projects, leisure-time projects, developed by people who were not concerned what would happen after module launching. These are good codes and power lots of Magento stores, without somebody to help store owners when things crash.
The conclusion is: modules can be open or closed, free or paid, well- or bad-coded. What will really decides if it is a good one is the support level you will have. From the original developer or a total different company.