thomasokken / free42

Free42 : An HP-42S Calculator Simulator
https://thomasokken.com/free42/
GNU General Public License v2.0
287 stars 55 forks source link

Radix and Digit Grouping #42

Closed salvis closed 2 years ago

salvis commented 2 years ago

You have a minor error on your https://thomasokken.com/free42/#doc page: "RDX. in the MODES menu" — it's in the DISP menu.

HP's use of the "other" decimal separator for digit grouping has irritated me for 45 years now, because it's a source of ambiguity. I see that you've denied this request in the past (https://forum.swissmicros.com/viewtopic.php?t=409), but please allow me to add my vote in favor of an option to use the space for digit grouping.

According to https://en.wikipedia.org/wiki/Decimal_separator#Digit_grouping and https://en.wikipedia.org/wiki/ISO_31-0#Numbers, there is a strong international push towards using the space:

Numbers consisting of long sequences of digits can be made more readable by separating them into groups, preferably groups of three, separated by a small space. For this reason, ISO 31-0 specifies that such groups of digits should never be separated by a comma or point, as these are reserved for use as the decimal sign.

If ISO says to not use the comma or point for digit grouping, we're on pretty solid ground for fixing a blunder made by HP half a century ago, not on a "slippery slope". :-)

thomasokken commented 2 years ago

Thank you for pointing out the error in my documentation; I'll fix it shortly.

I'm afraid I have to stand by my earlier reply regarding different number display options. I assure you that slippery slope is quite real when it comes to Free42 enhancements. I'm well aware that the slippery slope is commonly abused for shooting down completely reasonable requests, but in the case of Free42, there really are reasons for staying as close as possible to the HP-42S. Like UI consistency, ambiguities when displaying and parsing structured data... I might consider it for Plus42, since it has more flexible display logic, but that mitigates only some of the problems.

I do agree that spaces are better thousands separators, although in print that usually means narrow spaces, I think it's a lot less great if you're using full-width spaces. But that's where Plus42 comes in: in order to support arbitrary display sizes, I had to make the whole display repainting logic a lot more generic, and support for alternate fonts, and non-proportional fonts, is a pretty obvious next step, and with that, more flexible number formatting will become easier. (Support for more than 12 digits is another obvious step.) So I can put it on my list for Plus42, but no promises whether I'll actually implement it. If Plus42 doesn't sell well, I won't be able to keep spending as much time on it and work on the rather long wish list will go back to its pre-Free42-3.0 leisurely pace.

salvis commented 2 years ago

Thank you for your careful answer!

Yes, half-width spaces make sense in print, but if we have columns of numbers, they need to be right- (or point-)aligned. Given the left alignment of the current design, I think I would prefer full-width spaces, otherwise the display gets even more chaotic.

I got an HP-25 some 45 years ago, and then an HP-41CV that I still have, but I haven't replaced its batteries anymore since I installed Free42 on my phone. I discovered the Windows version only this week, and Plus42 only now that you've mentioned it.

If Plus42 doesn't sell well, [...]

Plus42 seems to be a well-kept secret, there's absolutely no mention of it on the Free42 page! Also, there's no [Buy] button on the Plus42 page. That combined could severely limit your success in selling it... :-) Seriously, Free42 is nothing short of amazing, and Plus42 is out of this world! Four LR1 batteries for my HP-41CV cost about 15 Euros, every two or three years, and with just a little nudging it should be possible to get a reasonable conversion rate. Here's my experience: I installed Free42 years ago from Google's app store, and I smile every time that I open it, but I didn't encounter your [Donate] button until I visited your web page to look for some information, just this week.

Back to the topic, sort of... My HP-25 and HP-41CV had single-line displays. Free42 has two lines and it's somewhat irritating that they don't align, but with the 4 lines in Plus42, this turns into a major distraction. Right-aligning FIX mode numbers would be an enormous usability improvement, and it would make the radix and digit grouping discussion mostly obsolete. You already do it for the Print-Out, why not also for the display? Moreover, right-aligning the display would not cause any of the other issues that you mentioned (except for UI consistency, which is a non-issue for Plus42).

P.S. I found another minor typo: the "PRON function" is actually called "PON".

thomasokken commented 2 years ago

Plus42 seems to be a well-kept secret, there's absolutely no mention of it on the Free42 page! Also, there's no [Buy] button on the Plus42 page. That combined could severely limit your success in selling it... :-)

Absolutely, but Plus42 is brand new. I just spent the last six months working on it pretty much full-time, and declared the 1.0 feature freeze a couple of weeks ago. I just put a link to it on the Free42 home page a few days ago, a bit understated perhaps, but it is already doing its job of making my Plus42 page the top result in Google for the search term "Plus42." I'm trying to get it into the Android and iOS app stores this month (still some formalities to take care of first), and at that time I'll also put a Donate button on my web site and stop calling it a beta. (The desktop versions will be donation-ware just like Free42, but the Android and iOS versions will be paid apps.) And there will be a one-time pop-up ad in Free42, I figure that's as effective as a publicity campaign can get for this kind of thing.

Back to the topic, sort of... My HP-25 and HP-41CV had single-line displays. Free42 has two lines and it's somewhat irritating that they don't align, but with the 4 lines in Plus42, this turns into a major distraction. Right-aligning FIX mode numbers would be an enormous usability improvement, and it would make the radix and digit grouping discussion mostly obsolete.

Hmm, not a bad idea. I'll put it on my to-do list.

P.S. I found another minor typo: the "PRON function" is actually called "PON".

Yes and no... the function is called PRON, but PRON and PROFF are abbreviated to PON and POFF in the menu, because there wouldn't be enough room to tell them apart otherwise with the ■. If you increase the number of columns enough, you'll see all function names in full. But I admit that the documentation should at least mention the abbreviated names, for clarity. I knew I should do that when I wrote it, but I was in a hurry. I'll make a note to fix that.

salvis commented 2 years ago

a one-time pop-up ad in Free42

It's unlikely with a single shot that you hit a convenient moment for the user to pay. I would suggest an ad that comes up randomly but rarely, say with a 5% chance. This has worked well for me way back when I was doing Shareware. And maybe a usage counter, something like "Thank you for using Free42 times since . Please tell your friends and associates about it, and consider donating or upgrading to Plus42."

thomasokken commented 2 years ago

No, the idea is not to nag people to pay, but just to let Free42 users know that Plus42 exists. They'll have to pay to use it on their phones, and they'll be able to use it for free on their PCs.

c3d commented 2 months ago

@salvis I came across this issue looking for something else entirely, but just in case, DB48X has very flexible number formatting options.

image

You can vary the digit grouping before and after the decimal separator, and select thin spaces, tick marks, underscore or "the other" separator.

image

DB48X also supports more than 12 digits.

image

@thomasokken apologies for barging in your project ;-)