PandaLabs
Sous-estimer un projet ou surestimer ses capacités

J’aurais peut-être du écrire un titre plus pute-à-click genre « 10 erreurs symptomatiques des développeurs, la 8e va vous faire uriner de plaisir »…

C’est un article un poil « slice of life » qui débarque parce que j’me suis rendu compte qu’on a souvent des excuses pour expliquer pourquoi les choses traînent parce que souvent, c’est notre cul qui est en jeu. Mais quand le projet n’appartient qu’à vous et que l’attente ne vient que de vous… là, c’est plus chaud.

J’vais pas me regarder dans la glace en me disant « hey, c’est pas ma faute… y avait apéro ». oh que oui, y avait apéro, mais pas que…

Un peu d’contexte ma p’tite dame

Comme vous le savez un peu, j’ai décidé de freiner les jobs freelance, j’avais envie de temps pour moi… rentrer le soir, bosser sur mes jeux, mes projets, ne rien foutre… me faire une soirée entière à mater des vidéos youtube de vulgarisation scientifique. Ca fait du bien. Parfois, j’envie ceux qui peuvent pas ramener du boulot chez eux… Genre t’es conseiller darty. t’as conseillé toute la journée, tu rentres chez toi le soir… tu vas pas essayer de convaincre ta femme d’acheter le frigo qu’elle possède déjà…

Bref… j’me suis pas fixé d’objectifs de temps ou de délais de livraison pour mes projets… même si je devrais, mais comme ça, j’y vais « au plaisir ».

Et là, j’avais « une petite idée en tête ». Avec un très bon pote, on joue à un très vieux rpg en ligne par navigateur… une sorte de Walls of Hope, en buggé de partout, plus maintenu, et où t’es passé de 10000 joueurs à 150. M’enfin, sur ce jeu, t’as la possibilité de reroll quand t’en as marre de ton perso. En gros, on te rend entre 90 et 100% de ton expérience accumulée et tu peux rebuild un personnage…

Et nous, on est des optimisateurs. Les mecs qui calculent toujours que chaque petit point d’XP est parti au bon endroit qu’il a influencé les bonnes mécaniques et qu’il y en a ni trop, ni pas assez. Et ça, jusqu’à y a « le début de cet article » (tu te doutes bien lecteur que je ferais pas un article si j’avais pas fini ça et que j’venais genre faire mes états d’âme)… parce que sinon, c’était tout en excel avec des calculs à la con… Bref j’ai décidé de développer « un builder pour ce jeu à la con »… que je nomme pas parce que d’une… j’veux pas y voir vos tronches et de deux… parce qu’il est nul et que j’veux pas faire de pub à ces enculés xD (non j’déconne, faut modérer le propos jeune homme).

T’inquiète poulet ! Ca va prendre 1 semaine grand max…

Cette maudite phrase… je le sais, tu le sais, on le sait tous… on l’a tous dit au moins une fois. J’me suis dit « j’vais y bosser 3 h par soir, à mon avis y en a pas pour plus de 10 heures et derrière ça, un peu de fignolage, d’interface… quelques tests et hop »…

En plus, tu te dis « le truc, je le connais par coeur, la techno je la maitrise… pas de tests ni unitaires ni fonctionnels… parce que ça va quoi, on s’en branle, tu sors pas une chemise avec boutons en or pour aller à un barbecue »… Bref… j’avais tablé sur 10 heures.

Je m’étais dit :

  • Création du répo git, on pose les base du angular et le gulp => 1h
  • il y aura 3 composants : les infos de base, les caracs principales et secondaires, les compétences => 3h par composant
  • j’héberge ça sur un sous domaine de pandalabs et basta…

Et bah la réalité est tout autre :

  • 49 commits (en moyenne, je commit dès que j’ai fini une fonctionnalité… que je découpe en gros en un bloc d’1h)
  • 14 putains de composants
  • j’héberge bien ça sur un sous domaine… ouf

Mais alors gros, qu’est-ce qui s’est passé ?

Il m’a fallu 10 jours, j’ai créé le repo le 20/05 et on est le 30… Alors j’y ai pas bossé chaque jour, mais en moyenne… j’y ai passé 5h / jour …donc on est sur x5 au niveau des estimations.

