Collaborama is a Collaborative Software Creation Ecoysystem (CSCE) that enables developers and teams to conceive of software ideas, gather requirements, get feedback, team up to work on a project, develop using an iterative process that encourages code reuse, and then test, deploy, market and sell the software project and/or select components or designs used in the project. For a little more background and motivation, read about Collaborama.
If you swing your mouse to the left side of a Collaborama screen, you will see a sidebar that helps guide you through the Collaborama process:
- Invent: create a new Project (same as Group, read below), gather requirements for the new project in an issue tracker, and create a presentation that lets you communicate your idea to others.
- Team Up: Find the right people to work with you on your project, either Collaborama members or people with the right skills out in the world.
- Develop: Begin building your application in an interative, loosely-coupled manner that makes massive code reuse easy as pie.
- Market: Let others know about your project, and then release your creation into a marketplace of software and components.
At the top of every Collaborama page is a command line which you can use to quickly access resources (e.g. type 'help' to get to this help page) or execute commands. Collaborama has a variety of built-in commands that you can try, and you (and other members) can create new commands. See the Examples Page for samples, or use the ls command to get a complete list of commands available to you (just type "home" or "ls" above).Especially useful commands include:
- ls: List available resources and commands.
- view(...): View the source code of a resource. This is a good way to get an idea of how Collaborama works.
- popular: Show resources that are used most often.
- whatsnew: See what new resources have been created recently.
Adding New Commands
Any member can help add new capabilities to Collaborama. Resources are editable in a collaborative fashion, much like pages on a wiki.There are a few permissions restrictions; some particularly important commands (like "edit") are read-only, for instance.
Functions are typically pieces of code that may accept input and return a value, such as a computed number, or the results of querying a search engine. The return value can also be an entire Web page, or even a redirect to another Web site that holds the answer.
GroupsGroups are modules where a number of people can get together to work on a project or application. When you create or join a group, you can edit all functions belonging to that group, and the group is added to your default execution path. You may belong to more than one group at a time.
- To create a new group, use createGroup
- To invite someone to a group you belong to, use groupInvite(NameOfGroup,NumTokens)
- To signup for a group that someone has invited you to join, use groupSignup(NameOfGroup)
- To see all groups registered in Collaborama, use groups
- To see all members belonging to a group, use groupMembers(NameOfGroup)
See the programming page for further details on writing Collaborama functions.