Pictoparle, treizième sprint

Trei­zième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Ce sprint a été l’oc­ca­sion d’as­sem­bler une ver­sion défi­ni­tive du deuxième pro­to­type phy­sique avec medium et papier ther­mo­gon­flé. Cela a per­mis d’i­den­ti­fier puis d’a­mé­lio­rer plu­sieurs détails dans les inter­ac­tions. La vidéo ci-des­sous pré­sente le fonc­tion­ne­ment com­plet du pro­to­type :

Démons­tra­tion du fonc­tion­ne­ment de Pic­to­parle, dans une ver­sion qua­si­ment prête à la dif­fu­sion.

Pen­dant ce sprint, j’ai véri­fié que la tech­nique de col­lage que j’a­vais pré­vu d’u­ti­li­ser assu­rait la tenue atten­due. Ce type de colle per­ma­nente en ruban est d’une tenue qui semble à toute épreuve.

Pen­dant ce sprint, j’ai éga­le­ment tra­vaillé sur la taille des QRCodes. Dans les ver­sions pré­cé­dentes, leur lar­geur était de 3 cen­ti­mètres, ce qui impo­sait d’a­voir en haut des planches une exten­sion rec­tangle.

Un QRcode impri­mé, deux QRcodes des­si­nés à la main.

En dimi­nuant la taille du QRcode, on gagne d’une part en com­pa­ci­té de la planche en reti­rant cette exten­sion, mais on amé­liore aus­si la détec­tion des planches. Avant cet ajus­te­ment, on devait gar­der sta­tique la planche avec un angle d’en­vi­ron 30 degrés pour que la détec­tion se fasse. Avec cette nou­velle dis­po­si­tion, l’angle est beau­coup plus natu­rel (de l’ordre de 10 degrés). Les QRcodes des­si­nés à la main sont bien sûr moins bien recon­nus, il me suf­fi­ra de les réim­pri­mer pour confir­mer leur fonc­tion­ne­ment.

La fabrique de pic­to­parle a bien sûr été mise à jour pour prendre en compte cette modi­fi­ca­tion, et les fichiers qu’elle génère cor­res­pondent à cette nou­velle dis­po­si­tion.

Mise en relief des pic­to­grammes par gom­mettes.

Pen­dant ce sprint, j’ai éga­le­ment réa­li­sé une planche au conte­nu « fun », com­po­sé de courts extraits de dia­logues de livres audios, pour expé­ri­men­ter un usage ludique, com­plé­men­taire de la fonc­tion ini­tiale de com­mu­ni­ca­tion alter­na­tive et aug­men­tée. L’ob­jec­tif est de faci­li­ter l’ap­pro­pria­tion de l’ou­til par le jeu. Pour cette planche, j’ai aus­si expé­ri­men­té l’u­ti­li­sa­tion de gom­mettes, une mise en relief alter­na­tive au ther­mo­gon­flage, et tout aus­si fonc­tion­nelle.

Plu­sieurs aspects ont éga­le­ment été amé­lio­rés dans la fabrique de pic­to­parle, comme iden­ti­fié lors du sprint pré­cé­dent. On peut citer l’a­jus­te­ment de la taille des planches pour un assem­blage sans frot­te­ment, et la modi­fi­ca­tion de la forme des fenêtres des­ti­nées à lais­ser le son pas­ser des hauts-par­leurs, pour évi­ter une fra­gi­li­té iden­ti­fiée pré­cé­dem­ment. Des faci­li­tés ont été appor­tées sur la géné­ra­tion du QRcode, sur les mes­sages d’er­reur en cas de mau­vais glisser/déposer.

L’ap­pli­ca­tion Pic­to­parle a éga­le­ment été amé­lio­rée sur de nom­breux aspects, à la fois dans la finesse des inter­ac­tions (détec­tion de la planche, détec­tion des double taps), mais éga­le­ment sur son ergo­no­mie de fonc­tion­ne­ment, en pre­nant en compte des uti­li­sa­tions aty­piques.

La ges­tion des planches avec conte­nus par­tiels (par exemple du son mais pas d’i­mage) a été conso­li­dée, notam­ment pour per­mettre la concep­tion de la planche « fun » pré­cé­dem­ment citée.

Et la suite ?

Avec ce sprint, je pense être arri­vé à une pre­mière ver­sion dif­fu­sable. La période esti­vale sera l’oc­ca­sion d’une petite pause dans le déve­lop­pe­ment de Pic­to­parle, où nous aurons l’oc­ca­sion de tes­ter l’ou­til en situa­tion réelle. J’i­den­ti­fie­rai pro­ba­ble­ment des amé­lio­ra­tions à appor­ter, mais je pense que ça sera à la marge.

Ren­dez-vous donc en sep­tembre, pour faire le point sur l’u­ti­li­sa­tion de cette pre­mière ver­sion com­plè­te­ment fonc­tion­nelle !

Pictoparle, douzième sprint

Dou­zième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Cette semaine, j’ai tra­vaillé à deux aspects com­plé­men­taires : assem­blage d’un pro­to­type de boî­tier en medium, et amé­lio­ra­tion de l’ap­pli­ca­tion.

Boîtier en medium

La semaine pas­sée, j’a­vais fina­li­sé la com­mande de découpe chez Sculp­teo, et j’ai reçu cette semaine par la poste les dif­fé­rents élé­ments décou­pés, prêts à l’as­sem­blage. L’en­semble était très bien pro­té­gé pour un envoi par la poste.

Le patron de découpe avait été ajus­té au plus près, pour que l’as­sem­blage puisse se faire juste en force. Mais cer­taines petites pièces tenaient dif­fi­ci­le­ment, et je vou­lais m’as­su­rer que le boî­tier ne se démonte pas. Je me suis donc atte­lé à l’as­sem­blage par col­lage de l’en­semble des élé­ments, l’oc­ca­sion de faire un beau time­laps (je com­mence à me prendre au jeu du you­tube game) :

Assem­blage avec super­glue des élé­ments du boî­tier de Pic­to­parle.

J’ai ain­si pu obser­ver quelques menus détails qu’il me fau­dra ajus­ter sur le patron de découpe :

  • Dimi­nuer de quelques dixièmes de mil­li­mètres la hau­teur de la planche, pour que l’as­sem­blage se passe bien. En effet, j’ai dû pon­cer un peu les planches pour qu’elles passent sans for­cer dans le boî­tier.
  • Ajus­ter les fenêtres des hauts-par­leurs, dont le cadre supé­rieur est trop fin. En effet, j’en ai cas­sé un pen­dant l’as­sem­blage, car il faut for­cer un peu pour que les par­ties s’emboîtent, et je n’a­vais pas fait atten­tion à la soli­di­té de ces par­ties fines.

Excep­té ça, je suis très très content du ren­du final, qui sera je crois plei­ne­ment fonc­tion­nel. Il ne me reste plus qu’à tes­ter avec de vraies planches ther­mo­gon­flées, ça sera pour la semaine pro­chaine.

Amélioration de l’application

J’ai pris le temps d’a­mé­lio­rer Pic­to­parle sur plu­sieurs points, en sui­vant les obser­va­tions que j’a­vais pu faire lors de sa décou­verte par plu­sieurs uti­li­sa­trices. La vidéo ci-des­sous pré­sente l’u­ti­li­sa­tion de Pic­to­parle avec toutes ces amé­lio­ra­tions :

Uti­li­sa­tion de Pic­to­parle avec le boî­tier en medium, et les amé­lio­ra­tions récentes de l’ap­pli­ca­tion.

En résu­mé, voi­ci les amé­lio­ra­tions appor­tées avec cette ver­sion :

  • Amé­lio­ra­tion de la détec­tion des QRcodes, en rédui­sant le temps entre deux ten­ta­tives de recon­nais­sance.
  • Modi­fi­ca­tion de la pre­mière page, plus gra­phique, et sans texte inutile.
  • Amé­lio­ra­tion de l’in­ter­face uti­li­sa­teur, et notam­ment de la navi­ga­tion entre les dif­fé­rentes pages de l’ap­pli­ca­tion. L’en­semble est (je l’es­père) main­te­nant plus intui­tif.
  • Ajout de pré-réglages de tailles d’é­crans dans les pré­fé­rences pour sim­pli­fier la confi­gu­ra­tion de l’ap­pli­ca­tion.
  • Ajout d’une planche oui/non, conçue pour une réso­lu­tion plus petite, per­met­tant une démons­tra­tion fonc­tion­nelle sur smart­phone.

Prochains sprints

Les pro­chains sprints seront l’oc­ca­sion de tes­ter de manière plus inten­sive Pic­to­parle, et de l’a­mé­lio­rer pour que son uti­li­sa­tion devienne tou­jours plus confor­table. Par­mi les amé­lio­ra­tions atten­dues, je pense par exemple à l’a­mé­lio­ra­tion de la détec­tion du QRcode, et au réglage du double tap. Je l’ai évo­qué plus haut, il sera éga­le­ment néces­saire d’a­jus­ter un peu le patron du boî­tier pour évi­ter de devoir pon­cer les pièces à la récep­tion.

