[IAEP] Library Activity

Aleksey Lim alsroot at member.fsf.org
Mon May 4 23:23:44 EDT 2009


In case of Library activity I'm going to follow simple rules:

* use local datastore API to search/filter objects
* use remote datastore API(in some way) to search/filter objects from
  remote users(sources)
* use telepathy tubes for notifying users about changes
* sync shared objects while opening Library activity or manually

So, dirty objects is not a huge problem for Library

On Mon, May 04, 2009 at 03:15:41PM -0500, James Simmons wrote:
> Carol,
>
> I see sharing the catalog as a read-only thing.  I don't know what  
> Aleksey has in mind for Library.   Even if that wasn't true, a database  
> is not necessary.  There is a framework called Prevayler that handles  
> in-memory databases in such a way that you can lose power without losing  
> updates.  I've used that framework in Java and I believe there is an  
> implementation for Python as well.  I doubt I would need it though.
>
> I think of this as being an electronic card catalog for one's personal  
> library.  I'm not doing airline reservations, or dealing with more data  
> than will easily fit in memory.  If someone's battery dies while they're  
> adding cards to the catalog they'll lose their work but the old  
> directory entry should survive.
>
> As a user I would not want to need external software to make my Activity  
> work.  I have experienced this with Read Etexts and the speech function.  
> Read Etexts has supported TTS with highlighting for months, but getting 
> the needed external (outside the Activity bundle) software on everyone's 
> XO is a whole other problem, that will take a lot longer to solve.  If 
> there was a way to avoid that I would have.
>
> James Simmons
>
>
> Carol Farlow Lerche wrote:
>> You would need to reinvent ACID updates if you shared the catalog.
>>
>> On Mon, May 4, 2009 at 12:34 PM, James Simmons  
>> <jim.simmons at walgreens.com <mailto:jim.simmons at walgreens.com>> wrote:
>>
>>     Carol,
>>
>>     I would not use sqllite 3.  The metadata for several hundred books
>>     could easily fit in memory.  It would basically be a good sized
>>     spreadsheet.  Python has a "pickling" feature which can save a
>>     bunch of objects in memory in a single file that can be easily
>>     reloaded into memory.  I could store the pickle file as a Journal
>>     entry.  I would not try to recreate ALL of Calibre, just the parts
>>     I would find the most useful.  That way the Activity could be
>>     entirely self contained.
>>
>>     James Simmons
>>
>>
>>     Carol Farlow Lerche wrote:
>>
>>         Calibre makes a sqlite3 database which is the basis for its
>>         display.  It seems to have a reasonable schema.  (An easy way
>>         to examine it is with the Sqlite Manger, an excellent Firefox
>>         add-on if you haven't already discovered it).
>>
>>
>>
>>
>

-- 
Aleksey


More information about the IAEP mailing list