» »

Državna volilna komisija ni znala računati časa

Državna volilna komisija ni znala računati časa

Slo-Tech - Čeprav se je rok za prijavo h glasovanju iz tujine na letošnjih parlamentarnih volitvah, ki bodo 24. aprila, iztekel včeraj (24. 3.) ob 24.00 uri, se je sistem izključil že ob 23. uri. To je nekatere volivce, ki so se želeli registrirati v zadnjem hipu, pošteno razburilo. Izkazalo se je, da ni šlo za namerno oviranje volilne pravice niti za preobremenjenost sistema, temveč površno programiranje. Državna volilna komisija je pojasnila, da njihovi sistemi niso pravilno računali datumov. Prav tako so zagotovili, da bo tudi vloge, ki niso šle skozi zaradi težav z uro, normalno obravnavali.

S časom v računalništvu je križ, saj morajo biti po eni strani ure v sistemih strogo monotone (vedno tiktakati naprej), po drugi strani pa civilni čas ne teče tako. Težave niso (le) prestopni dnevi, temveč bolj prestopne sekunde, ki se pojavljajo brez vzorca, in včasih celo premikanje ure ali spreminjanje časovnih pasov. Prestopne sekunde so problem, ker se isti trenutek (cela sekunda) ponovi dvakrat, zato na primer Google problem rešuje tako, da v okolici prestopne sekunde čas nekoliko razmaže. Če ure tiktakajo 0,001 % počasneje, se v nekaj urah nabere sekunda, hkrati pa so ves čas interno usklajene in čas strogo monotono narašča. Če k temu dodamo še časovne pasove in premikanje ure, je zmeda popolna.

Državna volilna komisija pa se je računanja časa lotila neposrečeno. Datum volitev, ki so 24. aprila, so zapisali kot 24.04.2022 00:00:00 po lokalnem času. Ker je časa za vložitev vloge 30 dni, so to preprosto izračunali kot razliko 720 ur. A ker niso upoštevali, da se vmes zamenja časovni pas, ko z zimskega (GMT+1) časa preidemo na poletnega (GMT+2), se je program zaklenil ob 24.03.2022 23:00:00 po GMT+1 (zimskičas). Kdor je pisal aplikacijo, ni pomislil, da se lahko ure spreminjajo, zato intervala 30 dni ni najprimerneje računati tako, da izračunamo točno časovno razliko med dvema točkama, temveč je treba operirati z dnevi. Podobno kot v bankah denarnih zneskov ne zapisujejo s plavajočo vejico (float), temveč v celoštevilčnih centih.

32 komentarjev

kuall ::

jej, kakšen zmeden opis problema.
odmislimo dejstvo, da je avtor pomešal poletni in zimski čas.
tole je no: čas se premakne na poletnega 27.3, torej eno uro naprej.
če od 24.4 00:00 odštejemo 720 ur dobimo 24.3 23:00, kar je točno po urah, ni pa točno po dnevih.

sej ima vsak programski jezik funkcijo tipša dateadd (myDate, month, -1). to bi uporabil pa mirna bosna. ne pa fakin ure. tudi z dnevni ni ok operirati, ker meseci nimajo vedno 30 dni. treba je pač uporabiti predpripravljeno funkcijo dateadd / month, sam je ne boš šel menda pisat??

  ::

Z "časom" se pri programiranju lahko hitro pojavijo težave :) Hitro lahko pride do takšnih in podobnih napak, katere se pokažejo šele v produkciji.
Doing nothing is very hard to do... you never know when you're finished.

steev ::

kuall je izjavil:

jej, kakšen zmeden opis problema.
odmislimo dejstvo, da je avtor pomešal poletni in zimski čas.
tole je no: čas se premakne na poletnega 27.3, torej eno uro naprej.
če od 24.4 00:00 odštejemo 720 ur dobimo 24.3 23:00, kar je točno po urah, ni pa točno po dnevih.