Pictoparle, onzième sprint

Onzième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Utiliser ses propres voix

La prin­ci­pale contri­bu­tion visible de ce sprint concerne la pos­si­bi­li­té d’u­ti­li­ser des enre­gis­tre­ments per­son­na­li­sées plu­tôt que la syn­thèse vocale d’An­droid. Cela a impli­qué de modi­fier à la fois la fabrique de pic­to­parle et l’ap­pli­ca­tion pic­to­parle. La vidéo ci-des­sous en pré­sente le fonc­tion­ne­ment :

Démons­tra­tion de l’in­té­gra­tion de sons enre­gis­trés dans l’ap­pli­ca­tion Pic­to­parle.

La fabrique de Pic­to­parle per­met donc d’as­so­cier à chaque pic­to­gramme un son enre­gis­tré au préa­lable, que l’on peut char­ger par bou­ton dédié, ou par glisser/déposer. Le fichier zip trans­mis à la tablette contient donc main­te­nant des fichiers au for­mat mp3 en plus des fichiers image.

Amélioration de la stabilité de l’application

Plu­sieurs cor­rec­tions d’ins­ta­bi­li­té de l’ap­pli­ca­tion ont été appor­tées. En par­ti­cu­lier, deux bugs qui fai­saient plan­ter l’ap­pli­ca­tion sont main­te­nant cor­ri­gés, l’un au démar­rage de l’ap­pli­ca­tion, l’autre lors de la sup­pres­sion d’une planche per­son­na­li­sée.

Préparation de futures expérimentations

Les échanges avec Sculp­teo ont per­mis d’a­jus­ter le modèle pour la découpe laser, et je devrais avoir entre les mains pro­chai­ne­ment les pièces d’un boî­tier près à l’as­sem­blage.

Nous avons tra­vaillé autour des besoins d’une uti­li­sa­trice, en conce­vant une seconde planche per­son­na­li­sée, et en tra­vaillant sur des enre­gis­tre­ments et net­toyages de voix pour une écoute fluide.

Pictoparle, dixième sprint

Dixième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Cette semaine, il s’a­gis­sait de réa­li­ser les der­niers ajus­te­ments avant d’en­voyer le patron pour le décou­page laser. J’ai donc tra­vaillé sur plu­sieurs élé­ments. Pas de vidéo, mais plein de petits tra­vaux répar­tis un peu par­tout sur le pro­jet.

Amélioration de l’assemblage

L’as­sem­blage des planches et de la boîte a été amé­lio­rée lors du pré­cé­dent sprint, mais me sem­blait encore dif­fi­cile à prendre en main. J’ai donc ajou­té une épais­seur sup­plé­men­taire de chaque côté de la planche, pour faci­li­ter le gui­dage.

Le connec­teur en trois couches pour faci­li­ter l’as­sem­blage entre la planche et le boî­tier.

Ajout de fenêtres latérales

Afin de lais­ser un accès aux bou­tons de la tablette, ain­si qu’à la prise casque et la prise usb, j’ai ajou­té des fenêtres laté­rales au boî­tier. C’est ce qui m’a pris le plus de temps, car je vou­lais rendre les choses les plus flexibles pos­sibles, dans l’i­dée de pou­voir prendre en charge rapi­de­ment d’autres tablettes.

Au pre­mier plan, la fenêtre per­met­tant d’u­ti­li­ser les bou­tons de la tablette, et la prise usb. Au second plan, la fenêtre per­met­tant de connec­ter par une prise jack un casque ou une petite enceinte.

Uniformisation de l’orientation de découpe

Jus­qu’à pré­sent, le sens de découpe des pièces pour fabri­quer le boî­tier et la planche était un peu inco­hé­rent. Par­fois les pièces étaient décou­pées face exté­rieure vers le haut, par­fois l’in­verse. J’ai donc pris le temps de tout réorien­ter pour une découpe côté faces inté­rieures, afin d’a­voir un ren­du le plus propre pos­sible des arêtes.

J’ai uti­li­sé blen­der pour véri­fier cette bonne orien­ta­tion, en colo­rant en bleu la par­tie supé­rieure du maté­riau avant sa découpe. Le ren­du ci-des­sous confirme que tout est bon main­te­nant.

La sur­face supé­rieure de la planche a été colo­rée en bleue avant décou­page puis assem­blage, pour véri­fier la cohé­rence de l’o­rien­ta­tion

Protection du papier thermogonflé

Dans le cas d’une uti­li­sa­tion intense, notam­ment pen­dant les repas, je cher­chais un moyen de pro­té­ger les par­ties en papier ther­mo­gon­flé. J’ai donc essayé un ver­nis trans­pa­rent mat en bombe. Une fois sec, j’ai tes­té avec suc­cès l’im­per­méa­bi­li­té des planches. On pour­ra donc les laver faci­le­ment.

Tests d’im­per­méa­bi­li­té après ver­nis­sage

Expérimentations de collage

J’ai éga­le­ment fait quelques essais de col­lage du papier ther­mo­gon­flé sur le cadre de planche. Le résul­tat obte­nu avec un colle repo­si­tion­nable en bombe n’est pas très satis­fai­sant, et je suis reve­nu comme sou­vent à la colle « sou­ris » que j’u­ti­lise depuis quelques temps pour mes assem­blages pré­cis.

Pré­cise, facile à posi­tion­ner, et très solide, ça semble être la tech­nique la plus adap­tée, même avec cette feuille impri­mée au sprint pré­cé­dent avec un pro­blème d’é­chelle.

Assem­blage col­lé du papier ther­mo­gon­flé et du car­ton-bois

Commande d’un découpage

Les patrons de décou­page pour machine outil prêtes, j’ai donc com­man­dé une découpe sur le site scu­pl­teo. Basés dans la région pari­sienne, ils pro­posent des ser­vices très simple d’u­ti­li­sa­tion de fabri­ca­tion, notam­ment pour découpe laser. En atten­dant que mon fablab de proxi­mi­té rouvre, c’é­tait la solu­tion la plus simple pour obte­nir un pre­mier modèle en medium près à tes­ter.

Inter­face de véri­fi­ca­tion de la découpe sur le site du pres­ta­taire

J’ai aus­si com­man­dé des planches A4 de medium en 2 mil­li­mètres d’é­pais­seur, pour pré­pa­rer la suite des fabri­ca­tions.

Quelques planches de medium pour les pro­chains décou­pages

Prochains développements

Les pro­chaines semaines seront l’oc­ca­sion de tes­ter la pre­mière ver­sion en medium, pro­ba­ble­ment avec plu­sieurs planches, pour tes­ter la mani­pu­la­tion de l’en­semble… À suivre !

Outil de planification de collectif

Cette année, j’ai eu la chance de voir plu­sieurs pro­jets de recherche être rete­nus par l’or­ga­nisme finan­ceur où nous l’a­vions pro­po­sé. En par­ti­cu­lier, l’ANR PRCE ACTIV­map a com­men­cé en mars 2020, pour quatre années de tra­vail col­lec­tif autour de la repré­sen­ta­tion de l’es­pace pour les défi­cients visuels. Une manière de conso­li­der l’ac­ti­vi­té menée depuis quelques temps au sein de Com­pas.

Quand on est nom­breux à tra­vailler sur une période longue, avec un calen­drier pré­vi­sion­nel éta­blit, il est impor­tant de pou­voir se sou­ve­nir de ces enga­ge­ments que l’on a pris. Il est indis­pen­sable de visua­li­ser les échéances, les réunions d’a­van­ce­ment, les moments clés pro­gram­més.

J’a­vais repé­ré Time­line de Jason Reis­man comme un outil inté­res­sant pour géné­rer des frises chro­no­lo­giques en svg à par­tir d’une des­crip­tion struc­tu­rée en json.

Il man­quait cepen­dant des fonc­tion­na­li­tés que j’ai ajou­tées dans un fork que l’on retrouve sur mon github. On peut donc main­te­nant indi­quer des dates incer­taines, décrire les dates sous une forme Jun 11, 2020 + 5 months, mais sur­tout la géné­ra­tion de fichiers au for­mat ical. En cou­plant cet outil avec l’ins­tance Sea­file de mon uni­ver­si­té, on a donc un moyen d’a­li­men­ter auto­ma­ti­que­ment les calen­drier des participant·e·s à par­tir d’un fichier json simple à édi­ter.

Pictoparle, neuvième sprint

