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
The Fellowship of the Code - PHP TOUR 2014
Search
Ronan Guilloux
June 24, 2014
Programming
0
360
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
190
Raspberry Pi
ronanguilloux
4
510
Other Decks in Programming
See All in Programming
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
最近のVS Codeで気になるニュース 2025/01
74th
1
110
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
190
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.4k
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
590
Rubyでつくるパケットキャプチャツール
ydah
0
180
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
6k
カンファレンス動画鑑賞会のススメ / Osaka.swift #1
hironytic
0
180
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
230
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.4k
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
1.9k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
244
12k
Music & Morning Musume
bryan
46
6.3k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Making the Leap to Tech Lead
cromwellryan
133
9k
Facilitating Awesome Meetings
lara
51
6.2k
Automating Front-end Workflow
addyosmani
1366
200k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Testing 201, or: Great Expectations
jmmastey
41
7.2k
BBQ
matthewcrist
85
9.4k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Being A Developer After 40
akosma
89
590k
Statistics for Hackers
jakevdp
797
220k
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 ?