1. All about Joomla!

In this chapter there is a little bit of history, a little bit of future, and a lot about where the Joomla! Project is right now, including how it is organized and how to navigate through the Joomlasphere. Over the years since the project started in 2005, there has been tremendous growth both of the code base and of the community that supports, works with, and contributes to the code. As with a number of open source projects, Joomla! is more than just about code; it is about the people and culture that surround it.

Joomla! is used by people all over the world to create millions of Web sites. It powers sites ranging from personal blogs to large corporate infrastructures and Web brands. It is easy to use and administer for novice Webmasters and flexible enough to be used for complex Web solutions.

A Brief History of Joomla!

On August 17, 2005, Andrew Eddie, the lead developer of the Mambo open source project, wrote this letter to the community:

The same letter was posted to the new forums located at OpenSourceMatters.org. With that letter, one of the largest open source project forks began.

Within 24 hours, approximately 600 community supporters had joined the forum at OpenSourceMatters.org, and a call went out to the community to suggest a name for the new project. While this was going on, the forked code base was going through a transformation, making it ready for rebranding and structuring under the new name, as well as getting a few bug fixes. Hundreds of names were suggested for the new project. The Core Team at the time enlisted the help of a marketing and branding consultancy to assist them in making this important decision. Two key factors were heavily considered while determining the new name of the project. The first was the importance of the name being new and unused, and second, it needed to signify what the project was all about in terms of its community philosophy. On September 1, 2005, the chosen name was announced as “Joomla!,” which was derived by using the English spelling of the Swahili word jumla, meaning “all together.”

The next request to the new Joomla! community on September 7, 2005, was a contest to create a logo with the new name for the project. Approximately 500 community members submitted logos for consideration, and on September 14, the results were announced with the top five logo designs selected by the Core Team.

On September 16, Joomla! 1.0 was released to the community, and the Developer Forge was announced at http://developer.joomla.org. On September 18, the Joomla! Demo site was announced as operational, and on September 19, at the end of the voting period for the logo contest, the community had cast a total of 2,761 votes, with 31 percent of the votes going to the entry “Joomla 01” designed by Alan Urquhart, community member, photographer, and graphic designer. Figure 1.1 shows a copy of his winning entry.

Image

Figure 1.1. Alan Urquhart’s winning logo contest submission

Joomla! 1.0 was followed quickly by 1.0.1, which contained some small bug fixes and completed some of the rebranding process. On October 2, 2005, version 1.0.2 was released with the rebranding effort complete.

In 47 days, with the help of approximately 7,100 community forum users, a dedicated Core Team, and a wide user base, the Joomla! open source project began its official journey to being one of the most widely used content management systems in the world.

On October 6, it was announced that the Joomla! Project had won “Best Linux/Open Source Project” for 2005 and that Brian Teeman, a founding member of the project, had won “UK Individual Contribution to Open/Source” for 2005, both at the Linux & Open Source Awards in London, England.

Joomla! the Content Management System

A content management system (CMS) is software that allows you to create and manage Web pages easily by separating the creation of your content from the mechanics required to present it on the Web.

In a Web site, the content is stored in a database. The look and feel are created by a template. The Joomla! software brings together the template and the content to create Web pages. The Joomla! content management system allows content and data to be collaboratively shared and created. Joomla! allows people with or without technical knowledge of coding for the Web to be able to have dynamic Web sites that they can easily manage.

One way we like to describe Joomla! to people who are new to content management systems is to compare it to a standard office. The whole of Joomla! is the room. The filing cabinet in the office is the Article Manager, where you have categories (drawers of the filing cabinet), subcategories (file folders), and your articles and content items (pieces of paper, images, videos, sound, and other data inside the file folders). You can extend or add things to your office such as a phone (Joomla! extension: live chat extension), fax machine or scanner (Joomla! extension: form submission), and computer (Joomla! extension: content editor) to make your workflow easier. The great thing is that Joomla! keeps all of it organized for you. (Extensions are described more fully later in this chapter in the “Joomla! Extensions Directory” section.)

