Karma server

From Technologia Incognita
Jump to: navigation, search
Picture 50.png
Participants Becha
Skills Programming, community building, open source projects, presenting
Status Active
Niche Software
Purpose World domination



Increase involvement in the "consensus building processes" that are the basis of grass-roots Internet governance model, by making the "barrier to entry" even lower.


  • make it easier to read mailing lists using mail client
  • make it easier to share the opinion about certain posts

(add your own sub-goal here)

Additional goals

  • include web-forum integration
    • reach-out to the people who prefer web-forums to mailing lists (mostly younger users...)
    • make the method of participation not important; same content to both kind of users


  • Karma server is intended for rating the mailing lists posts (and/or other "content"), with the goal to share the ratings with "friends", within one or more communities, and to enable search within posts.*


Mailing Lists

Mailing lists are a (social media) tool for participatory decision making processes, enabling archived discussions with the goal of reaching a concensus. They are used for a very long time in this way in many different setups, from technical standardisation bodies (IETF, W3C), Internet governace (Regional Internet Registries, ICANN), technical communities (NOGs, e.g. NANOG, UKNOF, DENOG...), to community projects such as hackerspaces.


Enabling "tagging" of mailing-lists posts would introduce an improvement in the direction of more modern "social media", such as web-forums (slashdot, reddit) or other platforms where users can "rate" the content (Amazon, FB discussion groups).

"Tagging" is useful feature for several large communities that have many mailing lists (RIPE, NANOG, IETF); but also fo any smaller community (for example, hackerspace) that communicates via mailing lists. Using the karma server would lower the barrier for participation (since it is easier to rate "=1" or "-1" then to emial "mee too", or even more constructive post..).

Possible Implementations

Karma Server approach


Possible implementation solution would need to:

  • enable mail clients (and/or mailing list servers) do the ratings;
  • interact with the karma server, to upload and download ratings;
  • also to choose people whose ratings I want to follow;


What needs to be done:

  • write SW for karma server
  • write patches that modify email clients
  • promote the usage of this in several communities (29c3! ripe meeting, nanog meeting / lists, ietf...)
  • write an RFC about it...
  • maintain the "github" / open source repository of the SW

Related / relevant

  • draft: IMAP Access to IETF Email List Archives
  • Listoso Smart Mailing List Reader:
  • ICANN Labs
  • RIPE NCC has the rating of posts, on the closed web app, only for wg-chairs

Similar implementations

  • "slashdot" -- only on the web
  • dig -- only on the web
  • Facebook groups :(
  • RIPE NCC has the rating of posts, on the closed web app, only for wg-chairs
  • perlmonks.org (nice system that encourages voting)

People involved

  • Becha
  • Arnd
  • Emile Aben

Events where Karma Server was promoted / worked on


  • Present project in the Hackerspaces in Skopje (kika) and Dublin (TOG), April & May
  • Promote project at RIPE66 meting, in Dublin , May 2013

slides: https://ripe66.ripe.net/presentations/401-karma-server-for-mailing-lists.pdf video: https://ripe66.ripe.net/archives/video/1278

  • Promote project at OHM2013 , August 2013

description: https://program.ohm2013.org/event/291.html

Hackathon at UnlikeUs #3

  • Sunday, 24.3. at NOON; MediaLAB Amsterdam, Studio HvA, Wibaustraat 2-4


  • GitHub repository: (empty ;-)


Results of the brainstorm discussion


  • Use STMP instead of IMAP -- because it is easier to "hack" within one afternoon
  • create a separate, custom-purpose mailing list that collects tags, and redistributes them to all subscribed (e.g. list-name-with-tags@mail-list-server.example.com)
list@server ----[message]---> client ---- [message + tag ] ---> +
         |--------------list-and-tags@server --------------------| 

Breaking up the huge project into smaller pieces:

  • write a server-side script that adds "a tag" to one single message (tags = stars, or number,s or + / -)
  • write an add-on for one client: to add a tag: in the extra header
  • write a "button" for one client that "adds a tags, and forwards to another special-purpose list"
  • write a client-side script that is showing tags/results and interprets results
  • write a server-side engine that collects tags


  • squirrelmail!
  • thunderbird?
  • alpine ;-)


  • qube?
  • mailman!

Relevant RFCs

* http://www.faqs.org/rfcs/rfc3501.html  Internet Message Access Protocol (IMAP) 
* http://datatracker.ietf.org/doc/rfc4551/ MAP Extension for Conditional STORE Operation or Quick Flag Changes Resynchronization 
* http://datatracker.ietf.org/doc/rfc5256/ Internet Message Access Protocol - SORT and THREAD Extensions 
* http://datatracker.ietf.org/doc/rfc5257/ Internet Message Access Protocol - ANNOTATE Extension
  Per message annotations (2008 experimental standard), very useful.
  Archiveopteryx (not very popular): emails are stored in a PostgreSQL database and exposed as an IMAP server http://archiveopteryx.org/
  Cyrus IMAP (more popular):  plans implementation in next version http://cyrusimap.org/mediawiki/index.php/RoadMap
* http://datatracker.ietf.org/doc/rfc5464/ The IMAP METADATA Extension
  Per mailbox metadata (2009 standard), NOT useful.
* http://datatracker.ietf.org/doc/rfc5466/ IMAP4 Extension for Named Searches (Filters)

... all of them!!! File:Preview of “Internet-Drafts and RFCs”.pdf

  • Relevant drafts:
draft-iceman-imap-specialuse-important-01	IMAP LIST Special-Use Attribute: \Important	2013-01-17			
draft-kundrat-imap-submit-01	IMAP SUBMIT Extension	2013-02-25				
draft-kundrat-incthread-01	IMAP Extension for Incremental Threading (INCTHREAD)	2013-02-25				
draft-melnikov-5162bis-01	IMAP4 Extensions for Quick Mailbox Resynchronization	2013-02-13	
draft-ordogh-spam-reporting-using-imap-04	Spam reporting using IMAP: SREP	2013-03-11 
draft-sparks-genarea-imaparch-03	IMAP Access to IETF Email List Archives
  • Which IETF wg is relevant to send this to? (will find out!)

Examples of other implementations:

* Wisestamp: not relevant, only fancy strings at the end of emails
* OpenCRM
* RSS: SelfOSS
* RSS: Fidefieter? (Douwe?) 

* IMAP already has a way of handling tags? prioritisation?

Whiteboard on Friday

Uu3-friday.JPG File:uu3-friday.JPG


Next steps


About mailing lists