
Google Summer of Code 2015 Ideas
Introduction #
Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects. This year, Liferay is applying to the program as a Mentoring Organization. This page has helpful information for both potential students and potential mentors. In addition, it also outlines Liferay's development ideas and process for submitting proposals. It lists several possible projects for participants in this year's program.
Liferay has enjoyed tremendous support from its community for small- and large-scale projects as part of our open source mission. This year, we hope that the GSoC program encourages even more thoughtful and innovative ideas for Liferay!
Students #
Students can use this page to see a potential list of coding ideas, but you are always encouraged to submit your own ideas. See below for the template to use for your applications.
Mentors #
If you are a member of the Liferay Community in good standing, what better way to enhance your leadership skills and learn a lot at the same time! Volunteer to be a Liferay Mentor for this summer's program. Ideal mentors are upstanding citizens of the Liferay community, have a decent amount of experience coding for Liferay, and are familiar with the internal workings of the software. More importantly, mentors should be willing to donate their time over the summer for their students and their projects, and have a passion for teaching, including a desire for success, and the ability to effectively communicate thoughts, ideas, and general project-related discussions with students and Liferay. If you're interested in becoming a mentor, leave a comment below, or contact community@liferay.com.
Application Process #
If you are a student who wishes to participate in the 2015 Google Summer of Code with Liferay, congratulations! This is your first step toward higher learning and wonderful enlightenment. The next step is to tell us what you want to do! Ideal applicants will have some experience in the Java programming language (though not all of Liferay is written in Java). You are encouraged to review Liferay's technical development guide to get a sense of the technologies and architecture of Liferay's open source projects.
Your application MUST have the following items:
- Project Title: One-liner for referencing the project byname.
- Your Name. We have to call you something!
- Personal Goals: Why you are interested in this project's topic. Why you are the best individual to take on this task.
- Abstract: Free-form description of the project you wish to implement. This should include a description of the problem, the overall solution, and your rough implementation approach (for example, a list of needed modules).
- Deliverables: A list of concrete deliverables before considering the project complete. This should include test cases and documentation!
- Timeline: Rough estimate of the number of tasks in the project, each with a date range. This should include ramp-up time to get to know your way around.
- History: Details of any academic, industry, or open source development experience.
- Contact Information: Email, Skype/IM, telephone, IRC nick.
Once completed, your application should be submitted via the GSoC 2015 site between March 16 and March 27. See the GSoC Student Guide for excellent tips on writing a good proposal.
Communication #
Depending on you and your mentor's preferred communication style, you will end up using one or more of the following collaboration channels:
- Direct Email
- Online chat via AIM, skype, IRC (#liferay or #gsoc on FreeNode) or liferay.com
- Liferay Community Forums
- Liferay Developer Network
- Twitter (@liferay)
- Google Docs
- Conferences via Hangouts, Skype, etc
- In-person meetings if feasible
- Google Summer of Code mailing lists
Liferay generally does not use email lists, and does not have established lists for developers. Rather, we use forums and chat extensively. Check out the participation page for details on how these channels work.
Ideas #
The ideas list was generated from looking at several sources of ideas that Liferay has succcessfully used in the past:
- Proposals previously submitted by the community
- Project ideas submitted by Liferay staff and community for GSoC specifically
Click on each of the projects to get more information on the project.
If you have ideas for this list, please add them!
Portal Core #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Digital Certificate Login | Out-of-the-box digital certificate access to the portal | Easy | Juan Fernandez | |
Personal Quick Links | A personal "Quick Links" stash in the Dock menu. How many times have you had to repeat a process in the portal, but had to navigate 4-5 clicks between 2 different UIs. With quick links all you need to do is click a new dock button on any view you are in, and it saves it temporarily to your Session (or SessionClicks) with some name you give so that it appears one of the Dock menus. | Medium | Ray Auge | |
Look-ahead search results | Look-ahead is a tool in algorithms for looking ahead a few more input items before making a cost effective decision at one stage of the algorithm. | Medium | James Falkner | |
General Asset IMporter | The goal is to provide a simple yet useful mechanism to drive content import from any WCM to Liferay | Medium | Daniel Sanz | |
Rule-based Permissions | Leverage Liferay's Asset Framework to allow to specify view/update/delete permissions on roles based on asset queries. | Hard | Daniel Sanz |
Installation #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
RPM and DEB Package Distros | Now that we have long term confirmation that Liferay works perfectly fine under OpenJDK, it would be great to have easy-to-consume packages for RPM and Debian-based Linux distros. | Easy | Ray Auge |
Plugins #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Drupal2Liferay | Create a Liferay plugin that can deploy Drupal plugins into the Liferay environment. One of the most valuable features of Drupal is the amazing amount of community plugins they have. It would be great if we could import drupal php plugins into Liferay. | Difficult | Juan Fernandez |
Social Coding and Networking #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Social Coding Improvements | Refactor existing Social Coding portlets for JIRA, SVN to support any project (currently it is hard-coded for Liferay). Add support for Git. | Medium | Julio Camarero | |
OpenSocial Charting using Liferay JSON Services | Create example gadgets that utilize Liferay's JSON web services and a Javascript charting library to produce (re)usable charts | Easy | Ray Auge | |
ActivityStreams | Implement an activitystrea.ms - compliant feed for Liferay's activity stream. | Medium | James Falkner | |
Customized Activity Stream | Implement a customizable activity stream allowing filtering, scoping, privacy, etc | Easy | Miroslav Ligas |
Collaboration #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Smart Suggestions | When viewing content in Liferay's collaboration tools (forums, wikis, blogs), show additional "you may like" or "related content" links to other content. | Medium | Julio Camarero | |
Category Cloud | Similar to the existing Tag Cloud portlet, implement a Category Cloud portlet to show a heatmap-style list of categories | Easy | James Falkner | |
Expire Documents | Implement ability to expire documents in the Document Library (similar to how it is done for Web Content articles). See LPS-4500 | Medium | James Falkner | |
Wiki Templates | When creating a new wiki page, allow the user to select from a set of templates to pre-construct a lot of the new wiki page | Medium | James Falkner | |
Layout (Page) Deep Copy | Deep copying of Liferay Layouts (Pages), including the referenced data. | Medium | Nathan Cook | |
WebSocket service layer for collaboration portlets | A WebSocket service integration layer for Liferay's realtime collaboration tools | Hard | Armaz Mellati |
Developer Tools #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Auto-Fix Liferay and AlloyUI imports | Enable Liferay IDE to auto-complete/fix imports for AlloyUI | Medium | Illiyan Peychev |
Enterprise Integrations #
Title | Description | Difficulty | Mentor | |
---|---|---|---|---|
Pentaho Integration | One of the main lacks in Liferay is a BI set of portlets. an OOTB Open Source BI integration would be amazing. Some steps have been taken towards integrating with Pentaho in many projects and there already are a set of Pentaho portlets. A tighter integration with the portal services and a set of dashboards for C-levels would be nice. | Medium | Juan Fernandez | |
CRP+ERP Integration | We have already implemented SalesForce integration, so SugarCRM would be similar and it's a quite extended plataform. OpenERP or OpenBravo integration would be important steps towards becoming the central core integration technology in the medium/big-size enterprise. | Difficult | Juan Fernandez | |
Easy charting | Visualization of data stored via the Liferay backend services | Medium | Miroslav Ligas |
"Google Summer of Code 2015 logo" by Google is licensed under CC BY-NC-ND 3.0