sej ima vsak programski jezik funkcijo tipša dateadd (myDate, month, -1). to bi uporabil pa mirna bosna. ne pa fakin ure. tudi z dnevni ni ok operirati, ker meseci nimajo vedno 30 dni. treba je pač uporabiti predpripravljeno funkcijo dateadd / month, sam je ne boš šel menda pisat??

Prav zaradi tega, ker mesec ni vedno enako dolg, se operira z dnevi. Bi rekel da zakon narekuje 30 dni, ne pa 1 mesec, kar je lahko 28, 29, 30 ali 31 dni, odvisno od tega kdaj so volitve.
:|

Irbis ::

In če vzamemo, da je dan definiran kot 24 ur časa in je rok 30 dni, to v bistvu pomeni, da so oni začeli tudi sprejemati prijave eno uro prezgodaj.

win64 ::

Državna volilna komisija pa se je računanja časa lotila neposrečeno. Datum volitev, ki so 24. aprila, so zapisali kot 24.04.2022 00:00:00 po lokalnem času. Ker je časa za vložitev vloge 30 dni, so to preprosto izračunali kot razliko 720 ur.


A to je notranja informacija? Ker se mi zdi zelo malo verjetno, da bi nekje vpisovali število ur namesto začetnega in končnega datuma.

Glugy ::

A je to spet kakšna priskledniška firma programirala al so to direkt zaposleni v državni upravi naredil?

starfotr ::

Sicer pa tisti, ki se ob 23h spomni, da mora urediti to, je pač neresen. Loviti zadnje minute in potem delati celo štalo.

Ja, končno se je tudi v dolini šentflorjanski pokazal problem s premikanjem ur. Eni pa trdijo, da težav ni. In da je to lažje.

Spet drugi trdijo, da je sprememba časovnega pasu na +2 smiselna ideja za naše okolje.

Lonsarg ::

Pri nas od zunanjih partnerjev dobivamo za en smorn podatke za te prestopne ure in potem marsikdaj ugibamo kako bo doticni xml itd izgledal na prestopni dan, pa vcas se spremeni in ne zves nic vnaprej itd. Jeba je ker so pogodbe v lokalnem casu, in potem imajo pogodbeni dnevi po 23 ali 25 ur.

Skratka prestopni cas more stran.

Zgodovina sprememb…

  • spremenil: Lonsarg ()

WhiteAngel ::

Skrajni čas, da nehamo s premikanjem ure..

Invictus ::

Fak, no, 21. stoletje, pa je računanje časa še vedno problem...
"Life is hard; it's even harder when you're stupid."

http://goo.gl/2YuS2x

WhiteAngel ::

Invictus je izjavil:

Fak, no, 21. stoletje, pa je računanje časa še vedno problem...


Težava je, ker se uporabljajo časovni pasovi namesto lokacije. Linux že ve, zakaj izbereš "Europe/Ljubljana" za timezone in ne CET/CEST/GMT+1. Downside je, da imaš zaradi tega vsak mesec novo verzijo tzdata paketka...

ales85 ::

starfotr je izjavil:

Sicer pa tisti, ki se ob 23h spomni, da mora urediti to, je pač neresen. Loviti zadnje minute in potem delati celo štalo.

Ja, končno se je tudi v dolini šentflorjanski pokazal problem s premikanjem ur. Eni pa trdijo, da težav ni. In da je to lažje.

Spet drugi trdijo, da je sprememba časovnega pasu na +2 smiselna ideja za naše okolje.

Kaj naj recem, si pac cepec. Vsi pac ne delajo po tvojem urniku.

Ce je sprejemljivo oddati do dolocene ure, se to pac sprejme.

Miha 333 ::

Tu gre za tipičen primer napačnega razumevanja naloge, ki jo je treba rešiti s programiranjem. Zakonsko določen način računanja upravnih rokov ne govori o urah. Če bi v zakonu pisalo, da se rok, določen v dnevih, računa v urah, bi bilo OK, ampak seveda ne piše tako. Z drugimi besedami, programer je izumil nekaj, česar pravila (zakon) računanja rokov ne določajo.