Neu­vième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Cette semaine a été l’oc­ca­sion de faire mani­pu­ler Pic­to­parle à une uti­li­sa­trice, ain­si qu’à deux pro­fes­sion­nelles qui accom­pagnent le pro­jet : une ergo­thé­ra­peute et une ortho­pho­niste. C’é­tait aus­si la pre­mière impres­sion ther­mo­gon­flée d’une planche géné­rée par la fabrique de Pic­to­parle, et conçue spé­cia­le­ment pour une acti­vi­té bien iden­ti­fiée : le repas.

Planche ther­mo­gon­flée inté­grée au pro­to­type de Pic­to­parle.

De ces échanges et expé­ri­men­ta­tions, plu­sieurs points d’a­mé­lio­ra­tion ont été iden­ti­fiés, qui ont été en par­tie implé­men­tées cette semaine. En voi­ci une liste sans ordre, mais qui donne une idée des pro­blé­ma­tiques et implé­men­ta­tions réa­li­sées :

  • Les fichiers géné­rés par la fabrique sont main­te­nant nom­més à la fois par le nom de l’ac­ti­vi­té, mais aus­si par l’i­den­ti­fiant unique qui lui est asso­cié, afin de pou­voir dis­tin­guer les dif­fé­rentes ver­sions de fichiers que l’on peut choi­sir de géné­rer pen­dant un pro­ces­sus de concep­tion.
  • Modi­fi­ca­tion de la forme du méca­nisme d’as­sem­blage, pour assu­rer une inser­tion sur une plus longue sec­tion, comme illus­tré dans l’i­mage en haut de cette page.
  • Ajout d’un para­mètre per­met­tant de régler le ratio d’im­pres­sion, afin de cor­ri­ger le pro­blème des impri­mantes qui n’im­priment pas réel­le­ment à l’é­chelle deman­dée. La consé­quence est très visible sur la pho­to ci-des­sus pré­sen­tant la planche ther­mo­gon­flée inté­grée au pro­to­type, où le docu­ment a été net­te­ment réduit. C’est un pro­blème bien connu des ensei­gnants, qui doivent régu­liè­re­ment jon­gler avec leurs réglages d’im­pres­sion. On pro­pose dans l’in­ter­face un pre­mier docu­ment à impri­mer, avec dif­fé­rentes mises à l’é­chelle, afin de trou­ver celle cor­res­pon­dant aux capa­ci­tés de l’im­pri­mante.
  • Ajout d’un para­mètre pour ajou­ter un vide de confort autour de chaque pic­to­gramme, s’il n’a pas été pré­vu dans l’i­mage.
  • Prise en charge des images au ratio dif­fé­rent de celui pré­sen­té, avec une mise à l’é­chelle res­pec­tant le ratio ini­tial.
  • Révi­sion com­plète des docu­ments géné­rés pour l’im­pres­sion et le ther­mo­gon­flage, afin d’en faci­li­ter la découpe et l’as­sem­blage. En par­ti­cu­lier, ajout de poin­tillés de gui­dage du décou­page, et pro­po­si­tions de découpe per­met­tant d’é­vi­ter aux deux feuilles (ther­mo­gon­flée, et pic­to­gramme) de se super­po­ser au niveau des pic­to­grammes.
  • Ajout de plu­sieurs illus­tra­tions sur la page de fabrique de la boîte, afin de rendre plus com­pré­hen­sible les dif­fé­rents para­mètres à choi­sir.
  • Refonte de la page per­met­tant de fabri­quer une planche, afin de la rendre plus simple d’u­ti­li­sa­tion.
  • Fina­li­sa­tion de la géné­ra­tion de patrons pour la fabri­ca­tion de la boîte, et cor­rec­tion de nom­breuses erreurs grâce à un assem­blage vir­tuel dans blen­der.
  • Début d’im­plé­men­ta­tion de la découpe d’ou­ver­tures dans les côtés de la boîte, afin de déga­ger les dif­fé­rents bou­tons, connec­tiques et hauts-par­leurs. Démons­tra­tion avec les deux ouver­tures pré­vues pour les hauts-par­leurs de la tablette Leno­vo, visible sur l’as­sem­blage vir­tuel.

La vidéo ci-des­sous pré­sente l’as­sem­blage vir­tuel du boî­tier et d’une planche dans blen­der, afin de véri­fier la bonne concep­tion de cha­cune des par­ties.

Assem­blage vir­tuel des élé­ments du boî­tier en accé­lé­ré, pour véri­fier leur bon décou­page.

D’autres amé­lio­ra­tions moins visibles et cor­rec­tions de bugs ont été appor­tées à la fabrique de Pic­to­parle, qui s’a­mé­liore chaque semaine un peu plus.

Prochains développements

Il reste encore une bonne par­tie de la découpe des ouver­tures à implé­men­ter, et l’as­sem­blage boîtier/planche est encore faci­le­ment amé­lio­rable. Une fois ces der­niers points réa­li­sés, il s’a­gi­ra de l’en­voyer à la fabri­ca­tion, peut-être chez Sculp­teo, avant que mon fablab de proxi­mi­té ne reprenne son acti­vi­té.

Pictoparle, huitième sprint

Hui­tième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Cette semaine, j’ai prin­ci­pa­le­ment tra­vaillé à l’a­mé­lio­ra­tion de la fabrique de Pic­to­parle. La vidéo ci-des­sous pré­sente son fonc­tion­ne­ment com­plet, per­met­tant de géné­rer les patrons de fabri­ca­tion de la boîte et des planches :

La fabrique de Pic­to­parle, pré­sen­ta­tion des pages qui génèrent les patrons de fabri­ca­tion de la boîte et des planches

La nou­veau­té majeure de cette ver­sion est donc la géné­ra­tion des fichiers de fabri­ca­tion des par­ties solides de Pic­to­parle : la boîte, et le sup­port rigide de chaque planche. Ces patrons de découpe sont pro­po­sés en deux for­mats : le pdf pour un décou­page manuel, et le dxf pour le pilo­tage d’une machine-outil comme une décou­peuse laser.

Il manque encore quelques détails dans le patron de fabri­ca­tion de la boîte, et il me res­te­ra à vali­der ces plans par la fabri­ca­tion d’une boîte com­plète en sui­vant ces patrons, mais l’es­sen­tiel est implé­men­té.

J’ai éga­le­ment pro­fi­té de ce sprint pour implé­men­ter le glisser/déposer des images des pic­to­grammes, pour faci­li­ter la concep­tion des planches :

Concep­tion d’une planche par glis­ser dépo­ser

On remar­que­ra que les des­crip­tions asso­ciées à chaque pic­to­gramme (qui sont lues par la syn­thèse vocale de l’ap­pli­ca­tion) sont déduites auto­ma­ti­que­ment du nom du fichier glis­sé. On peut donc pré­pa­rer très faci­le­ment une planche, sans devoir réa­li­ser de double sai­sie.

Prochains développements

Les pro­chains déve­lop­pe­ments concer­ne­ront la fina­li­sa­tion de l’ex­port des patrons de découpe, en y inté­grant notam­ment les ouver­tures laté­rales faci­li­tant l’ac­cès aux bou­tons de la tablette, et déga­geant les hauts-par­leurs.

Une pre­mière impres­sion ther­mo­gon­flée de planche per­met­tra éga­le­ment de faire tes­ter com­plè­te­ment le pro­to­type à une uti­li­sa­trice.

Pictoparle, septième sprint

Sep­tième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Cette semaine a été assez active. J’ai tra­vaillé sur le site inter­net pour le rendre plus lisible, j’ai ajou­té l’ex­port pdf des planches pour l’im­pres­sion sur la fabrique de Pic­to­parle, et j’ai fina­li­sé un pre­mier pro­to­type phy­sique, que nous avons pu tes­ter.

Site internet

J’ai refon­du le site inter­net de Pic­to­parle pour bien dis­tin­guer les pages expli­quant com­ment on peut uti­li­ser Pic­to­parle des pages qui décrivent le déve­lop­pe­ment et le fonc­tion­ne­ment interne de l’ou­til.

Cap­ture d’é­cran de la pre­mière page de Pic­to­Parle pré­sen­tant les trois étapes de l’u­sage : fabri­quer son dis­po­si­tif, conce­voir ses planches, uti­li­ser Pic­to­Parle

En sépa­rant ces deux par­ties, j’es­père rendre plus com­pré­hen­sible ce pro­jet à deux niveaux de lec­ture dif­fé­rents.

Planches prêtes à l’impression

J’ai ajou­té à la fabrique de pic­to­parle l’ex­port en pdf des deux pages qui per­met­tront à tout uti­li­sa­teur ou uti­li­sa­trice d’im­pri­mer ses propres planches. Chaque pdf ain­si expor­té est com­po­sé de deux pages : la pre­mière page avec les pic­to­grammes pour ther­mo­gon­flage, la seconde qui sera pla­cée au ver­so, en impres­sion simple, et qui com­porte le QRcode pour la détec­tion auto­ma­tique des planches.

