Everyone knows of Liferay's flagship software product, Liferay Portal, but Liferay actually develops and releases many other products in the Liferay ecosystem. At any one time, development is occurring on all of these products in one way or another, but most people don't learn of these other products until they show up in a press release or are otherwise waved in the air when they are released.
One of my goals as your community manager is to give you the tools and guidance you need to stay up to date with the various happenings within our community, in particular those happenings related to development of Liferay software. There are many ways to do this, and today you have another tool in your arsenal. But before describing it, I wanted to quickly run down the ways in which you can get involved with the development of software in the community, from the bottom to the top.
At the lowest level of any open source project is the source code itself, where the rubber meets the road, and where daily (even hourly) changes are exposed. Liferay's source code is managed using the Git source code control system system, and its home lies on Github.com. All of Liferay's open source projects are house here, including Liferay Portal, AlloyUI, Liferay IDE, Liferay Plugins, Liferay's Official Documentation, Liferay Faces, Maven Support, and others.
Developers wishing to get involved can visit the Development wiki pages to set up their own personal development environment, learn the code, and subscribe ("watch") the git repository to receive notifications of any source code change by other developers in the community. Liferay's engineering team strives to make source code commits and associated messages as easy to understand as possible, but it does require a fair amount of development experience to understand what goes on under the hood!
Tracking a large software development project like Liferay requires additional tooling above the source code itself. This is where JIRA is used to track bugs, new features, and other program management-related tasks in the form of tickets (or issues). This happens on the aptly-named issues.liferay.com JIRA instance.
Liferay uses JIRA for many different things. Of course, Liferay users are always encouraged to report bugs, and submit new features via JIRA (more on this "idea generation" is coming, as discussed at a recent Liferay Community Leadership Team meetup). Community contributions also flow through JIRA, in the form of "Contributed Solution" and "Community Resolved" states for each contribution.
If you watch the activity stream of items being created and edited, you can see what's happening, in a more human-friendly fashion. Various ticket types are created (such as bugs or New Improvements or Stories), but that can also quickly get overwhelming (there are upwards of 200-300 activities per day here!).
Community Development Board
Of course, source code and ticket activity streams are a very low-level, fine-grained way to participate or observe an open source project, so recently Liferay's engineering and product management teams have begun using a higher-level way to manage and track project changes. For each release of Liferay there exists a Development Board which shows you a quick summary of upcoming (TODO) items, items in progress, and completed items, in terms of New Features and Stories. Here's the development board for the next release, Liferay Portal 6.2. You can read more about this board in my previous blog post to get an idea of the information one can glean from this way of looking at things.
This brings us to the latest addition in the array of tools you can use to see what's happening. Many of you have requested information on what exactly Liferay has released, or will release in the future, without getting bogged down in the details of individual features or bugs. In fact, Jorge Ferrer (our VP of Engineering) asked me for this soon after I started at Liferay. Paraphrased: "we need a quick, reverse-chronological listing of Liferay releases, with relevant links, so that people can see what's available and get details about each release!" The new Release Dashboard aims to fulfill this gap.
It's a pretty simple Asset Publisher-driven list of releases, grouped by "Past, Current, and Next" buckets. Most importantly, you can get at all of the relevant links (download, issue trackers, and more importantly source code for open source releases) without having to dig deep into liferay.org. In addition, each release has brief release notes, with information about installation, upgrade, support, and other important information that one cannot see by simply looking at a list of "issues fixed". You'll find the Releases link on the left side of the community homepage.
You can check this list regularly, or refer to it when you need quick links for a particular release. As new releases are planned, or released, or retired, this list will be updated. You can also subscribe to its RSS feed if you are into that sort of thing. As releases are "promoted" from "Next" to "Current", and later to "Past", this will be reflected in the list and the feed.
You will also notice that each release has an associated date. For releases that have not yet occurred, you'll find a best guess estimate based on Liferay's desire to release new Portal technology releases every 12-18 months. As usual, these dates are not guaranteed and subject to change. As we get closer to a release date, these dates will be updated to reflect the latest estimate, and if a date is later expected to be "missed", notes will be added to the details section explaining why, and the expected date will be updated.
Liferay has made a lot of changes to its release process over the last few years. New in this cycle is the release of what are called Milestone builds. A Milestone build is a full (pre)release of the Liferay Platform, giving us in the community a chance to try out new features, or discover new bugs before the general availability (GA) release. This is in stark contrast to prior releases, where you only got a Beta release, a month or so before the final release, leaving Liferay very little time to correct anything before release.
This is a really great way to get ahead of the release curve, and discover if the upcoming release is going to meet your needs, and if not, provide that feedback much earlier in the release cycle. In addition, you'll find responsible engineers for various areas of Liferay much more responsive, as they are not in super-crunch-before-release mode. Check out the latest Milestone 3 release and give Liferay your feedback, to help make future releases much better than in the past!
You'll also notice in this list several Enterprise Editions (e.g. Liferay Portal EE, Social Office EE, and Liferay Developer Studio) - the purpose of doing this is to let people know that there are commercially-supported release offerings from Liferay, and if you are looking for that, you don't have to dig into the website to find them.
With the advent of the Liferay Marketplace, plugins that are developed by Liferay have been decoupled from the main platform releases, and so you won't find each individual plugin listed on the dashboard. However, plugins continue to be improved, and you can stay informed by watching each plugin's Marketplace landing page (here's the one for Solr), where you'll find version history, release notes for each release, and other information about the plugins. As new platform releases are made, plugins will be revised to incorporate any needed changes, or new features, for the new platform release.
If you find this useful, or have any suggestions, let me know in comments below. We have a lot of other improvements coming this year for our awesome community, and I look forward to seeing what we as a community can do together!
1By the way, another goal of these Milestones is to refine the process by which Liferay executes a release. Each Milestone becomes easier to release, as we refine the pipeline from developer's fingers to your download. This will help Liferay meet its expected release dates much easier than before.