May 4-6 and May 25-27
Please suggest changes. I will be in HK until May 31, but of course I am not necessary for the event to be a success. - - Mf 11:39, 27 April 2012 (UTC) :)
We are still looking for a location. More on this soon.
- Matthias (- - Mf 11:39, 27 April 2012 (UTC))
I have more than enough ideas for projects, but please anybody propose your own. I am more than happy to step back and do something you think is relevant.
4.1 Implement SPKI
Since SSL/TLS is notoriously convoluted and error prone (most recent evidence: http://lists.grok.org.uk/pipermail/full-disclosure/2012-April/086585.html), it may be time to make another effort to replace it. SPKI addresses many requirements that SSL/TLS does, but is much more concise and coherent.
- Overview: http://world.std.com/~cme/html/spki.html
- Standards: http://world.std.com/~cme/spki.txt, http://www.ietf.org/rfc/rfc2693.txt
- Algorithms: Distributed Credential Chain in Trust Management, Proceedings of the 8th ACM Conference on Computer and Communications Security (CCS-8), pages 156–165, ACM Press, November 2001.
The idea of this one is not so much to make something new, but to take something that is done in a language different from Haskell, and see how well it ports. This will not only give us a deeper understanding of both source and target language, but also make it more convenient to build applications in Haskell, and through interop testing will lead to better code in the original implementation as well.
Variant: Take one of the implementations and build a C binding.
4.2 Port ZooKeeper to Haskell
Zookeeper is the distributed key/value store used for synchronisation in Hadoop, but intended for a much larger application space. A lot of skill and effort has gone into the design, implementation and testing, and it solves problems that all distributed applications have. I like this project.
It would be totally hot if there was a Haskell implementation that could outperform the Apache Foundation's Java implementation. That is not a two-weekend project, but a ghc binding might be.
4.3 Implement Kademlia in Haskell
- Research paper explaining the algorithm: http://www.cs.rice.edu/Conferences/IPTPS02/109.pdf
- Python implementation: http://entangled.sourceforge.net/
Again: This could be done as a port, a binding, or a complete re-implementation.
4.4 Play with adhocracy, liquid feedback, ...
These are two projects I am curious about, but have not had to the time to look into. I know that one of them is running on adequate development resources, so if anybody is interested in this we could probably ask the project owners for challenges and chores.