Qu’est-ce qui a bien pu se passer ?

  • L’excitation et l’engouement de faire un truc qui nous plait a tendance à nous masquer toute la partie cachée de l’Iceberg. Alerte Spoil… mais Frodon n’a pas trouvé l’anneau, monté la colline et jeté le bignou… non. Et bah là pareil. J’ai peut-être oublié que le builder sans l’étape de passage de niveaux ne servait à rien, que sans les objets intéressants du jeu le build était pas précis… et que du coup, j’ai fait un fichier JSON des 70 items les plus utiles de ce con de game… j’ai pas vu que j’passerais 2h à coder les passages de niveaux, que l’interface c’est pas mon métier et que je galérerais à avoir un truc un peu user-friendly
  • A mesure que je voyais que j’m’étais merdé dans mes estimations, la passion s’est barrée laissant place à une forme de « ah mais j’veux plus en fait, on arrête ? »… parce que pour bien faire, il faudrait faire plusieurs factory et services et que j’avais hyper la flemme… donc j’me retrouve avec un truc de 800 lignes imbitables parce que « j’avais plus du tout envie »…
  • Que du coup, j’ai cherché le réconfort dans des petites fonctionnalités triviales qui prenaient pas longtemps et qui servent pas à grand chose : un affix pour mon UI, un système de capture d’écran qui génère un canvas grâce au html généré…

Juste pour la déconne… les captures générées font 1900x8000px … il me faut 7 fois mon écran superposé pour afficher l’entièreté de l’interface généré … A quelle heure j’ai cru que ça prendrait 10h ? Tocard !

Qu’est-ce qu’il faut tirer de ça ?

Vous, pas grand chose : soit parce que vous êtes pas concernés, soit parce que vous vous pensez meilleurs, soit parce que vous êtes vraiment meilleurs… mais moi, j’me suis rendu compte que bosser pour soi à 100% ou un client… et bah c’est pareil.

Finalement, en tant que « mec qui veut que cette app tourne comme ça », j’avais des attentes et ce que je me livre, y a pas tout, j’ai la flemme, je dois refacto… Si j’m’étais considéré comme un client lambda, j’aurais posé mon cahier des charges, mes specs et j’aurais avancé intelligemment.

Et je pense, que ce genre de couilles, ça n’arrive pas seulement parce que je suis le client et le développeur… mais ça m’est déjà arrivé sur d’autres projets où j’ai considéré le besoin comme simple… « Ouais, c’est juste une page comme ça, avec un bouton qui fait ça, et quand le traitement est fait, il s’passe ça… » kikoolol trop simple, 2 jours… et ça en prend 10…

Bref, cet article est surement utile à 0.000000001% de mes contacts facebook… mais j’crois que tant qu’on s’est pas rendu compte de l’attente qu’on impose à ses clients quand on foire une estimation, on peut pas vraiment faire ce genre d’introspection. Alors, je l’ai faite pour vous…

Bisous !

J’écris une pièce de théâtre

Oui… non mais c’est pas du tout contre productif avec l’objectif d’avancer sur mes projets persos… Noooooooon… xD

Donc voilà, j’me suis chauffé, j’ai récemment vu quelques pièces de théâtre du poto Thierry François et j’me suis dit « Oh … ça se tente, non ? »

Donc sans aucune prétention, j’ai décidé d’aborder le côté Gaming au théâtre et d’essayer de tirer un truc marrant à partir d’un héros de jeu vidéo, un poil dépressif parce qu’au bout de 20 ans, les gens sont toujours pas foutus de connaître son nom.

Je vous tiendrais au jus quand c’est fini… dès fois qu’en 2018, vous avez l’idée de vous pointer au festival d’Avignon avec un truc improbable xD

Bisous les poulets !

PandaLabs ouvre ses portes

L’aventure continue. Je dis pas commence, parce qu’honnêtement, ça fait déjà deux ans que je suis sur « un peu tout ce qui tourne autour de ça »… Mais j’avais pas le temps, gavé de boulot le jour et un peu le soir. J’ai enfin réussi à me débarrasser de tout ce qui me retenait et du coup, on finit de construire le drakkar et on prend le large façon viking !

Donc en gros, PandaLabs, c’est quoi ? C’est mon petit garage, mon sous-sol à l’Américaine, là où Daddy s’enferme des heures pour séques…  faire des trucs. L’avantage des développeurs web, c’est qu’on a pas besoin de trucs qui prennent de la place, donc pas besoin de garage… J’y présente les projets sur lesquels je bosse et qui me tiennent à coeur. Pas des projets pour des clients, mais des projets persos, des trucs que j’veux faire. Je sais qu’il y a un peu d’attente de certains potos, vu que j’fais du teasing depuis de nombreux mois… donc ce site/blog est là aussi pour montrer que « hey les gars, ça avance ».

Concernant la partie blog, j’vais pas y parler de ma vie spécialement genre « aujourd’hui, j’ai mangé un poulet… il était vivant ! ». J’vais juste faire des annonces sur l’avancée des différents composants, sur certaines problématiques rencontrées et leurs évolutions. Pas de commantaires, j’ai pas envie de me faire chier avec de la modération, à me dire « pourquoi les gens commentent pas, ils sont où mes commentaires, mais pourquoi le monde est si cruel ».

Je partagerais mes publications sur facebook et puis, ben… c’est tout xD

Donc, bienvenue sur Pandalabs, j’espère que vous continuerez à suivre un peu l’avancée de tout ça.

La bise !