Pa tudi če so uporabili tak način, gre za površnost pri testiranju programske rešitve. Najmanj, kar bi morali narediti je, da tekom razvoja izračunajo in vrnejo tako dobljen datum in čas. In tu bi takoj videli, da nekaj ne štima. Se pravi sploh niso naredili testnega izračuna datuma in časa.

Tero ::

Give a man a fish, he'll be fed for a day.
Teach a man to fish and he'll drown himself.

BigWhale ::

Invictus je izjavil:

Fak, no, 21. stoletje, pa je računanje časa še vedno problem...


Dokler bodo casovni pasovi in premiki ur definirani tako arbitrarno kot so, bo s tem problem. Operacije s casom so kompleksna in precej zahtevna naloga, zato se je nikoli ne lotevas sam, ker je to nekdo ze naredil namesto tebe in naredil je bolje.

OracleDev ::

Tisti ki je ob 23h razmišlju o volitvah bi so mogu mal vprašat o svojem življenju

Matthai ::

Glugy je izjavil:

A je to spet kakšna priskledniška firma programirala al so to direkt zaposleni v državni upravi naredil?

Privatni sektor je to programiral, kdo pa drug!
Kind of an asshole at first sight, but actually a nice guy
when you get to know me personally. :)

jernejl ::

Matthai je izjavil:

Glugy je izjavil:

A je to spet kakšna priskledniška firma programirala al so to direkt zaposleni v državni upravi naredil?

Privatni sektor je to programiral, kdo pa drug!

Javni sektor je očitno še manj sposoben sproducirati kaj takšnega, da je moral tako nalogo predati v delo privatnemu sektorju. :))
Se pa ne čudim, ker vsak IT-jevec, ki ni popolnoma nesposoben, lahko v zasebnem sektorju zasluži več, tako da za JS ostanejo več ali manj nesposobneži in par redkih posameznikov, ki so sicer sposobni, pa so tam zaradi drugih razlogov in ne zaradi denarja.

Res pa je treba priznati, da je tudi na trgu IT storitev kaos. Firme svoje IT storitve drago zaračunavajo, potem pa delo "forwardirajo" študentom, ki delajo za par evrov na uro; regulative pa ni nobene. Medtem ko pri gradnji objektov mora (pooblaščeni) arhitekt izpolnjevati določene pogoje izobrazbe, je lahko arhitekt informacijskega sistema vsak avtomehanik. Rezultat so pa produkti, ki očitno niso bili ustrezno testirani (v mejnih primerih), ali pa celo omogočajo SQL vrivanje, dajejo osebne podatke na ogled javnosti in podobne nemarnosti.

MrStein ::

WhiteAngel je izjavil:

Invictus je izjavil:

Fak, no, 21. stoletje, pa je računanje časa še vedno problem...


Težava je, ker se uporabljajo časovni pasovi namesto lokacije. Linux že ve, zakaj izbereš "Europe/Ljubljana" za timezone in ne CET/CEST/GMT+1. Downside je, da imaš zaradi tega vsak mesec novo verzijo tzdata paketka...

Huh?
Europe/Ljubljana je CET (CEST se podrazumeva).

In se ne spreminja vsak mesec.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

starfotr ::

jernejl je izjavil:

Matthai je izjavil:

Glugy je izjavil:

A je to spet kakšna priskledniška firma programirala al so to direkt zaposleni v državni upravi naredil?

Privatni sektor je to programiral, kdo pa drug!

Javni sektor je očitno še manj sposoben sproducirati kaj takšnega, da je moral tako nalogo predati v delo privatnemu sektorju. :))
Se pa ne čudim, ker vsak IT-jevec, ki ni popolnoma nesposoben, lahko v zasebnem sektorju zasluži več, tako da za JS ostanejo več ali manj nesposobneži in par redkih posameznikov, ki so sicer sposobni, pa so tam zaradi drugih razlogov in ne zaradi denarja.

