J'en profite pour compléter un peu sur l'orientation que l'on est en train de donner au projet.
Release
Le projet a quelque peu souffert ces derniers temps du syndrome "Duke Nukem Forever". On a entamé une réécriture du coeur d'openplacOS (la gestion des modules) et cela nous a pris du temps. On s'est ensuite dit, tant qu'a faire, autant ajouter de OAuth2.0 pour gérer l'identification. Et ainsi de suite.
On était au départ parti sur le principe de "release early, release often" avec une release toutes les 4 semaines. Du fait de la réécriture, on a du coup abandonné cette méthode et rien releasé depuis.
Less is more
Avec Alex, on pense que l'utilisateur se fait un avis sur un projet en 5 min: lorsque vous testez un software, il y a ceux que vous comprenez et dont vous voyez les possibilités immédiatement et ceux où on est paumés parmi les options et où on sent qu'on va galérer. Auparavant, avec opos en version 0.3, il vous fallait largement plus de 5 minutes pour commencer a voir les possibilités du logiciel: opos faisait très clairement parti de cette seconde catégorie de logiciels.
On souhaite aboutir à quelque chose dans ce gout la: avec un tutoriel de 10 lignes (vous installez opos + vous lui mettez ca comme config et vous mettez ce firmware dans arduino) vous puissez controler une led depuis l'interface web. Simple, rapide, efficace.
L'électronique, c'est déjà suffisamment compliqué: plus le soft qui va controler cette électronique parait simple, plus l’utilisateur sera content.
Usecase
Pour sortir du syndrome DNF et avancer vers quelque chose de simple, on a clairement réorienté le projet vers le usecase utilisateur suivant:
- j'ai une raspberry pi et un arduino
- je veux pouvoir gérer une régule et un peu d'automatisme
- je veux que ce soit simple a utiliser
Dans cette optique, je fais tourner opos depuis 6 mois avec une régule pid qui gère le pH de ma solution pour mon mur végétal. Ce usecase a été très intéressant car il permis de montrer pleins de petits détails qui coinçaient lorsqu'on essayait d'utiliser opos. Pour tout vous dire, j'ai même souvent été moi même coincé face a des bugs que je comprenais moi même plus !
Aujourd'hui, ce usecase fonctionne bien. Le serveur est stable (bon en dehors de ce souci de fuite mémoire qu'Alex a fini par identifier), l'installation est désormais nettement plus rapide, les messages d'erreur sont plus claires point de vue utilisateur (peut être encore un peu de boulot dans le client en ligne de commande), les performances sont largement correctes. Ca roule quoi !
Page projet
On souhaite également revoir la page projet. Pour la précédente (
http://openplacos.tuxfamily.org/), on s'est bien amusés à faire une jolie css, on a écrit pleins de choses. On voulait également gérer un forum et aussi un espace de dépot pour que les gens puissent balancer des modules pour opos. Sincèrement, c'était une idée bien sympa, mais ca fait beaucoup de choses a gérer.
Au final, cette page projet noie le potentiel utilisateur sous des tonnes d'informations sans finalement aller a l'essentiel (ou sont les screenshots ? comment j'installe le bousin ? comment je fais joujou avec ?).
On pense désormais qu'il faut aller vers une page beaucoup plus simple et directe, sans pour autant s’embêter avec un cms comme tiki. L'idée est toujours la même: faisons les choses simplement et faisons les bien. Il nous reste a bosser la dessus, on a déja notre petite idée sur la réalisation :-)
++