Sama koodi kahdessa eri paikassa

Onko taipuvaisuutta nörttiyteen? Saa esittää omia nörtti-projekteja
SHT
Reactions:
Viestit: 660
Liittynyt: 29 Marras 2022, 21:05

Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja SHT »

Varasin viime torstaina aikaa laboratorioon. Valitsin ajan ja aloin täyttää henkilötietojani. Kirjoitin henkilötunnukseni, nimeni ja puhelinnumeroni, jonka jälkeen painoin epähuomiossa enter:iä . Sähköpostiosoite oli vielä täyttämättä ja vahvista aika-buttonia ei ollut vielä painettu. Enterin painamisen jälkeen tuli tekstiviesti varatusta ajasta. Tämä oli minusta hieman hämmentävää, mutta sinänsä ymmärrettävää. Voihan olla, että aikaa varaavalla ei ole sähköpostia.
Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).
Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista. Jos ei on mahdollista, että koodia muutettaessa muutos tehdään vain toiseen paikkaan. Olisi hyvä jos kehtysympäristössä olisi seuraavanlainen tarkistus:
ennenkuin käyttäjä alkaa muuttaa koodia, hän voi valita muutettavan koodin ja automaattinen tarkistus tarkistaa onko samoja koodirivejä muualla ohjelmistossa.
Aina saman asian tekevä koodi ei ole identtinen muissa paikoissa, vaikka se tekeekin saman asian. Tällöin voisi tekoäly tarkistaa, löytyykö saman asian tekevää koodia muualta.
Brainwashed
Reactions:
Viestit: 6047
Liittynyt: 29 Marras 2022, 23:28

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja Brainwashed »

Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...

8-)
”Brainwashed on tyyppi joka latelee omakohtaista törkyy muitten päähän väheksyttävästi, - samalla mainostaen omaa figuuriaan.”

- anonymous admirer
SHT
Reactions:
Viestit: 660
Liittynyt: 29 Marras 2022, 21:05

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja SHT »

Brainwashed kirjoitti: 22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...

8-)
Heh, heh. Edellinen ongelma on huomattu käytännössä.
Avatar
MooM
Reactions:
Viestit: 4871
Liittynyt: 30 Marras 2022, 08:29

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja MooM »

Nuo ohjelmistot tekee paljon muutakin ja toteutus on kompromissi yleisyyden ja yksittäisen tapahtuman optimoinnin välillä. Tai usein rakennetaan uusia toimintoja vanhojen lisäksi ja päälle, jolloin joudutaan käyttämään olemassaolevia rutiineja.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
Brainwashed
Reactions:
Viestit: 6047
Liittynyt: 29 Marras 2022, 23:28

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja Brainwashed »

SHT kirjoitti: 22 Huhti 2024, 11:00
Brainwashed kirjoitti: 22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...

8-)
Heh, heh. Edellinen ongelma on huomattu käytännössä.
Huumorintajusi on tallella, eli ei sinulla ole niinkään päässä mitään vikaa per se, vaan kelailet vain hieman erikoisia asioita, sillee hyvällä tavalla.

8-)
”Brainwashed on tyyppi joka latelee omakohtaista törkyy muitten päähän väheksyttävästi, - samalla mainostaen omaa figuuriaan.”

- anonymous admirer
Avatar
MooM
Reactions:
Viestit: 4871
Liittynyt: 30 Marras 2022, 08:29

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja MooM »

Brainwashed kirjoitti: 22 Huhti 2024, 11:22
SHT kirjoitti: 22 Huhti 2024, 11:00
Brainwashed kirjoitti: 22 Huhti 2024, 10:49 Varaa myös aika psykiatrian poliklinikalle, ”ongelmasi” ovat sitä tasoa...

8-)
Heh, heh. Edellinen ongelma on huomattu käytännössä.
Huumorintajusi on tallella, eli ei sinulla ole niinkään päässä mitään vikaa per se, vaan kelailet vain hieman erikoisia asioita, sillee hyvällä tavalla.

