Building a real-time distributed database for the browser. This presentation was held on a Python meetup in Budapest. I talked about the initial idea of ubikDB, what are my results so far, and how I plan to continue.
beginning of a story, how did I start and what decisions I have taken
PKD 1928 - 1982. A scanner darkly, Blade Runner, Total Recall. (szarnyas fejv, emlekmas) Ubik is about shifting realities. (pronounce U-bik) universality: no more REST, … it encapsulates a very generic part
ubikDB is not really a DB :) Because I am thinking in connecting to web apps… Example: binding an input field to the title, 2 way binding all the way
is this possible - realistic - and worth to do?
We have no $$$ but we are smart. And there are simple use cases. Also: it can be actually improved! api is single purpose + more possibilities because we can run our own server
I’m not really implementing a DB, but more a syncing solution Substance-D: a framework for writing a Content Management Famework. It is based on Pyramid and has ZODB as batteries.
ubikDB intro: Building a real-time distributed database for the browser
ubikDB: an introduction
Building a real time distributed database
for the browser
with open source
Ubik is a book of Philip K. Dick.
Ubik is an universal product.
shared database = persistency + notiﬁcations
syncing JSON data in the browser
real-time, responsive applications
Data and event ﬂow
it’s a sync solution
networking through http
‘service’ could be a web
Simplest: volatile mem
“The Realtime Application Platform”
database as service, commercial
clients: web (JS), IOS / OS X, Java / Android
db management interface
Firebase raised $5,6M in 2013.
Is this possible to do
in open source?
2013 Pyramid sprint
in Halle (a.k.a “Wasp
syncing client data
with socket.io (via
server connects to
to existing DB
Url mapping between
ubikDB and ZODB
both ZODB and ubikDB has traversal based url
On the roadmap
optimised syncing of collections (use-case driven)
read-only (and writeable) database views