Res pa je treba priznati, da je tudi na trgu IT storitev kaos. Firme svoje IT storitve drago zaračunavajo, potem pa delo "forwardirajo" študentom, ki delajo za par evrov na uro; regulative pa ni nobene. Medtem ko pri gradnji objektov mora (pooblaščeni) arhitekt izpolnjevati določene pogoje izobrazbe, je lahko arhitekt informacijskega sistema vsak avtomehanik. Rezultat so pa produkti, ki očitno niso bili ustrezno testirani (v mejnih primerih), ali pa celo omogočajo SQL vrivanje, dajejo osebne podatke na ogled javnosti in podobne nemarnosti.


Za to, da se voziš po cesti, je potrbeno znanje CPP in prve pomoči.

Za uporabo računalnika nihče ne potrebuje nič. Samo elektriko, računalnik in internet. In že si lahko glavni car na Betajnovi.

Tudi za računalnik bi potrebovali osnove.

PandaFlow2 ::

OracleDev je izjavil:

Tisti ki je ob 23h razmišlju o volitvah bi so mogu mal vprašat o svojem življenju


Se dobro da vsi izseljenci zivijo v CET/CEST obmocju, ane?

starfotr ::

Saj ni bilo samo par ur na razpolago!

Bilo je časa cel mesec.

BigWhale ::

starfotr je izjavil:

Saj ni bilo samo par ur na razpolago!

Bilo je časa cel mesec.


V bistvu je vseen kolk je casa. Tudi ce nekomu ni delalo samo pet minut pred zaprtjem, je to slamparija. Izgovor, da "lahko bi vsi prej zrihtal" je samo izgovor.

starfotr ::

Ok, če bi mrknil net ali elektrika ob 23h, bi pa nesrečneži krivili providerje za sabotažo in posledično podporo avtokratski oblasti?

Glej, faili se dogajajo in se bodo dogajali. Smo le ljudje. In tistih 5 ljudi, ki ni moglo oddat vloge, ne bo pahnilo države še v večjo bedo, potegnilo jo pa tudi ne bo na bolje.

Phantomeye ::

starfotr je izjavil:

Sicer pa tisti, ki se ob 23h spomni, da mora urediti to, je pač neresen. Loviti zadnje minute in potem delati celo štalo.

Ja, končno se je tudi v dolini šentflorjanski pokazal problem s premikanjem ur. Eni pa trdijo, da težav ni. In da je to lažje.

Spet drugi trdijo, da je sprememba časovnega pasu na +2 smiselna ideja za naše okolje.


Seveda, programer ni kriv, da stvar ne dela. Navodila za implementacijo so za programerje opcijska - predlog.

Kriv je user, ker se je držal roka v navodilih.

Kot da bi prišel na volišče ob 6 zvečer, vedoč, da imaš časa do 7. Pa bi ugotovil, da so se odločili zaključiti eno uro prej, ker so bili lačni in bi ti nekdo rekel - sori - če si eno uro pred uradnim zaprtjem volišč tukaj - si neresen.

starfotr je izjavil:

jernejl je izjavil:

Matthai je izjavil:

Glugy je izjavil:

A je to spet kakšna priskledniška firma programirala al so to direkt zaposleni v državni upravi naredil?

Privatni sektor je to programiral, kdo pa drug!

Javni sektor je očitno še manj sposoben sproducirati kaj takšnega, da je moral tako nalogo predati v delo privatnemu sektorju. :))
Se pa ne čudim, ker vsak IT-jevec, ki ni popolnoma nesposoben, lahko v zasebnem sektorju zasluži več, tako da za JS ostanejo več ali manj nesposobneži in par redkih posameznikov, ki so sicer sposobni, pa so tam zaradi drugih razlogov in ne zaradi denarja.

Res pa je treba priznati, da je tudi na trgu IT storitev kaos. Firme svoje IT storitve drago zaračunavajo, potem pa delo "forwardirajo" študentom, ki delajo za par evrov na uro; regulative pa ni nobene. Medtem ko pri gradnji objektov mora (pooblaščeni) arhitekt izpolnjevati določene pogoje izobrazbe, je lahko arhitekt informacijskega sistema vsak avtomehanik. Rezultat so pa produkti, ki očitno niso bili ustrezno testirani (v mejnih primerih), ali pa celo omogočajo SQL vrivanje, dajejo osebne podatke na ogled javnosti in podobne nemarnosti.