Tech­ni­que­ment, j’ai uti­li­sé deux librai­ries très bien pen­sées : jsPDF pour la fabri­ca­tion du pdf, et bwip-js pour la géné­ra­tion du QRcode.

J’en ai pro­fi­té pour amé­lio­rer un peu l’in­ter­face et l’u­ti­li­sa­bi­li­té de la fabrique sur quelques petits détails.

Prototype physique

En début de semaine, j’ai revu l’as­sem­blage des planches et du boî­tier, car la pre­mière solu­tion envi­sa­gée ren­dait les planches trop volu­mi­neuses.

Assem­blage sim­pli­fié de la planche sur le boî­tier

La nou­velle jonc­tion ima­gi­née me sem­blait inté­res­sante, aus­si je suis pas­sé à sa fabri­ca­tion en car­ton-bois, en sui­vant les conseils de Clé­ment, un ancien étu­diant en archi­tec­ture qui a dû en faire, des maquettes.

L’as­sem­blage s’est presque bien pas­sé, et j’ai pu faire tes­ter le dis­po­si­tif à une uti­li­sa­trice. La pro­chaine étape sera d’im­pri­mer des planches ther­mo­gon­flées com­plètes, ce que je n’a­vais pas eu le temps de faire.

Fabri­ca­tion puis pre­mières uti­li­sa­tions du boî­tier et de la planche Pic­to­Parle.

À l’u­sage, la recon­nais­sance de la planche n’est pas encore assez robuste, mais j’u­ti­lise encore les QRcodes des­si­nés à la main, je suis impa­tient d’u­ti­li­ser une ver­sion impri­mée. L’as­sem­blage entre planche et boî­tier est per­fec­tible, d’une part avec une meillure pré­ci­sion d’as­sem­blage, mais éga­le­ment avec un rehaus­se­ment des par­ties laté­rales, et peut-être j’a­jout d’une barre de main­tient, telle que le pré­sen­tait la maquette numé­rique.

Je suis éga­le­ment impa­tient d’es­sayer la découpe laser de medium, pour obte­nir un ren­du plus solide, et plus agréable… Mais il fau­dra pour cela implé­men­ter un géné­ra­teur de DXF pour la découpe !

J’a­vais un peu peur de la consom­ma­tion de la camé­ra pour la détec­tion de planches, mais d’a­près mes tests, on est à envi­ron 45 mAh pour 10 minutes d’u­ti­li­sa­tion de l’ap­pli­ca­tion, ce qui laisse pré­sa­ger une auto­no­mie de plus d’une dizaine d’heures.

Prochains développements

Les pro­chains déve­lop­pe­ments s’o­rien­te­ront pro­ba­ble­ment sur le géné­ra­teur de DXF pour la découpe laser, et sur des tests uti­li­sa­teur pour vali­der les approches explo­rées.

Pictoparle, sixième sprint

Sixième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Ce week-end, je me suis essen­tiel­le­ment consa­cré au déve­lop­pe­ment d’un outil per­met­tant de fabri­quer ses propres planches pour Pic­to­parle. En voi­ci une démons­tra­tion.

Démons­tra­tion de la fabrique de Pic­to­parle

Comme pré­sen­té dans cette vidéo, on peut choi­sir par­mi dif­fé­rentes mises en page, ou encore char­ger une planche déjà fabri­quée par le pas­sé. On peut ensuite asso­cier à chaque pic­to­gramme une image, et un texte.

Après avoir choi­si un nom à cette planche, on peut alors la sau­ver. Un fichier au for­mat zip est alors géné­ré. Après avoir trans­fé­ré ce fichier sur la tablette (en la connec­tant par usb à l’or­di­na­teur), on uti­lise alors le ges­tion­naire de planches de Pic­to­parle pour char­ger cette nou­velle planche.

Dans la démons­tra­tion vidéo, on peut voir d’autres mises en page que les mises en page pré­cé­dem­ment pré­sen­tées.

Pen­dant ce sprint, j’ai uti­li­sé JSZip et boots­trap pour la concep­tion de la fabrique de pic­to­parle, et j’ai éga­le­ment cor­ri­gé quelques bugs dans l’ap­pli­ca­tion Android.

Essayer la fabrique de Pictoparle

La fabrique à Pic­to­parle est dis­po­nible en ligne, n’hé­si­tez pas à l’es­sayer, et à me faire part des dys­fonc­tion­ne­ments, com­por­te­ments pro­blé­ma­tiques, ou amé­lio­ra­tions pos­sibles.

Futurs développements

La fabrique de pic­to­parle en est à sa toute pre­mière ver­sion. Dans les pro­chains sprints, je compte notam­ment ajou­ter la géné­ra­tion des docu­ments per­met­tant la fabri­ca­tion de la planche phy­sique.

Petits plaisirs techniques

Depuis deux mois, je tra­vaille à dis­tance. Ori­gi­nal, me direz-vous. Les acti­vi­tés cultu­relles et sociales étant très réduites, et puisque j’ai plu­sieurs pro­jets en cours néces­si­tant de coder (pic­to­parle, svg-to-stl, flatten.js, unkm.fr, Time­line), j’ai repris un mode de vie proche de celui de mes années lycée et pre­mières années uni­ver­si­taires : un mara­thon heb­do­ma­daire de gee­ke­ries en tout genre. L’oc­ca­sion de sor­tir des sen­tiers que j’a­vais trop bat­tus, et de décou­vrir de nou­veaux outils, librai­ries, tech­no­lo­gies… Voi­ci un petit tour d’ho­ri­zon non exhaus­tif, qui sem­ble­ra banal à certain·e·s geeks, mais que j’ai pris plai­sir à décou­vrir.

Aver­tis­se­ment : certain·e·s logi­ciels ou biblio­thèques lis­tées ci-des­sous ne sont pas libres au sens de la GPL, car distribué·e·s sous licences équi­valent BSD. Je m’ex­cuse d’a­vance pour toutes les per­sonnes qui pour­raient être cho­quées par ces pra­tiques légères… (fin du mes­sage des­ti­né à Fred)

Rédaction

J’ai déjà écrit il y a peu pour par­ler de MDwi­ki, mais j’a­vais envie de par­ler aus­si un peu de mkdocs, que j’u­ti­lise main­te­nant mas­si­ve­ment pour fabri­quer les sites inter­net de mes dif­fé­rents pro­jets, pro­fes­sion­nels ou per­son­nels (mer­ci Vincent Maze­nod). Facile à prendre en main, il s’ap­puie sur une hié­rar­chie de docu­ments au for­mat mark­down, dis­pose d’un maxi­mum d’ex­ten­sion et de thème, dont le très chouette Mate­rial, notam­ment en action sur le site de pic­to­parle. Pour regar­der sous le capot, vous pou­vez aller faire un tour sur le dépôt qui contient le code source de ce site inter­net.

Android

Avec Pic­to­parle jus­te­ment, j’ai explo­ré à fond les bonnes pra­tiques d’An­droid, ain­si que quelques biblio­thèques bien pra­tiques. Je pense notam­ment à zxing, conseillé par Laurent Pro­vot, pour lire les QRcodes. Super simple à inté­grer et à uti­li­ser, c’est le pied.

J’ai aus­si pu décou­vrir le méca­nisme de la com­mu­ni­ca­tion entre pro­ces­sus conseillée par les concep­teurs d’An­droid, et très bien docu­men­tée dans cet article de Jani­shar Ali. Le prin­cipe géné­ral est d’a­voir une boucle, qui per­met aux pro­ces­sus d’é­chan­ger des ins­truc­tions exé­cu­tables, ou Run­nable. Les ThreadHand­ler s’oc­cupent de récu­pé­rer les ins­truc­tions des­ti­nées à leur pro­ces­sus, en écou­tant ce qui cir­cule sur la boucle.

J’ai aus­si décou­vert le méca­nisme des frag­ments, per­met­tant de géné­rer auto­ma­ti­que­ment un graphe de navi­ga­tion dans les dif­fé­rentes vues de l’appli­ca­tion. J’ai aus­si mieux com­pris com­ment fonc­tionne le mul­ti­touch sous Android, très orien­té détec­tion de gestes, et que j’ai un peu contour­né pour per­mettre à mon outil d’i­gno­rer les doigts sup­plé­men­taires à la sur­face des pic­to­grammes.

Géométrie et géomatique

Les opé­ra­tions boo­léennes entre formes géo­mé­triques (union, inter­sec­tion, dif­fé­rence) sont sou­vent peu stables, notam­ment quand elles tra­vaillent avec des nombres à vir­gules flot­tantes. C’est encore plus vrai quand il s’a­git de gérer des super­po­si­tions de bords d’ob­jets… En javas­cript, j’ai décou­vert la librai­rie mar­ti­nez, implé­men­ta­tion d’un article de 2018, qui marche rela­ti­ve­ment bien, en pre­nant en compte plein de cas limites, et qui est très rapide. D’a­bord uti­li­sée dans svg-to-stl, je l’ai aus­si réuti­li­sée dans unkm.fr pour recher­cher effi­ca­ce­ment les inter­sec­tions entre routes.

