<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Dear list,<br>
    <br>
    I've been learning Erlang in my spare-time for some time now and
    would love some feedback on a project I recently started. Since I
    have no coworkers or other people to get feedback from, maybe
    somebody on this list could have a quick look. <br>
    The things I find particular difficult is defining a proper API, to
    decide what goes into a new process or is done in the calling
    process and dealing with errors. I have no formal training as a
    programmer which may be the reason I have trouble to get these
    things right.<br>
    <br>
    The project I took [1] was to implement the Axolotl ratcheting
    protocol from Open Whisper Systems [2]. The protocol [3] itself
    didn't look very difficult, but since there are no proper specs for
    the total system, I used the libaxolotl-java implementation as a
    starting pont [4]. Reading the Java code probably was the hardest
    part of the whole project.<br>
    <br>
    I think I covered most of the functionality of the libaxolotl-java
    library. I haven't verified interoperability between my
    implementation and libaxolotl-java since that would require me to
    start coding in Java which is not something I am looking forward to.<br>
    Comparing my Erlang code with the original Java code, I needed far
    less lines of code and, I think, the code is much easier to
    understand. Also, building and deploying the code seems much
    simpler. <br>
    <br>
    So, any comments are most welcome.<br>
    <br>
    Thanks,<br>
    <br>
    Frans<br>
    <br>
    [1] <a class="moz-txt-link-freetext" href="https://github.com/schnef/axolotl">https://github.com/schnef/axolotl</a><br>
    [2] <a class="moz-txt-link-freetext" href="https://www.whispersystems.org/">https://www.whispersystems.org/</a><br>
    [3] <a class="moz-txt-link-freetext" href="https://github.com/trevp/axolotl/wiki">https://github.com/trevp/axolotl/wiki</a><br>
    [4] <a class="moz-txt-link-freetext" href="https://github.com/WhisperSystems/libaxolotl-java">https://github.com/WhisperSystems/libaxolotl-java</a><br>
    Nice implementation <a class="moz-txt-link-freetext" href="https://github.com/rxcomm/pyaxo">https://github.com/rxcomm/pyaxo</a><br>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </body>
</html>