7,90 € TTC
p. 06 PostgreSQL - Architecture et notions avancées
p. 08 Une si discrète institution
p. 12 La Programmation Orientée Objet pour tous ?
p. 16 Réalisez les sauvegardes de votre téléphone Android avec ssh
p. 20 Sauvegarde automatisée de ses données personnelles
p. 30 Ansible & Docker sont dans un bateau
p. 38 Protocole de découverte de services
p. 44 Format WAV : créez des ondes sonores en C
p. 50 Format WAV : des sons de plus en plus complexes
p. 56 Interfaces utilisateur en Python : le mode CLI
p. 64 Asciidoc et Asciidoctor pour soigner votre documentation
p. 68 Pharo : générer des documents PDF avec Artefact
p. 78 Création d'un menu en 5 minutes avec Polymer
Je vais revenir ce mois-ci sur un problème récurrent : l’ergonomie et l’utilisabilité des interfaces Web. De plus en plus de services sont proposés en ligne et c’est à se demander si leurs concepteurs les utilisent ou les ont seulement testés. Dans les dernières pages qu’il m’ait été donné de tester, on peut trouver : ▪ un formulaire qui disparaît à la validation lorsque l’un des champs contient une entrée incorrecte ; ▪ un formulaire dont l’ascenseur se trouve intégré à la page de façon tellement esthétique qu’il est invisible : on ne sait donc pas comment accéder au bas du formulaire et au bouton de validation ; ▪ des messages sur un site marchand (plutôt connu) où, sous prétexte de convivialité, les concepteurs ont glissé un peu d’ « humour » : « Et hop ! C’est dans votre panier ! » ou encore « Veuillez patienter, la page suivante va se charger automatiquement... ou pas :-) ». Et bien en tant que client je ferai pareil : je reviendrai... ou pas ! ▪ un panier qui indique qu’il contient un article alors que tous les articles ont été supprimés ; ▪ #un bouton « page suivante » qui renvoie sur la page d’accueil ; ▪ un formulaire de contact qui, une fois connecté et donc identifié, redemande à l’utilisateur de saisir ses nom, prénom, adresse, numéro de client, etc. Faire une requête dans la base de données est sans doute trop compliqué ! ▪ j’ai gardé le meilleur pour la fin avec un formulaire contenant un champ obligatoire sous la forme de boutons radio... et dont tous les boutons sont désactivés ! Je dois faire partie des quelques personnes en France ayant pu valider le formulaire en l’éditant et en modifiant les lignes <input type="radio" disabled="disabled" ...>.
Ce formulaire n’est pas censé s’adresser aux seuls informaticiens, mais peut-être s’agit-il d’un test caché ? Comment tout cela est possible ? Comment ces erreurs de conception peuvent-elles perdurer ? Pourquoi continuer d’accepter de tels agissements de la part de certains développeurs ? Si votre garagiste répare votre voiture et vous explique que pour démarrer il faudra dorénavant tourner trois fois sur vous-même avant d’ouvrir le capot, ajouter un peu d’huile, faire tourner le moteur deux minutes puis l’éteindre avant de redémarrer... est-ce que vous trouverez ça normal ? Certes non, pourtant nous n’avons pas tous des connaissances en mécanique auto. Alors pourquoi en informatique trouve-t-on normal d’avoir des programmes qui fonctionnent « à peu près » ou que les clients se voient proposer des solutions abracadabrantesques de contournement des problèmes ? Le logiciel libre est un début de réponse, mais n’est plus suffisant : de nombreuses entreprises surfent sur l’ « open source », détournant à leur profit le système économique du logiciel libre en produisant des logiciels au code obscur et non documenté de manière à pouvoir revendre par la suite des formations ou de nouveaux développements. Il n’y aurait donc aucune solution ? Si ! Râler comme on le ferait avec notre garagiste... et continuer à lire et faire lire GNU/Linux Magazine pour acquérir de nouveaux savoirs :-)
Tristan Colombo
GNU/Linux Magazine s'adresse aux professionnels et aux particuliers désireux de mieux maîtriser les techniques et problématiques liées à la programmation et à l’utilisation de solutions open source. Tous les deux mois avec ses articles techniques, la publication couvre les thématiques suivantes : programmation système, algo, bas niveau, sécurité du code, développement web...
Dans le précédent article, nous avons autopsié le format WAV et écrit un programme en C permettant de créer un son sinusoïdal pur. Comme promis, partons maintenant sur les pas des pionniers de la synthèse sonore et de la musique électronique !