Open space for technologists, investors, tech companies and hackers in Nairobi.

Kevin Gibbs_Full

iHub By Jessica Colaço / August 6, 2011

Kevin Gibbs Talk

0 Comments

Kevin Gibbs is the tech lead at Google behind the Google App Engine and the creator of the autocomplete search feature. He will be giving a talk at the iHub on the 9th August, 2011 from 4:00pm about an MFI application he has built on the android platform and matters technical regarding App Engine and Auto Complete.

Manta is a simple synchronization protocol, server, and client for Android that is designed to make getting a local, up-to-date database on your Android phone easy. Manta is composed of 3 parts:
  • Upload: an upload agent, written in Python, that handles getting data out of your SQL server and into an internet-accessible, sync-able store.
  • Store: a simple JSON REST-based database service, that supports bulk uploads, synchronization, revisions, and merging.
  • Sync for Android: a native ContentProvider for Android, which handles automatically synchronizing the exported data into a local SQLite instance on users’ phones.
Manta was built with the particular needs of Africa in mind. The Upload agent and synchronization protocol is fault tolerant, and handles computer crashes, internet outages, database errors, and other common problems. Uploads and downloads are idempotent, which make them safe to repeat if state is lost or interrupted. The code has been optimized to run well on the Ideos Android phone. And since connectivity for the phone may not be available, or may be too expensive, synchronization with the Android device attempts to use as little data as possible, and can run manually, on a schedule you configure, or automatically.

Ultimately, Manta makes it very easy to get data locked in an on-site SQL database onto an Android phone, automatically, so you can focus on writing the app, and not accessing data. Configuration is simple: just write a SELECT statement in the config.py file for each view you’d like to export, and the data is automatically made available on the phone in the native Android fashion. No configuration the Store server or the Sync component on the phone is necessary. A public, shared instance of the Store server on Google App Engine means that no server setup is necessary.

Currently, Manta is used by Simple MFI, a tool for microfinance loan officers that allows them to view client balances, collection sheets, and loan schedules on an Ideos phone. By concentrating all the complex synchronization logic in the Manta framework, the Simple MFI app is very small and easy to maintain– it simply uses native Android ListViews and other components already designed to work with SQL-based ContentProviders.

More information on Manta and Simple MFI, along with screen shots, can be found here:

To attend this talk, register here

Author : Jessica Colaço

Jessica Colaço is currently the Director of Partnerships at iHub. She was the Founding Manager between 2010 and 2011 at iHub and Research Director between 2011 and 2013 at iHub Research. She is passionate about Innovation, Research, Mobile and Robotics Technology, Mentorship and Entrepreneurship in Kenya as she uses her position at iHub to court local, regional and international stakeholders to adopt Kenyan-made and African-made solutions. As an upcoming angel investor, she courts local and international investors to invest in great tech ideas and companies at idea and concept stage. She is also a Mobile and Robotics Tech Evangelist, Co-Founder of WMIAfrica and AkiraChix, ISOC-Kenya Chapter, Treasurer, ACM-W Nairobi Chapter Chair, TED Global Fellow 2009 and upcoming Guitarist. She was named one of the top 40 women under 40 years in Kenya's business scene by Business Daily on 2009, 2011 and 2012. Her endeavour is to put Kenya and Africa on the map for technology achievements and spur innovation within the country and continent! She blogs at: www.jessicacolaco.wordpress.com


    No comments yet

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


{{ theme:js file="jquery.fittext.js" }}