class: center, middle # IMAP2JSON ## My first stab at a serious golang project to learn golang [GoSG August 2014 meetup](http://www.meetup.com/golangsg/events/198173182/) --- background-image: url(images/gmail-screenshot.png) --- ## The itch * I want a **conversation view** outside Gmail of my mail * I want to able to **link to conversations** * I want to able to link to individual messages or maybe even exerts of messages in the context of a conversation ## Use case * Aid discussions, **link** to resolutions and outcomes * Aid
CRM
--- # Design * Something to get messages out of IMAP * Something to re-serialise into a static format for a Web application to use --- background-image: url(images/sizing-up.jpg) --- background-image: url(http://s.natalian.org/2014-08-18/1408332489_1364x748.png) --- # Why GO lang? * [Russ Cox](http://swtch.com/~rsc/), [Rob Pike](https://twitter.com/rob_pike) ← software thought leaders * JSON library looks good
* IRC channel #go-nuts
— I like quick answers * The playground! * ❤ static binaries
--- # What was the user experience? * `gofmt` is nice * [go-imap](https://godoc.org/code.google.com/p/go-imap/go1/imap) API is low level * `interface{}` is painful for getting started * Sorry, no debugger = Pretty shit ([gdb](https://golang.org/doc/gdb) does not count!) * `:=` is confusing and caused me waste a ton of time, consider
--- # IMAP2JSON demo!
--- # TODO *
&
* Sanitsing dates * Sanitising email bodies and various encodings * Switching to seriously using it (means moving away from Gmail) * Better highlighting and hyperlinking * How to do search? * Need you! --- # Questions ? * "Kai Hendry" on any Web search engine * hendry@webconverger.com * Managing Director Webconverger * @kaihendry on twitter * http://hendry.iki.fi * github: https://github.com/kaihendry * Don't friend me on Facebook --- background-image: url(images/gopher.jpg)