Le Round 1 du concours Embdeded Spark 2010 se termine, l’opération “Je vois des Windows Partout” se lance, l’Imagine Cup arrive à grand pas… Et je ne parle même pas des légions de concours autour des applications mobiles. Les concours pour développeurs se multiplient: ayant eu la chance d’être juge ou coach sur plusieurs de ces évènements, j’ai vu se répéter les mêmes erreurs, et j’en viens à me dire qu’il serait intéressant de partager les “commandements” qui marquent la réussite…

Disclaimer obligatoire: Attention, les conseils que je dispense ici ne sont pas des garanties de succès aux prochains évènements et chaque concours a des spécificités qui vont rendront parfois certains conseils caduques… Usez donc avant tout de votre bon sens et de votre cerveau… Et gardez en tête que ces conseils sont applicables surtout aux concours dans les domaines embarqués et mobiles… je ne connais rien au design ou aux chaussures par exemple :)

Disclaimer 2: vous remarquerez que ces 10 Commandements touchent surtout au “Marketing” de votre projet, plus qu’à la partie technique… Hélas, nous, développeurs, devons nous y résoudre: les marketeux gouvernent le monde! la simple satisfaction technique du développeur ne vaut hélas pas grand chose dans ce monde de brute… Et puis la technique, c’est votre spécialité, ce n’est donc pas là qu’on trouve les pires faiblesses! Il faudra aussi vous rendre à l’évidence: la beauté technique, l’élégance de la solution, ne transparaitrons jamais si vous n’êtes pas capable de respecter les commandements ci-dessous…

Disclaimer 3: ces 10 commandements sont issus de mon expérience personnelle et n’engage personne d’autre que moi… A pondérer, donc, par le crédit que vous m’accorder ;)

1. Le sujet tu respecteras

C’est évident et pourtant… chaque concours connait son lot de hors-sujets. Sur un concours récent dont le thème était “Fun & Games” et donc la cible était les développeurs hobbyistes par exemple, j’ai eu à juger la candidature d’une entreprise de sécurité qui soumettait en candidature un de leur produit: un panneau d’alarme pour les petits magasins… C’est un cas extrême mais le hors sujet arrive plus souvent qu’on ne croit: en tout état de cause, savoir si on est dans le vrai ou pas par rapport à un sujet donné est extrêmement simple: soit ça tombe sous le sens commun (même votre grand mère comprendrait), soit on s’approche hors sujet: dites vous bien que si vous devez fournir une explication à la question “pourquoi collez-vous collez au sujet?”, c’est que vous avez déjà un pied dans le hors sujet…

2. A tes clients et tes utilisateurs finaux toujours tu penseras

Vous n’êtes _jamais_ votre meilleur client. Vous n’êtes pas représentatif de votre clientèle. Ni des utilisateurs de votre système, selon toute probabilité… Votre vue est biaisée par votre connaissance des tripes de votre projet: utilisez vos connaissances, vos proches, pour tester vos idées. Plus vous devez fournir d’explications sur l’utilisation de votre système, plus il est mauvais: encore une fois, faites appel à votre Grand-mère. Pensez “IPhone”: n’oubliez pas qu’ergonomie et design sont des disciplines différentes! Alors renseignez vous: allez sur le terrain: testez vos idées avec les gens du milieu que vous visez: je me souviens de l’excellente participation d’une équipe à l’Imagine Cup de l’an dernier qui avait visité des casernes et partagé l’expériences de pompiers et d’urgentistes afin de valider l’usage de leur système embarqué: best practice!

3. Qui paye, qui déploie et qui utilise tu comprendras

Votre client, c’est celui qui paye et ce n’est surement pas lui (mais plutôt un sous-traitant) qui déploiera. Votre utilisateur final, c’est la personne sur le terrain qui va utiliser votre projet: 80% du temps, ce sont des personnes différentes. Un exemple simple: un système de borne de distribution de médicaments à déployer dans des camps de réfugiés: il y a alors 2 types d’utilisateurs: les malades (qui se rendent à la borne) et les médecins (qui s’assure du suivi des malades et de la bonne utilisation de la borne). Ces deux groupes d’utilisateurs n’auront pas le même rapport à la machine: pas la même éducation, pas la même appréhension à l’utiliser, voire pas le même environnement d’utilisation. Mais en aucun cas, les médecins ou les malades ne paieront le distributeur: peut-être sera-ce l’état, ou une ONG? Dans tous les cas, saisissez la finesse des gens qui vont s’intéresser au “dossier” de votre projet et ayez un discours adapté pour chacun d’eux.