J’ai aus­si décou­vert RBush et fast­bush, deux outils de détec­tion rapide d’in­ter­sec­tion entre rec­tangles, que j’ai uti­li­sé dans svg-to-stl et dans unkm.fr.

J’ai aus­si redé­cou­vert la sim­pli­ci­té d’u­ti­li­sa­tion de lea­flet, qui per­met très rapi­de­ment de des­si­ner des choses sur une carte. C’est d’ailleurs un outil que j’u­ti­lise avec les copains du pro­jet Com­pas. On aura bien­tôt des choses à mon­trer, j’es­père !

Enfin, map­sha­per qui per­met de mani­pu­ler en ligne de com­mande des don­nées géo­gra­phiques au for­mat sha­pe­file ou geo­j­son, par exemple pour sim­pli­fier les contours des dépar­te­ments dans unkm.fr :

mapshaper -i input.shp snap -proj wgs84 -simplify 25% weighted keep-shapes -o format=geojson precision=0.00001 output.json

Scripter, programmer

Map­sha­per per­met­tant de fabri­quer des geo­j­son, on peut vou­loir les modi­fier, comme ce que j’ai fait avec les dépar­te­ments, grâce au super outil jq. On écrit des règles de fil­trage, de par­cours, de sélec­tion, comme à l’é­poque des véné­rables XPath et XSLT, le tout en ligne de com­mande. En une ligne, on extrait d’un gros fichier la géo­mé­trie de chaque dépar­te­ment :

