4 ms·
In my mind, it is: 1.0 1.1 1.10 1.15 1.20 1.45 1.5 as well.
by johnisgood 1y ago
In my mind, it is:
1.0
1.1 1.10
1.15
1.20
1.45
1.5
as well.
- petesergeant 1y agoThese look like decimal numbers because they use a period-delimiter, but they are not, in the same way that €50.000 is not €50...
- philjackson 1y agoI need to make an urgent call to my accountant.
- johnisgood 1y ago50.000 EUR is exactly 50 EUR, though. 50,000 EUR is not. For the record, before you down-vote, check the other comments. I am from an European country where we "officially" use "," as the decimal point (so yes, I know it might not be universally true, at least not in theory), yet my bank uses ".", and so do people (many, at least). In IT, it always has been ".", too. Of course in elementary school (>20 years ago) we used "," as the decimal point, FWIW. :P It might still be the practice there.
- wrigby 1y agoMost European countries use . as the thousands separator and , as the decimal point.
- johnisgood 1y agoI know, I live in such an European country, but I still know (and use) "." as the decimal point. Most people I know here do, too, and they are not in IT. I think it often depends on context, too, and I would like to think people just know. I just checked, my bank uses "." as the decimal point, too, instead of the official ",".
- weinzierl 1y agoLet me guess: Ireland or Malta? If not, then Germany?
- johnisgood 1y agoHungary. Would have you ever guessed? :P If you turn on localization on your PC, it will use "," instead of "." (in MS Word, definitely) for decimal points though, but as I was saying, in practice (and in real life), "." seems to be the common standard still for the decimal point, it seems, even though officially it is not. > Hungary uses a comma (",") as the decimal separator, not a period ("."). In Hungarian, a comma is used to separate the fractional part of a number from the whole part, while a period or space is used to group digits in thousands. For example, "one and a half" would be written as 1,5 in Hungarian. Real life would beg to differ, however. My bank uses "." instead of ",", and I have had the same experience elsewhere, too. In IT, it has always been ".", too.
- weinzierl 1y agoInteresting! I wouldn't have guessed, my next candidate would have been the Netherlands. How is ISO date (2025-07-21) adoption in Hungary?
- johnisgood 1y agoIt is all over the place (pretty inconsistent), but I just checked my appointments to physiotherapy (printed on paper). The format is "YYYY.MM.DD", close enough. :D From what I recall, I see this format a lot. That, and "%Y. %B|%b. %d". The latter may be the most common? I am not entirely sure. I do not mind these two formats. I have an issue with formats like 2025/05/09 and the like. Is it May, or September? It is ambiguous. Thankfully they are not common here, AFAIK.
- wrigby 1y agoHah - there I go acting like I know more about Europe than a European. TIL!
- jeroenhd 1y agoDepends on what language you speak. Having gotten used to commas as decimal separators, semantic versions never were that confusing to me.
- Pxtl 1y agoSee, this is why Canada (being a bilingual country) tried really hard to make "use spaces as the thousands separator" a thing. I mean it didn't catch on but they tried.
- tzs 1y agoIreland, Malta, and Cypress use the Euro as their currency but use dot as their decimal separator so without further context €50.000 is ambiguous. Probably the best way to handle this is the way SI recommends dot vs comma be handled in scientific and technical writing. Their recommendation is to use a thin space for grouping, so if you see a dot or comma it is the decimal separator. €50.000 and €50,000 would then both be exactly €50. If you meant €50000 and wanted to separate the thousands you would would write €50 000 (which looks ugly on HN because HN turns thin space into regular space). Update: actually, SI used to recommend thin space. Now they just say space without saying what kind of space. Some people recommend choosing narrow non-breaking space (U+202F) (which HN also turns into regular space). Also, for 4 digit numbers before the decimal they recommend not separating them, so 5k Euros would be €5000 not €5 000.
- globular-toast 1y agoThis is what I thought for a long time too. I think this comes from things like Windows 3.1 which was called "three point one". In my mind it was like "slightly more than three", which makes sense under the "decimal" interpretation. I didn't really notice when things changed to schemes like semantic versioning, but started to get confused when the numbers to the right of the point got bigger than 9. Nowadays I have taught myself to say "three dot one" instead to avoid confusion and stop my brain thinking these are numbers.
- ninkendo 1y agoThere was also a minor upgrade to Windows 3.1 called Windows 3.11, which further reinforces your point.
- johnisgood 1y agoYeah, in my mind, 3.11 > 3.1 as well, because I consider 3.1 to be 3.10 in this case. If they stick to only 3.0, 3.1, etc. then 3.2 would have been the next logical step, so I assume 3.11 is a minor version increment.
- cyphar 1y agoWhat software do you use that follows this convention? I can't think of any (as a trivial example, Linux 3.10 and 3.11 were released several years after 3.1, and after Linux 3.9). Every package manager I've ever used works the same way too. For projects that use SemVer, this is even explicitly standardised.
- johnisgood 1y agoSeems like we are all over the place. If you ignore the rest of my message (me considering it 3.10, which is not always the case, in retrospect), would you say "3.11 > 3.1" is false? Because according to "vercmp", it is true: https://news.ycombinator.com/item?id=44634420 https://news.ycombinator.com/item?id=44634420. $ ./vercmp-gnu 3.11 3.1 3.11 > 3.1 $ ./vercmp-arch 3.11 3.1 3.11 > 3.1 GNU version just uses "strverscmp()" ("sort -V" probably uses it). See the man page, it includes an example that shows you this output. Which means what I said is correct, just not for the reasons I have provided, because I incorrectly said that I perceive "3.1" to be identical to "3.10", because they are not identical (although they could be in some cases). $ ./vercmp-arch 3.1 3.10 3.1 < 3.10 $ ./vercmp-gnu 3.1 3.10 3.1 < 3.10 This statement of mine is also incorrect: "I assume 3.11 is a minor version increment.", but it depends really. 3.11 should be greater than 3.2, not the other way. So, most projects and package managers do it the way I correctly said (if we ignore the rest of my message), not the way Perl does it. By the way: $ ./vercmp-gnu 1.05 1.10 1.05 < 1.10 $ ./vercmp-gnu 1.05 1.1 1.05 < 1.1 $ ./vercmp-arch 1.05 1.10 1.05 < 1.10 $ ./vercmp-arch 1.05 1.1 1.05 > 1.1 Arch Linux's is expected, as "05 < 10", but "strverscmp()" interprets "1.05" as "1.5". That said, neither of the two are Perl-style.
- voidUpdate 1y agoIn my mind, these are not decimal numbers, these are version, subversion(, revision), so 1.10 comes after 1.9 EDIT: I'm also reminded of after minecraft 1.9 came out, everyone going "does that mean that minecraft 2.0 is next?" like no, its 1.10 next
- johnisgood 1y agoI see where you are coming from. I would check what GNU's vercmp and Arch's vercmp would say, but I have no access to them right now.
- zimpenfish 1y agoOnly got access to the Arch version. $ vercmp 1.9 1.10 -1 $ vercmp --help vercmp (pacman) v7.0.0 Compare package version numbers using pacman's version comparison logic. Usage: vercmp <ver1> <ver2> Output values: < 0 : if ver1 < ver2 0 : if ver1 == ver2 > 0 : if ver1 > ver2
- voidUpdate 1y agoSame for me (vercmp v6.0.2, Ubuntu 24.04.2)
- cyphar 1y agosort -V works the same way (1.10 > 1.9 > 1.1), as does every package manager I've ever used. Using floats for version numbers is just as insane as using them for financial transactions, but that's classic Perl for you (bonkers in their own unique way, with an optional sane system that exists in parallel which then lets you create even more bugs by confusing them).
- deleted 1y ago[deleted]