Jedan suvišan escape u osam dijagrama
U ovom članku
Neko vreme je osam objava na ovom blogu usred rečenice, unutar dijagrama, prikazivalo sedam znakova — . Ne crticu. Doslovan tekst. Od tada je ispravljeno na svim jezicima.
81 red, 91 pojavljivanje. U tekstu istih osam objava: nijedno.
Jedan escape previše
Dijagrami su inline SVG, upisani u telo članka. Oznaka koja želi crticu nosi —, a pregledač je pretvara u nju, tačno kao u pasusu.
Ono što je bilo sačuvano, međutim, bilo je —. Pregledač je to savesno pretvorio u sedam znakova koji ispisuju entitet i nacrtao ih. Tekst je ostao netaknut jer nikada nije prošao kroz ono što je dodalo suvišni escape; samo su oznake prošle, i to samo u objavama čije su oznake građene u to vreme.
Uzrok je mali i dosadan. Vredno je zapisati zašto je tako dugo bio na vidiku i šta ga je okončalo.
Provera ga je videla i rekla nešto drugo
Postoji provera koja meri da li oznaka dijagrama staje u svoju sliku. Danima je prijavljivala ove oznake — kao preširoke.
A to su i bile. Oznaka koja crta sedam znakova umesto jednog oko četrdeset pet piksela je šira nego što je zamišljeno, pa je merenje bilo tačno i prijava je bila tačna. Zaključak koji bi čitalac te prijave izvukao nije bio. Broj je govorio da je geometrija pretesna. Istina je bila da tekst nije ono što izgleda.
Takav je oblik problema. Provera odgovara na pitanje koje joj je postavljeno i ne može da prijavi da je pitanje bilo pogrešno. Ništa nije pogrešno izmereno; merenje se jednostavno odnosilo na drugi problem od onog koji je izgledalo da jeste.
Šta ga je pronašlo
Prikaz jednog dijagrama i pogled na njega. Headless Chromium, jedan snimak ekrana, deset sekundi. Entitet je bio u trećem redu slike, slovima iste veličine kao sve ostalo.
Popravka je bila migracija koja je zamenila & sa & za fiksnu listu imena entiteta, i to samo unutar <svg class="dg"> blokova, da ampersand koji je trebalo da bude ampersand to i ostane. Sve van te liste je prijavljeno i ostavljeno, a ne pogađano. Svi redovi, njih 81, ispravljeni su na svim jezicima; jedina pojavljivanja koja su ostala u blogu su ona koja su namerno citirana u ovoj objavi.
Šta se može uopštiti
Svaka automatska provera u ovom projektu meri nešto brojčano, jer su brojevi ono što program može da poredi. Nijedna ne može da vidi da je slika postala besmislica, da je polje prazno ili da je reč ispisana tamo gde pripada simbol.
Zato je pravilo koje je iz toga proisteklo kratko: posle svake izmene dijagrama treba prikazati jedan i pogledati ga, na jeziku kome treba najviše prostora. Do sada je uhvatilo dve stvari koje nijedno merenje nije moglo — ovu, i prazno polje ostavljeno kad je natpis izmešten iz njega.