4. Les poncifs tu éviteras

A chaque édition d’un concours, on retrouve toujours les mêmes choses: par exemple, dans les catégories et les concours “embedded” on retrouve toujours un projet “d’ordinateur central domotique”. OK, la domotique, c’est cool. C’est surement un projet que vous adorez. Vous êtes sur que tout le monde adore: c’est peut-être même une bonne idée! Sauf que 10 autres concurrents ont eu la même: et plus le concours est gros, plus vous allez devoir vous démarquer, sortir du lot, si vous voulez passer au tour suivant: Un sujet “classique” vous desserviras plus qu’autre chose! Regardez les finales des Imagine Cup chaque année : toutes les idées de toutes les finalistes sont uniques, hallucinantes, et font voyager le jury en le surprenant!

5. Tes concurrents du monde réel tu connaitras

L’autre difficulté, de choisir un sujet classique, c’est que le monde réel est surement déjà plein de concurrents. Et l’innovation est un critère quasi-systématique de chaque concours… Mais sachez que votre solution ultra-innovante a peut-être un concurrent hyper simple qui marche suffisamment bien et cent fois moins cher! Alors avant de vous attaquer à votre problème pour implémenter une solution bille en tête: faites le tour du problème: des solutions existantes, des avantages et de leurs inconvénients. Trouvez les faiblesses de la concurrence: le prix? la difficulté de déploiement? Par exemple, des finalistes de l’Imagine Cup d’il y a 2 ans (à Paris) avait inventé un système de réseau de capteurs et d’avertisseurs pour éviter les collisions entre les voitures et les animaux. Idée géniale et particulièrement bien défendue en finale, car ils avaient étudié le problème (division des troupeaux et cantonnement géographique des animaux), les systèmes existants (ponts ou passages souterrains pour les animaux au dessus ou en dessous des voies), et avaient compris leur faiblesses: leur prix pour une faible efficacité

6. Les critères et les membres du jury tu étudieras

Chaque concours a ses propres critères, qui sont la plupart du temps publiques, mais qui sont de toutes façons toujours construit à peu près de la même manière: les jurys notent l’analyse du problème, la pertinence de la solution par rapport à ce problème, le degré d’innovation proposé, et bien sur, la faisabilité (et l’état d’avancement / d’industrialisation) du projet. Gardez les en tête et au fur et à mesure du projet: notez vous, et faites vous noter par des proches. Faites vous challenger, demandez aux gens de vous contredire: votre argumentaire n’en sera que plus solide. Point extrêmement important: on note souvent que les gagnants des concours sont moyens (ou mieux, bons) dans un peu tous les critères, et ont rarement plus d’un seul critère en dessous de la moyenne… si vous avez trop de points faibles, le jury passera 2 minutes à vous démonter, et tout le reste du temps à vous regarder patauger dans les difficultés sans que vous puissiez exposer vos points forts… dommage! Dernier point: intéressez vous donc aux membres du jury! On peut surement trouver deux ou trois choses sur eux sur Internet, qui vous dirons ce qu’ils aiment, ce qu’ils font et donc vraisemblablement, comment ils pensent! Prévoir une heure ou deux de travail là dessus peut grandement vous aider! Si vous êtes habiles, vous pourrez même adapter vos explications, par images ou métaphores, aux passions de vos interlocuteurs! aime-t-il le foot? les échecs? etc). Attention cependant: soyez fin ;) Un doute? encore une fois, tournez vous vers votre grand-mère ou vos proches dont le bon sens ne vous trahira jamais ;)

7. Le plus grand soin à la présentation tu apporteras

