Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Arrêtons de parler de code de qualité, ce qu'il...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Marek Kalnik
June 24, 2014
Programming
680
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
98
Le management LEAN
marekkalnik
0
83
Versioning mobile apps and apis
marekkalnik
0
110
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
210
Behat - retour d'expérience
marekkalnik
1
470
Write your jQuery in console
marekkalnik
0
190
Other Decks in Programming
See All in Programming
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
350
一人だけ、Kiroが静止する日
hideg
0
130
Go × SIMDで高速化するベクトル検索 ~ルーフラインモデルでSIMDが効く境界を探れ! ~
po3rin
1
2.8k
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
440
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
370
AHC070解法紹介
eijirou
0
130
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
130
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
170
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
260
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
0
1.8k
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
200
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
170
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
4 Signs Your Business is Dying
shpigford
187
23k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
770
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
580
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
280
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Music & Morning Musume
bryan
48
7.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
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