Another powerful way that Joomla! allows you to manage your site is through the User Manager. The User Manager allows you to control how your users interact with your site through the use of simple user groups, which is similar to being able to lock the door to your office or filing cabinets. This allows you to give permission to see and do specific things to those viewing or browsing your Web site and a different set of permissions to those who are contributing content to your Web site or managing your Web site with you. The Media Manager helps you manage your media files such as images, video, or documents, allowing you to create folders to organize them, and it integrates with the built-in content editor, which makes it easier to insert them into your content items and is very similar to how your computer helps you store and find your files to use them effectively.

Joomla! right out of the box has the functionality that most people need to have a basic, easy-to-manage, informational Web site. It also allows for a very high level of extendability to create very complex Web sites and information systems.

Joomla! the Platform

The Joomla! Platform provides the software framework and architecture for the Joomla! CMS and other applications. Software frameworks refer to the architecture of a program. Frameworks are efficient because they allow for code to be reused as part of the design. The Joomla! Platform goes a step further than a basic framework in that it provides a set of conventions that make rapid application development possible. When you install the Joomla! CMS, you automatically install a copy of the Joomla! Platform along with it.

Understanding the Joomla! Platform isn’t necessary for most users of the CMS, but it is the foundation that makes the CMS work so well. The Platform is the base set of software libraries and design patterns on which the CMS runs, and it is the part of Joomla! that makes it easily extendable.

Joomla! 1.5 introduced the Joomla! framework as the first step to separating the framework elements of the program from the CMS application. This was done to allow for the framework—now known as the Platform—to support multiple applications, not just the CMS. Figure 1.2 illustrates how the Platform supports the CMS application and how the CMS application is extended with extensions.

Image

Figure 1.2. Diagram of how the three layers (the Platform, the CMS application, and extensions) work together

Platform external libraries and plugins make up the foundational layer. Libraries are reusable “collections” of code that perform a specific function and that can be reused by different independent applications (in fact, the Platform is really a large and complex library). Libraries allow data to be used and shared in a modular way. Plugins are used to extend the functionality and operate throughout all parts of the software to link pieces together and build in flexibility.

Applications are programs that run using the functionality of the Platform. The Joomla! CMS is an application that runs on the Joomla! Platform. In fact, it is actually two applications, one that is used to display your Web site and another that is used to administer it. The separation of the application layer from the Platform layer allows developers to create other applications to run on the Platform’s functionality. In fact, your installation also includes some smaller applications called Command Line Interface Applications (CLIs). In July 2011 the Joomla! Platform became an independent project to encourage development of new applications.

Modules, components, and templates are items that extend applications. Modules, for example, are a way to present data, components are a way to organize and store data, and templates are a way to visually organize data presentation.

The Joomlasphere

The Joomla! Project is a very broad and diverse community made up of users and developers of all levels of experience. To support the community, the project offers a number of resources to help people use Joomla!, extend it, and develop on it. The first stop in the Joomlasphere is the Joomla! forum.

The Joomla! Forum

