2017-08-19 GnuCash IRC logs

00:19:44 *** jralls_afk has joined #gnucash
00:22:48 *** jralls_afk has quit IRC
00:47:44 *** mrklintscher10 has joined #gnucash
00:49:47 *** mrklintscher9 has quit IRC
01:20:29 *** jralls_afk has joined #gnucash
01:23:33 *** jralls_afk has quit IRC
02:12:31 *** gjanssens has joined #gnucash
02:12:31 *** ChanServ sets mode: +o gjanssens
02:14:01 <gjanssens> .
02:16:47 *** jralls_afk has joined #gnucash
02:17:06 *** jralls_afk is now known as jralls
02:17:40 *** ChanServ sets mode: +o jralls
02:35:42 *** bhardwajs has quit IRC
02:36:42 *** mrklintscher10 has quit IRC
02:38:28 *** mrklintscher10 has joined #gnucash
03:50:13 *** fabior has joined #gnucash
03:53:24 *** fabior has quit IRC
04:01:21 *** fekepp has joined #gnucash
04:07:36 *** fabior has joined #gnucash
04:29:21 *** User has joined #gnucash
04:40:21 *** O01eg has quit IRC
05:00:43 <jralls> jonas: Nope. The precious metals are in the IS0-4217 currencies because they're in ISO-4217. So far the ISO-4217 committee has not recognized any cryptocurrencies.
05:01:23 *** benno has joined #gnucash
05:02:14 <jralls> jonas: https://en.wikipedia.org/wiki/ISO_4217#Cryptocurrencies says that they may be thinking about it.
05:02:16 *** fekepp has quit IRC
05:04:36 *** benno has quit IRC
05:08:19 *** benno has joined #gnucash
05:17:20 *** pilotauto has quit IRC
05:46:45 <jonas> I was asking "would it be interesting to include cryptocurrencies in the currencies supported (by gnucash)", not "would it be intestering to include cryptocurrencies in ISO-4217"
06:23:24 *** mikee has quit IRC
06:30:47 *** mikee has joined #gnucash
06:30:50 *** ChanServ sets mode: +o mikee
06:42:56 *** mikee has quit IRC
06:47:57 <chf> I think it would be worth including them into Gnucash, jonas, jralls; but there's no standard for the abbreviations yet. The existing exchanges name them differently. Additionally, as you already said, there are a lot of them, so we must define, what the „major“ ones are.
06:49:23 *** mikee has joined #gnucash
06:49:27 *** ChanServ sets mode: +o mikee
06:49:43 <chf> All this changes quite often, there's no "stable order of market capitalisation", for example.
06:49:49 <jralls> chf: The GnuCash core team has a very long-standing pollicy that currencies are those defined by ISO-4217. We are not inclined to change that policy, so until ISO-4217 figures out what to do with crypto-currencies GnuCash users will have to treat them as commodities.
06:49:53 *** fabior has quit IRC
06:59:36 <chf> There's the problem that you can have only equity accounts below any equity accounts, and those can only contain accounts of the type "CURRENCY", for example.
07:01:19 <chf> Besides, the account hierarchy rules enforced by Gnucash do not match very well to common account hierarchies used in Germany.
07:06:32 <jralls> chf: Concerning Equity, so? Equity should be in the base currency, and if you want to keep the tax folks off your back that should be your national currency.
07:08:39 <jralls> As for the account hierarchy, the only difference we're aware of is that GnuCash doesn't provide a "Passive" umbrella account to contain Equity and Liabilities. Our several European developers over the 20 years of GnuCash haven't found that to be enough of an issue to bother fixing it.
07:10:14 <jralls> Beyond that, I'm not sufficiently knowledgeable about German accounting practice to discuss it further. fell is the best one, but he's not here right now. gjanssens is and he may have some useful thoughts on the matter.
07:12:00 <jralls> lmat: I think I found the KVP problem: KvpValue wants to take ownership of the char* and as written it belonged to libdbi. I added a g_strdup and the test passed.
07:20:30 *** mikee has quit IRC
07:24:54 <gjanssens> The only thing I can add is I have been considering extending gnucash' notion of "currency" for some time, but never found time nor sufficient motivation to actually do so.
07:26:15 <gjanssens> I agree wit jralls iso-4217 defines official currencies, but that doesn't mean we couldn't have user-defined currencies that behave like the official ones in the books for convenience even if the should officially be considered commodities.
07:27:13 <gjanssens> But as said I never got further than lightly thinking about it and probably won't in the near future.
07:27:17 <jralls> Whether a crypto-currency is a currency or a commodity depends on the country so it would be the user's responsibility.
07:27:26 <gjanssens> Of course
07:27:53 <gjanssens> That's why gnucash can't decide this universally, but could provide the means for individual users to do for their context
07:28:11 <chf> More elaborated example: you cannot have something other than a "currency" in an equity account, and while shares of a company don't belog there (they are liabilities), other values do, such as gold.
07:28:32 *** mikee has joined #gnucash
07:28:36 *** ChanServ sets mode: +o mikee
07:29:17 <gjanssens> chf: even so it should be expressed in € in your equity. At least that's how I understand it for Belgium?
07:29:26 <chf> In this regard the cryptocurrencies are like gold, but you can't make an account of the type "share" for Bitcoins, for example.
07:30:15 <jralls> chf: Why not?
07:30:30 <chf> I think so, you must always have the correct price for your main currency.
07:31:19 *** gjanssens is now known as gjanssens_afk
07:32:10 <chf> You can, jralls, but not under "equity", but that would be the place where Bitcoins in "cold storage" might belong "logically".
07:34:35 <jralls> No, anything you actually have is an asset and anything you actually owe is a liability. Equity is the difference between the two that is the intangible value of your business.
07:35:08 <chf> And you also cant let them be simply "Bitcoins" the always would show up as an equivalent of €, while there are no Bitcoins exchanges where Gnuicash can feth the price from, and it's very volatile.
07:38:25 <chf> I'm not very good at explaining that in english; the "intangible value" could be partly in Bitcoins, for example, and that can't be expressed in Gnucash as of now.
07:38:40 <jralls> That's true of regular currencies too. If you have a bank account in CHF (sorry, couldn't resist) then the EUR balance of the container account will reflect the last retrieved price, and you'd be nuts to update it every second.
07:42:07 <jralls> You're correct that the intangible value can't be partly in bitcoin. It also can't be in a common stock or in sheep: GnuCash doesn't support barter.
07:43:56 <jralls> So every non-currency equity split must be converted to an ISO-recognized currency and will anyway be rolled up to the currency that the top-level Equity account is in.
07:44:28 <chf> Hmm, I must further think about those issues, I think… I'll probalby see that xlearer automatically after I've finished the german account templates I'm working on. At least the missing "passive" type is a problem, which can be circumvented, of course (by "intelligently" giving the wrong type to accounts).
07:46:02 <chf> The latter might be the reason why developers didn't bother in the past.
08:05:31 <jonas> chf, I just checked out gnucash source and modified it to add the currencies I wanted
08:06:04 <jonas> around the time I was considering doing that, another user also joined this chat to ask about cryptocurrency support, so I imagine I am far from the only one who wants this
08:06:45 <jonas> being able to add currencies on the fly via the GUI would probably solve it for most people, but I wouldn't know where to start patching in that support
08:06:50 <jonas> just monkey-patching the xml file is easy tho
08:08:43 <chf> Of course, but you don't want to either stick to your patched version forever, or re-patch every update. And most people can't do that.
08:08:56 *** gjanssens_afk is now known as gjanssens
08:09:42 <jonas> gnucash seems stable enough that I can do my update then use that patched client until next time I upgrade my system
08:10:19 <jonas> longer than that, probably, since I build and run gnucash from docker now to maximize that portability and minimize the upkeep I have to do
08:11:03 <gjanssens> jonas: adding user currencies would start with defining an extra commodity type next to ISO4217 and tell gnucash to treat is as currency everywhere this differentiation is made
08:12:08 <jonas> for my monkey-patch I just pretend the cryptocurrencies I want are just part of the ISO and add them as such, that made them work out of the box
08:12:22 <gjanssens> And then you'd need to add an interface to allow users to create custom currencies. I expect the security editor could be extended for that purpose.
08:12:58 <gjanssens> jonas: that will indeed work for you locally but can't be accepted as a patch :(
08:14:03 <jonas> agreed
08:14:44 <jonas> "the right way" would probably be a dialog to allow the user to add one himself, I imagine, but that's beyond my ability to patch in
08:15:31 <jonas> unless they're hardcoded in another xml file, but I don't think that's gonna be very elegant like discussed
08:28:39 *** jralls is now known as jralls_afk
08:29:27 <chf> The user-editable approach would be best, I think That avoids endless questions as well: "Why isn't FOO-coin supported, when will it come?"; "Why are there so many scam-coins in the list, I hardly find the important ones?"…
08:29:46 <gjanssens> Indeed
08:35:47 <jonas> yeah, that'd be the main problem with crypto
08:36:03 <jonas> the lack of consensus about which ones that matter
08:45:59 *** User has quit IRC
09:37:34 *** benno has quit IRC
10:02:49 *** bhardwajs has joined #gnucash
10:17:19 *** jralls_afk is now known as jralls
10:33:18 *** fabior has joined #gnucash
11:12:41 *** fabior has quit IRC
11:33:02 *** User has joined #gnucash
11:37:09 <chf> (2017-08-19 13:34:35) jralls: No, anything you actually have is an asset
11:37:37 <jralls> Huh?
11:38:24 <chf> I've been thinking about this. "Liabilities" are translated as "Verbindlichkeiten", meaning exactly what you describe: something you owe.
11:39:22 <chf> "Assets" are translated as "Forderungen", the exact opposite: anything other people owe to you.
11:40:20 <chf> So "assets" aren't the things you really have got; somebody else has the money, and owes it to you.
11:41:13 <chf> Is this the same in english speaking countries?
11:44:01 <jralls> The issue isn't English speaking countries, it's that "assets" in English means both what someone else owes you (e.g. an account receivable or the balance in your bank account) but it also includes actual possession, e.g. the cash in my pocket or the value of my freehold land.
11:44:02 <chf> There is also the pair "Eigenkapital" (equity) and "Fremdkapital" (whatever?).
11:47:28 <chf> "Eigenkapital" are the actual possessions of your owb you put into your company (or the companies possessions), "Fremdkapital" are shares, for example, what other people have invested into your company.
11:47:46 <chf> of you own
11:47:53 <chf> your
11:48:00 <chf> can't type today
11:48:23 <jralls> Ah, we'd call "Fremdkapital" "shareholders equity".
11:48:33 <jralls> But I'm called to dinner. BIAB.
11:48:43 *** jralls is now known as jralls_afk
12:31:05 *** GabrieleV has quit IRC
12:33:14 *** GabrieleV has joined #gnucash
13:15:18 *** bhardwajs has quit IRC
13:58:20 *** fabior has joined #gnucash
14:00:40 <jonas> if you want to get technical, isn't cash in your pocket also still just something someone owes you?
14:01:20 <jonas> it is a token you can trade in, just as the stocks you own, or the numbers on the bank account that you can access
14:01:59 *** fabior has quit IRC
14:06:06 <gjanssens> chf: "Assets" is not "Forderungen", it is "Aktiva" in German
14:06:19 <gjanssens> "Forderungen" is only a subset of that
14:06:43 <gjanssens> Namely services or goods you have already sold but your customer hasn't payed you yet
14:07:20 <chf> Oh, I see, isnt't there a generic english "active" account type?
14:07:34 <gjanssens> Nope
14:07:46 <chf> Yes, or short term loans and such…
14:08:10 <gjanssens> Exactly
14:08:36 *** jralls_afk is now known as jralls
14:09:50 <chf> Well, "Aktiva" is essentially what John described, so that seems to be consistently translated.
14:11:40 <chf> One of the problems I see is that "Forderungen" and "Verbindlichkeiten" can "overlap", and actually do so, in the SKR49, for instance.
14:13:35 <chf> Certain accounts can be "overpaid" (don*t know how to explain that better).
14:17:00 *** fabior has joined #gnucash
14:18:06 <gjanssens> How is that a problem exactly ?
14:21:28 <gjanssens> chf: Do you mean that a negative "Forderung" (Account Payable in Gnucash) should really be reported as a "Verbindlichkeit" (Liability)?
14:21:45 <gjanssens> That's an accounting question I don't know the answer to
14:21:54 <chf> Looked into it, seems actually not to be a problem, because tjey can be sub-accounts of each other.
14:22:19 <chf> j->h
14:23:42 <gjanssens> I know my accountant uses two different, but related accounts to handle this: "Payments to receive"/"Invoices to receive"
14:23:43 <chf> I was thinking in terms of "allowed sub-types" in the hierarchies, but that was an example where it apparently was already solved.
14:24:16 *** frakturfreak has joined #gnucash
14:24:35 <gjanssens> So if at year-end a customer has an unpaid invoice that is booked to payments to receive. If the customer overpaid, it will be booked to invoices to receive.
14:25:05 <gjanssens> I think one will be a "Forderung", the other will be a "Verbindlichkeit".
14:25:09 <chf> Yes, the SKR49 has some peculiar "headlines" e.g. "upper hierarchy elements"…
14:25:15 <chf> Yes.
14:25:26 <gjanssens> It does require some manual number shifting around year end...
14:25:53 <chf> "$FOO Forderungen und sonstige Verbindlichkeiten"
14:26:29 <gjanssens> Heh, a particular one indeed :)
14:26:49 <gjanssens> s/particular/peculiar/
14:27:36 <chf> I hope I don't confuse you too much with german terms, seems you speak vlaams natively?
14:28:06 <gjanssens> I'd make that grouping account a liability in your SKR49. That should accept both A/R and A/P subaccounts
14:28:18 <gjanssens> Yes, my native tongue is Vlaams
14:28:36 <gjanssens> I have a notion of German but wouldn't be able to communicate fluently in it :(
14:29:13 *** User has quit IRC
14:29:31 <chf> I have a notion of dutch, but "the same", I can read that quite well, however.
14:30:09 <chf> It's a problem to spontaneously construct correct sentences.
14:31:50 <gjanssens> Indeed. For me it often takes too long to come up with the right word also.
14:32:04 <chf> I did so, I made the accounts so that the type always reflects the "main purpose", just had forgotten that.
14:33:50 <chf> The real problem is that a whole hierarchy sub-tree is "Fremdkapital", but doesn't really match that type. This is because only this can have all required types as sub-accounts.
14:35:01 <chf> I'll elaborate that when I've finished my work on that template.
14:35:26 <gjanssens> Ok
14:37:45 <chf> To be sure I must start with LANG=C or something like that in order to get the correct translation pairs.
14:39:44 <gjanssens> Use both LANG=C LANGUAGE=C
14:40:11 <gjanssens> It depends on the platform which will affect your translations, I never know which to use where, so we recommend setting both
14:40:39 <gjanssens> You can also do this in the "environment" file in <install-dir>/etc/gnucash
14:40:47 <chf> LANG is the typical unixish vatiable.
14:40:54 <gjanssens> But the file will be overwritten with each install :(
14:41:04 <gjanssens> It's on my list to improve this eventually
14:45:47 <gjanssens> jralls: wow, that's a huge performance improvement (of a badly degraded situation)!
14:46:17 <gjanssens> jralls: does backend loading effectively work with your commit undone ?
14:46:34 <gjanssens> Oh, I just saw your mail
14:46:38 <gjanssens> Says it all...
14:47:02 <gjanssens> Quite a relief TBH :D
14:47:13 <gjanssens> My time to leave for diner...
14:47:17 *** gjanssens is now known as gjanssens_afk
14:47:54 <jralls> gjanssens: Yes, takes about 3 minutes for a 54M SQLite3 DB. Looks like the major speed bump now is boost::date_time's string parsing.
14:48:36 <chf> eet smakelijk
14:48:52 *** Cuare has quit IRC
14:55:04 *** fabior has quit IRC
14:55:58 <jralls> gjanssens_afk: Not only did your change work but reverting mine fixed travis. Good news all around.
15:01:54 *** kael has joined #gnucash
15:04:06 *** kael has quit IRC
15:09:57 *** fabior has joined #gnucash
15:10:24 *** kael has joined #gnucash
15:18:24 <lmat> jralls: Excellent sleuthing, and congratulations on the kvp problem! You also removed the delete kvp_value? I had just noticed that after removing delete kvp_value, the strings in them were uninitialized.
15:18:32 <lmat> hidden => KVP_VALUE_STRING(8j<E9>o#),
15:19:14 <lmat> That was after writing a whole routine to spit out the string value of a session (and his book, and his root account, and his children accounts, and instances, and their kvpframes, etc.)
15:20:00 <jralls> lmat: I removed the KvpValue delete after noticing that none of the other setters deleted it; a leak check showed no leaks.
15:22:29 <jralls> I added the g_strdup after I noticed a comment in kvp_value.hpp that said that KvpValue takes ownership of char* and realized that the char* I was passing in wasn't transferable.
15:24:16 <jralls> I think it would be cleaner for KvpValue to take a std::string& and let that manage the string memory. I understand that you did it the way you did because of the string cache, but as gjanssens pointed out the other day that's rather obsolete.
15:26:51 <lmat> jralls: not std::string &, but std::string. Yes on every other point. char * is purely for "compatibility".
15:29:28 *** fabior has quit IRC
15:42:23 *** kael has quit IRC
16:13:07 *** kael has joined #gnucash
16:56:49 *** jralls has quit IRC
16:56:57 *** jralls has joined #gnucash
16:57:41 *** jralls has joined #gnucash
16:58:26 *** jralls has quit IRC
17:02:44 *** gjanssens_afk has quit IRC
17:28:27 *** User has joined #gnucash
17:48:45 *** User has quit IRC
17:59:05 *** jralls has joined #gnucash
18:01:03 *** meb has joined #gnucash
18:02:19 *** jralls has quit IRC
18:06:28 *** meb has quit IRC
18:07:21 *** meb has joined #gnucash
18:48:06 *** Robert has joined #gnucash
18:53:02 <Robert> Hi, I want to contact the developers for the android app, and my first search was not fruitful. There are spurious .gnca,zip files appearing on my tablet and their names suggest that they are coming from the android gnucash app
18:59:49 *** jralls has joined #gnucash
19:02:55 *** jralls has quit IRC
19:26:37 *** Aussie_matt has joined #gnucash
19:40:38 *** Cuare has joined #gnucash
20:00:45 *** jralls has joined #gnucash
20:03:59 *** jralls has quit IRC
20:07:09 *** kael has quit IRC
20:11:16 *** CrashCart has joined #gnucash
20:11:47 *** Cuare has quit IRC
20:17:44 *** tuxd00d has quit IRC
20:18:12 *** tuxd00d has joined #gnucash
20:37:18 *** Aussie_matt has quit IRC
20:37:21 *** tuxd00d has quit IRC
20:37:54 *** kael has joined #gnucash
20:38:22 *** tuxd00d has joined #gnucash
21:01:27 *** jralls has joined #gnucash
21:01:32 *** kael has quit IRC
21:04:27 *** jralls has quit IRC
21:16:47 *** frakturfreak has quit IRC
22:02:14 *** jralls has joined #gnucash
22:05:19 *** jralls has quit IRC
22:19:06 *** mike has joined #gnucash
22:19:37 *** mike has quit IRC
22:22:41 *** CrashCart is now known as Cuare
23:03:00 *** jralls has joined #gnucash
23:03:35 *** Robert has quit IRC
23:06:12 *** jralls has quit IRC