thoughts on our value proposition, branding, presentation

34 views
Skip to first unread message

Simon Michael

unread,
Jun 20, 2021, 4:02:32 PM6/20/21
to hledger
In Conversations in Code podcast's Plain Text Accounting episode
(https://conversationsincode.xyz/003.html, recommended!)
it is mentioned that PTA is offputting, perceived to be complex and
labour-intensive, even for technical folks (in this case it was more
perception than reality, once over the hurdle they found it easy ).

It is a good reminder that complexity/fragmentation/choice,
getting-started hassle, and ongoing labour cost have always been -
whether perceived or real - a weakness and limiting factor for PTA.

Relatedly, in the post "Your product is a joke"
(https://www.eesel.app/blog/your-product-is-a-joke) (HN discussion:
https://news.ycombinator.com/item?id=27539726), analogies are made
between product design and improv comedy, and recommendations are
offered.

What inspiration could we take from this for PTA in general and
hledger specifically?

I have lots of related thoughts, but here are a few (read the above
post and these will make more sense):


1. BUILD A BASE REALITY BEFORE YOU GET TOO CREATIVE

Translation: describe/understand/establish contact with users' reality
/ the common perception, first.

What is our base reality ? It could be eg:

"PTA is complicated, hard to get started with, and loads of work"


2. STOP AND GET REALLY EXPLICIT ABOUT YOUR GAME

Translation: clearly call out our "gimmick", unique value proposition,
thing that makes us different.

What is our game/UVP (whether actual or aspirational), currently ?

Compared to other accounting tools (GUI, cloud-based, commercial, mobile, spreadsheets, paper):

- (some distillation of the advantages mentioned on plaintextaccounting.org)

Compared to other Ledgerlikes, long story short, I feel it is two-fold:

- "dependable"
- "easy"

Let me know if you see it differently.

(Based on this I'm thinking of updating the product tagline again, to
"easy, dependable plain text accounting". Clear messaging, though not
very exciting or catchy.. other ideas welcome.)


3. LOOK TO EXPLORE OR HEIGHTEN, BUT MAINTAIN FOCUS

Translation: focus, double and triple down on that unique aspect. Turn
it up to 11, and see where that leads. Don't dissipate energy chasing
a hundred other ideas.


4. DON'T USE NOT KNOWING YOUR GAME AS AN EXCUSE TO NOT START

Translation: when our unique value proposition / true strength is
unclear, move forward anyway, do experiments and seek to discover it
as soon as possible.


Simon Michael

unread,
Jun 20, 2021, 4:12:59 PM6/20/21
to hledger

On Jun 20, 2021, at 10:02 AM, Simon Michael <si...@joyful.com> wrote:
What is our base reality ? It could be eg:
"PTA is complicated, hard to get started with, and loads of work"

Correction, I meant to write: 

It could be eg:
"PTA is cool, but complicated, hard to get started with, and loads of work"

David J Patrick

unread,
Jun 20, 2021, 8:46:04 PM6/20/21
to hle...@googlegroups.com
Hi Simon! IMHO, I think the answer might be in polishing, and leading with hledger-web. The web interface is the least threatening iteration of hledger, even if the real power is at the cli. Maybe the new user is ushered straight to the (updated and improved) web-ui. Maybe the hledger-web of the not-too-distant future, could have tabs that led to some surprise features and heck, ALL the docs! Built into hledger-web? Even docs that gently explained similarities and differences between how hledger-web, hledger-ui and hledger operate.

NUKE and rebuild demo.hledger.org from the ground up, using a nice, normal example set of data, to be smashed on and tested and vandalized for a week, AND THEN RESET! Because, as you know, currently demo.hledger.org is a demonstration of insanity! How many currencies??? Standard accounting categories??? egads, don't show a potential user that!

and allow me to take this opportunity to re-send hledger-web-mockup-big-i
the picture jam packed with hledger-web fantasy features!

djp



--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/hledger/64BCAC61-E1DF-4E4D-8859-343044D8E837%40joyful.com.
hledger-mockup_big-i.png

Ryan

unread,
Jun 20, 2021, 10:31:46 PM6/20/21
to hledger
Hi Simon,

I respect that you're asking these questions as an open source project leader. It's tempting to ignore this stuff and lead with the tech. I transitioned my career from engineering to marketing when I realized my work hadn't made the kind of impact I wanted because I wasn't doing marketing well. "Your product is a joke" is teaching product/marketing strategy through improv.

The name "plain text accounting" describes a technical aspect of the product and says nothing about why I should care. The name "hledger" does the same. I suspect very few people in the world care that hledger is written haskell. Not that the name is a huge deal but I think it indicates we're thinking more about the tech than the user/customer.

Personally, and this is just one person's perspective, the "plain text" aspect of PTA was a turn-off for me. I'm very comfortable with text, command line, git, etc... but I didn't perceive a significant benefit from doing accounting in plain text. I wasted years trying to do personal accounting with gnucash and mint because PTA didn't seem convincing to me.

Eventually, after reaching my limit with those tools I finally decided to give PTA a fair try. Then I was hit in the face with having to choose which PTA tool to use, which created a lot of friction and I was worried I would pick the wrong one.

Finally, I decided on hledger which I think was the right choice. But I suspect a lot of people who might be happy with hledger never give it a fair shot. I think YNAB was a project that did marketing well. I don't like the direction they went which is why I didn't use it but they made it clear why I should care.

For me, the value of PTA/hledger is that it makes recording and categorizing transactions super easy and it's an open, accessible way to store my accounting data privately. I use hledger-ui most and rarely open my journal file with text editor. I don't find hledger-web appealing, which is part of why I'm working on nextcloud-hledger. I don't care about the fact that my accounting data is stored as text, only that it's open, accessible (to me), and I can keep it private. I don't care what programming language it's written in. I care how easy it is to use, particularly for day to day bookkeeping with is a PITA in most GUI accounting tools.

I'm appreciate the work you've done on hledger. It's a fantastic project. Thank you!

- Ryan

Allan Odgaard

unread,
Jun 21, 2021, 6:25:58 AM6/21/21
to hledger
On Sunday, June 20, 2021 at 10:02:32 PM UTC+2 Simon Michael (sm) wrote:
[…] PTA is offputting, perceived to be complex and
labour-intensive, even for technical folks […]

I think most users would use a spreadsheet for accounting. This works pretty well for basic stuff (cash in, cash out).

Spreadsheets have filtering and sorting options, in addition to aggregation functions like SUBTOTAL (which only include non-filtered rows), so in addition to having a “dashboard” with key numbers, it is trivial to interactively extract information by applying a filter to some of the columns.

Furthermore, something like Google Sheets allow the spreadsheet to be accessed from multiple devices and by multiple people, making this a really appealing solution when you are collaborating on a ledger (e.g. travel expenses) with friends.

I think it is from this baseline that we should ask, what would make PTA better? And how can we make it easy to progress from a spreadsheet to double entry accounting?

I think for users who do not need complex accounting, it is a hard sell, and myself, as a technical user, I feel that some of the advantages of having a plain text file format are not there because each transaction takes up at least 3 lines plus a blank, so the shell commands that I normally use with plain text files are not useful for ledger files, and exporting my ledger as a CSV file does, to the best of my knowledge, not provide a way to import it again.

So in many respects, working with a Google Sheet feels closer to “plain text”, I can even get a permanent URL that returns the sheet as a CSV file, and this can be imported again without loss of data (beyond formatting).

Back to the original question: I think that if we could come up with a shorthand / single line format, with a tabular representation, that would go some way to make the concept more appealing to technical users and allow a more natural progression from the single-entry spreadsheet to double-entry accounting.

Of course a single-line format does lose some capabilities, but it also provides advantages, such as easier copy/paste, column editing, sortable, grepable, and for people whose transactions mostly just involve two accounts, the downsides would be negliable.

Here’s an example where I took two demo ledger entries I found online and wrote out as single line entries, I think the arrows actually add a bit of value:

2008-02-25 Assets:Current:BestBank:Checking ($2000)   <- Income:Salary:AcmeCo                                   ; ACME | Salary paid from employer
2008-03-12 Assets:Current:BestBank:Checking ($301.50) -> Expenses:Financial:Fees ($1.50) -> Assets:Current:Cash ; ATM withdrawal - 00044242



Simon Michael

unread,
Jun 21, 2021, 2:05:56 PM6/21/21
to hledger


> On Jun 20, 2021, at 4:31 PM, Ryan <ryan....@gmail.com> wrote:
> I respect that you're asking these questions as an open source project leader. It's tempting to ignore this stuff and lead with the tech. I transitioned my career from engineering to marketing when I realized my work hadn't made the kind of impact I wanted because I wasn't doing marketing well.

Thanks Ryan. That's interesting to hear. Yes, you could spend your life doing cool technical stuff and still make zero (or, negative :( ) real impact.

> The name "plain text accounting" describes a technical aspect of the product and says nothing about why I should care. The name "hledger" does the same. I suspect very few people in the world care that hledger is written haskell. Not that the name is a huge deal but I think it indicates we're thinking more about the tech than the user/customer.

Of course you're right. Perhaps in context these made a little more sense, I can add a few historical notes.

"hledger" was following an existing "X ledger" naming scheme for ledgerlikes and a "h THING" scheme for haskell apps. The potential userbase was Ledger users, techies who had heard of Ledger, and Haskellers, and the goal was to communicate that it's a kind of accounting ledger, similar to Ledger, in fact a haskell port of Ledger, still highly compatible with it.

"Plain text accounting" was the term loose enough, specific enough, and familiar enough to get traction and tie together the sprawling ecosystem of Ledger-likes and related tools.

Both terms are descriptive, with the goal of communicating "what it is" to techies. Both are quite boring, but I guess I felt clarity is important early on when you're trying to build community and get traction.

Perhaps we could add better names now ? What would you choose ? Depends on the goals and target market of course, doesn't it.


> Personally, and this is just one person's perspective, the "plain text" aspect of PTA was a turn-off for me. I'm very comfortable with text, command line, git, etc... but I didn't perceive a significant benefit from doing accounting in plain text. I wasted years trying to do personal accounting with gnucash and mint because PTA didn't seem convincing to me.
>
> Eventually, after reaching my limit with those tools I finally decided to give PTA a fair try. Then I was hit in the face with having to choose which PTA tool to use, which created a lot of friction and I was worried I would pick the wrong one.
>
> Finally, I decided on hledger which I think was the right choice. But I suspect a lot of people who might be happy with hledger never give it a fair shot. I think YNAB was a project that did marketing well. I don't like the direction they went which is why I didn't use it but they made it clear why I should care.
>
> For me, the value of PTA/hledger is that it makes recording and categorizing transactions super easy and it's an open, accessible way to store my accounting data privately. I use hledger-ui most and rarely open my journal file with text editor. I don't find hledger-web appealing, which is part of why I'm working on nextcloud-hledger. I don't care about the fact that my accounting data is stored as text, only that it's open, accessible (to me), and I can keep it private. I don't care what programming language it's written in. I care how easy it is to use, particularly for day to day bookkeeping with is a PITA in most GUI accounting tools.

I have tried many times to concisely summarise exactly what it is we like about "PTA", and have found it quite difficult. Different aspects of it are valuable to different people. Thanks for describing your usage pattern, these vary a lot and it's always good to hear them. You rightly point out the offline, privacy, data sovereignty aspect. You don't care about the plain text part, whereas I feel the human readable plain text formats are quite valuable for ensuring the longevity and durability of the data. (Incidentally, it isn't a hard rule that all data must be stored as plain text at all times.)

How do you add your transactions by the way ? a or A key in hledger-ui ?

> I'm appreciate the work you've done on hledger. It's a fantastic project. Thank you!

Thanks Ryan.

Simon Michael

unread,
Jun 21, 2021, 2:05:58 PM6/21/21
to hledger
On Jun 20, 2021, at 2:45 PM, David J Patrick <dava...@gmail.com> wrote:
Hi Simon! IMHO, I think the answer might be in polishing, and leading with hledger-web.

Hi DJP! Good to hear from you. Thanks, noted these good points.

Because, as you know, currently demo.hledger.org is a demonstration of insanity! How many currencies??? Standard accounting categories??? egads, don't show a potential user that!

It's currently showing the bcexample journal, read only. Is that what you mean ? It's supposed to be somewhat "realistic". Too complex ?

and allow me to take this opportunity to re-send hledger-web-mockup-big-i
the picture jam packed with hledger-web fantasy features!

Great, I love this mockup. :)


Simon Michael

unread,
Jun 21, 2021, 2:08:51 PM6/21/21
to hledger
Thanks Allan. I agree with all of this. 

(Re one-line formats, I have often thought we should try making the newlines within transaction entries optional, and allow the "lines" to be separated by tabs or double spaces.)

Simon Michael

unread,
Jun 21, 2021, 3:58:28 PM6/21/21
to hledger
More quick thoughts.

There are some different ideas of what is, could be, and should be our focus, our "thing". (The "game" being played in the improv to delight the audience; the unique value proposition of hledger, explored and expressed fully to delight the users.)

I picked "Dependable" and "Easy". (Two words doing a lot of work by the way - imagine them applying to all aspects of interacting with the project.) Why these ?

I guess because they are things I value personally - I'm very fond of software that doesn't waste my time - and because I think they more or less summarise hledger's existing focus, and it makes sense to me to sharpen that focus, rather than start off in a whole new direction. If it's a good focus.

Last night I thought of 25 more possibilities, unfortunately with no writing instrument to hand, but again you can probably imagine them.

So, if we agree that focus, a certain concentration on one or two things, is a good idea - at least during some period of time - how do we choose the right one ?

Of course this leads to goals. Why Are We Here ? What's the reason to keep doing this ? I have often asked myself this but I'm not sure if we've discussed it as a community. For me, there have been many reasons from small to big, and the biggest would be to provide something useful to the world. What could we imagine ? Teach bookkeeping ? Spread financial literacy ? Promote eco-accounting ? Practice/learn/teach/enjoy community ? Solve some pain points in the PTA world ? Help explore the design space and serve as prototype/cautionary tale for future tools ?

Two approaches:

- Unclear vision / low energy: try to be excellent / have fun; sustain it over a long time; hope the world finds you; hope that it finds some use for what you're doing.

- Clear vision / high energy: acquire a clear vision (somehow); be intentional and strategic about goals, process, marketing; plan, execute, deliver; sustain it over a long time.







> 1. BUILD A BASE REALITY BEFORE YOU GET TOO CREATIVE
>
> Translation: describe/understand/establish contact with users' reality
> / the common perception, first.

Alternate translation: ship all the required, "table-stakes" features, to an adequate level of quality, first.

Dmitry Astapov

unread,
Jun 21, 2021, 5:21:55 PM6/21/21
to hle...@googlegroups.com
Apologies for not addressing the questions raised in the thread-starting emails. I just want to share the thoughts that occurred to me as I was reading the replies.

On hledger vs spreadsheets.

I always viewed hledger/ledger as tool you go to when you outgrow the spreadsheet. I agree that when you are limiting yourself to two accounts per transaction (or just dont do double-entry accounting at all), you could use spreadsheets perfectly fine, and you can go a long way using just them.

But once you outgrow that and need more complex transactions that still balance, spreadsheets become too limiting specifically because "everything has to be one line" - now you have variable number of columns, or "multi-line entries, but worse than in ledger as they dont have clear boundaries", and ledger/hledger format is a perfect answer, IMO

At the same time I do agree that there are cases where ability to pipe hledger journal into "tool-friendly" format is useful, so you can do something like:

hledger to-machine -f my.journal | sed -e '.....' | hledger from-machine > my_edited.journal

But this format does not have to be human-friendly, it has to be machine-friendly

On plethora of PTA tools and "vendor lock-in"

Back when I first tried hledger, I am pretty sure it was positioned as "ledger, but in haskell". I know and can program in haskell, and still ability to take my data and use it with ledger with minimal or no edits was a major selling point for me back then.

The fact that your data is text might not be enough to fully escape "vendor lock-in". After all, XML and JSON are also text, but I would've hated to keep my financial data in those formats. 

So (somewhat loose) adherence to the format that is recognized by other tools was a big part of "value proposition" for me



--
You received this message because you are subscribed to the Google Groups "hledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hledger+u...@googlegroups.com.


--
D. Astapov

David J Patrick

unread,
Jun 21, 2021, 5:43:21 PM6/21/21
to hle...@googlegroups.com

It's currently showing the bcexample journal, read only. Is that what you mean ? It's supposed to be somewhat "realistic". Too complex ?

Oh wow, my bad, I was somehow looking at the old one. That looks just fine!
djp

Ryan

unread,
Jun 21, 2021, 10:20:52 PM6/21/21
to hledger
On Monday, June 21, 2021 at 2:05:56 PM UTC-4 Simon Michael (sm) wrote:

Perhaps we could add better names now ? What would you choose ? Depends on the goals and target market of course, doesn't it.
 
I wouldn't change the name. It's well established and a rose by any other name would smell as sweet. I only meant to point out that choosing names to highlight plain text and haskell indicates that developers were in mind, as opposed to a customer profile that might be larger or in greater need of an accounting solution.

I think you're heading in the right direction just by asking the questions you started this thread with. I hope I can help in some way.


> For me, the value of PTA/hledger is that it makes recording and categorizing transactions super easy and it's an open, accessible way to store my accounting data privately. I use hledger-ui most and rarely open my journal file with text editor. I don't find hledger-web appealing, which is part of why I'm working on nextcloud-hledger. I don't care about the fact that my accounting data is stored as text, only that it's open, accessible (to me), and I can keep it private. I don't care what programming language it's written in. I care how easy it is to use, particularly for day to day bookkeeping with is a PITA in most GUI accounting tools.

I have tried many times to concisely summarise exactly what it is we like about "PTA", and have found it quite difficult. Different aspects of it are valuable to different people. Thanks for describing your usage pattern, these vary a lot and it's always good to hear them. You rightly point out the offline, privacy, data sovereignty aspect. You don't care about the plain text part, whereas I feel the human readable plain text formats are quite valuable for ensuring the longevity and durability of the data. (Incidentally, it isn't a hard rule that all data must be stored as plain text at all times.)

I also care about ensuring the longevity and durability of my accounting data. I'm not sure that everyone reaches that same conclusion when they hear "plain text". It can be helpful to directly state the thing that matters most so it will resonate with more people. One of the many great ideas from Toyota is to iteratively ask why. I think it's useful in marketing as well. 
  1. Why? It's plain text.
  2. Why? Plain text can be easily read by a human.
  3. Why? It helps ensure the longevity and durability of the data.
  4. Why? ...
When you say "different aspects of it are valuable to different people", I agree but I also acknowledge that the more different types of people you try to satisfy with the same product the harder it becomes to sufficiently satisfy anyone. Sometimes you have to choose not to serve particular customer types. It might be that my usage pattern doesn't fit hledger's mission. Although I doubt that because I'm finding it very useful. :)
 

How do you add your transactions by the way ? a or A key in hledger-ui ?

Yes, I use the 'a' command in hledger-ui. I'm using that to inspire how adding transactions works in nextcloud-hledger.

Finally, and I don't know how much sense this makes, I feel like the PTA file format could be to accounting something like what HTML was to the internet. But the slightly different formats of ledger-likes take away from that. It might help if there were a standard, well documented PTA format that all ledger-likes agree to support.

- Ryan

Reply all
Reply to author
Forward
0 new messages