Hey Cédrick, I do a lot of iOS development. I've looked at Realm. I don't trust it. I do like Sqlite. I have written the following frameworks for iOS.
https://github.com/tblanchard/objectivefmdb I use it constantly on iOS development. I would like to port it to Pharo, possibly with GLORP front end. I have an equivalent library written in PHP (I like PHP for server work) that works against a PostgreSQL database. I use this a lot to field iOS apps with server back ends very quickly. I'm happy to share it all. But I think trying to get Realm, a proprietary data store to work well with Pharo something of a waste of time due to the proprietary nature of it. I am happy to help you out though - I've written a LOT of persistence active record type things and am pretty dang handy with GLORP as well. Drop me a note if you want to collaborate. -Todd Blanchard [email protected] > On Sep 10, 2017, at 3:14 AM, Cédrick Béler <[email protected]> wrote: > > Hello all, > > I’ve spent some time in the summer in what I call my quest to the ultimate > and easy and fun architecture to prototype some personal administration apps > and have fun :-) > I’ll share some experience and wonder if there are alternative in Pharo. > > I want app that are mobile firsts, then manageable with a computer (for more > complex administrative tasks). > I want them reactive (I especially like reactive data driven application like > meteor.js), ubiquitous around my devices and not always connected > (offline-first - this is very important if not the first objective). > > Ok, so I was lurking around looking for server and mobile distributed > databases and I finally found Realm > (https://realm.io/products/realm-mobile-platform/ > <https://realm.io/products/realm-mobile-platform/>) which is a cool > architecture plenty of promises, well documented, lots of tutorials... The > architecture is composed of 2 products: > - Realm DB [1] that runs on mobile device - multiplatform - fully open-source > - performant - an object DB with some limitation though > - Realm Object Server (ROS) [2] - provide two-way data sync simple and easy - > BUT proprietary even if free for developers … the entry point for serious > developments (in particular access programmatically to the server) is very > expensive ! 1500$mo ! > > The developer edition with is free is already quite outstanding to me. Looks > at this demo page on GitHub [3] ! > > But… without any control to the ROS, I find ROS quite limited finally. I may > then use the DB part, ROS free for what really need sync reactivity between > devices or between group of people (like a black board), but store all less > transient information to WhateverNoSQLDB probably in REST. > > Anyway I want to share that with you because it rings a smalltalk bell in my > head… it’s about object data, live feeling, and I want to use Pharo on the > server :) > > Maybe some people here have thought of an alternative ROS in Pharo or > Gemstone ? Any ideas or remarks ? > I was aware of sebastian Flow living full-stack framework attempt but don’t > know more. > > TIA > Cédrick > > NB: Pharo looks more and more great ! Congratulations guys for you job ! I > hope ESUG was nice. > I’ve just tried Telepharo on Pharo 6 (64 bit). Really great work too... It > works like a charm, out of the box on low cost dedicated ubuntu servers [4] > => 10€mo > Pharo 64 tinyBenchmarks is 2,75 times slower than on my Mac mini Core i5 > 2,5GHz from 2012 with SSD (I guess it’s not that bad and usable for personal > applications servers). I think it’ about 3 times faster than on a raspberry > Pi. > Mac mini (32 bit version): '1329870129 bytecodes/sec; 108576799 sends/sec’ > Dedibox Low Cost server (64 bit version)’ '595695171 bytecodes/sec; > 39441333 sends/sec' > > NB2: to download/install Pharo from command line, on the web site > instructions, it seems it lacks the trailing slash. I had to add it. > curl get.pharo.org/64 <http://get.pharo.org/64>/ | bash > > [1] https://realm.io/products/realm-mobile-database/ > <https://realm.io/products/realm-mobile-database/> > [2] https://realm.io/products/realm-mobile-platform/ > <https://realm.io/products/realm-mobile-platform/> > [3] https://github.com/realm-demos <https://github.com/realm-demos> > [4] https://www.online.net/fr/serveur-dedie/dedibox-sc > <https://www.online.net/fr/serveur-dedie/dedibox-sc> > >