Une bonne présentation est une marque de respect pour le jury: une mauvaise présentation, le signe d’un jm’en foutisme qui lui donne une certitude: si vous vous foutez de comment vous présentez, c’est que vous n’avez pas envie d’aller au bout de l’aventure, de votre projet, et de passer les rounds. Au contraire, une présentation soignée montre que vous êtes perfectionnistes, et surtout que vous saurez “vendre votre sauce” malgré des faiblesses évidentes. Encore une fois (attention, tacle gratuit) : pensez Apple! un bon marketing peut faire avaler des salades pleines de couleuvres à n’importe qui pour peu qu’on lui dise ce qu’il veut entendre et qu’on le flatte! Les clefs d’une bonne présentation: Racontez une histoire, Soyez humble mais sur de vous, connaissez votre sujet sur le bout des doigts, soyez parés à toutes les questions, et surtout, SURTOUT, répétez. Répétez. Répétez. Répétez. REPETEZ! L’aisance et le style détendu de Steve Jobs sur scène sont directement proportionnel au nombre d’heures de préparation! Filmez vous et gommez vos défauts. Et dernier point: ne récitez _jamais_ un texte: Réciter montre un manque de confiance en soit, endors le jury et surtout, empêche l’interactivité. On sait que vous n’avez pas confiance en vous, pas besoin de nous en fournir la preuve: on vous l’a déjà pardonné! (oh, et au fait: ce conseil est aussi valable pour les entretiens d’embauche ;))

8. Le KISS tu embrasseras

KISS: pas le baiser, ni le groupe de Hard-Rock. La devise: Keep It Stupid Simple. C’est évident: plus c’est compliqué, plus c’est long à expliquer. Soyez simple dans vos explications, et demandez vous si chaque détail que vous précisez sert votre discours: Mettez le temps gagné à profit en faisant appel aux sentiments, en faisant rêver, rire, voyager.. en racontant une histoire! Attention: pas de lyrisme non plus. Vous êtes devant un jury et vous défendez un projet de développeurs, ce n’est pas un concours de poésie, vous n’êtes pas dans une salle de spectacle!

9. Les limites de ton projet tu admettras

Quelque soit le problème, la solution parfaite n’existe pas. Certaines seront chères, d’autres difficiles à industrialiser, à déployer ou à maintenir. Soyez conscient des faiblesses de votre proposition, et admettez-les si on vous les fait remarquer.: argumentez les, chiffrez les! Par exemple une équipe d’Imagine Cup avait proposé un système d’hélicoptère autoguidé pour faire du monitoring de la santé des parcelles des agriculteurs (hygrométrie, chaleur du sol, etc). Ils savaient que leur modèle ne résistait pas à une force de vent de plus de 3 beaufort, et que si on voulait résister par exemple à 5 il fallait multiplier le poids et la taille de l’hélico par 3. Chiffré, argumenté, cette faiblesse c’est transformé en force: ils ont parfaitement su démontrer leur connaissance du domaine! La seule limite qu’il ne faut jamais accepter: la faisabilité: le plus magnifique des projets ne vaut rien s’il n’est pas réalisable et inscrit dans la réalité de son environnement. Par exemple, un candidat à l’Imagine Cup l’an dernier a proposé une plateforme mobile de petite taille (de la taille d’une voiture télécommandée, mais autonome) pour aller surveiller les activités de braconnage dans la savane. Techniquement, superbe. Mais une petite chose chère et fragile comme ça, en autonome en plus, en terrain rugueux, au milieu des animaux, des gardes chasses et de braconniers armés? dans des régions sous-développées ou un simple stylo bic prend une valeur immense? une étude rapide aurait démontré que même sur des 4x4 de grande taille, avec des dizaine de milliers d’euros d’électronique, des équipes de chercheurs ultra intelligents des meilleurs université des Etats-Unis arrivent à peine à traverser un désert inhabité. Un concurrent de l’Imagine Cup ferait-il mieux dans un environnement cent fois plus hostiles? Keep it real… la beauté technique, l’élégance, la complexité de design, ne serviront jamais d’excuse à quelque chose d’irréalisable “dans la vraie vie”.

10. En toutes circonstances et souvent en équipe tu t’éclateras

Souvent les concours sont en équipe. Appréciez les moments que vous passez avec vos coéquipiers, profitez de la compétition pour rencontrer les autres équipes. Ne prenez personne de haut, mais ne vous sentez pas inférieurs: vous êtes tous là pour la même raison. Amusez-vous, faites de votre projet un rêve, réalisez-le, faites le partager. Les lots et le podium ne sont que poussière et fumée à coté de ce que vous vivrez en équipe et avec les autres participants!