Construire pour aujourd’hui pas pour demain
Un jour, un professeur a confié à la classe le devoir d’écrire un programme qui produit le résultat suivant:
1
1 2
3 5 8
console.log(' 1');
console.log(' 1 2');
console.log('3 5 8');
Lorsque nous écrivons du code, nous avons un problème à l’esprit que le code devrait résoudre. Impression d’un jeu de caractères, copie de fichiers, automatisation de certains travaux, peu importe. Mais alors que nous codons, quelque chose se passe.
Il y a une différence entre ce que votre produit doit faire et ce que vous devez prendre en compte.
Lorsque le premier iPhone a été expédié, il ne pouvait même pas copier-coller. Impossible de copier-coller! C’est ridicule?! Et pourtant, il a été expédié et amélioré progressivement. Vous pourriez faire valoir que le copier-coller est une fonctionnalité essentielle et qu’un téléphone ne devrait jamais être expédié sans lui. Mais il a quand même été expédié et c’est devenu un succès.
En regardant votre produit, les gens vous diront que ce serait cool s’il pouvait imprimer non seulement des chiffres mais aussi des lettres. Et ce serait cool s’ils pouvaient choisir la lettre. Oh, les emojis aussi. Les émojis sont cool. Et ce serait cool s’il pouvait montrer le tableau des 5 personnages les plus utilisés lorsqu’il était exécuté en mode aléatoire, en 3D avec VR bien sûr. Cela signifie-t-il que vous devez le construire? Peut être. Avez-vous besoin de le construire maintenant? Absolument pas!
Retarder l’expédition de votre produit à votre client est votre plus grand ennemi et il fait obstacle à votre succès. Plus vous construisez avant de valider avec les gens, plus vous devrez jeter et changer pour expédier ce dont ils ont vraiment besoin. Plus vous construisez, moins vous aurez de temps pour vous ajuster. Plus vous construisez, plus vous serez émotionnellement attaché à vos suppositions vous empêchant d’être objectif, car tout ce temps a été dépensé de toute façon et ce serait un gaspillage de tout jeter.