8-)
Varmaan moni kelailee tuollaisia puolihuolimattomasti, mutta harvempi tekee niistä aloituksia tiedepalstalle.

Facessa on muuten ryhmä nimeltään Länsimaisen ihmisen ahdistus. Siellä on usein samantyylisiä avautumisia erilaisista epätäydellisyyksistä.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
Avatar
apetteri
Reactions:
Viestit: 457
Liittynyt: 02 Joulu 2022, 13:26

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja apetteri »

MooM kirjoitti: 22 Huhti 2024, 11:04 Nuo ohjelmistot tekee paljon muutakin ja toteutus on kompromissi yleisyyden ja yksittäisen tapahtuman optimoinnin välillä. Tai usein rakennetaan uusia toimintoja vanhojen lisäksi ja päälle, jolloin joudutaan käyttämään olemassaolevia rutiineja.
Tuo on yliopisto versio. Työelämässä koodi on kompromissi pienen ja ison rahan välillä.
Avatar
MooM
Reactions:
Viestit: 4871
Liittynyt: 30 Marras 2022, 08:29

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja MooM »

apetteri kirjoitti: 22 Huhti 2024, 11:54
MooM kirjoitti: 22 Huhti 2024, 11:04 Nuo ohjelmistot tekee paljon muutakin ja toteutus on kompromissi yleisyyden ja yksittäisen tapahtuman optimoinnin välillä. Tai usein rakennetaan uusia toimintoja vanhojen lisäksi ja päälle, jolloin joudutaan käyttämään olemassaolevia rutiineja.
Tuo on yliopisto versio. Työelämässä koodi on kompromissi pienen ja ison rahan välillä.
Mun ymmärtääkseni sairaanhoitopiirien systeemit on just tuollaisia purkkavirityksiä usean eri systeemin välillä, joista osa on jotain viime vuosituhannen juttuja. Ja vaikka tehdään isolla rahalla, lopputulos on väkisin himmeli, koska kaikkea ei ole mahdollista räjäyttää ja aloittaaa puhtaalta pöydältä.

Alusta asti uutena tehdyt systeemin on sitten oma juttunsa. Tai ne, joissa on vain selkeä ja tarkasti rajattu rajapinta muihin systeemeihin.

Mä olen tehnyt sairaalalla kuvauksia tutkijan roolissa, mutta tutkittaville tehtiin ihan normaalit kuvauslähetteet ja käynnit systeemiin + radiologi katsoi anatomiset kuvat läpi, koska olisi epäeettistä olla tekemättä sitä. Käytännössä dataa kulki potilatietojärjestelmän (ikivanha), ajanvaraus/lähetesysteemin, sairaalan oman tietoaltaan ja kuvantamislaitteen tietokannan välillä. Minunkin piti kirjautua mustaakseni kolmeen eri systeemiin ja syöttää sinne tietoja käsin. Ja välillä joku yhteys oli poikki ja datoja ei saanut siirtymään tai varausta ei löytynyt, jolloin tuli vielä enemmän käsitöitä. Tutkimuskäyttöön tuleva data luonnollisesti piti ladata itse kovalevylle, mikä sekin on sairaalalaitteessa melkoinen operaatio.

En yhtään ihmettele, että noihin palaa henkilökunnalla aikaa ja hermoja. Systeemit tahmaa, jumittaa ja sellainenkaan data, joka jo on jossain systeemissä, ei siirry toiseen automaattisesti.
While I had personally never felt the lack of a penis, I did admit that it was a handy thing to have along on a picnic…
D. Gabaldon
Avatar
KultaKikkare
Reactions:
Viestit: 4969
Liittynyt: 28 Marras 2022, 22:30

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja KultaKikkare »

SHT kirjoitti: 22 Huhti 2024, 10:43 Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).

Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista.
Toi ominaisuus tulee suoraan webbiselaimesta ja on määritelty HTML speksissä. Ohjelmakoodissa ei tarvitse edes tietää klikkasiko käyttäjä submit nappia vai painoiko entteriä, selain lähettää lomakkeen tiedot samalla tavalla molemmissa tapauksissa.

