The Beancount developer landscape seems to be thriving at the moment with
several recent announcements about new implementations.  This is certainly
exciting, and it's great to see such creativity.

Martin has made a huge contribution to the plain text accounting community,
both with the very well designed original Beancount system which we all
love, and also the extensive documentation and test suite.  Thank you
indeed!  These were certainly enablers for my own limabean
<https://github.com/tesujimath/limabean>.

And so now times are changing, and Beancount is in some ways being
liberated from its Python origins.  We are seeing work in Rust, Zig,
Clojure, and who knows what to come.  Exciting times indeed!  But how will
we avoid fragmentation?

It is clear that in future we will have multiple implementations of
Beancount-like systems.  That is not what I am concerned about.  My
concerns are:

1. Preserving a common file format

2. Preserving common core behaviour

I expect and celebrate a varied approach to user interface (Beancount Query
Language, Fava, or Fava-like GUI, Clojure, whatever else).  This is a
fruitful area for exploration.  So too, the plugin ecosystem will surely
diverge.  I agree with Moritz, the author of TurboBean
<https://github.com/themoritz/turbobean> (cool project!) that you wouldn't
want to embed a Python interpreter just for plugins if you don't already
need it.  And with limabean I am exploring the idea of not needing plugins
at all.

It should be easy for users to try out different implementations, which
requires (1) and (2) above, and perhaps more.

The vNext document <https://beancount.github.io/docs/beancount_v3.html> has
some interesting ideas, which explains TurboBean diverging with a new
approach to inventory.  Is this the future?  I would like to know, as I
would then have to follow along with limabean!

What I would really like to see is some kind of RFC process, like which is
used for evolution of the Rust language and ecosystem.  I hope that Martin
would like to be the BDFL for some kind of RFC-like process which unifies
all these parallel developments, in terms of defining core behaviour,
*especially
where this differs from OG Beancount* (in fact, probably only where it
differs).

In summary, I think we should embrace and celebrate the current divergence
of implementation work in the Beancount ecosystem, but take some steps to
mitigate the otherwise inevitable fragmentation.

All comments welcome!

-- 
You received this message because you are subscribed to the Google Groups 
"Beancount" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/beancount/CAFhGSbuUFDWnn2vi9bZEV3%2BtKaaPTCKDdVW4jdmmS02NUVX1CA%40mail.gmail.com.

Reply via email to