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
350
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
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
290
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
140
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
490
レガシーシステムにどう立ち向かうか 複雑さと理想と現実/vs-legacy
suzukihoge
15
2.3k
React への依存を最小にするフロントエンド設計
takonda
20
7.1k
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
300
3rd party scriptでもReactを使いたい! Preact + Reactのハイブリッド開発
righttouch
PRO
1
610
ふかぼれ!CSSセレクターモジュール / Fukabore! CSS Selectors Module
petamoriken
0
160
距離関数を極める! / SESSIONS 2024
gam0022
0
320
みんなでプロポーザルを書いてみた
yuriko1211
0
290
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
1.4k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.5k
Featured
See All Featured
Scaling GitHub
holman
458
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Making Projects Easy
brettharned
115
5.9k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Designing Experiences People Love
moore
138
23k
Fireside Chat
paigeccino
34
3k
Writing Fast Ruby
sferik
627
61k
Agile that works and the tools we love
rasmusluckow
327
21k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Teambox: Starting and Learning
jrom
133
8.8k
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 ?