https://html.spec.whatwg.org/multipage/ ... submission
"If the user agent supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text control is focused implicitly submits the form), then doing so for a form, whose default button has activation behavior and is not disabled, must cause the user agent to fire a click event at that default button."
Jos tuntuu ettei jaksa niin koittakaa vaan jaksaa.
SHT
Reactions:
Viestit: 660
Liittynyt: 29 Marras 2022, 21:05

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja SHT »

KultaKikkare kirjoitti: 22 Huhti 2024, 15:18
SHT kirjoitti: 22 Huhti 2024, 10:43 Mutta tämän tarinan pointti on siinä, että varatun ajan vahvistaminen tekevä koodi on kahdessa paikassa (enterin painamisen jälkeen ja vahvista varaus-buttonin painamisen jälkeen).

Jos ohjelmoija on toiminut järkevästi tämä koodi on omassa aliohjelmassaan. Ja aliohjelmaa kutsutaan molemmista paikoista.
Toi ominaisuus tulee suoraan webbiselaimesta ja on määritelty HTML speksissä. Ohjelmakoodissa ei tarvitse edes tietää klikkasiko käyttäjä submit nappia vai painoiko entteriä, selain lähettää lomakkeen tiedot samalla tavalla molemmissa tapauksissa.

https://html.spec.whatwg.org/multipage/ ... submission
"If the user agent supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text control is focused implicitly submits the form), then doing so for a form, whose default button has activation behavior and is not disabled, must cause the user agent to fire a click event at that default button."
Minä en ole juurikaan tehnyt web-ohjelmointia, joten ajattelin asiaa siltä kannalta, että button ja textbox (jonka täyttämisen jälkeen painoin enteriä) ovat käyttöliittymässä. Joka tapauksessa toiminta ei ollut kuten käyttäjä olettaa. Varaus pitäisi vahvistaa ainoastaan painamalla vahvista varaus-buttonia.
Avatar
apetteri
Reactions:
Viestit: 457
Liittynyt: 02 Joulu 2022, 13:26

Re: Sama koodi kahdessa eri paikassa

Viesti Kirjoittaja apetteri »

Ei se vahvistuksen lähtetävä koodi tässä ole ollut kahdessa paikkaa, html formit nyt vaan toimii defaulttina noin että jos focus on/ei ole sopivassa elementissä ja painaa enter niin selain lähettää formit. Nykyisin single page appeissa noihin tehdään estoja, ja yleensäkkin koko formit tehdään nykyisin toisin, eikä välttämätti edes käytetä formeja.

Sinänsä, esim. jonkinlaiset varmistukset koodataan kahteen paikkaan jos halutaan käyttäjäystävällisyyttä, toinen on selain, joka osaa heti kivasti ilmoittaa käyttäjille esim. väärän muotoisista salasanoista, ja sen lisäksi kontrollit ajetaan myös palvelinpäässä, jossa varmistetaan ettei käyttäjä lähetä esim. tarkoituksella muokattua ikävää payloadia, jossa olisi esim. vaikka nyt joku pankkijärjestelmissä tilisiirron summa vaihdettu johonkin täysin toiseen mikä pitäisi olla mahdollista.
Jotkut frameworkit rakentaa nuo automaattisesti molempiin päihin ja sit vähän käsin koodausta päälle.

Muutenhan tuollainen ajanvaraus tai oikeastaan mikä hyvänsä varaus on heti monimutkaisempi operaatio jos tehdään oikein, se aika pitäisi varata sille käyttäjälle jo heti kun aikaa tms. on valittu, ja sit seurataan esim. 15minuuttia viekö käyttäjä varauksen loppuun tms. jonka jälkeen se voidaan vapauttaa muille käyttäjille, ja sit kaikenlaista kontrollia vihamielisiä varaajia varten yms yms.

Lopputulos on sit kompromissi sen suhteen, paljon sen rakentamiseen halutaan käyttää rahaa.
Vastaa Viestiin