Internet forums or message boards are used for online discussions among groups of people both small and large. As of the writing of this book, the Joomla! forum (http://forum.joomla.org) has more than 530,000 registered users, 590,000 topics of discussion, and 2.5 million posts, making it one of the largest forums on the Internet. The popularity of the Joomla! forum means that lots of people have asked questions and received answers on how to get started on, install, use, and extend Joomla! The forum is also one of the places where the project helps keep the user base informed with announcements, including information on the current status of the various aspects of the project, and it also allows the project to get feedback from users.

Most Internet forums are organized with the same basic hierarchical structure:

Forum: Usually the front page that gives an overview of the organizational structure of the forum, showing what boards are available to read and post in.

Board: A general subject category.

Topic: A specific topic of discussion. Topics are started by someone making a new post to ask a question or begin a discussion.

Posts: Individual communications from a single user.

The forum is divided into a number of main boards that help direct users to the proper place to find an answer, ask a question, or start a topic of discussion. Some of the main boards have subboards that divide the subject matter into smaller themes.

The first step is to register on the forum. Near the top of the forum is a Register link. Once you click it, you are shown terms and conditions for using the forum and the software that runs the forum. If you agree to the terms, you can continue with the registration process. After you have agreed to the terms, you are taken to the registration screen, where you will type in the username that you want to use, your e-mail address (which needs to be a valid e-mail address), and a password. You can also set your language preference and your time zone. At the bottom there is a spam prevention CAPTCHA, which consists of a word recognition puzzle that you must solve, and then you can submit. After you submit the registration form, a verification e-mail will be sent to the e-mail address that you specified. The e-mail sent to you after submission will ask you to verify your e-mail address by clicking a link that directs you back to the forum. If you do not perform this step of verification, your forum account will not be activated. If you do not receive the e-mail fairly quickly, check your spam e-mail box to see whether it was redirected there. If you still have not received a verification e-mail, you can visit the forum again and click Login; from that screen you will be able to have the forum resend the activation e-mail.

The first board is the Joomla! Announcements forum, which is used by the project to announce important events such as a new release (version of Joomla!), security bulletins, and other information important to the community at large. Subscribing to a board allows you to get e-mails when new posts are made. To subscribe to the Announcements board, you need to be inside the board itself. You do this by clicking the Announcements board title on the front page of the forum. Once you are inside the Announcements forum, you will find the Subscribe link just under the title Announcements. We highly recommend that everyone in the community subscribe to this forum.

If you have come to the forum to solve a problem you are having, using the search function can save you a lot of time. The search box is located in the upper-right corner of the screen. This search box searches all the Joomla.org sites for words or phrases matching your search query. Most common issues and questions have already been asked and answered a number of times on the forum. When searching the forum, it is important to try to use search terms that are relevant to your issue but not so broad as to return results that are too general in nature. For example, if you are having an issue installing Joomla! because it won’t let you continue to the next screen, you could use the search query “installation will not continue.” This will lead to a search results page that combines results from all the sites. At the top of the results screen, you can filter the results according the site the results came from. If you click the Forum link, it will show only results from the forum. You can then browse the results and determine whether one of the results can help solve your problem. If the results are not satisfactory, you can try searching again using different terms or proceed to posting your situation on the forum to get the assistance of the community.


Tip

If you get an error message, try including the specific message, or portions of it, in your search query.


To submit a new post to the forum, it is best to look at the different boards available and find the one that applies best to the issue or problem you are having. This will help you get assistance more quickly, as a lot of community members tend to watch specific boards where they think they have the most experience and where they can give the most help to others. Using our example search query regarding installation, the best fit to get assistance would be the Installation board. When you enter that board, you can scan the available topics to see whether there is already a discussion that applies to your situation; also, most boards have “sticky” posts that are always situated at the top of the board. These sticky posts usually contain the answers to most commonly asked questions, resources for more help, and posts that are important to that particular board.

How to Ask Questions That Get Answers

To create a new topic on a board, click the NEW TOPIC button. The screen will refresh, and you will see a text editor where you can fill in the details of what you want to post.

• You can choose an icon. This is usually for fun or to show with a green check mark that a problem has been solved. It is important if you have received an answer that solves your problem to go back to your first post and edit it by marking it with the green check mark icon. This tells people that the question has been answered but also allows people looking for help to know a helpful answer is available in the topic.

• Make your subject title as descriptive as possible but still fairly short. Using “Help me” as a title or “URGENT” does not describe your issue, and most people will skim past posts with titles like that. Also, do not use ALL CAPITAL LETTERS. Using all caps won’t get you help more quickly and tends to be looked upon as an Internet social faux pas because it conveys SHOUTING. Having a descriptive title not only helps those wanting to help you but also helps those who are seeking answers.

Using our example of installation, a good descriptive title could be “Installation won’t continue past the fourth screen.”

• In the message body of your post, try to be as descriptive as possible regarding your issue. If you have gotten an error message, try to copy the exact error message you have received into your post. Describe what you see on the screen and what you were doing when the issue occurred. Sometimes it is helpful to post a link to your site (such as with template questions). Having a link to a site allows people to see exactly what is going on so they can help troubleshoot your issue.

• At the bottom of the screen you will see the option to upload a file, such as a screenshot. Screenshots can be useful to show what is happening if you cannot share the link to your site or your site is not available for public viewing.

• When you are satisfied with the content of your post, click Submit.

After you have submitted your post, please be patient. Sometimes a community member will answer immediately, and other times it may be a few hours or even a day or two. If your question is not answered within a day or two, you may have to make another post to your topic to give more information. Always be polite and considerate of others, and remember to say thank you if someone gives you assistance.


Tip

How well you ask questions on a forum determines how quickly and effectively you will be answered or get assistance.

Topics that are likely to get an answer:

• Visiting my home page gives a 404 error.

• How do I make my home page a registration form?

• Recommendations for a calendar extension?

Topics that are unlikely to get a (helpful) answer:

• Site broken

• Confused

• Joomla! stinks


The Joomla! forum is also the best place for people who are new to Joomla! to contribute to the project by answering questions of other users. No matter where you are situated in your Joomla! experience or your level of skills, there will always be someone else who has a question that you can answer. One of the very best ways to improve your knowledge of Joomla! is to explain what you know to others.


Tip

At the top of the forum there is a link that asks you to read the forum rules. These rules outline the community’s code of conduct and make all the resources on the Joomla.org sites collaborative and friendly to everyone. The rules are pretty straightforward and common sense and are based on basic principles of being a good global citizen.


The Joomla! Community

The Joomla! community (http://community.joomla.org) is composed of everyone and anyone who uses, creates with, develops for, manages, or is a fan of Joomla! (and everyone in between too). The community front page gives a snapshot of almost everything that is current, showing the latest blogs from both project leadership and community members, helpful tips, quick links to download or demo Joomla!, upcoming events, and information about Joomla! User Groups. The Joomla! Community Magazine provides articles on a monthly basis related to Joomla! targeted toward users and developers. Also linked in with the community site is the Joomla! People Portal site (http://people.joomla.org), which is a social networking public space.

Joomla! User Groups

Joomla! User Groups (JUGs) are geographical organizations created by users and are located all over the world. These groups of Joomla! users meet in person to discuss, develop, promote, and help each other with using Joomla! They are a great way to meet new people, and a lot of JUGs find interesting ways to contribute to Joomla! through events and activities. As of the writing of this book, there are more than 140 JUGs.

Starting a JUG is as simple as finding other people in your geographic area who are interested in Joomla!, having a primary and secondary contact person, and registering your group at http://community.joomla.org/user-groups.html. Registering gives your group access to resources and materials that will help the group be successful in running events and organizing activities.

Joomla! Days

Joomla! Days are a variety of events that are organized by JUGs and other groups in the Joomla! community and are supported by the Joomla! Project. They typically take the form of a one-day conference, with speakers and demonstrations.

Joomla! Developer Conferences and Summits

Joomla! Developer Conferences are similar to Joomla! Days but are targeted toward people of moderate to high coding skill who develop for, develop with, or extend Joomla! The conference schedule usually includes talks by the lead developers of the project on the current status of the code base, the road map for future development, and how to use the framework and application layers to extend Joomla!’s capabilities. It is also a chance for developers to get together and assist each other with their own individual projects and create a good sense of community within the greater community. There is also the opportunity to speak to developers of other open source projects who interact with Joomla!

Joomla! World Conferences

Joomla! World Conferences are large international events that span several days, organized by local teams working within the Joomla! Project.

Other community events are held regularly throughout the year such as bug squashing (finding and patching bugs in the code), documentation camps, and user guide creation.

The Joomla! Demo Site

The Joomla! Demo site (http://demo.joomla.org) provides people with a way to try Joomla! The site gives you a 30-day account with your own individual Joomla! installation. You can explore the use of Joomla! and even build a fully functioning Web site. At the end of the 30 days, you can either continue with paid hosting or export your site to a different location.

The Joomla! Extensions Directory

The Joomla! Extensions Directory (JED) is a centralized information portal (http://extensions.joomla.org) on GNU General Public License (GPL) extensions that have been created for Joomla! Extensions help expand the functionality of the Joomla! CMS and the framework, and most likely if you have a need for some functionality that isn’t in out-of-the-box standard Joomla!, an extension has been created for it. The other service that the JED provides is a platform to support the vibrant commercial and noncommercial GNU GPL developer community because its contribution to the Joomla! community is critically important to the growth and use of Joomla!

What Are Components, Modules, and Plugins?

• Components are mini applications that integrate with the framework or CMS. They have their own specific functionality, their own database structures, and their own presentational aspects. Examples of components are a Web forms application suite, a photo gallery or document download system, or the Web Links component found in the default Joomla! installation.

• Modules are presentational elements. They take information that already exists and present it in visual “packages” that you can place in your template in a flexible manner. Modules also help extend components by allowing the data from a component to also be presented visually. Examples of modules include the latest photo from a photo gallery or a slide show of the photos. The default Joomla! install has a Latest News module that extends the Content component to show a list of the latest articles added to a site.

• Plugins are small portions of code that work behind the scenes to modify how your site behaves. As a page in a site is loading, plugins will scan the page and, based upon what is being sent to the browser, act according to the instructions that it has been designed for or programmed to do. Example plugins might insert the code from your analytics supplier such as from Google or Woopra, they might place a border or shadow around an item automatically, or they might be the editor that you use for editing your content. Joomla! has a number of default plugins such as the e-mail cloak that stops e-mail addresses presented on your site from being read by spambots.

The directory itself is set up so that individual extensions are grouped by the functionality they provide. A listing will generally contain information about an extension, what it does, and whether it is a module, plugin, or component. It will also list the developer’s name or company name, include the date the extension was added to the directory, and include the last date that the extension’s listing was updated by the developer along with links to download. Some developers include links to demos, support options, or documentation.

The JED also allows users of extensions to rate and review them. An extension can be rated on a scale of 0 to 5, with 0 being unrated or low and 5 being excellent. All reviews are read and approved by the JED team of editors before being published. The analysis of reviews before publishing allows the JED editors to assure that the review follows the rules and guidelines that are published in the FAQs located on the JED site.

As of the writing of this book, more than 8,500 extensions are available on the JED site, and new extensions are added every day.


Tip

Extensions are a great way to bring your Web site to life with added functionality that improves your users’ experience. One thing to note is that if you install an extension and find that you don’t want to use it or it doesn’t supply the functionality that you need, you must remember to uninstall it completely. Having outdated and unused extensions installed on your Web site can be a security risk. Also, it is a good idea to keep a list of the extensions you are using on your site along with their version numbers. Doing so will allow you to be more easily informed if an extension needs updating. It is good practice to sign up for any update notifications that developers may send out to the users of their extensions and also to periodically check developers’ sites for updates or information.

The vulnerable extensions list (VEL) is a list of extensions that may have security issues that is updated as often as possible by the VEL team. A link to that list is shown at the top of the Announcements forum, and the list itself is located on the Official Documentation wiki (http://docs.joomla.org).


The Joomla! Resources Directory

The Joomla! Resources Directory (JRD) is an initiative of the project to help users connect with professional providers of services that relate to Joomla! (http://resources.joomla.org). It is also a platform that helps professionals in the Joomlasphere promote their services, which fosters a greater community of contributors to the project. There are categories of service listings ranging from consultancies and freelancers to tutorials and training.

Sometimes You May Want to Call in a Professional

Many people hate to do it, but sometimes a professional is needed to either advise or assist someone in getting a job or a task done, whether it is a decision made at the beginning of a project or during the process before the project is finished. There are times when we all overlook the benefits of hiring a professional, whether it’s because we think we can do something for ourselves or believe we can learn our way through an issue or because the funding to hire a professional just isn’t available.

The good news is that Joomla! professionals come at all price levels and different areas of expertise, giving good value to their customers. Here are some examples of when to call in a professional:

• If your site has been compromised or attacked because of a security vulnerability. It is best to get the advice and services of professionals in such cases, even if it is only to check on the steps you took yourself to clean up and restore your site. If your site and database are not checked properly to make sure that all the compromised files and data have been removed, you are at risk of having the same issue happen again.

• If you are under a deadline to launch a site. Sometimes we all underestimate how long something is going to take. If you have a business and have prepared advertisements for the launch of your site and business, it may save you a lot of time and headaches to have a professional help you meet your goal.

• If you have an existing site but are unsure how to maintain it and keep it updated. In that case, lots of Joomla! professionals offer training on both a one-on-one basis and in group classes. One class with a professional can make the difference between frustration and success.

• If you want a site, and you just want it done, preferably sooner rather than later. You just want to be able to log in and create or edit your content and get on with running your business or organization. In that case, contracting with a professional to create your site from start to finish is a good choice.

That being said, there is no absolute reason that you have to hire a professional, because you always have the forum, documentation wiki, and a multitude of sites that offer documentation on various aspects of Joomla! such as Joomlatutorials.com or other sites that are similarly created by the community at large.

The Joomla! Template Directory

The Joomla! Template Directory (JTD) is a planned addition to the Joomla.org family of sites. A template is a special kind of extension that controls the look and feel of a site. Great templates involve much more than excellent graphic design; they also may include custom code and provide good user experiences for your visitors. One of the great things about using Joomla! is that there are so many excellent templates available. There are templates that are available for free and templates that are commercial. It is often more time-effective to choose a template that is similar to what you would like for your site and modify it slightly than to create your own. This is especially true when templates have complex visual effects created using JavaScript.

Your Joomla! installation comes with a set of flexible templates to start you off and these may suit your purposes, but in general selecting a new template from a template designer is something that many Webmasters do. Looking at the templates in the JTD can give you lots of inspiration for your site as well as illustrate some good design practices. If you would like an individually designed template, the JRD provides information about custom template designers.

The Joomla! Bug Squad

The Joomla! Bug Squad (JBS) was created in late 2007 as a subgroup of the Development Working Group to take over maintaining releases of the code base once they are in stable release and to take the lead in the testing and polishing work that takes place in the final stages of preparing a new software release. Software releases generally follow a specific schedule set by the development team; usually the release schedule is as follows:

Pre-alpha: This is the stage where functionality and design are fleshed out and is a period when new features are discussed and implementation starts. It is typically when bits and pieces of the software to come are brought together in the planning stages. These are usually development releases that are being analyzed and modified by the developers of the specific software.

Alpha: This release is unstable and not suitable for live or production sites. An alpha release is usually the first release to a wider network of developers and experienced testers of a new major version of software. Alpha releases are used for testing, acceptance, and stabilization of the basic functionality that has been implemented. Any number of alpha versions can be released until the code base is determined to be stable enough to release as a beta release.

Beta: This release is unstable and not suitable for live or production sites. Beta versions of software are usually feature complete, meaning that no major changes in features or functionality will be implemented during the remainder of the release cycle. Beta releases are major versions of software that have passed the alpha stage of testing and are usually released to a much wider group of testers to test; it is also the time when the general users of the software can begin to submit bug reports or issues when the software is not working as expected or is broken. The beta stage is one of the most important testing stages to give feedback to developers and is where the software is “polished” in terms of stability and usability. Any number of beta versions can be released until the code base is determined to be stable.

Release Candidate (RC): These releases are potentially stable releases that receive wider real-world testing by early users. These releases are feature complete and have passed security review. They may be used on live sites, although in general only experienced users and early adopters would do so. A release candidate may be redesignated as a stable release, but there may also be several release candidates.

Stable: This release is stable and suitable for use on live and production sites. When software is deemed to be stable, it performs as expected and should have no remaining major bugs. At this point the software moves into maintenance mode.

Maintenance: These releases are stable and suitable for use on live and production sites. In the maintenance stage, the code base continues to be stabilized and bugs that are discovered, as well as any reported security issues, are addressed. The Joomla! Bug Squad is responsible for maintaining Joomla! releases that are in maintenance mode.

Alpha versions are usually when a software release is given its numerical versioning number. An example version number and naming convention such as the one used by the Joomla! Project would be 3.00 Alpha 1. This naming convention follows the format of Major.Minor.Maintenance and in the case before a stable release indicates whether the release is alpha or beta, as well as the version of alpha or beta. A major release indicates software-wide changes to the code base and can be incompatible with previous releases. Minor releases indicate that some changes to functionality may have occurred but that a high level of backward compatibility exists with other versions that fall in the same major release number. Maintenance releases indicate very few to no functionality changes but instead are incremental releases to address any bugs or security issues. Joomla! 1.5 at the end of 2011 was at version number 1.5.24, meaning there had been 24 maintenance releases since 1.5 was officially released in the beginning of 2008.

Joomla! Internationalization, Localization, and Translations

Internationalization in software terms is the ability of software to support multiple languages. Localization is the software mechanism that allows for internationalization. Translations are the pieces of text that are translated into various languages.

Since the Joomla! Project began in 2005, internationalization, translation, and localization have been important factors in its worldwide positive reception and usage. Joomla! 2.5 shows continued improvement in the internationalization of the code base, including support for all major character sets and right-to-left presentations. It includes a basic system of multilingual support which allows your content to be assigned to specific languages and users to see only the content that is in the language they have chosen. Efforts to improve internationalization are an ongoing process. The Joomla! Project as well as a number of independent developers continue to improve the ease of use for the creation of multilingual sites. The International Zone on the Joomla! forum contains 44 international boards, and the number of international JUGs has been steadily increasing, both of which provide quality support to the worldwide Joomla! community.

Translation Teams are responsible for creating installable language packs that contain the translated language strings in the core code base as well as translating sample data and Help screens. The wider translation community also offers translations to many extensions. Joomla! 2.5 has been translated into approximately 55 languages, and the Joomla! Project is supported by a group of 55 accredited Translation Teams.

A number of translation components are available to extend Joomla!

Translation management components allow visitors to your site to switch to a language of their choice if you offer it. Although translation management components do not actually translate your articles, they allow you to efficiently organize multiple copies of your content that you have had translated, and they also help you keep a consistent structure and presentation for every language you offer. In contrast, translation plugins use online translation services, such as Google Translate, giving visitors the ability to translate your content “on the fly” as they surf.


Tip

Because the Joomla! Project began in Australia, it uses British spellings and grammar and the language is called en-GB for English Great Britain. You can get the en-US—English United States—language package from the same place you can get any other translation.


Joomla! Wants You!—How to Be a Contributor

Joomla! is an open source project supported by the community. The project is run on volunteer people power, and it depends on an ever-growing contributor base as it continues to grow.

As was mentioned earlier, contributing to the forum is very easy to do, by asking and answering questions. The forum gets approximately 1,400 new topics every day. Each one of those topics is typically a question from a community member who needs assistance or information. Your helpful response can make a real and marked difference to the experience of those you help. Most of the time when people show a real interest in helping others on the forum, they are asked whether they would like to become moderators to help keep the forum a friendly, collaborative, and pleasant place for the community. The Moderator Team is a great team to be part of, and there is always a need for new members. On a personal note, we can attest that helping someone solve a problem presented on the forum is a very enriching and rewarding experience.

The Documentation Team is always looking for people to assist with adding helpful articles to the Official Documentation wiki (http://docs.joomla.org) or updating articles as things change. There is information on the wiki regarding how to register and start adding documentation content. Documentation consists of any and all helpful tips, tricks, and walk-throughs that specifically deal with how to install, manage, develop for, and generally work with the Joomla! Platform and the Joomla! CMS.

The JBS is always looking for both technical and nontechnical people to help in the efforts to keep the maintenance releases stable, bug free, and secure. There is truth to the open source philosophy that more eyes are better. Testing Joomla! releases on as many different combinations of server setups and operating systems as possible is an integral part of every release cycle. It is also a good way for developers to introduce themselves to the Development Team and learn how to work with the code base.

JUGs help promote Joomla! and also bring users together to experience collaboration on a face-to-face basis. They perform a significant role in the community and community building.

The Translation and Internationalization Teams are always looking for new members to introduce new translations and help in the internationalization process.

The various editorial teams that manage the range of resources for the community, such as the VEL, Joomla! Connect, Joomla! Extensions Directory, Joomla! Resources Directory, Site Showcase, and Magazine, actively look for and encourage people to contribute and join. The community site (http://.joomla.org) supports community blogging and commenting, which is another great way to take part in discussions relating to the project.

The options for contributing to the project are really quite limitless. We have mentioned only a few of the more prominent ways of contributing, and as the project continues to grow, more opportunities and new avenues for contributions will grow as well. Over the years we have participated in all of these, and we can’t stress enough how much we benefited, whether by improving our knowledge or skills or by meeting other community members.

As always, if you find a bug, please post it on the tracker. Joomla! really appreciates those contributions too.

Project Leadership

There are four teams, each with specific responsibilities, that form the overall leadership and governance of the Joomla! Project:

Leadership Team: This team consists of the combined members of the Production Leadership and Community Leadership Teams. Their focus of responsibility is the general guidance and management of the development project and the community.

Production Leadership Team (PLT): The PLT is responsible for managing all aspects of the project that go into the release of the framework and CMS. This also includes documentation, internationalization, translation, and other software-related contributory efforts such as core code development, patches, maintenance of the code repositories, Joomla! Bug Squad, JoomlaCode localization, internationalization, security, and outreach to students.

Community Leadership Team (CLT): The CLT is responsible for managing and maintaining the structures and resources that facilitate and foster the community aspects of the project such as the Joomla! forum, social networks, communications support, Joomla! Connect, Joomla! Extensions Directory, Joomla! Community Portal, Joomla! Community Showcase, Joomla! User Groups, Joomla! People site, Joomla! Template Directory, and the Joomla! Resources Directory.

Community Oversight Committee (CoC): The CoC is responsible for appointing members to the Open Source Matters board of directors. They can also remove people from the board of directors. The CoC members are all long-term major contributors who are or have been leadership members.

Open Source Matters Inc.: Open Source Matters Inc. is the nonprofit corporation that was formed in September 2005 by the original founding members of the Joomla! Project. It was created to oversee the legal and financial needs of the project, as well as any other organizational aspects of the project that fall outside the other leadership teams.

Each leadership team leads Working Groups (WGs) that contain a number of separate teams that have specific responsibilities to the project such as the JED, JRD, Moderator Teams within the Community Working Group, Trademark and Licensing Team, Events Team within Open Source Matters, and Joomla! Bug Squad and User Documentation Team within the Production Working Group, to name but a few.

Conclusion

What started with a brave and united purpose by a small group of dedicated people has grown up to be the Joomla! Project as it is today (Figure 1.3). Joomla! 1.0 had millions of downloads before it was retired from service officially as of July 2009. Joomla! 1.5 had already taken center stage by that time. Joomla! 1.6 was released in January 2010 and Joomla! 2.5 in January of 2012. Joomla! 3 is the newest version.

Image

Figure 1.3. Joomla! . . . because open source matters

A few months after the release of Joomla! 3.5 in March 2014, Joomla! 2.5 will be retired, and plans for the release of Joomla! 4.0 in 2014 are well under way.

Joomla! as of 2011 has had more than 27 million downloads, and tens of millions of Web sites are powered with Joomla! Adding to that a global community of hundreds of thousands of members, it has been an amazing journey to this point, and the future is certain to continue the tradition as we turn our gaze to the horizon and Joomla! 3.0.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset