Separator tysięcy, czyli o tym jak strzelić sobie w nogę

Czasem się tak dziwnie w życiu składa, że sekwencje wydarzeń i niby przypadkowych obserwacji wyraźnie prowadzą nas do jakichś konkluzji, nawet jeśli są to konkluzje stosunkowo oczywiste, a zupełnie nie odkrywcze. Taki mechanizm kilku niezależnych obserwacji doprowadził mnie niedawno do stwierdzenia oczywistego przecież faktu — używanie „separatora tysięcy” w liczbach, szczególnie kwotach pieniędzy, jest czystą głupotą.

jeden głos wielkiej wagi

ciekawe rezultaty sondy na Antyweb

Obrazek po prawej przedstawia wyniki ankiety jakie zauważyłem dzisiaj zupełnie przypadkiem na stronie Antyweb.

To budujące, że nawet jeśli tylko jedna jedyna osoba przyznaje się, że czyta tradycyjne papierowe wydania książek, to i tak stanowi ona zdecydowaną większość i bije na głowę ponad siedemset innych osób, zwolenników „nowoczesnych” cośtam-booków. ;-)

Oczywiście „1 votes” przy trzeciej opcji to błąd wyświetlania. Prawdziwa liczba głosów to około 1400 (co można obliczyć lub sprawdzić na stronie tej sondy w serwisie PoolDaddy); liczby głosów podawane na stronie Antyweb są z jakiegoś powodu trochę inne).

Nie wiem dlaczego 1400 zostało obcięte do 1, ale mój „educated guess” jest taki, że powodem jest separator tysięcy — liczba „1,400” została „obcięta” do 1 na przecinku, mimo iż w tym przypadku ten nieszczęsny przecinek nie był separatorem dziesiętnym.

„chciałam za niego 280, ale tysięcy”

Powyższa obserwacja natychmiast przypomniała mi czytany niedawno u Roberta D. tekst „Jak Allegro mogłoby zapobiegać błędom sprzedawców”.

Sam pomysł, z punktu widzenia „dobrego interfejsu”, jest sensowny i słuszny — faktycznie Allegro czy wszelkie inne serwisy gdzie operuje się dużymi liczbami/kwotami powinny mieć mechanizmy idiot-proof. Ale jednak, na bogów, nie jest to zabezpieczenie przez „zwykłą pomyłką” tylko przed idiotami. Powiedzmy sobie to szczerze.

separatorom kropkowo-przecinkowym mówimy stanowcze nie

Nie wiem jaka kultura i dlaczego wspiera kropkowo-przecinkowe separatory tysięcy w ogóle. Jest to dla mnie zagadka z grupy „niemożliwych do wyjaśnienia za pomocą rozumu”, tej samej, do której należy np. „amerykański” zapis daty: miesiąc/dzień/rok.

Wydaje mi się, że dla własnego dobra, w zgodzie z naturą, matematyką i zdrowym rozsądkiem nie powinno się stosować separatorów tysięcy innych niż spacja. Natomiast Poradnia Językowa PWN mówi tak:

W polskiej tradycji typograficznej i edytorskiej stosuje się do dzielenia liczb na grupy trzycyfrowe spację nierozdzielającą. Nie należy stosować w tej funkcji ani kropki, ani przecinka, który jest separatorem oddzielającym ułamki dziesiętne.

Ditto.

Komentarze

#1 | 2010.08.11 01:22 | Robert Drózd

No, umówmy się, że tylko skala działania Allegro pozwoliła taki błąd ujawnić, bo na setki tysięcy aukcji to pewnie parę przypadków (fakt że spektakularnych). Taki sam odsetek pewnie kupuje specyfiki ze spamów, albo pomaga Nigeryjczykom. Bo co jak co, ale jakbym puszczał furę za 280tys, to bym chyba 3x wszystko sprawdził z rodziną.

Mogło i to zaważyć, że sprzedawcy samochodów nie wszyscy traktują chyba ten serwis poważnie - aukcja jest raczej ogłoszeniem, podana kwota zaproszeniem do rozmów. Więc z takim nastawieniem mentalnym (jakąś tam kwotę wpisałem, ale i tak to nie ma znaczenia) ludzie mogą nie sprawdzać
czy serwis akurat zrozumiał tę kwotę tak samo.

Natomiast co do analfabetyzmu... Aplikacje webowe i niewebowe przyzwyczaiły ludzi do stosowania różnych dziwnych formatów. Jak np. bank, który odrzuca jako separator przecinek i akceptuje wyłącznie kropkę... Spacja jest faktycznie tradycją typograficzną, ale nie uznałbym tego za wiedzę, którą musi każdy posiadać. A znowu, jak w powyższej ankiecie Antywebu mogą się spotkać z innymi separatorami w necie i podświadomie ich nauczyć.

#2 | 2010.08.11 01:39 | MiMaS

Spacja jest faktycznie tradycją typograficzną, ale nie uznałbym tego za wiedzę, którą musi każdy posiadać.

Nie chodzi o „wiedzę” jakąś tajemną, ani chyba nawet o znajomość „tradycji typograficznej”. Ale powiedz szczerze — czy ktoś Cię kiedyś (na)uczył używać kropki lub przecinka w roli innej niż separator dziesiętny? Mnie nigdy. Więc skąd się to bierze??

#3 | 2010.08.11 01:48 | MiMaS

No i popatrz, Robercie, jaki nam się przykład zdarzył — w Twoim podpisie przecinek zamiast kropki po www niweczy całą ideę linka... Powinno być: http://www.webaudit.pl/blog/ Wniosek: kropka, przecinek, spacja czy cokolwiek innego — to ma znaczenie. Zasadnicze.

#4 | 2010.08.11 08:34 | matipl

Błędem jest oprogramowanie, które Polacy wytwarzają bez lokalizacji.
Przez to domyślnie separator dziesiętny to kropka (USA), a nie przecinek (PL).

#5 | 2010.08.11 18:21 | Shot

„separatorom kropkowo-przecinkowym mówimy stanowcze nie” – hm, chyba się nie zgodzę: to technologia powinna dostosowywać się do ludzi (i ich kultury), a nie odwrotnie.

Amerykanów nie oduczysz pisania „9/11” i „$10,000,000.00”, a Hindusów „₨ 1,00,00,000”; jeśli lokalizujesz jakiś program dla Khmerów, to musisz pamiętać, żeby klasycznie rozwijane z góry menu nie było dłuższe, niż połowa ekranu (bo mają dwa razy „wyższą” czcionkę niż inne); są wreszcie społeczności, dla których trzeba się oduczyć, że zielony to „OK”, żółty to ostrzeżenie, a czerwony – błąd.

Internacjonalizacja oprogramowania to zaskakująco skomplikowany kawałek branży, ale właściwą odpowiedzią są chyba jednak locales plus ewentualnie rozsądne heurystyki, a nie pouczanie ludzi, jak mają pisać.

#6 | 2010.08.11 19:23 | MiMaS

Shot, fakt, że „to technologia powinna dostosowywać się do ludzi” oraz to, że w swoim wywodzie obiektywnie masz całkowitą rację, zupełnie nie zmienia mojego subiektywnego odczucia, że stosowanie w Polsce kropki lub przecinka jako separatora tysięcy jest proszeniem się o guza. O dużego i szybko.

Po prostu za nic nie rozumiem kogoś, kto pisze „280,000” mając na myśli 280 tysięcy złotych. Tyle.

I nadal każdemu kto będzie chciał używać w roli takiego separatora czegokolwiek innego niż spacja powiem „nie idź tą drogą”...

#7 | 2010.08.12 11:22 | Shot

„stosowanie w Polsce kropki lub przecinka jako separatora tysięcy jest proszeniem się o guza” – przecinka: jasne, ale kropkę bym dopuścił (w ramach prawa Postela: nie produkował jej, ale łykał bez marudzenia).

glibc produkuje pusty separator dla liczb i kropkę dla kwot:


chastell@devielle:~$ grep thousands /usr/share/i18n/locales/pl_PL
mon_thousands_sep "<U002E>"
thousands_sep ""
chastell@devielle:~$

i pewnie prędko się to nie zmieni.

Próbowałem wygóglać, co na to Polska Norma, ale nie udało mi się dotrzeć do źródeł; z odwołań do PN wynika, że separatorem w przypadku liczb powinna być spacja, PWN to potwierdza – ale nie znalazłem odniesień do kwot.

(Tak czy siak: akurat w polskim kontekście heurystyka nie jest przesadnie skomplikowana, bo nie sądzę, żeby ktokolwiek w kontekście kwotowym świadomie pisał trzy cyfry po separatorze dziesiętnym.)

 

Uwaga: Ze względu na bardzo intensywną działalność spambotów komentowanie zostało wyłączone po 60 dniach od opublikowania wpisu. Jeżeli faktycznie chcesz jeszcze skomentować skorzystaj ze strony kontaktowej.