Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Arrêtons de parler de code de qualité, ce qu'il...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Marek Kalnik
June 24, 2014
Programming
670
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Arrêtons de parler de code de qualité, ce qu'il faut c'est du code agile !
Marek Kalnik
June 24, 2014
More Decks by Marek Kalnik
See All by Marek Kalnik
Ma liste subjective des 10 développeurs à connaitre
marekkalnik
0
94
Le management LEAN
marekkalnik
0
79
Versioning mobile apps and apis
marekkalnik
0
100
Comment Ionic vous aide
marekkalnik
0
160
Pourquoi choisir Ionic ?
marekkalnik
0
290
Cordova vs. Steroids
marekkalnik
0
160
Code Agile - comment redéfinir la qualité
marekkalnik
2
200
Behat - retour d'expérience
marekkalnik
1
460
Write your jQuery in console
marekkalnik
0
190
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
560
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
490
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.3k
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
170
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
240
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
220
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
120
メールのエイリアス機能を履き違えない
isshinfunada
0
230
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
320
SlackアプリとLambdaの 連携を構築した話
pawn_4_s
1
110
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
230
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
490
The Language of Interfaces
destraynor
162
27k
Thoughts on Productivity
jonyablonski
76
5.3k
Embracing the Ebb and Flow
colly
88
5.1k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
240
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Writing Fast Ruby
sferik
630
63k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
560
Un-Boring Meetings
codingconduct
0
380
Deep Space Network (abreviated)
tonyrice
0
250
Producing Creativity
orderedlist
PRO
348
40k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
240
Transcript
Arrêtons de parler de code de qualité, ce qu'il faut
c'est du code agile ! Marek Kalnik PHPTour Lyon 2014
Je m'appelle Marek Architecte et Team Manager chez Theodo TDD
et Good Code addict @marekkalnik
comment l'écrire ? code de qualité
code de qualité, c'est ça : Hodor. Hodor? Hodor. Hodor.
Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor? Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor? Hodor! Hodor! Hodor? Hodor! Hodor? Hodor. Hodor! Hodor. Hodor. Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor? Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor? Hodor! Hodor! Hodor? Hodor! Hodor? Hodor. Hodor. Hodor. Hodor! Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor. Hodor! Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor. Hodor. Hodor? Hodor. Hodor? Hodor. Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor? Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor? Hodor! Hodor! Hodor? Hodor! Hodor? Hodor. Hodor! Hodor. Hodor. Hodor? Hodor. Hodor? Hodor. Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor? Hodor? Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor? Hodor! Hodor! Hodor? Hodor! Hodor? Hodor. Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor. Hodor? Hodor. Hodor? Hodor. Hodor? Hodor. Hodor? Hodor. Hodor! Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor. Hodor! Hodor. Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor. Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor! Hodor. Hodor. Hodor? Hodor. Hodor? Hodor. Hodor. Hodor! Hodor.
on sait comment l'écrire This is extremely dirty code. Sorry
for the inconvenience but the client don't want us to make it clean. This is my worst commit ever, I do not endorse this but I'm forced.
comment le vendre ? code de qualité
comment nous nous voyons
comment nous voient nos clients
la réalité
les clients achètent du...
Prestashop ? les clients achètent du... phpmd : The method
indexProductPrices() has an NPath complexity of 2 117 035 203.
Wordpress ? les clients achètent du... phpmd : wordpress/wp-includes/query.php:2149 The
method get_posts() has an NPath complexity of 107 489 719 299 364 984 418 938 035 070 419 110 614 196 551 680 000
Baremetrics.io 2 months after start – rebuild from scratch Result
: doubled MRR
des très beaux projets !
est-elle inutile ? la qualité
est-elle bien définie ? la qualité
None
Qu'est-ce qui est vraiment important ?
The fast eat the slow
Agile
Notre plus haute priorité est de satisfaire le client en
livrant rapidement et régulièrement des fonctionnalités à grande valeur ajoutée.
Un logiciel opérationnel est la principale mesure d’avancement.
Accueillez positivement les changements de besoins, même tard dans le
projet.
La simplicité – c’est-à-dire l’art de minimiser la quantité de
travail inutile – est essentielle.
La charte du Code Agile a une grande valeur ajouté
est livré rapidement et régulièrement est opérationnel s'adapte aux changements de besoins minimise la quantité de travail inutile
La charte du Code Agile a une grande valeur ajouté
est livré rapidement et régulièrement est opérationnel s'adapte aux changements de besoins minimise la quantité de travail inutile
valeur Clean Code Dirty Code Good Business Value Excellent Code
Good Code Poor Business Value Bad Code Garbage Code Anthony Ferrara : Beyond Clean Code
succès orienté utilisateur analytics ! valeur
définir le succès au début du projet valeur
faire des ateliers utilisateur réguliers UserVoice sur chaque site valeur
toujours avoir des analytics le CA est aussi un indicateur
valeur
déploiement des tests qui permettent de limiter les risques
déploiement définir le DONE en prod
ops monitoring devops philosophy
ops You built it, you run it
C'est en modifiant son code qu'on apprend si notre design
est bon. Martin Fowler #isTDDDead évolution
Refactor early, refactor often. évolution
évolution Agile Data DDD Code review
coder vite KISS – n'adressez pas des besoins qui n'existent
pas !
coder vite Tuez rapidement les fonctionnalités qui ne servent plus
coder vite DRY – mais pas trop DRY
Ça fait beaucoup !
None
http://goo.gl/Bhs6RM
Et après ?
Créez la confiance
Orientez la qualité vers vos objectifs
Merci ! Questions ? @marekkalnik