Difference between revisions of "Summer of Code 2007"

Jump to navigation Jump to search
no edit summary
Line 28: Line 28:
This section lists some project ideas that were suggested for the [http://code.google.com/soc/ Summer of Code 2007].
This section lists some project ideas that were suggested for the [http://code.google.com/soc/ Summer of Code 2007].


== Read This First! ==
== Our Roadmap ==


In general, we are most interested in projects that are relevant to our [http://www.xmpp.org/xsf/roadmap.shtml roadmap]. These include:
In general, we are most interested in projects that are relevant to our [http://www.xmpp.org/xsf/roadmap.shtml roadmap]. These include:
Line 54: Line 54:


Most of the roadmap project ideas described above can be done in any of these clients, so combine a project idea with a codebase and send in a proposal.
Most of the roadmap project ideas described above can be done in any of these clients, so combine a project idea with a codebase and send in a proposal.
== Servers ==
As noted, Jabber/XMPP technologies use a client-server architecture. There are five main open-source server codebases:
* [http://www.process-one.net/en/ejabberd/ ejabberd] (Erlang)
* [http://jabberd.org/ jabberd14] (C)
* [http://docs.xiaoka.com/jabberd2:start jabberd2] (C)
* [http://www.igniterealtime.org/projects/openfire/ Openfire] (Java)
* [http://www.tigase.org/ Tigase] (Java)
Most of the roadmap project ideas described above can be done in any of these servers, so combine a project idea with a codebase and send in a proposal.
== Libraries ==
There are XMPP code libraries for just about every programming language. Some of the main libraries include:
* [http://cjphp.netflint.net/ class.jabber.php] (PHP)
* [http://open.echomine.org/confluence/display/FERIDIAN/Feridian+Home Feridian] (Java)
* [http://camaya.net/gloox gloox] (C++)
* [http://iksemel.jabberstudio.org/ iksemel] (C)
* [http://delta.affinix.com/iris/ Iris] (C++)
* [http://code.blitzaffe.com/pages/phpclasses/files/jabber_client_52-11 Blitzaffe Jabber Client] (PHP)
* [http://www.cursive.net/jabber-net/ Jabber-Net] (C#)
* [http://jabber4r.rubyforge.org/ Jabber4R] (Ruby)
* [http://jso.jabberstudio.org/ JSO] (Java)
* [http://onlinegamegroup.com/projects/libstrophe libstrophe] (C)
* [http://developer.imendio.com/projects/loudmouth/ Loudmouth] (C)
* [http://www.igniterealtime.org/projects/smack/ Smack] (Java)
* [http://twistedmatrix.com/projects/words/ Twisted Words] (Python)
* [http://www.igniterealtime.org/projects/xiff/ XIFF] (Flash)
* [http://home.gna.org/xmpp4r/ XMPP4R] (Ruby)
Most of the roadmap project ideas described above can be done in any of these libraries, so combine a project idea with a codebase and send in a proposal.
== Other Project Ideas ==


=== Coccinella: Jingle file transfer ===
=== Coccinella: Jingle file transfer ===
Line 130: Line 168:
* [http://dev.hyperstruct.net/xmpp4moz/wiki/DocDevelopment xmpp4moz developer documentation]
* [http://dev.hyperstruct.net/xmpp4moz/wiki/DocDevelopment xmpp4moz developer documentation]


== Servers ==
As noted, Jabber/XMPP technologies use a client-server architecture. There are five main open-source server codebases:
* [http://www.process-one.net/en/ejabberd/ ejabberd] (Erlang)
* [http://jabberd.org/ jabberd14] (C)
* [http://docs.xiaoka.com/jabberd2:start jabberd2] (C)
* [http://www.igniterealtime.org/projects/openfire/ Openfire] (Java)
* [http://www.tigase.org/ Tigase] (Java)
Most of the roadmap project ideas described above can be done in any of these servers, so combine a project idea with a codebase and send in a proposal.
== General ==
=== Tunneling (asynchronous) Web Services for Bioinformatics application over XMPP by supporting Ad-Hoc Commands (XEP-0050) and IO-Object Forms ===
=== Tunneling (asynchronous) Web Services for Bioinformatics application over XMPP by supporting Ad-Hoc Commands (XEP-0050) and IO-Object Forms ===
The student's challenge is to write server components and/or client implementations that export/import Web Services for Bioinformatics by making use of [http://www.xmpp.org/extensions/xep-0050.html XEP-0050 - Ad-Hoc Commands] and the yet to be council-voted [http://www.xmpp.org/extensions/inbox/io-object-forms.html IO-Object Forms]. Client implmementations could be developed as Plug-In for the [http://bioclipse.net/ Bioclipse] Bioinformatics IDE that was recently introduced in [http://www.biomedcentral.com/1471-2105/8/59/abstract BMC Bioinformatics]. Web Services for Bioinformatics may base on existing databases or algorithms, for example by routing [http://en.wikipedia.org/wiki/GenBank GenBank entries] through XMPP.
The student's challenge is to write server components and/or client implementations that export/import Web Services for Bioinformatics by making use of [http://www.xmpp.org/extensions/xep-0050.html XEP-0050 - Ad-Hoc Commands] and the yet to be council-voted [http://www.xmpp.org/extensions/inbox/io-object-forms.html IO-Object Forms]. Client implmementations could be developed as Plug-In for the [http://bioclipse.net/ Bioclipse] Bioinformatics IDE that was recently introduced in [http://www.biomedcentral.com/1471-2105/8/59/abstract BMC Bioinformatics]. Web Services for Bioinformatics may base on existing databases or algorithms, for example by routing [http://en.wikipedia.org/wiki/GenBank GenBank entries] through XMPP.
Line 215: Line 240:
* security
* security
* nice and easy to use user interface, preferably extending an existing interface
* nice and easy to use user interface, preferably extending an existing interface
== Libraries ==
There are XMPP code libraries for just about every programming language. Some of the main libraries include:
* [http://cjphp.netflint.net/ class.jabber.php] (PHP)
* [http://open.echomine.org/confluence/display/FERIDIAN/Feridian+Home Feridian] (Java)
* [http://camaya.net/gloox gloox] (C++)
* [http://iksemel.jabberstudio.org/ iksemel] (C)
* [http://delta.affinix.com/iris/ Iris] (C++)
* [http://code.blitzaffe.com/pages/phpclasses/files/jabber_client_52-11 Blitzaffe Jabber Client] (PHP)
* [http://www.cursive.net/jabber-net/ Jabber-Net] (C#)
* [http://jabber4r.rubyforge.org/ Jabber4R] (Ruby)
* [http://jso.jabberstudio.org/ JSO] (Java)
* [http://onlinegamegroup.com/projects/libstrophe libstrophe] (C)
* [http://developer.imendio.com/projects/loudmouth/ Loudmouth] (C)
* [http://www.igniterealtime.org/projects/smack/ Smack] (Java)
* [http://twistedmatrix.com/projects/words/ Twisted Words] (Python)
* [http://www.igniterealtime.org/projects/xiff/ XIFF] (Flash)
* [http://home.gna.org/xmpp4r/ XMPP4R] (Ruby)
Most of the roadmap project ideas described above can be done in any of these libraries, so combine a project idea with a codebase and send in a proposal.
80

edits

Navigation menu