Tag Archives: programmation

Un bon logiciel médical ?

Médecin et programmeur à mes heures perdues j’ai bien entendu réfléchi à ce que pourrait-être un bon logiciel médical de consultation, communication avec les autres progfessionnels, de suivi et de traitement.

“Développeur” Web en Ruby On Rails j’ai un projet sur le feu qui gère les consultations basiques, le suivi des paramètres, les examens demandés (sauf la biologie c’est en cours) les encaissements/dus, les notes, les choses à faire. Ce n’est pas grand chose mais cette avancée lente me permet de penser plus lentement, et j’en ai tiré plusieurs choses :

Un logiciel médical doit être ouvert, pour sa base de données, afin de l’interfacer avec d’autres logiciels et suivant un protocole multiplateforme de type soap, json,… J’en oublie sûrement beaucoup. Notre travail va être de plus en plus de la coordination avec d’autres acteurs de santé qui sont eux aussi de plus en plus informatisés.

Il faut éviter la double saisie qui est la voie certaine vers l’échec du partage d’information. L’idéal est donc d’avoir la possibilité que la base de donnée du médecin soit accessible en lecture (voire en écriture) et accessible via l’interface utilisée par les autres intervenants de santé.

Dans une maison de santé, qui ont la côte en ce moment, pourquoi ne pas imaginer :

Une base de données (idéalement Postgresql, MySQL a un avenir sombre, les autres solutions Open-source sont moins connues et les solutions propriétaires hors de prix) centrale sur laquelle on écrit

Des interfaces différenciées suivant les métiers, mais permettant la consultation/modification des données des autres professionnels. Imaginons que les infirmiers aient leur propre application, les médecins la leur, les psychologues aussi, et ainsi de suite, chacune avec une gestion des droits sur ce qu’ils peuvent consulter ou non.

Le tout sur un serveur hébergé par la maison médicale, et consultable à distance.

Le tout en application Web (exemple Ruby on Rails mais il y en a pas mal d’autres, je n’ai pas d’actions ;-) ) pour ne pas imposer un matériel et faire face aux différents moyens de consultaion, ordinateur, netbook, tablettes, smartphone etc.

Le bonheur non ?

La pérennité est assurée pour des dossiers médicaux qui doivent durer dans le temps (base de données en logiciel Libre, framework de développement idem), une maitrise des données qui sont hébergées en local, via une sous-traitance pour la maintence et le matériel, une grande souplesse d’utilisation et une absence de dépendnace à un éditeur si la solution est Open-Source (des coméptences de deéveloppeur Web on en trouve pas mal).

Voilà donc la voie idéale, mais la route est longue et la pente est rude. Je trouve illogique, choquant et stupide pour les financeurs de payer plusieurs fois pour un équipement informatique quand il eut été possible de payer une bonne fois pour toute pour produire un logiciel de base, adaptable à chacun et pouvant en plus participer à une économie locale de mainteneurs, développeurs etc.

C’est quand même pas gagné…

Vim, découverte et plaisir.

Il est possible que vous ne le connaissiez pas, même s’il est très connu parmis les informaticiens et développeurs, mais il existe un outil pour éditer le texte qui est génial : Vim.

Vim est en fait la version améliorée de VI (vi Meilleur en fait :-) ) et existe depuis au moins, euh 30- 40 ans ?

De prime abord Vim m’intéressait car il est décrit par de nombreux développeurs, dans des articles de blog, comme étant un outil excellent de travail sur des fichiers, avec une productivité et une ergonomie légendaire. Il y avait aussi le fameux troll Vim/Emacs (pas essayé celui-là encore).

Reste qu’une lecture rapide des articles d’aide sur le web donnait un peu le vertige. Un tas de commandes absconses permettait le déplacement, le remplacement, l’indentation, la sauvegarde etc.

Il manquait comment souvent le moteur de toute chose, la motivation. et c’est dans la recherche d’un bon éditeur Rails sou linux que finalement j’en suis venu à tester Vim un peu plus sérieusement. Le but était de retrouver une efficacité dans l’édition de texte.

Sur MacOS il existe tout un tas de raccourcis qui permettent d’accélérer l’édition dans tous les logiciels. Command flèche, Contrôle flèche permettent de se déplacer rapidement dans les lignes et les phrases. sous Linux la seule astuce que j’ai retrouvé est contrôle flèche pour se déplacer de mot en mot. Pas grand chose donc.

Alors voilà armé de petites fiches glanées sur le Web je commence sérieusement.

D’abord ce qui semble un peu inutile mais qui est diablement important, il existe trois modes.

  • Le mode insertion, pour … insérer, principalement on tape le texte dedans.
  • Le mode normal, pour se déplacer mais aussi pour des opérations d’éditions simples voire complexes, effacer des caractèrs/mots/phrases, indenter, copier coller etc.
  • Le mode visuel pour sélectionner plusieurs mots/phrases etc.

Passer du mode normal au mode Insertion se fait avec le i, mais il existe plein d’autres façons, le a, le o, le O entre autres.

Puis le déplacement simple en mode normal, avec les flèches, mais aussi avec les lettres hjkl. J’utilise les flèches même s’il parait que les lettres cela devient plus ergonomique. Mais sur un clavier bépo c’est pas pareil…

Mais les déplacement c’est aussi de mots en mots w vers la droite, et b vers la gauche, mais aussi vers la fin de ligne $ et vers le début de ligne ^.
On peut aller aussi vers la lettre que l’on veux avec f(lettre) vers la droite et F(lettre) vers la gauche.
Enfin vers le bas du fichier avec G.
Avec ces commandes on arrive déjà à être bien rapide pour le placement sur l’endroit que l’on veut.

Une fois que l’on y est que peut-on faire ?
remplacer une lettre par une autre ?
r(lettre)
effacer une lettre
x
effacer un mot
dw
effacer n mots
d(n)w
effacer une ligne
dd
insérer une ligne
après
o
avant
O
insérer du texte
i
après
a

On peut aussi annuler une commande/bétise
u
et annuler l’annulation
CTRL R

Avec cela on a déjà une bonne base pour travailler efficacement.
Ah oui ! il manque la base
enregistrer
:w
quitter sans enregistrer
:q!
enregistrer et quitter
:wq

Une fois ceci intégré le charme s’opère et tout doucement on en devient plus beau, plus intelligent, plus riche, plus rapide. Et on en vient à regretter que tous les outils ne soient pas sous VIM, le mail (quoique à voir), le traitement de texte, le navigateur internet etc.
Bref Vim c’est excellent, la courbe d’apprentissage est un peu rude, surtout au niveau du changement d’habitude, mais le jeu en vaut la chandelle.
Ah oui ce texte a été écrit sous Vim.

Apprendre le C++

Je connaissais le ruby, le javascript, le html et les CSS et la programmation desktop me tente pas mal notamment en vue de développement d’applications pour tablettes (a priori pas l’iPad :-P) et tel mobiles. Il existe pas mal de choses dont le dernier d’Appaccelerator le SDK Titanium.

Il semble excellent et taillé pour moi car vraiment ciblé développeur Web.

Mais il existe le C++, amélioration objet du C et donc en terrain connu avec le ruby,dont il semble exister un excellent environnemet de développement QT racheté par Nokia récemment.

Je suis en train d’explorer les différents guides et tuto et tout ceci semble bien séduisant…