Un bidule optimisé pour la main mais codé avec les pieds

EDIT : Infos plus récentes ici.

S’il y a bien un moment où je n’ai pas envie d’utiliser mes faibles capa­ci­tés de cal­cul men­tal, mais plu­tôt un arte­fact cog­ni­tif adap­té (en fran­çais : dégai­ner une cal­cu­lette), c’est quand il s’agit de payer en tickets res­tau­rant. Étant tou­jours à la recherche d’occasions concrètes d’apprendre à pro­gram­mer, j’ai donc bri­co­lé un petit outil qui affiche le nombre de tickets à don­ner et le reste en liquide.

Le bidule est pen­sé pour une uti­li­sa­tion sur petit écran et une sai­sie au pouce. J’ai essayé de rendre le for­mu­laire dyna­mique, pour empê­cher la sai­sie de lettres ou des mon­tants mal for­ma­tés. C’est un par­ti pris ergo­no­mique (blo­cage ver­sus mes­sage d’erreur), mais c’est éga­le­ment ins­truc­tif de voir à quel point le déve­lop­pe­ment de web app peut être CHIANT si on tombe sur la mau­vais com­bi­nai­son de cas – en l’occurrence, com­bi­ner un contrôle à la sai­sie et un cla­vier adap­té à la sai­sie numé­rique sur mobile. Par exemple, l’outil bloque la sai­sie d’une seconde vir­gule après « 1,01 », mais après « 1, » ou « 1,00 ».

Avertissement : on parle d’un truc opti­mi­sé pour la main mais codé avec les pieds. Donc pas de sup­port de Safari <9 ni d’Internet Explorer (et tem­po­rai­re­ment de Firefox sur Android, grrr). et un code d’une qua­li­té très rela­tive.

C’est ici.

Screenshot_2016-01-03-00-05-00