TikiWiki CMS/Groupware is a full-featured, web-based, multilingual, tightly integrated, all-in-one Wiki/CMS/Groupware, Free Source Software (GNU/LGPL), using PHP, ADOdb and Smarty. It is actively developed by a very large international community and is translated in over 30 languages. TikiWiki can be used to create all sorts of Web applications, sites, portals, knowledge base, intranets, and extranets.
TikiWiki offers a very large number of features "out-of-the-box", arguably more than any other Open Source Web Application. Highly configurable & modular, all the features are optional and administered via a web-based interface.
Major features include a robust wiki engine, news articles, discussion forums, newsletters, blogs, a file/image gallery, bug & issue tracker (form generator), a links directory, polls/surveys and quizzes, a FAQ, a banner management system, a calendar, maps, Mobile Tiki (PDA, VoiceXML and WAP access), RSS feeds, a category system, tags, an advanced themeing engine (Smarty), a workflow engine, a spreadsheet, live support, Shoutbox, inter-user messages, a menu generator, an advanced user, group and permission system, internal search engine, external authentication support, and much much more.
- TikiWiki is used in tens of thousands of web sites/projects/communities/companies and is used by Firefox for their official support site. (support.mozilla.com)
- TikiWiki is used as an intranet/extranet system in thousands of organizations and in this respect, users have repeatedly said that it is a far superior solution than closed sourced alternatives such as Sharepoint.
- The vast collaborative documentation effort is 960 printed pages, which is a testament to the scope of the project -> Over 200 contributors to the core source code base (via CVS/SVN) over the last 6 years.
How is TikiWiki CMS/Groupware different?
1. TikiWiki has, by its all-in-the-core model, more built-in features than any other Open Source Web Application (as far as we know!). All features are just clicks away in the admin panel. No need to hunt down/install 3rd party plugins/modules. Because of the all-in-one design, the feature integration is very tight.
2. TikiWiki is the Wiki Way applied to software development. It is easy to join the community and to contribute. http://dev.tikiwiki.org/How+to+get+commit+access
3. TikiWiki is a rare hybrid of the CMS & Wiki worlds. Most CMSs are not wiki-centric. And most Wikis are just wikis without the additional CMS functionality.
According to various indicators, TikiWiki CMS/Groupware is, community-wise, top-tier amongst wiki software, and towards the top of the second tier as a CMS, after the "big 4" (Drupal, Joomla!, WordPress & Plone). It is of course unique as a blend of both wiki software and more general purpose CMS.
Participating in GSoC 2009 is an opportunity for us to
- gain visibility;
- appear on the list for other projects like The Google Highly Open Participation Contest ;
- provide students the opportunity to gain real-world experience in working with someone else's code. Getting first job experience can be tricky and we subscribe to the motto "flip bits, not burgers";
- attract students to become active, long-standing contributors to the TikiWiki community;
- expose students to working, learning and sharing knowledge through "community coding";
- identify and develop community members as mentors to help new contributors;
- enhance the functionality of Tikiwiki;
- grow the Tikiwiki coding and support community.
We look for a delicate balance of:
- Technical knowledge
- Knowledge of the field for each specific project
- Understanding of free software dynamics
- Understanding of TikiWiki CMS/Groupware, the Wiki Way applied to software development.
- Ideally, physical proximity with the student
- Availability and commitment to the project as a whole
Has your group participated previously? If so, please summarize your involvement and any past successes and failures.
Not yet. However, one of our mentors, Nelson Ko, was a GSOC mentor in 2008 with the Mozilla community.
If your group has not previously participated, have you applied in the past? If so, for what sort of participation?
Yes, we applied to be a mentoring organization for the first time in 2008.
GNU Library or "Lesser" General Public License (LGPL)
- Name and e-mail
- Which project do you wish to work on? See http://dev.tikiwiki.org/GSOC+Ideas+2009
- Detailed description of how you intend to achieve the goals of the project you selected, e.g. what you intend to do, your suggested implementation, and a list of quantifiable results, a suggested project schedule?
- Availability: How many hours per week can you spend working on this? What other obligations do you have this summer?
- Bio: Who are you? What makes you the best person to work on this project?
- Do you have a preferred/suggested mentor for your project?
- Where do you live? (we'll try to match you with a mentor in a compatible timezone, or in the same city, if possible.)
- Have you analyzed the field? Please provide a list of 3 (or more) similar and/or related existing applications (free source or commercial) and your thoughts on these. (min 300 words on each)
- Are you comfortable with the 3 Rules of the community and the fact that you'll be committing directly to the core of TikiWiki?
- Have you put any code or writing that you've authored online? If so, please provide links.
- What other question(s) should we have asked you?
1. The first thing is to plan properly to minimize the risk by conducting a thorough process to pick the candidate and project. This is why the application template above is quite detailed.
2. It is very important to have regular follow-ups. Code produced in the context of the GSOC project will become an integral part of TikiWiki code (not an optional 3rd party add-on), and thus, the broader community will be involved in setting the requirements, testing, bugfixing, documentation and translation.
3. Ideally, at least one of the mentors should live geographically close enough to the student to enable face-to-face follow-up meetings if necessary.
4. If, despite these precautions, a student should disappear, the administrator will intervene and identify the cause(s) of this disappearance. We will follow up/ discuss with the GSOC team to find a solution (Fund another student on the same project? etc.) It is noted that the GSOC initial bonding and project planning phase with the student is so important, and should hopefully avoid any disappearing contributors.
5. One of the 3 Rules of TikiWiki is "commit early, commit often". Frequent commits of code will ensure that we will not face a total loss if a student should disappear, and this will also help someone else continue on the work.
1. This is unlikely because mentors are picked because of their track record of reliability in the community. However, sometimes, unusual circumstances arise. Again, the administrator will be in regular contact with each team to make sure that all teams are intact and functioning well. And we have a list of enough mentors to ensure that we can find replacements if necessary.
2. Again, since the GSOC project will be an integral part of TikiWiki code and thus, the whole community will be potentially involved, one of the active community members will fill the void, while attempting to minimize the negative impact for the student and the project.
What steps will you take to encourage contributors to interact with your community before, during, and after the program?
1. The student must understand that it's not interesting for the community to have a fly-by-night code-dump. The added functionality will be part of TikiWiki core and thus, it must fit in harmoniously. Students will be encouraged to use the #tikiwiki irc channel, join and ask questions on the development list, participate in TikiFest, and add themselves as registered editors on the tiki documentation site.
2. We are looking for students who intend to use the project/functionality in a real context. So we'll take this into account when evaluating the proposal. If the student is going to be eating the dogfood, we are confident that they will generate future-proof code.
3. In general, our mentors will ensure that students' projects and deliverables are well-defined and demarcated, while helping the student integrate with the community, so as to provide an excellent and fulfilling learning experience. We will make full use of the GSOC community bonding period to integrate and involve the student.
What will you do to ensure that your accepted contributors stick with the project after the program concludes?
1. There are several consultancies that use TikiWiki for customer projects. If the student did a good job and interacted positively with the community, the odds are high for him/her to get TikiWiki-related work contracts or even a full-time position.
2. Our experience with students is that they tend to propose more they can realistically finish within the GSOC timeframe. Our mentors will encourage the students to continue on things they want to do after GSOC, while ensuring that the student is not overloaded with the pressure of aiming to complete too much during GSOC.
3. TikiWiki is a very versatile application. Chances are that, having gained familiarity with the software, the student will have a use for it in many future personal or professional projects.