Having experienced all of the benefits...
Geert Janssens
geert.gnucash at kobaltwit.be
Mon Sep 15 13:11:42 EDT 2014
On Monday 15 September 2014 12:01:27 Derek Atkins wrote:
> Colin,
>
> Colin Law <clanlaw at gmail.com> writes:
> > There is no need to contemplate a port of the s/w. I believe the
> > principle requirement is for a json http interface to allow
> > interrogation and updates to the database. Then the mobile app can
> > be built on that, starting with basic features such as transaction
> > entry and account summary display. In the short term there would
> > need to be a lock to prevent remote access while gnucash itself was
> > running as currently it would not cope with the database being
> > updated under its feet.
>
> This has been repeated multiple times over the past couple years, but
> the more I think about it the more I think this isn't exactly the
> right answer. For one thing, it requires a server, and most people
> don't have or cannot run a server. For most people it would limit
> them to having a working app only on their home network, which sort
> of defeats the purpose of having an App on a device.
>
> The alternative would require *someone* to run a server for people.
> But I know that *I* wouldn't trust anyone else to do that (although I
> suppose there are plenty of people who would, otherwise mint.com
> wouldn't have a business).
>
> However I don't think it behooves us to *require* such a service to
> exist in order to have an App.
>
A very valid point, thank you.
In my opinion there should be room for both approaches. Some people will prefer a client-server
solution, others a more standalone app.
The computing landscape has been changing a lot in recent years. And with that the way in
which people interact with computing devices.
I really think it would be good for GnuCash' future to keep these new interaction ways in mind
while making long-term design decisions like the current engine rewrite. (I think we do by the
way).
For me the engine should become a powerful library that exposes all features gnucash has to
offer with good scripting bindings. On top of that many scenarios could be built:
- the current plain desktop app
- an independent mobile app
- a webinterface with or without a mobile client
- integration in personalized workflows
Maybe not all of this *will* happen. I certainly won't have time to realize all of these possibilities.
I just want to keep the barriers towards these possible alternatives as low as possible. So others
can build on it.
On the bright side, our current engine is already fairly powerful and we do have guile and
python bindings. So we are in a good position to push this flexibility even further. The
bottlenecks to tackle are well-known:
- reduce engine dependency on scheme (an important portability blocker)
- drop glib dependency (another portability blocker)
- centralize *all* business logic in the engine (parts are currently in the GUI code)
- make gnucash a real database program (brings multi-user concurrent access and solves the
http/json loading issue)
That's it. Not too much really, is it :)
Geert
More information about the gnucash-user
mailing list