Subscribe to our Erlang Factory newsletter to receive the latest updates and news

Kresten Krab Thorup
Creator of Erjang
Trifork

Speaker
Kresten Krab Thorup is CTO of Trifork, a public Danish company providing software solutions to government and financial services providers.  Trifork is also creator of the long-running JAOO conference, and co-creator of QCon.  As Trifork CTO Kresten in responsible for technical strategy, and spends most of the time acting as internal consultant, researching future technologies, as well as being editor for JAOO and QCon conferences.  Kresten has also been a principal contributor to Trifork's own Java EE certified application server "Trifork T4", where he authored the built-in CORBA ORB, a custom Java RMI implementation (now part of Apache Yoko), the transaction manager, the database connection management system, and the Java byte code rewriting subsystem.

Kresten has been a contributor to several open source projects, including GCC, GNU Objective-C, GNU Compiled Java, Emacs, and Apache Geronimo/Yoko. Before joining Trifork, Kresten worked at NeXT Software (now acquired by Apple), where he was responsible for the development of the Objective-C tool chain, the debugger, and the runtime system.  Kresten was on the committee for JSR-14 (adding generics to Java) which was closely related to the subject of his Ph.D. thesis.  

Most recently, Kresten has founded the Erjang open source project (notice the J there), a virtual machine for Erlang running on the Java Virtual Machine.

Kresten Krab Thorup is Giving the Following Talks
Bringing Riak to the Mobile Platform


The consistency model used by Riak is designed to continue operating well even when nodes in your Riak cluster are down or unreachable, a property which also makes it a good model for mobile data.  To me, "down or unreachable" sounds a lot like "off or without-cell-phone-connectivity" - common states for a mobile device.
 
In this talk, I'll present Riak Mobile, a component that can be embedded into your iOS or Android application to make it a full Riak replication-aware peer.  Typical usages for Riak Mobile is as a mobile content distribution platform using one-way sync; or with two-way sync to also push updated data back to your Riak cluster when the network is "eventually" available.
 
In the talk, I'll walk through how Riak Mobile works.  The client-part of Riak Mobile does not require an Erlang VM.  Rather, it comes as either a Java or an Objective-C component using SQLite for on-device storage, and thus integrates nicely into the native development environments. The server-part is an OTP application running with Riak.  Riak Mobile uses a flow-based algorithm using Merkle trees and vector clocks optimized specifically for providing efficient incremental synchronization for slow, high-latency network conditions.