Difference between revisions of "Summer of Code 2008"

Jump to navigation Jump to search
1,776 bytes added ,  11:04, 22 March 2008
 
(3 intermediate revisions by the same user not shown)
Line 99: Line 99:


== New Clients ==
== New Clients ==
While we generally strongly discourage creating new client or server projects, in some specific areas there is either no client, or not enough competition.  This section is about filling in those blanks.


=== Web-based Jabber/XMPP Client ===
=== Web-based Jabber/XMPP Client ===
Line 137: Line 136:


Also see [http://wiki.python.org/moin/SummerOfCode Python's SOC page] (under Dr.Project)
Also see [http://wiki.python.org/moin/SummerOfCode Python's SOC page] (under Dr.Project)
== Openfire ==
Here are some nice features that would be nice to have in Openfire. We are still working on the list which should be ready for early next week (March 25th). If you have other ideas not listed here feel free to send us an email to discuss it or post it [http://www.igniterealtime.org/community/community/developers/gsoc08?view=discussions here].
  * File Repository and Sharing (including WebDAV)
  * File transfers for gateways
For more details, visit the [http://www.igniterealtime.org/community/docs/DOC-1490 Summer of Code 2008 Projects]. 
===Contacts===
Mentor: Gaston Dombiak (email: gaston@jivesoftware.com / jid: gato@jivesoftware.com).


= Components =
= Components =
Line 233: Line 243:


Some information about link-local chatting (biased towards Psi) can be found [http://psi-im.org/wiki/Bonjour here].
Some information about link-local chatting (biased towards Psi) can be found [http://psi-im.org/wiki/Bonjour here].
=== XSD Schema Compiler ===
* Proposed Mentor: [http://el-tramo.be Remko]
* Programming language: A widely accepted scripting language, preferably Python
The most boring, time-consuming, and error-prone job of an XMPP client developer is writing code to parse XML stanzas, and turning them into datastructures to be used by the rest of the code. The code generated is often a lot of copy-paste work, and is sensitive to very subtle bugs. In this project, the student will solve this problem once and for all, by building a compiler that turns the [http://www.xmpp.org/schemas/ XSD schemas] that define the stanzas into a combination of simple datastructure classes, the parser that turns xml into these generated classes, and the code to turn these datastructures into xml back again.
The XSD Compiler should be modular enough to allow plugging in backends for different target languages (C++/STL, C++/Qt, Python, ...). However, the student will initially focus on one backend, and may extend this to different backends if time allows it.
A project like this has a reach far out of the XMPP community, to any project that uses XML documents standardized by an XSD. However, the project will (initally) focus only on the XSD defined by the XSF, and making sure that (almost) all XSD's can be compiled into code.
20

edits

Navigation menu