W.T.F.
***
Where To Focus when taking over
a Drupal Project
Drupal Camp Ottawa 2014 – Symetris.ca
Symetris unlocks your web potential
***
• Founded in 2004 – 10 years ago!
• 11 web specialists
• Develop websites that go ...
About me
Brad Muncs
President @ Symetris
Loves travelling
New dad
Strives to create
simplicity from
complexity
Why WTF? Co...
What we’ll be talking about today
• Why is this talk relevant?
• Context
• Observation phase
• Action phase
• Conclusion
W...
Why is discussing
taking on
existing projects
relevant?
Why WTF? Context Observe Act Conclusion
The web used to be
an uninhabited
klondike.
Why WTF? Context Observe Act Conclusion
It’s now a bustling city.
Why WTF? Context Observe Act Conclusion
Why WTF? Context Observe Act Conclusion
The current situation
• 3 open-source CMS platforms dominate
• Most clients already have a CMS website
• Most current CMS ...
Taking over existing Drupal projects
THE CONTEXT
Why WTF? Context Observe Act Conclusion
Why WTF? Context Observe Act Conclusion
Context elements to consider 1/2
• Client has a history, past experiences.
• If it turned sour, they might be defensive.
•...
Context elements to consider 2/2
• Who are the stakeholders?
• Who will be important to get on your side moving
forward?
•...
You’re client
doesn’t need « the
rebound guy ».
You should both be
aiming for a long-
term relationship.
Why WTF? Context ...
Taking over existing Drupal projects
OBSERVATION PHASE
Don’t start playing in the code
and configurations just yet
Why WTF...
We need to analyse the map to develop a
strategy.
Why WTF? Context Observe Act Conclusion
Programmers like to build stuff from scratch.
Having to delve into someone else’s code, we often
expect the worst.
Why WTF...
Common apprehensions:
• It’s not my code (so it’s shitty)
• The code is not built
according to my standards
• There is no ...
Give whoever was working
on the site before you some slack
• Other developers are like you –
they build with best intentio...
Step 1: Inventory of current website
• Inventory of Modules, Themes, Plugins
(external libraries)
• Any import/export func...
Step 1: Inventory of current backend
• List of « standard modules »
(and their version)
• List of « custom modules »
• The...
Step 1: Inventory of current website
• Open the readme.txt and upgrade.txt
• Might be written « do not upgrade! »
• Open f...
Step 2: Front-end matters
• How many page templates are there?
• Are there parent/child themes?
• Responsive or mobile the...
Step 3: Tech inventory
• Server configuration and technologies
• Deployment strategy
• Versionning system (Git, SVN, etc)
...
Step 3: Tech inventory
• .htaccess: what are the specifications?
(Drupal core update will destroy this)
• Any third party ...
Taking over existing Drupal projects
ACTION PHASE
Time to start playing
around with the site
Why WTF? Context Observe Act ...
Mark your territory
Why WTF? Context Observe Act Conclusion
A few beginner tips:
• Don’t start working on the live site.
• Create your own environment
(or use a client dev environmen...
Don’t be scared of versionning
• You’ll be married to the project, so don’t think
it’s a an unnecessary evil
• Import thei...
Before performing updates
• Check if the website you inherit has any
« pendings » in update.php
• Sometimes websites are b...
Perform updates
• Step 1: Cross your fingers
• Step 2: Update core and modules
• Step 3: Check if the site is broken
• Ste...
Install the modules you like working with
• PathoLogic
• Automatically repairs URLs that client didn't write
correctly
• P...
Start adressing the first client todos
• Take control: Rebuild vs. Patch
• You often feel you should either
completely reb...
Maintain your integrity
• From now on, the site will be
built according to your
standards
• Don’t be lazy because the
rest...
Extra Quality Control
• Changes you make have
repercussions you might
not expect
• Test Front-end,
Functionnality & code
•...
Your goal
• OWN the website and become an expert with
it
• If the old team takes the website back,
they shouldn’t feel it’...
Conclusion
Why WTF? Context Observe Act Conclusion
AGENCIES
CLIENTS
Why WTF? Context Observe Act Conclusion
Why WTF? Context Observe Act Conclusion
Be the web agency of their dreams
• They want to trust you
• Prove to your new cli...
Which means
• Take the time to listen and understand why
your new client decided to leave their
previous relationship
• Ta...
Why WTF? Context Observe Act Conclusion
Thank you!
Any questions?
brad@symetris.ca
www.symetris.ca
Presentation available on slideshare
@symetris
Prochain SlideShare
Chargement dans…5
×

WTF: Where To Focus when you take over a Drupal project

1 012 vues

Publié le

Jumping into pre-built Drupal projects sometimes requires a leap of faith as much for clients as for developers. The client is usually coming out of a bad previous business relationship and the code is not always structured according to your standards.

During this talk, Symetris will share its experience and provide tips on how to navigate these often uncharted waters. Our goal is to help you convert an uncertain client into a long term partner and have a checklist of what to look out for as developers.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
1 012
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

WTF: Where To Focus when you take over a Drupal project

  1. 1. W.T.F. *** Where To Focus when taking over a Drupal Project Drupal Camp Ottawa 2014 – Symetris.ca
  2. 2. Symetris unlocks your web potential *** • Founded in 2004 – 10 years ago! • 11 web specialists • Develop websites that go beyond marketing • Mastery of open-source CMS platforms • Optimize sites for mobiles Why WTF? Context Observe Act Conclusion
  3. 3. About me Brad Muncs President @ Symetris Loves travelling New dad Strives to create simplicity from complexity Why WTF? Context Observe Act Conclusion
  4. 4. What we’ll be talking about today • Why is this talk relevant? • Context • Observation phase • Action phase • Conclusion Why WTF? Context Observe Act Conclusion
  5. 5. Why is discussing taking on existing projects relevant? Why WTF? Context Observe Act Conclusion
  6. 6. The web used to be an uninhabited klondike. Why WTF? Context Observe Act Conclusion
  7. 7. It’s now a bustling city. Why WTF? Context Observe Act Conclusion
  8. 8. Why WTF? Context Observe Act Conclusion
  9. 9. The current situation • 3 open-source CMS platforms dominate • Most clients already have a CMS website • Most current CMS are mature and allow for upgrades and scalability Why WTF? Context Observe Act Conclusion
  10. 10. Taking over existing Drupal projects THE CONTEXT Why WTF? Context Observe Act Conclusion
  11. 11. Why WTF? Context Observe Act Conclusion
  12. 12. Context elements to consider 1/2 • Client has a history, past experiences. • If it turned sour, they might be defensive. • Why do they want to change web partner now? • Important not to repeat same mistakes… Why WTF? Context Observe Act Conclusion
  13. 13. Context elements to consider 2/2 • Who are the stakeholders? • Who will be important to get on your side moving forward? • Workflow: How does the client use his website? • Ex: they might have the admin panel active, but don’t use Why WTF? Context Observe Act Conclusion
  14. 14. You’re client doesn’t need « the rebound guy ». You should both be aiming for a long- term relationship. Why WTF? Context Observe Act Conclusion
  15. 15. Taking over existing Drupal projects OBSERVATION PHASE Don’t start playing in the code and configurations just yet Why WTF? Context Observe Act Conclusion
  16. 16. We need to analyse the map to develop a strategy. Why WTF? Context Observe Act Conclusion
  17. 17. Programmers like to build stuff from scratch. Having to delve into someone else’s code, we often expect the worst. Why WTF? Context Observe Act Conclusion
  18. 18. Common apprehensions: • It’s not my code (so it’s shitty) • The code is not built according to my standards • There is no documentation available • There are not diagrams, tutorials or workflows Why WTF? Context Observe Act Conclusion
  19. 19. Give whoever was working on the site before you some slack • Other developers are like you – they build with best intentions, but real life gets in the way http://theoatmeal.com/comics/design_hell Why WTF? Context Observe Act Conclusion
  20. 20. Step 1: Inventory of current website • Inventory of Modules, Themes, Plugins (external libraries) • Any import/export functionnality? Migrate or Feed modules • Check if core was hacked • Install « Hacked » and « Diff » modules Why WTF? Context Observe Act Conclusion
  21. 21. Step 1: Inventory of current backend • List of « standard modules » (and their version) • List of « custom modules » • These are going to be the challenges to update, enhance in the future • Are there any « garbage » modules? • Not used in the website, but installed for testing purposes by previous dev Why WTF? Context Observe Act Conclusion
  22. 22. Step 1: Inventory of current website • Open the readme.txt and upgrade.txt • Might be written « do not upgrade! » • Open fields and blocks • Is PHPfilter module activated? • Check views headers/footers: There might be custom code • /sites/modules/ • How is it structured? Why WTF? Context Observe Act Conclusion
  23. 23. Step 2: Front-end matters • How many page templates are there? • Are there parent/child themes? • Responsive or mobile theme? • How is CSS structured? (LESS? SASS?) • Ask: « Is that content generated by a block, a view, a module, a context, a node, php? » Why WTF? Context Observe Act Conclusion
  24. 24. Step 3: Tech inventory • Server configuration and technologies • Deployment strategy • Versionning system (Git, SVN, etc) • Automatic testing system • Unit tests? • SimpleTest module? Why WTF? Context Observe Act Conclusion
  25. 25. Step 3: Tech inventory • .htaccess: what are the specifications? (Drupal core update will destroy this) • Any third party connexions? • Solr, SSL, Web services, Databases Why WTF? Context Observe Act Conclusion
  26. 26. Taking over existing Drupal projects ACTION PHASE Time to start playing around with the site Why WTF? Context Observe Act Conclusion
  27. 27. Mark your territory Why WTF? Context Observe Act Conclusion
  28. 28. A few beginner tips: • Don’t start working on the live site. • Create your own environment (or use a client dev environment) before touching anything • Make sure the configs are the same as the live website Why WTF? Context Observe Act Conclusion
  29. 29. Don’t be scared of versionning • You’ll be married to the project, so don’t think it’s a an unnecessary evil • Import their branches to your VCS to see the site’s previous progress • Clean up the files • There is probably a lot of unnecessary files • DAMN YOU .DS_store and _notes !! Why WTF? Context Observe Act Conclusion
  30. 30. Before performing updates • Check if the website you inherit has any « pendings » in update.php • Sometimes websites are buggy because this hasn’t been done in a while Why WTF? Context Observe Act Conclusion
  31. 31. Perform updates • Step 1: Cross your fingers • Step 2: Update core and modules • Step 3: Check if the site is broken • Step 4: Rollback if necessary • drush pm-update –-lock=og Why WTF? Context Observe Act Conclusion
  32. 32. Install the modules you like working with • PathoLogic • Automatically repairs URLs that client didn't write correctly • Path Redirect • Point missing urls to correct pages • Cache Exclude • Exclude pages from cache instead of disabling it to not slow down the site Why WTF? Context Observe Act Conclusion
  33. 33. Start adressing the first client todos • Take control: Rebuild vs. Patch • You often feel you should either completely rebuild or just sloppily patch • If you can identify specific components that you can enhance – take the baby step to make the site better • You can flush stuff that is irrelevant Why WTF? Context Observe Act Conclusion
  34. 34. Maintain your integrity • From now on, the site will be built according to your standards • Don’t be lazy because the rest of the site is not • Document your work • You’ll be more productive within your team Why WTF? Context Observe Act Conclusion
  35. 35. Extra Quality Control • Changes you make have repercussions you might not expect • Test Front-end, Functionnality & code • Check our DrupalCamp Montreal conference : Devil’s in the details Why WTF? Context Observe Act Conclusion
  36. 36. Your goal • OWN the website and become an expert with it • If the old team takes the website back, they shouldn’t feel it’s « theirs » anymore • You’re going to be working with the site for a long time, so you’d better like it Why WTF? Context Observe Act Conclusion
  37. 37. Conclusion Why WTF? Context Observe Act Conclusion
  38. 38. AGENCIES CLIENTS Why WTF? Context Observe Act Conclusion
  39. 39. Why WTF? Context Observe Act Conclusion Be the web agency of their dreams • They want to trust you • Prove to your new client that you’re made for each other
  40. 40. Which means • Take the time to listen and understand why your new client decided to leave their previous relationship • Take the time to get to know your new website in and out • Pretend you’re the one that built it in the first place – OWN IT Why WTF? Context Observe Act Conclusion
  41. 41. Why WTF? Context Observe Act Conclusion
  42. 42. Thank you! Any questions? brad@symetris.ca www.symetris.ca Presentation available on slideshare @symetris

×