Za to, da se voziš po cesti, je potrbeno znanje CPP in prve pomoči.

Za uporabo računalnika nihče ne potrebuje nič. Samo elektriko, računalnik in internet. In že si lahko glavni car na Betajnovi.

Tudi za računalnik bi potrebovali osnove.


Aja, za uporabo računalnika in interneta ne rabiš nobenega znanja? Ljudje imamo windowse v genih.

Zgodovina sprememb…

starfotr ::

Ne. Ampak lahko se surfaš po netu brez kakršnekoli licence. Medtem ko bicikla ne smeš vozit po cesti brez izpita.

hruske ::

Pa ravno bicikel si našel, starfotr, kjer točno to ne drži. :))
Rad imam tole državico. <3

MrStein ::

Dajte no, programer je predpostavil, da je dan dolg 24 ur. Ni pričakoval, da birokrati uvedejo 23 urne dneve.

;)
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!

WhiteAngel ::

MrStein je izjavil:

WhiteAngel je izjavil:

Invictus je izjavil:

Fak, no, 21. stoletje, pa je računanje časa še vedno problem...


Težava je, ker se uporabljajo časovni pasovi namesto lokacije. Linux že ve, zakaj izbereš "Europe/Ljubljana" za timezone in ne CET/CEST/GMT+1. Downside je, da imaš zaradi tega vsak mesec novo verzijo tzdata paketka...

Huh?
Europe/Ljubljana je CET (CEST se podrazumeva).

In se ne spreminja vsak mesec.


Voila:

https://metadata.ftp-master.debian.org/...

Kakor je @BigWhale napisal, računanje s časovnimi pasovi je zapop*tdit zoprna reč. Včasih tudi nerešljiva. Na primer, če bi imeli samo CET ves čas in ti bi imel dva eventa ob 2:30 in 3h zjutraj. Sedaj vlada sprejme, da bomo v nedeljo premaknili ob 2h zjutraj na CEST eno uro naprej. Kako boš spremenil čas eventu (ali obema)?

Zgodovina sprememb…

zimurg ::

BigWhale je izjavil:

starfotr je izjavil:

Saj ni bilo samo par ur na razpolago!

Bilo je časa cel mesec.


V bistvu je vseen kolk je casa. Tudi ce nekomu ni delalo samo pet minut pred zaprtjem, je to slamparija. Izgovor, da "lahko bi vsi prej zrihtal" je samo izgovor.



U bistvu to ni šlamparija, ampak je neskladno z zakonom, torej nezakonito!
Sinclair ZX Spectrum, Zilog Z80A, 48kB, kasetofon, TV-OUT, Sinclair-Basic

Phantomeye ::

MrStein je izjavil:

Dajte no, programer je predpostavil, da je dan dolg 24 ur. Ni pričakoval, da birokrati uvedejo 23 urne dneve.

;)



Predpostavil. Pričakoval.

Here's the problem :D

Asking question. Testing, testing so koraki za delujoč software.

MrStein ::

My point exactly.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Državna volilna komisija ni znala računati časa

Oddelek: Novice / Znanost in tehnologija
325362 (2350) MrStein
»

Windows 10 bo razumel prestopne sekunde in natančneje meril čas

Oddelek: Novice / Operacijski sistemi
136174 (4860) BigWhale
»

Danes ponoči prestopna sekunda (strani: 1 2 )

Oddelek: Novice / Znanost in tehnologija
7116158 (12975) BlueRunner
»

Desetletja, stletja, tisocletja...oz. kdaj je zacela 1. dekada (strani: 1 2 3 4 )

Oddelek: Loža
18136608 (34256) egonk
»

Programerji, koliko ur "mislite" da ima dan?

Oddelek: Programiranje
193690 (2696) mr Vragec

Več podobnih tem