Comment les jeux vidéos
ont fait de moi un meilleur
développeur ?
NON, JE N’AI PAS PERDU MON TEMPS DEVANT DES « JEUX
DÉBIL...
Bonjour !
Rémi Lesieur-Bridel
Développeur, Formateur, Team Leader
@remi_lesieur
A quoi va-t-on jouer ?
Kerbal Space Program : Livrer souvent
Anno 1404 et Cities Skyline : Répondre à un besoin
World o...
Apprendre le testing et
les cycles courts en
faisant une fusée
KERBAL SPACE PROGRAM
Kerbal Space
Program
Simulation de construction de fusée
Physique très réaliste
Assembler des éléments donnés …
• Voyager ...
Kerbal Space
Program
Le mauvais exemple : Tout développer
d’un coup.
https://www.youtube.com/watch?v=tsQdHvCH1PQ
Kerbal Space
Program
Crée rapidement un prototype simple
de fusée
Identification immédiate des soucis
On retente vite un d...
Faire une fusée ?
La fusée tient
debout ?
Les réacteurs
s’allument ?
Le carburant
est acheminé ?
La fusée
décolle ?
Il y a...
Réduire le temps entre construction et
décollage
Développement TestsBUG TEST
Dette Technique
Construction DécollageErreur ...
Découper sa ville et
répondre aux besoins
de sa population
ANNO 1404 & CITIES SKYLINE
Anno 1404
Stratégie / Gestion
Construire et faire prospérer sa
colonie
Système d’îles avec des ressources
limités pour cha...
Anno 1404
Plusieurs niveaux de citoyenneté
Chaque niveau a des besoins
Reprend ceux du niveau précédent et
rajoute les sie...
Anno 1404
Chaque besoin nécessite un ou
plusieurs ingrédients
Chaque ingrédient nécessite un ou
plusieurs bâtiments
Chaque...
Organiser ses livraisons
Bijoux
Vin
Epices
Foi
…
Bijoux Vin
Epices
Foi
… Bijoux
Vin
Epices
Foi
…
Foi
Eglise
Pierre
Carrièr...
Cities Skylines
City Builder (Sim City)
Construire et faire grandir sa ville
• Bâtiments privés et publics
• Infrastructur...
Cities Skylines
Disponibilité de bâtiments dépendent
de la population
Ne sont pas obligatoires
immédiatement (besoin non e...
Comment répondre à un besoin
◦ Anticipation d’un besoin potentiel
◦ Y répondre a un coût
◦ Ressources
◦ Temps
◦ Maintenanc...
Cities Skylines
Bâtiments optionnels
Donnent du bonus à la vile / quartier
Coûtent de l’argent & de la place
Meilleure sat...
Un besoin qui n’est pas critique n’en est
pas pour autant inutile
◦ Je n’ai pas à me soucier de certaines features
◦ Elle ...
Les jeux online coopératifs
JEUX SYMÉTRIQUES
Chaque joueur a les mêmes outils à
disposition pour gagner.
Counter Strike, Q...
Motiver son équipe en
massacrant des démons
WORLD OF WARCRAFT
World of
Warcraft
MMORPG (Massive Multiplayer Online
Playing Game)
Activités en commun avec d’autres
joueurs
La plupart de...
World of
Warcraft
Player Versus Environment
5, 10, 25… Jusqu’à 40 joueurs en
même temps.
Dans un donjon, une grotte, un
ch...
Pourquoi ça ne marche pas ?
Manque d’expérience
◦ Leader trop sûr de lui ?
◦ Palier de difficulté à passer
Défaut d’équipe...
Changer les idées du groupe
Revenir à un ancien lieu, un ancien boss.
◦ Redonne de la confiance, rassure
◦ Permet de remet...
Et quand on réussi ?
Tout n’est pas rose pour autant !
Le nombre de récompenses est limité
◦ Ménager les attentes de chacu...
Un vrai team leader
joue support
HEROES OF THE STORM
Heroes of the
Storm
MOBA (Multiplayer Online Battle
Arena)
Affrontement 2 équipes
Atteindre la base adverse et la détruire...
Heroes of the
Storm
Assassin
Guerrier
Support
Spécialiste
Inflige des dégâts importants, peu résistant
Très résistant, tou...
Heroes of the
Storm
Travail en équipe
Chacun son rôle
Chacun a besoin de l’autre
Protège
ProtègeProtège
Assiste
Assiste
As...
Un leader aide les autres à être bons
◦ Personne n’est inutile
◦ Chacun a besoin de l’autre, mais une personne doit être c...
Ne pas juger un jeu à sa
couverture
J’ai appris …
◦ Valider la qualité de mon travail
◦ Minimal Viable Product
◦ Testing & TDD
◦ Identifier et découper les be...
Questions ?
@remi_lesieur
Merci !
Comment les jeux vidéos ont fait de moi un meilleur développeur
Comment les jeux vidéos ont fait de moi un meilleur développeur
Prochain SlideShare
Chargement dans…5
×

Comment les jeux vidéos ont fait de moi un meilleur développeur

640 vues

Publié le

Je n'ai pas arrêté de jouer aux jeux vidéos. Et depuis plusieurs années, on me demande à quoi ça me sert.
Depuis que je m'intéresse au Software Craftmanship et à l'agilité, j'ai de quoi répondre.

Publié dans : Technologie
0 commentaire
2 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
640
Sur SlideShare
0
Issues des intégrations
0
Intégrations
37
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Qui n’a jamais, jamais joué ?
    Qui joue un peu ?
    Qui est un gros joueur ?
  • L’urgence est déjà filtrée
    Les besoins sont distillés au fur et à mesure
    Apparaissent à chaque palier de population (ex : besoin d’épices à partir de 200 « Citoyens »)
    Très tenu par la main
    Complexité des découpages
    Nécessité de maintenir les besoin précédent (non régression)



    TYPE DRIVEN DEVELOPMENT
  • Ajouter un nouveau bâtiment n’est pas anodin :
    Sa construction coûte de l’argent
    Son entretien également (+ salaires, …)

    Pour l’explication : la criminalité est ciblée par quartier, même par bloc.
    Un poste de police a une aire d’effet limitée.
    Attendre son apparition permet de directement cibler où le besoin est le plus urgent.
    En attendant d’avoir un plan de commissariat (aire d’effet plus importante), uniquement s’occuper des foyer naissant.

    Par contre, les feux peuvent se propager à peu près partout.

    Le choix ? S’occuper immédiatement des pompiers et répondre petit à petit au besoin de sécurité
  • Les habitants sont heureux d’avoir un espace vert, la popularité du maire augmente, ils seront moins enclins à pester contre la décharge que vous venez de mettre à 200m de leur bloc.
    Typique de la feature « Nice to Have »
    C’est un « cadeau » au client.
    Il apprécie le geste (c’en est un au départ) et aura un regard plus clément sur le reste du travail.
  • MMORPG (Massive Multiplayer Online Role-Playing Game)
    Guilde
    PvE / PvP
  • Parfois ça marche – IMG 1
    Parfois non – IMG 2
  • Assassin : Se concentre sur sa cible et sa barre de vie. Son point de vue est limité à un rayon de 5m autour de lui.
    Guerrier : S’assure que personne ne passe derrière lui (assassins, supports et spécialistes restent derrière la plupart du temps). Voit un peu plus loin, mais toujours dans son environnement proche.
    Support : Doit se déplacer là où il sera le plus utile (il ne l’est qu’en présence d’au moins un autre joueur, sauf cas exceptionnel). Doit surveiller le champs de bataille, tout en essayant de ne pas mourir.
    Tacticien : Hybride entre les 3, suivant le choix du héro. Peut être une sorte de support. Il peut jouer seul, certains sont même très efficaces pour cela.
  • Le support et le guerrier doivent surveiller tout le monde.
    Là où le guerrier (le carry) va devoir monter en puissance et être critique face à l’ennemi, le support devra toujours rester en arrière et s’assurer que chacun peut faire son rôle le plus facilement possible.
    Cela ne veut pas dire que l’assassin et le tacticien sont inutiles, au contraire. Mais ils ont un rôle plus direct envers l’objectif de l’équipe.
    Le support doit s’assurer que le reste de l’équipe peut faire son rôle direct.
  • Comment les jeux vidéos ont fait de moi un meilleur développeur

    1. 1. Comment les jeux vidéos ont fait de moi un meilleur développeur ? NON, JE N’AI PAS PERDU MON TEMPS DEVANT DES « JEUX DÉBILES ».
    2. 2. Bonjour ! Rémi Lesieur-Bridel Développeur, Formateur, Team Leader @remi_lesieur
    3. 3. A quoi va-t-on jouer ? Kerbal Space Program : Livrer souvent Anno 1404 et Cities Skyline : Répondre à un besoin World of Warcraft : Motiver son équipe Heroes of the Storm : Travailler en groupe
    4. 4. Apprendre le testing et les cycles courts en faisant une fusée KERBAL SPACE PROGRAM
    5. 5. Kerbal Space Program Simulation de construction de fusée Physique très réaliste Assembler des éléments donnés … • Voyager dans l’espace • Mettre des satellites en orbite • Visiter des lunes / planètes https://www.youtube.com/watch?v=3L-3Lpdnf5E
    6. 6. Kerbal Space Program Le mauvais exemple : Tout développer d’un coup. https://www.youtube.com/watch?v=tsQdHvCH1PQ
    7. 7. Kerbal Space Program Crée rapidement un prototype simple de fusée Identification immédiate des soucis On retente vite un décollage On corrige On relance … https://www.youtube.com/watch?v=qvZcQZ5FUhM
    8. 8. Faire une fusée ? La fusée tient debout ? Les réacteurs s’allument ? Le carburant est acheminé ? La fusée décolle ? Il y a de l’oxygène ? …
    9. 9. Réduire le temps entre construction et décollage Développement TestsBUG TEST Dette Technique Construction DécollageErreur Prob. Rebrancher tout Dev Tests Dev Tests Dette Dev Tests …
    10. 10. Découper sa ville et répondre aux besoins de sa population ANNO 1404 & CITIES SKYLINE
    11. 11. Anno 1404 Stratégie / Gestion Construire et faire prospérer sa colonie Système d’îles avec des ressources limités pour chacune Répondre aux besoin de la population pour avancer En concurrence avec d’autres colonies https://www.youtube.com/watch?v=jRAWqAZkUjI http://fc01.deviantart.net/fs70/f/2012/177/4/2/anno_1404_by_ravvenn-d54w37p.png
    12. 12. Anno 1404 Plusieurs niveaux de citoyenneté Chaque niveau a des besoins Reprend ceux du niveau précédent et rajoute les siens Lorsque tous ses besoins sont remplis, il monte de niveau Besoin initial Besoin supplémentaire Besoin avancé
    13. 13. Anno 1404 Chaque besoin nécessite un ou plusieurs ingrédients Chaque ingrédient nécessite un ou plusieurs bâtiments Chaque bâtiment nécessite certaines ressources Identifier île fertile Livrer Ferme Jardins Blé Herbes Brasserie
    14. 14. Organiser ses livraisons Bijoux Vin Epices Foi … Bijoux Vin Epices Foi … Bijoux Vin Epices Foi … Foi Eglise Pierre Carrière Bois Identifier Hiérarchiser Planifier Réaliser Livrer
    15. 15. Cities Skylines City Builder (Sim City) Construire et faire grandir sa ville • Bâtiments privés et publics • Infrastructures • Politique Pas d’adversaire (à part les éléments naturels) https://www.youtube.com/watch?v=yDJ-34uERZA http://orig14.deviantart.net/d960/f/2015/071/d/d/icon_cities_skylines_by_hazzbrogaming-d8ldy57.png
    16. 16. Cities Skylines Disponibilité de bâtiments dépendent de la population Ne sont pas obligatoires immédiatement (besoin non encore exprimé) On peut les implémenter immédiatement Ou attendre que la population le demande… Risque de mécontentement Pompiers Poste Police Besoin poste Police Besoin pompiers 0 20 40 60 80 100 1000 1500 2000 2500 3000 Satisfaction
    17. 17. Comment répondre à un besoin ◦ Anticipation d’un besoin potentiel ◦ Y répondre a un coût ◦ Ressources ◦ Temps ◦ Maintenance ◦ Quand y répondre ?
    18. 18. Cities Skylines Bâtiments optionnels Donnent du bonus à la vile / quartier Coûtent de l’argent & de la place Meilleure satisfaction Plus à même d’accepter de nouvelles taxes 0 20 40 60 80 100 1000 1500 2000 2500 3000 Satisfaction Aire de jeu
    19. 19. Un besoin qui n’est pas critique n’en est pas pour autant inutile ◦ Je n’ai pas à me soucier de certaines features ◦ Elle n’apportent ou ne corrigent rien des besoins primaires du client ◦ On s’écarte du MVP ◦ On fait plaisir à l’utilisateur, il voit qu’on l’écoute ◦ Sera moins à cheval sur l’ajout qu’il a demandé précédemment
    20. 20. Les jeux online coopératifs JEUX SYMÉTRIQUES Chaque joueur a les mêmes outils à disposition pour gagner. Counter Strike, Quake, … Equipe : Somme d’éléments indépendants la composant. Un très bon joueur dans une équipe médiocre peut la faire gagner face à une équipe ayant un talent moyen supérieur. JEUX ASYMÉTRIQUES Chaque joueur possède un nombre différent de possibilités pour accéder à la victoire. League of Legends, Guild Wars … Equipe : Capacité de chacun des éléments à s’entendre et à coopérer. Une équipe sachant jouer ensemble vaincra presque toujours celle dont les membres jouent mieux mais de manière désordonnée.
    21. 21. Motiver son équipe en massacrant des démons WORLD OF WARCRAFT
    22. 22. World of Warcraft MMORPG (Massive Multiplayer Online Playing Game) Activités en commun avec d’autres joueurs La plupart des joueurs ont une guilde Le jeu peu se faire en affrontement entre joueurs (Player versus Player) ou contre des personnages non joueurs (Player versus Environment) https://www.youtube.com/watch?v=J_HyiKQKNJs http://img10.deviantart.net/fa72/i/2010/350/1/c/world_of_warcraft_cataclysm_by_skycrawlers-d34zeh6.jpg
    23. 23. World of Warcraft Player Versus Environment 5, 10, 25… Jusqu’à 40 joueurs en même temps. Dans un donjon, une grotte, un château … Avance en battant des monstres de plus en plus gros et de plus en plus forts.
    24. 24. Pourquoi ça ne marche pas ? Manque d’expérience ◦ Leader trop sûr de lui ? ◦ Palier de difficulté à passer Défaut d’équipement ◦ Le groupe a voulu aller trop vite en besogne ◦ De nouveaux arrivants n’ont pas été correctement équipés Frustration ◦ Tentions ◦ Abandons ◦ Le groupe stagne, voire régresse
    25. 25. Changer les idées du groupe Revenir à un ancien lieu, un ancien boss. ◦ Redonne de la confiance, rassure ◦ Permet de remettre l’équipement des joueurs à jour si besoin ◦ Se donner de nouveaux défis Tenter un autre boss de la même difficulté ◦ Relance un nouveau défi, une nouvelle expérience ◦ Si réussi, la confiance remonte en flèche. Sinon, au moins la monotonie est cassée Faire totalement autre chose ◦ Activité futiles, voire stupides. On s’amuse en groupe, on n’a plus de pression de réussite ◦ Arrêter plus tôt la soirée
    26. 26. Et quand on réussi ? Tout n’est pas rose pour autant ! Le nombre de récompenses est limité ◦ Ménager les attentes de chacun ◦ Savoir prendre des décisions parfois peu populaires mais nécessaires Certaines classes sont plus nécessaires que d’autres ◦ Injustice à réparer : faire participer tout le monde. Faire tourner les groupes. ◦ Essayer de ne pas créer de sous clans Ne pas en demander trop ◦ Féliciter ce qui a été accomplis ◦ Encourager à avancer, sans menacer
    27. 27. Un vrai team leader joue support HEROES OF THE STORM
    28. 28. Heroes of the Storm MOBA (Multiplayer Online Battle Arena) Affrontement 2 équipes Atteindre la base adverse et la détruire Chaque joueur sélectionne un héro Chaque héro a un rôle et un panel d’action différentes Coopérer pour gagner https://www.youtube.com/watch?v=qyweHMhS6UM http://orig05.deviantart.net/9d7e/f/2014/119/2/0/heroes_of_the_storm_512x512_icons_by_mgbeach-d7gi57e.png
    29. 29. Heroes of the Storm Assassin Guerrier Support Spécialiste Inflige des dégâts importants, peu résistant Très résistant, toujours au front Soigne et améliore les capacités des autres Tacticien, à même de reverser le cours d’un affrontement
    30. 30. Heroes of the Storm Travail en équipe Chacun son rôle Chacun a besoin de l’autre Protège ProtègeProtège Assiste Assiste Assiste Victoire Avance vers Avance vers
    31. 31. Un leader aide les autres à être bons ◦ Personne n’est inutile ◦ Chacun a besoin de l’autre, mais une personne doit être centrale ◦ Attire l’attention sur des points critiques ◦ Reste en arrière de l’équipe, non pour laisser les autres faire son travail, mais pour les aider à faire le leur ◦ Il doit sacrifier ses prétentions, voire sa progression, il se sera jamais aussi fort que les autres
    32. 32. Ne pas juger un jeu à sa couverture
    33. 33. J’ai appris … ◦ Valider la qualité de mon travail ◦ Minimal Viable Product ◦ Testing & TDD ◦ Identifier et découper les besoins exprimés ◦ Anticiper ceux explicites et implicites ◦ Jongler entre features critiques et cadeaux aux utilsateurs ◦ Savoir avancer en équipe ◦ Sacrifier ses prétentions pour un but commun ◦ Sans tuer personne
    34. 34. Questions ? @remi_lesieur
    35. 35. Merci !

    ×