jq -c ".features[] | .properties.code_insee" output.json | while read line; do fname=${line//\"}.json; jq -c ".features[] | select(.properties.code_insee==$line)" output.json > $fname; done

Il faut aus­si que je confesse ici avoir mis un doigt dans VSCo­dium (encore une fois grâce à Vincent Maze­nod). Cet édi­teur de code déve­lop­pé par Micro­soft est super bien pen­sé, il se fait trans­pa­rent, s’a­dap­tant flui­de­ment aux usages, avec pas mal de fonc­tion­na­li­tés dis­crètes mais effi­caces. Dis­tri­bué sous licence libre (enfin MIT), il est dis­po­nible sur la plu­part des sys­tèmes d’ex­ploi­ta­tion, notam­ment dans une ver­sion allé­gée des par­ties de tra­cking et de télé­mé­trie main­te­nues par Micro­soft.

Multimédia

Dans la famille des outils mul­ti­mé­dias, j’ai d’a­bord décou­vert avec grand plai­sir que kden­live était deve­nu un édi­teur de vidéo très stable. Mon sou­ve­nir datait de 10 ans en arrière, et c’é­tait plu­tôt un sou­ve­nir sombre. Je l’ai cepen­dant uti­li­sé pour une toute petite tran­si­tion, mais il a fait le job très bien. J’ai aus­si fait un peu de modé­li­sa­tion 3D avec blen­der, en pro­fi­tant des bonnes pra­tiques que Blen­der Guru pré­sente sur sa chaîne you­tube, que je suis avec grand plai­sir. Même si j’ai uti­li­sé une ver­sion 2.7x, les vidéos de ces der­niers mois autour de blen­der 2.8x donnent très très envie de s’y frot­ter.

En par­lant de nou­velles ver­sions de logi­ciels, je ne peux pas m’empêcher de signa­ler qu’inks­cape vient d’être publiée en ver­sion 1.0. La vidéo de démons­tra­tion montre une évo­lu­tion dans la conti­nui­té des ver­sions pré­cé­dentes, avec des concepts simples, mais effi­caces :

Pré­sen­tai­ton d’inks­cape 1.0

Et pour finir, je pro­fite de ce billet pour par­ta­ger la décou­verte il y a quelques mois de splee­ter, l’ou­til conçu par Dee­zer pour sépa­rer la voix des musiques depuis un fichier son. Idéal pour se pré­pa­rer un karaoke ! Le résul­tat est sou­vent bluf­fant, et il semble uti­li­ser mas­si­ve­ment l’ap­pren­tis­sage pro­fond. À essayer !

Pictoparle, cinquième sprint

Cin­quième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors des sprints pré­cé­dents, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Assemblage des planches

J’ai tout d’a­bord for­ma­li­sé sous forme d’une maquette numé­rique une pro­po­si­tion d’as­sem­blage des planches, qui prend en compte le fait que la détec­tion des planches est assu­rée par la web­cam et les QRcodes. Il est ain­si néces­saire que le geste soit le plus constant pos­sible à chaque mani­pu­la­tion, afin de faci­li­ter la détec­tion.

Concept d’as­sem­blage des planches.

Dans cette pro­po­si­tion, l’u­ti­li­sa­teur est invi­té à poser le bas de la planche
sur la tablette, puis à la faire glis­ser jus­qu’aux butées pré­vues à cet effet,
avant de faire pivo­ter la planche sur la tablette. J’ai ima­gi­né un bord de tablette éva­sé, de sorte à faci­li­ter le posi­tion­ne­ment de la tablette au début (les deux « pattes » étant plus écar­tées que le bord de la tablette), puis qui s’é­carte vers le bas de la tablette. Une fois posi­tion­né, la planche est sta­bi­li­sée grâce aux pattes, et aux bords sur­éle­vés de la boîte en haut et en bas.

Sur la vue 3D, je n’ai pas vrai­ment tra­vaillé l’é­pais­seur de la planche (les pic­to­grammes semblent un peu trop en creux), ni l’es­pace de confort entre les pic­to­grammes et le bord des cadres. D’ailleurs, la taille des pic­to­grammes est un peu approxi­ma­tive, c’est plus une vue d’ar­tiste qu’un pro­to­type réa­liste.

Cette maquette numé­rique a été un outil de dis­cus­sion avec les pro­fes­sion­nelles qui m’ac­com­pagnent dans la concep­tion de cette solu­tion.

Gestion des planches personnalisées

Lorsque j’ai com­men­cé Pic­to­parle, on m’a très vite deman­dé si les planches pour­raient être per­son­na­li­sables. C’é­tait bien sûr mon inten­tion dès le début, mais les pre­miers pro­to­types n’en étaient pas capables.

C’est main­te­nant chose faite, avec la pos­si­bi­li­té d’im­por­ter des planches dans un for­mat dédié, pour lequel je fabri­que­rai pro­chai­ne­ment un outil d’as­sis­tance à la concep­tion :

Ges­tion des planches dans Pic­to­parle

Dans cet extrait, on découvre que six pic­to­grammes consti­tuent le défaut de Pic­to­parle, qui peut ensuite être enri­chi faci­le­ment de nou­velles planches. Toutes les planches, qu’elles soient fixes ou per­son­nelles, peuvent être désac­ti­vées à volon­té. Le for­mat lu par Pic­to­parle est une archive zip conte­nant un fichier xml de des­crip­tion de la planche, et les images (actuel­le­ment au for­mat png) de cha­cun des pic­to­grammes. Lorsque les sons per­son­na­li­sés seront pris en charge par l’ap­pli­ca­tion, ils seront éga­le­ment inté­grés aux fichiers.

Petites améliorations logicielles

De manière géné­rale, en inté­grant cette nou­velle fonc­tion­na­li­té, j’en ai pro­fi­té pour amé­lio­rer la sta­bi­li­té, la per­for­mance, et l’er­go­no­mie de l’ap­pli­ca­tion. Au fil des sprints, j’es­saye de rendre le code source du logi­ciel le plus facile à prendre en main. Sur ce type de pro­jet, où l’on tra­vaille par inter­mit­tence à son amé­lio­ra­tion, il est essen­tiel d’a­voir un code source bien struc­tu­ré et rela­ti­ve­ment bien docu­men­té, sans code mort. Tout n’est pas par­fait, loin de là, mais j’en suis tout de même assez content.

Réflexions sur les alternatives à Pictoparle

En échan­geant avec un membre d’ISAAC fran­co­phone, je me deman­dais ce qui fai­sait la spé­ci­fi­ci­té de Pic­to­parle par­mi les solu­tions exis­tantes de com­mu­ni­ca­tion amé­lio­rée et aug­men­tée. J’ai donc ajou­té au site inter­net une des­crip­tion de ses spé­ci­fi­ci­tés.

Pictoparle, quatrième sprint

Qua­trième sprint de l’application Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors du sprint pré­cé­dent, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

La vidéo ci-des­sous per­met d’ap­pré­cier une grande par­tie des amé­lio­ra­tions de cette nou­velle ver­sion :

Démons­tra­tion du qua­trième pro­to­type

Tout d’a­bord, on peut y voir les pre­miers pro­to­types de planches phy­siques. Elles sont pour l’ins­tant en car­ton souple, et les pic­to­grammes y sont des­si­nés au feutre noir. Pas encore de mise en relief des des­sins, ni des espaces inter-pic­to­grammes. Le sup­port n’est pas non plus assez rigide pour un usage fluide. Une petite exten­sion car­rée en haut de la planche per­met de por­ter au ver­so le QRcode d’i­den­ti­fi­ca­tion de la planche.

Car c’est l’une des avan­cées que j’at­ten­dais depuis long­temps : la détec­tion auto­ma­tique des planches à leur approche au des­sus de la tablette, grâce à cette iden­ti­fi­ca­tion gra­phique. Il y aura bien sûr pas mal d’op­ti­mi­sa­tions pour arri­ver à une uti­li­sa­tion fluide, mais les bases sont là car la détec­tion fonc­tionne même avec des QRCodes des­si­nés à la main. En sui­vant les sug­ges­tions de Laurent Pro­vot, j’ai uti­li­sé la librai­rie zxing.

Grâce aux dis­cus­sions avec les pro­fes­sion­nelles du CRDV impli­quées dans la concep­tion de l’ou­til, cette nou­velle ver­sion per­met de confi­gu­rer des planches conte­nant plu­sieurs pan­neaux de pic­to­grammes dis­tri­bués en grille. Chaque groupe peut avoir sa taille de pic­to­grammes. On peut par exemple repro­duire sur chaque planche un pan­neau fixe, avec les pic­to­grammes récur­rents. C’est ce qui a été expé­ri­men­té sur le pro­to­type de cette semaine.

Par­mi les amé­lio­ra­tions non visibles, mais qui sont essen­tielles au fonc­tion­ne­ment de Pic­to­parle, on peut citer l’u­ti­li­sa­tion d’une tâche (thread) sépa­rée pour gérer la camé­ra.

Améliorations futures

Les pro­chaines amé­lio­ra­tions concer­ne­ront pro­ba­ble­ment l’in­té­gra­tion de sons enre­gis­trés pour amé­lio­rer les retours audio, la conso­li­da­tion de la détec­tion auto­ma­tique des planches, l’a­mé­lio­ra­tion du pro­to­type phy­sique qui entou­re­ra la tablette, ou encore la pos­si­bi­li­té de chan­ger de planches sans devoir recom­pi­ler l’ap­pli­ca­tion.

Pictoparle, troisième sprint

Troi­sième sprint de l’ap­pli­ca­tion Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors du sprint pré­cé­dent, car je par­le­rai ici uni­que­ment des avan­cées de la der­nière semaine.

Tout d’a­bord, Pic­to­parle se dote d’un site inter­net, acces­sible à l’a­dresse pictoparle.jmfavreau.info. On y retrouve une expli­ca­tion détaillée des objec­tifs de l’ou­til, de son mode de fonc­tion­ne­ment, et on peut suivre dans le détail le déve­lop­pe­ment, grâce à des liens vers les billets de ce blog.

Du côté de l’ap­pli­ca­tion, les avan­cées visibles de cette semaine concernent prin­ci­pa­le­ment l’in­ter­face, et la pos­si­bi­li­té de modi­fier dans les pré­fé­rences cer­tains réglages, pour adap­ter l’ou­til à son uti­li­sa­teur ou uti­li­sa­trice. On com­mence par une vidéo de démons­tra­tion :

Démons­tra­tion du troi­sième pro­to­type

L’a­jout qui a pris le plus de temps, mais qui faci­li­te­ra gran­de­ment le déve­lop­pe­ment par la suite, est l’u­ti­li­sa­tion d’une inter­face telle que pré­co­ni­sée, avec une barre supé­rieure, un bou­ton de navi­ga­tion en haut à gauche, et un menu glis­sant sur le côté.

Menu laté­ral ouvert.

Une fois cela réa­li­sé, j’ai ajou­té une page de pré­fé­rences per­met­tant à l’u­ti­li­sa­teur d’a­jus­ter le com­por­te­ment de l’ap­pli­ca­tion : ver­bo­si­té des noti­fi­ca­tions sonores, réglages du double tap, réglage de la détec­tion de planche, ajus­te­ment de l’af­fi­chage pour éco­no­mi­ser de l’éner­gie, et pour ajus­ter la taille réelle des pic­to­grammes.

Le pan­neau laté­ral per­met aus­si l’af­fi­chage de la planche de pic­to­grammes. Dans ce cas, un bou­ton caché dans l’une des marges cen­trales per­met de fer­mer cet aper­çu. J’ai ajou­té cette fonc­tion­na­li­té en pen­sant aux tablettes qui pour­raient ne pas avoir de camé­ra, ou ne pas avoir auto­ri­sé l’u­ti­li­sa­tion de la camé­ra par l’ap­pli­ca­tion.

À ce pro­pos, j’ai aus­si ajou­té un mes­sage de demande d’au­to­ri­sa­tion d’ac­cès à la camé­ra inté­grée, pour faci­li­ter l’ins­tal­la­tion de l’ap­pli­ca­tion.

Demande d’au­to­ri­sa­tion d’ac­cès à la camé­ra, néces­saire à la détec­tion de planche.

J’ai éga­le­ment ajou­té une entrée dans le menu per­met­tant de quit­ter l’ap­pli­ca­tion, ce qui jus­qu’à pré­sent néces­si­tait d’u­ti­li­ser une astuce avec le bou­ton phy­sique on/off de la tablette.

Améliorations futures

Une liste des déve­lop­pe­ments envi­sa­gés sur l’ap­pli­ca­tion est dis­po­nible sur le dépôt github du pro­jet, en langue anglaise. En par­ti­cu­lier, en plus des amé­lio­ra­tions déjà évo­quées pré­cé­dem­ment, je pré­vois la mise à dis­po­si­tion d’une appli­ca­tion en ligne qui per­met­tra de fabri­quer ses propres planches, et de les ajou­ter sim­ple­ment dans l’ap­pli­ca­tion tablette.

Allo, docteur Ludo !

Voi­là un album des­si­né accom­pa­gné d’un CD que nous avons décou­vert grâce à la média­thèque de Cler­mont-Fer­rand. Tel­le­ment drôle, tel­le­ment beau !

L’his­toire est pal­pi­tante, on y trouve son compte que l’on soit enfant ou adulte, avec quelques réfé­rences cachées à l’ac­tua­li­té d’a­lors, notam­ment l’af­faire du Media­tor.

La voix de Fran­çois Morel, qui dit l’his­toire, est évi­dem­ment géniale, le texte en est subli­mé. Les musiques aus­si sont très réus­sies, on les chante sou­vent à la mai­son.

En cette période de COVID-19, vous devriez écou­ter la chan­son Malade de peur : « j’ai tel­le­ment peur d’être malade que je deviens malade de peur ».

Malade de peur, une chan­son de l’al­bum Allo, doc­teur Ludo qui colle bien avec l’es­prit ambiant d’a­vril 2020

L’al­bum est écrit, com­po­sé et chan­té par Olive et moi, et illus­tré par Arnaud Bou­tin.

Si vous avez envie d’en savoir plus sur cet album, et ses auteurs, vous pou­vez écou­ter ce por­trait croi­sé :

Pictoparle, deuxième sprint

Deuxième sprint de déve­lop­pe­ment de l’ap­pli­ca­tion Pic­to­parle, un outil de com­mu­ni­ca­tion alter­na­tive et aug­men­tée des­ti­né aux per­sonnes en situa­tion de défi­cience visuelle ren­con­trant des dif­fi­cul­tés dans la com­mu­ni­ca­tion orale. On peut bien sûr aller voir ce qui s’est pas­sé lors du pre­mier sprint, car je ne par­le­rai ici que des avan­cées de ce week-end.

Ces avan­cées concernent prin­ci­pa­le­ment la ges­tion de plu­sieurs planches, et l’a­mé­lio­ra­tion des inter­ac­tions. On com­mence par une vidéo de démons­tra­tion :

Cette vidéo com­mence par un détail, mais qui n’en est pas un quand on a peu l’ha­bi­tude de mani­pu­ler une tablette : le double tap qui per­met de lan­cer les sons ignore main­te­nant les autres doigts posés sur la sur­face. Ce n’est pas un com­por­te­ment stan­dard des dis­po­si­tifs d’in­te­rac­tion tac­tile, mais j’ai choi­si d’a­jou­ter cette fonc­tion­na­li­té pour ne pas mettre de bar­rière à l’ex­plo­ra­tion des reliefs des pic­to­grammes (pour rap­pel, la planche sera gar­nie de pic­to­grammes en relief). J’ai éga­le­ment pré­pa­ré le ter­rain pour la confi­gu­ra­tion fine des para­mètres de double tap, afin de l’a­dap­ter au mieux à chaque uti­li­sa­teur.

La deuxième avan­cée de ce sprint est évi­dente : la pos­si­bi­li­té de chan­ger de planche. La tablette détecte grâce à la camé­ra en façade lorsque l’on pose ou retire une planche de sa sur­face. L’ap­pli­ca­tion pro­pose alors un menu pour choi­sir la planche qui sera posée ensuite. Ces dif­fé­rentes inter­ac­tions sont ver­ba­li­sées par la tablette grâce à la syn­thèse vocale.

Améliorations à venir

L’une des pro­chaines amé­lio­ra­tions de l’ap­pli­ca­tion sera la détec­tion auto­ma­tique des planches, en s’ap­puyant sur la pré­sence au ver­so de celles-ci d’i­den­ti­fiants QR-code. L’a­jout d’un menu de réglage des para­mètres de l’ap­pli­ca­tion est aus­si pour bien­tôt.

Il fau­dra ensuite tes­ter la sta­bi­li­té de l’en­semble, et ajus­ter les para­mètres pour opti­mi­ser la consom­ma­tion d’éner­gie de l’ap­pa­reil.

Diffusion

Évi­dem­ment, le code source de l’ap­pli­ca­tion est dis­po­nible sous licence GPLv3 sur github, je publie­rai régu­liè­re­ment les avan­cées du pro­jet. Je serai plus que ravi d’a­voir vos retours, sug­ges­tions, etc.

J’es­père aus­si le rendre suf­fi­sam­ment adap­table pour qu’il puisse ser­vir à d’autres que la per­sonne pour qui je le conçois.

Prises de notes structurées

Depuis le début de mes acti­vi­tés de recherche, j’u­ti­lise un wiki pour prendre des notes au quo­ti­dien de mes acti­vi­tés. C’est un espace que j’hé­berge sur un ser­veur acces­sible par­tout et tout le temps, qui uti­lise doku­wi­ki.

De l’intérêt d’un wiki

Ce genre d’ou­til per­met d’é­di­ter en ligne non pas un unique docu­ment, mais un ensemble de docu­ments reliés par des liens hyper­textes. La lec­ture et l’é­cri­ture peuvent alors se faire de manière non linéaire. Et puis le moteur de recherche interne est très pra­tique.

Ce que j’aime beau­coup avec cet outil, c’est le fait que la mise en forme du docu­ment soit pro­duite grâce à une syn­taxe par­ti­cu­lière : on peut tout faire au cla­vier, sans avoir à prendre la sou­ris pour mettre quelque chose en gras, ni apprendre une foul­ti­tude de rac­cour­cis cla­vier. C’est flexible, géné­rique, avec une syn­taxe simple.

Et markdown fut

Quand j’ai com­men­cé à uti­li­ser les wiki (d’a­bord avec Wiki­ni), chaque solu­tion avait son lan­gage. Puis est arri­vé mark­down, mono­pole de fait, qui a uni­fié la syn­taxe uti­li­sée. Il ne reste que les outils d’a­vant cette syn­taxe qui uti­lisent autre chose. J’u­ti­lise par exemple beau­coup mkdocs pour rédi­ger le conte­nu de sites sta­tiques, comme par exemple jmfavreau.info.

Et comme les édi­teurs com­men­çaient à bien le sup­por­ter, comme j’a­vais pris l’ha­bi­tude de prendre des notes avec, c’est deve­nu le for­mat texte que j’u­ti­lise le plus. Pas for­cé­ment super pra­tique pour le par­ta­ger avec des gens habi­tués à des WYSIWYG, mais il existe des outils d’ex­port.

Le for­mat mark­down donne le moyen de faire des liens hyper­textes bien sûr, et donc d’a­voir non pas un docu­ment, mais un ensemble de docu­ments hyper­con­nec­tés. Seule­ment voi­là, dans sa forme de sai­sie, il ne per­met pas de suivre les liens. Il faut qu’il soit inter­pré­té (comme le fait le géné­ra­teur mkdocs) pour que les liens deviennent cli­quables dans un navi­ga­teur.

Alors com­ment faire pour navi­guer en local, dans tous les fichiers mark­down de son ordi­na­teur ?

MDwiki et websf

En cher­chant une solu­tion, j’ai trou­vé quelque chose de simple à déployer, et en même temps de très léger et fonc­tion­nel. Il s’a­git de cou­pler un ser­veur http léger à un inter­pré­teur de mark­down côté client.

MDwi­ki est consti­tué d’une unique page html, boos­tée au javas­cript, qui s’exé­cute donc en local sur le navi­ga­teur, pour pro­po­ser un ren­du de fichiers au for­mat mark­down entre­po­sés sur le ser­veur.

webfs est quant à lui un ser­veur http très léger, qui ne fait que ser­vir via ce pro­to­cole des fichiers sta­tiques. Pas d’exé­cu­tion côté ser­veur, quelque chose de très simple.

La solu­tion que j’ai adop­tée consiste donc à faire tour­ner sur mon ordi­na­teur webfs, tout en créant un lien sym­bo­lique depuis le réper­toire /var/www/html/wiki/ vers un réper­toire qui appar­tient à mon uti­li­sa­teur, typi­que­ment ~/wiki/. En pla­çant dans ce réper­toire le html de MDwi­ki (sous le nom w.html par exemple), et en pla­çant tous mes fichiers mark­down dans ce dos­sier, j’ai donc un visua­li­sa­teur de fichier mark­down sur ma machine.

J’u­ti­lise donc l’é­di­teur de mon choix pour modi­fier les fichiers, et le navi­ga­teur connec­té à l’a­dresse http://localhost:8000/wiki/w.html pour visua­li­ser le ren­du, et navi­guer en sui­vant les liens hyper­textes.

L’in­té­rêt de cette solu­tion, c’est que mes fichiers ne sont pas pri­son­niers d’un outil : je peux les édi­ter avec l’ou­til de mon choix, les copier faci­le­ment, uti­li­ser les fonc­tions de recherches habi­tuelles (en ligne de com­mande ou de mon envi­ron­ne­ment de bureau)…

Pictoparle, premier sprint

Pic­to­parle, c’est une appli­ca­tion Android, et un dis­po­si­tif tan­gible à la sur­face de la tablette pour per­mettre la com­mu­ni­ca­tion alter­na­tive et aug­men­tée. J’a­vais déjà par­lé de l’i­dée en réflé­chis­sant au dis­po­si­tif, dans un billet pré­cé­dent.

Je viens de finir un pre­mier sprint de déve­lop­pe­ment de l’ap­pli­ca­tion, avec un pre­mier pro­to­type fonc­tion­nel, dont je vous pro­pose une démons­tra­tion en vidéo ci-des­sous :

Le dis­po­si­tif per­met d’ex­plo­rer par le tou­cher les pic­to­grammes, et de lan­cer un son asso­cié quand on fait un double tap. On place des­sus une planche pic­to­gramme en papier ther­mo­gon­flé, puis un cadre pour maté­ria­li­ser les cases.

L’ap­pli­ca­tion se lance en plein écran, tou­jours en mode pay­sage, en recou­vrant les deux barres haute et basse d’An­droid pour évi­ter toute inter­ac­tion mal­heu­reuse. En sup­pri­mant tout écran de ver­rouillage, et en acti­vant le démar­rage de la tablette par double touche, on obtient donc une tablette 100% dédiée à cette appli­ca­tion : impos­sible de la fer­mer par erreur, et faci­li­té de réac­ti­va­tion de la tablette si elle s’est mise en veille (double tap sur l’é­cran, ou pres­sion sur le bou­ton de démar­rage nor­mal). Je me suis éga­le­ment assu­ré que les bou­tons de volume ajustent l’in­ten­si­té du son de l’ap­pli­ca­tion.

En cette période de confi­ne­ment, je n’ai pas pu impri­mer de planche ther­mo­gon­flée, j’ai juste ajou­té ici pour la démons­tra­tion deux pic­to­grammes fabri­qués pré­cé­dem­ment, pour mon­trer que le double tap passe bien à tra­vers le papier ther­mo­gon­flé.

Au cours des pro­chains sprints, j’ai pré­vu d’a­mé­lio­rer ce pro­to­type de plu­sieurs manières :

  • Quand on laisse un autre doigt sur la tablette, les double tap ne sont pas recon­nus. Je vais cor­ri­ger ça par une approche mul­ti-touch.
  • Ajou­ter la ges­tion des mul­tiples planches, avec détec­tion auto­ma­tique du chan­ge­ment de planche par qr-code.
  • Ajou­ter la pos­si­bi­li­té d’a­voir ses propres enre­gis­tre­ments plu­tôt que la
    voix de syn­thèse de google.

Une fois le confi­ne­ment fini, je fabri­que­rai une petite boîte en bois à la
décou­peuse laser, à la manière de ce que j’a­vais fait pour le qui est-ce tac­tile, pour conte­nir la tablette, tout en lais­sant acces­sible les par­ties indis­pen­sables (recharges, contrôle de volume, etc). Le cadre de sur­face sera éga­le­ment décou­pé de la même manière, avec un sys­tème d’as­sem­blage qui j’es­père assu­re­ra une bonne fixi­té et qui sera faci­le­ment inter­chan­geable.

Évi­dem­ment, le code source de l’ap­pli­ca­tion est dis­po­nible sous licence GPLv3 sur github, et je publie­rai ici régu­liè­re­ment les avan­cées du pro­jet. Je serai plus que ravi d’a­voir vos retours, sug­ges­tions, etc.

Écoutes du moment

Il y a un an, je citais quelques écoutes du moment. Un peu plus tôt, je disais ma décou­verte heu­reuse des émis­sions de France Musique, dont feu le cri du patch­work. Évi­dem­ment, cer­taines émis­sions dis­pa­raissent, on en découvre d’autres… Voi­ci quelques nou­velles émis­sions et pod­casts de tous hori­zons que j’é­coute régu­liè­re­ment cette année.

Le podcast histoire de Radio Maarif

radiomaarif.com

Le pod­cast his­toire de Radio Maa­rif est une série d’en­tre­tiens avec des his­to­riens et his­to­riennes, et aborde de nom­breux sujets, majo­ri­tai­re­ment liés à l’his­toire du Maroc. Les échanges sont très sou­vent en fran­çais, par­fois ils glissent vers l’a­ma­zi­ghe.

J’aime par­ti­cu­liè­re­ment le for­mat entre­tien, car il laisse le temps d’ex­plo­rer un sujet. Les idées déve­lop­pées y sont assez variés, mais sou­vent déve­lop­pées depuis le Maroc, loin des choses que l’on peut entendre dans les médias fran­çais.

Juke-box

Juke-box est pour moi l’é­mis­sion coup de cœur de l’an­née. Elle pro­pose de par­cou­rir à chaque épi­sode un évé­ne­ment du pas­sé par des archives et musiques, com­plé­tées par une nar­ra­tion drôle, et pleine de détails pas­sion­nants. On se pro­mène dans la Syrie des années 70, aux confins des pré­mices du mythe de la Poly­né­sie, à Mar­seille entre 1960 e t 1980 pour y décou­vrir sa scène rock…

C’est l’une des pre­mières émis­sions musi­cales que j’aime écou­ter, car il ne s’a­git pas ici de par­ler entre deux mor­ceaux, mais plu­tôt d’é­cou­ter des extraits pour illus­trer un pro­pos.

Mécaniques du complotisme

La sil­houette de trois per­sonnes qui dis­cutent, dans la cases éclai­rée d’une façade d’im­meuble vitré.

Méca­niques du com­plo­tisme est une série pro­duite par France Culture, qui pro­pose d’ex­plo­rer sous forme de séries de 3 ou 4 épi­sodes un sujet lié au com­plo­tisme : 11 sep­tembre, néga­tion­nisme, révo­lu­tion fran­çaise. Rela­ti­ve­ment bien docu­men­té, il per­met d’ex­plo­rer un mou­ve­ment qui a explo­sé avec les outils de com­mu­ni­ca­tion d’in­ter­net, mais qui semble avoir exis­té bien avant.

L’Acentrale

L’A­cen­trale est une webra­dio décen­tra­li­sée, qui est née au moment des mou­ve­ments sociaux qui gron­daient alors, notam­ment contre la pro­jet de loi sur les retraites. On y retrouve notam­ment les copains et copines du Brui­ta­gène. En avril 2020, l’é­mis­sion se pour­suit tous les same­dis, mal­gré le confi­ne­ment, pour racon­ter ce qui se passe un peu par­tout en France : les colères, les luttes, l’or­ga­ni­sa­tion soli­daire…

La trogne

le visuel de la trogne, sil­houettes ani­males devant un feu de bran­chages.

La trogne est une toute jeune chro­nique pro­duite depuis la Perche, en période de confi­ne­ment. Le pre­mier épi­sode, très réus­si, rap­pelle un peu par sa forme et le ton Radio Réus­site ou Lai­tue noc­turne.

Por­traits de gens du coin, de leurs acti­vi­tés et quo­ti­diens, réflexions et dis­cus­sions, le tout s’en­chaîne très agréa­ble­ment.


Et vous, vous écou­tez quoi ?

Écouter la ville

Dans le cadre de mes pro­jets de recherche autour de la per­cep­tion spa­tiale, j’ai enre­gis­tré il y a un mois le son de la ville à dif­fé­rents endroits, comme des pho­to­gra­phies sonores de l’en­vi­ron­ne­ment.

Cha­cun de ces enre­gis­tre­ments fait 15 minutes, le temps de se plon­ger dans une ville d’a­vant le confi­ne­ment, quand les espaces vivaient de mille dépla­ce­ments.

Juste après avoir fait ces enre­gis­tre­ments, j’a­vais fait jouer mes ami·e·s à un quizz : « où a été enre­gis­tré ce son ». Quelques temps plus tard, en voi­ci une ver­sion inter­ac­tive, en ligne : sonsdelaville.jmtrivial.info. À vous de jouer !

Le quizz en ligne, pour essayer d’as­so­cier un son à un lieu.

Cartographie poétique de confinement

On peut vivre le confi­ne­ment #COVID-19 de plein de manières dif­fé­rentes. De mon côté, entre autres choses, j’en pro­fite pour me faire des sprints de déve­lop­pe­ment logi­ciel, ce qui me rap­pelle la post-ado­les­cence, écrans catho­diques en moins.

Entre deux moments consa­crés aux outils pour ACTIV­map, je viens de finir une contri­bu­tion au site inter­net unkm.fr pro­po­sé par Ayme­rick. Ini­tia­le­ment, le site inter­net per­met­tait de visua­li­ser le cercle d’un kilo­mètre auto­ri­sé à la sor­tie, dans le cadre du confi­ne­ment impo­sé par le gou­ver­ne­ment.

Un cercle d’un kilo­mètre de rayon des­si­né sur une carte, à par­tir d’un point choi­si par l’u­ti­li­sa­teur.

Quand on voit ce cercle, impos­sible de ne pas ima­gi­ner le suivre « pour de vrai », dans les rues de sa ville, autour de son domi­cile. Mais voi­là, dans bien des cas, si l’on veut à la fois suivre le cercle, et res­ter à l’in­té­rieur du disque, dif­fi­cile de repé­rer le che­min à emprun­ter.

C’est donc ce que j’ai ajou­té à l’ou­til ini­tial, en uti­li­sant over­pass pour récu­pé­rer les don­nées car­to­gra­phiques d’OpenS­treet­Map, puis en uti­li­sant quelques algo­rithmes mai­son pour obte­nir le tra­cé des rues de la pro­me­nade cir­cu­laire. Enfin, il n’é­tait pas accep­table de ne pas des­si­ner le plus court che­min qui mène à cet iti­né­raire. En uti­li­sant lea­flet pour l’af­fi­chage, et flat­bush pour l’op­ti­mi­sa­tion, on se retrouve avec un outil fonc­tion­nel… Du moins, qui montre les don­nées OpenS­treet­Map telles qu’elles sont. Il vous man­que­ra peut-être des che­mins de cam­pagne, cer­taines bre­telles d’au­to­routes ne seront pas inter­dites aux pié­tons, et des iti­né­raires bizarres peuvent appa­raître quand une ave­nue est com­po­sée de deux voies de cir­cu­la­tion. Il manque cer­tai­ne­ment plein de choses à prendre en compte, mais la ver­sion en ligne pro­pose déjà un aper­çu inté­res­sant !

La figure ci-des­sous donne une intui­tion rapide de l’al­go­rithme :

  1. cher­cher le seg­ment de rue à la même lati­tude que le centre choi­si par l’u­ti­li­sa­teur, et la plus à l’ouest.
  2. par­cou­rir les rues en ne tour­nant qu’à gauche, jus­qu’à reve­nir au pre­mier seg­ment.
  3. sup­pri­mer les sec­tions où le che­min emprunte la rue dans les deux sens.
Un sché­ma illus­trant le par­cours du contour d’un graphe pla­naire.

Il y a plein de sub­ti­li­tés d’im­plé­men­ta­tion liées aux don­nées, mais le prin­cipe géné­ral est là. Et pour cal­cu­ler le che­min depuis chez soi jus­qu’à la balade, on uti­lise l’in­con­tour­nable algo­rithme de Dijks­tra !

Si vous êtes curieux·se et vou­lez en savoir plus, vous pou­vez aller jeter un coup d’œil au code source du site, et bien sûr aller jour sur unkm.fr. Peut-être que le virus de la contri­bu­tion à OpenS­treet­Map va vous rat­tra­per !