Book Image

Learning Joomla! 3 Extension Development - Third Edition

By : Timothy John Plummer
Book Image

Learning Joomla! 3 Extension Development - Third Edition

By: Timothy John Plummer

Overview of this book

Joomla 3 is the first of the major open source content management systems that was meant to be mobile friendly by default. Joomla uses object-oriented principles, is database agnostic, and has the best mix of functionality, extensibility, and user friendliness. Add to that the fact that Joomla is completely community driven, and you have a winning combination that is available to everyone, and is the perfect platform to build your own custom applications. "Learning Joomla! 3 Extension Development" is an integrated series of practical, hands-on tutorials that guide you through building and extending Joomla plugins, modules, and components. With Joomla having been downloaded well over 35 million times, there is a huge market for Joomla extensions, so you could potentially earn some extra cash in your spare time using your newly acquired Joomla extension development skills. We will start with developing simple plugins and modules, and then progress to more complex backend and frontend component development. Then we will try our hand at ethical hacking, so you will learn about common security vulnerabilities and what you can do to avoid them. After that we will look at how you can prepare your extensions for distribution and updates, as well as how you can extend your components with various plugins and modules. Finally, you will end up with a fully functioning package of extensions that you can use on your own site or share with others. If you want to build your own custom applications in Joomla, then "Learning Joomla! 3 Extension Development" will teach you everything you need to know in a practical, hands-on manner.
Table of Contents (18 chapters)
Learning Joomla! 3 Extension Development
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
Index

What business model should I adopt?


You can use whatever business model you can think of. One of the great things about Joomla! is that you have a complete freedom of choice. Here are a few popular business models used in the Joomla! community that you may consider when developing extensions:

  • 100 percent free model: This model is popular in the Joomla! community where many extension developers give their software away for free. Why would they do this? Sometimes the development cost is funded by the developer's employer or client, and they feel this software would be useful to others, so they share it with the community. The benefit to the developer is that other people in the community can contribute back additional features or improvements, so the person funding the development gets an added bonus. It can also give recognition to the developer, which may be helpful if they are looking for work or trying to promote other extensions. Extension developers often get approached to make customizations to their product for a fee, which can often far exceed the money they would make if they were to sell the extensions, and without giving it away for free, they would have missed out on these opportunities. Some developers just like to contribute to the Joomla! community, so they give their software away for free since they have benefited greatly from the contributions of other community members. There are also those that develop extensions for Joomla! as a hobby and are not interested in any commercial benefit; they just enjoy working with it and improving the software.

  • Freemium model: This is a popular model where you can get the basic functionality for free, but need to pay for advanced features. The most popular example of this is the Akeeba Backup software, where the free version gives you a great piece of software that many people use to back up their site. There is a pro version that gives you extra functionality such as the ability to remotely store backups on Amazon S3 or Dropbox, which is not needed by everyone, but those that do are more than willing to pay for these features.

    A variation on the freemium model is where a component is given away for free, but you need to pay for the add-on plugins and modules. One good example is the Joomla! Content Editor (JCE).

  • Once-off purchase model: This model is sometimes used where a user purchases an extension, then receives updates for free for the lifetime of that product. This can be attractive to the end user that doesn't want ongoing subscription costs, particularly those that just want the software for a single website or a small once-off project. From a developer's perspective, using this model makes it easier to support as you only really need to support the current version. If someone is having an issue and they are still using an older version, you can just send them a copy of the latest version and in many cases, this resolves their issue. It also takes the pressure off the developer to release new versions regularly and add significant new features just to justify ongoing subscription costs of other models.

  • Subscription model: By far, the most popular business model in the Joomla! community is the subscription model, where the user pays a subscription fee which then gives them access to one or more extensions and updates for the duration of the subscription. The subscription typically could be six months or twelve months. This is popular with developers as it gives them an ongoing revenue stream, however from an end user perspective, the total cost of ownership of the software can be more expensive than some of the other approaches, particularly if the extension is only used on a small number of sites. However many subscriptions also include free support, which can decrease the total cost of ownership for end users should they run into issues, as some of the other business models charge a separate fee for support, which in some cases can exceed the initial purchase price. If a user is paying a subscription, they expect to get more frequent updates, and to get something for their ongoing fee, otherwise some users may choose to discontinue their subscription.

There are many more business models you can consider, however your individual circumstances and business goals will help you determine which approach is most suitable for you.