Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Fellowship of the Code - PHP TOUR 2014
Search
Ronan Guilloux
June 24, 2014
Programming
0
390
The Fellowship of the Code - PHP TOUR 2014
Quality & comptencies progess in small web agencies
Ronan Guilloux
June 24, 2014
Tweet
Share
More Decks by Ronan Guilloux
See All by Ronan Guilloux
The fine art of deploying web apps online
ronanguilloux
2
200
Raspberry Pi
ronanguilloux
4
520
Other Decks in Programming
See All in Programming
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
160
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
110
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.4k
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
420
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
160
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
170
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
The Art of Re-Architecture - Droidcon India 2025
siddroid
0
120
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
370
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
110
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
580
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
65
Docker and Python
trallard
47
3.7k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.1k
A better future with KSS
kneath
240
18k
AI: The stuff that nobody shows you
jnunemaker
PRO
1
16
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
250
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
27
Git: the NoSQL Database
bkeepers
PRO
432
66k
Transcript
The Fellowship of The Code Little teams, little clients,
Little budgets… and the will of quality
var me = {! "user": "Ronan"! , "age": 37! ,
"origin": "Brittany"! , "twitter": "@arno_u_loginlux"! , "repo": "github.com/ronanguilloux"! , "work": "
[email protected]
"! , "tags": [! "dad"! , "bearded web developer"! , "open-source enthusiast"! , "web agency veteran"! ]! }
Agence Innovation Numérique, Nantes #frontEnd #innovation #accessibilité
#NotSwag
Working in small web agencies…
alone & resourceful
Should your boss & teammates rely on you?
Are you a reliable person ?
Before changing things, let’s change ourselves
Developers? Deliverers!
Delivering Web Apps Into The Wild
Delivering middle-size web apps time estimation: 0,5 to 3 hours
long, unpredictable & stressful
None
The right tool for the job
understanding your tools
Rule #1 : All my team must be part of
it.
« If you’re doing automation, you’re already doing something right.
It’s not about how you do it. » (Shaun Dunne, medium.com) « Grunt vs Gulp vs Make vs Rake vs Jake vs Cake vs Brunch vs Ant vs Maven vs Bash vs You… »
(OK, OK, this is all largely inspired by Capistrano directories
structure) " ➜ myApp tree !"" [me 19] current -> releases/2014-06-24! !"" [me 68] deploy.sh! !"" [me 238] releases! # !"" [me 68] 2014-04-20! # !"" [me 68] 2014-05-02! # !"" [me 68] 2014-05-15! # !"" [me 68] 2014-06-01! # $"" [me 136] 2014-06-24! # !"" [me 68] src! # $"" [me 136] web! # !"" [me 0] index.php! # $"" [me 16] uploads -> ../../../uploads $"" [me 238] uploads " 11 directories, 1 file ➜ myApp!
Cool & simple things always remain cool & simple. "
me@server$~: ./deploy.sh! me@server$~: deploying…! me@server$~: done!! me@server$~:
Everyone in the team should now be a deployer. "
me@server$~: make deploy! me@server$~: deploying…! me@server$~: done!! me@server$~:
Making is cool. " me@server$~: make build! ! me@server$~: make
deploy! ! me@server$~: make update! ! me@server$~: make whatever! me@server$~:
Before automation
After
Deploy ! Deploy !
Next enhancement…
« As For Github! » (probably the best rule ever)
None
None
Do not always ask for permissions. Discovered a first nice
rule:
Only announce changes that just already happened
Next enhancement…
Semantic Versioning As A Delivery Process One Roadmap to Rule
Them All v1.2.3 « major.minor.bugfixes »
Again, we didn’t ask for permissions but people quickly
adopted this. " Again, let’s stay quiet & carry on.
Make bugs producing… money!
« bug + _______ + ____ = profit! » Quizz
:
= non-regression tests FTW = enhancing software business value =
profit! Solution : « bug + scenario + fix = profit! »
Building a BDD culture is long, This is only BDD
groundwork " ~ " To be sincere: We really used Behat just once : testing critical feats of one critical app.
Next enhancement…
but no bugtracker at all is a perfect hell no
bugtracker is perfect
Web Quality Checklist that now should become a test suite
Next enhancement…
Freeing things
Freeing more things
Freeing more more things
None
None
None
Hacking your organization
Ronan Guilloux @arno_u_loginlux github.com/ronanguilloux Thanks! Questions ?