understanding the dark side · [email protected] cto / senior architect 20+ years tech 13 years of...
TRANSCRIPT
![Page 1: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/1.jpg)
Understanding the Dark Side
An Analysis of Drupal (and Other!) Worst Practices
Kristen Pol
![Page 2: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/2.jpg)
[email protected] [email protected]
Understanding the Dark Side �An Analysis of �Drupal (and Other!) �Worst Practices�
Image Source: http://bit.ly/1PB9En9
Kristen Pol
![Page 3: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/3.jpg)
[email protected] [email protected]
CTO / Senior Architect 20+ years tech 13 years of Drupal! [email protected] @kristen_pol hook42.com
My name is �Kristen.�
Image Source: http://bit.ly/1jwnfjC
![Page 4: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/4.jpg)
[email protected] [email protected] Image Source: http://bit.ly/1ZPBe4z
![Page 6: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/6.jpg)
[email protected] [email protected]
Bad devops and processes… � No backups No development workflow No error/uptime/speed monitoring Outdated core & contrib Forget to run drush fra & updb Overriding Features on live
![Page 8: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/8.jpg)
[email protected] [email protected]
No or poor documentation…� No or useless READMEs No or poor code comments No patch information Bad or inconsistent naming No theme style guide Not using Drupal coding standards
![Page 10: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/10.jpg)
[email protected] [email protected]
Allowing too much control… �
Php filter Javascript injector Permissive text filters Body field with “all” the HTML Wysiwyg with “all” the buttons User 1 or admin is used by all
![Page 12: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/12.jpg)
[email protected] [email protected]
Having too many “things”…�
Display Suite + Panels + Context… Duplicated fields Files at top/same directory Add files, backups, etc. to repository
Lots of views, content types, blocks… Install ALL THE MODULES!!!
![Page 19: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/19.jpg)
THANK YOU!
WHAT DID YOU THINK?
Locate this session at the DrupalCon Baltimore website: http://baltimore2017.drupal.org/schedule Take the survey! https://www.surveymonkey.com/r/drupalconbaltimore
![Page 21: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/21.jpg)
[email protected] [email protected] Image Source: http://bit.ly/1ZPBe4z
![Page 22: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/22.jpg)
Site Builder?
Project Manager?
Intermediate?
Developer?
Newbie?
Who are you? �
Image Source: http://bit.ly/1Lx4zqP
Expert?
Themer?
![Page 23: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/23.jpg)
[email protected] [email protected]
Let’s talk about… � UX Devops
Front-end Architecture
Security Coding
Maintenance Questions
![Page 24: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/24.jpg)
[email protected] [email protected]
Let’s talk about… � UX Devops
Front-end Architecture
Security Coding
Maintenance Questions
![Page 26: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/26.jpg)
[email protected] [email protected]
Forgetting to clean up…� Lots of dummy & test “things” dpm, print_r, debugging Modules in wrong or multiple places Patch and forget Forget to uninstall evaluation modules Remove module before uninstall Dev modules enabled on live Deleting fields “wrong”
![Page 28: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/28.jpg)
[email protected] [email protected]
SEO � “Click here” Hidden text Broken links Text on images
No alt or title text www vs non-www
Duplicate content Duplicate page title Duplicate meta description Sitemap.xml shows unwanted content
![Page 30: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/30.jpg)
[email protected] [email protected]
QA � No peer review No unit testing No user testing No load testing No regression testing No QA process No dev or staging server for testing No documentation
![Page 32: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/32.jpg)
[email protected] [email protected]
UX �Autoplay Low contrast content Unnecessary fields Just wysiwyg and body field Neglect content strategy Hard for content editors to edit
![Page 33: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/33.jpg)
[email protected] [email protected]
Bad Devops and Dev Processes �
Image Source: http://bit.ly/1PslpgD
![Page 34: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/34.jpg)
[email protected] [email protected]
Devops� No code repository No or bad commit messages No backups No caching No performance monitoring No downtime monitoring No development workflow Run all daily cron jobs at once
![Page 36: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/36.jpg)
[email protected] [email protected]
Front-end� No style guide Don’t use component library Promise pixel perfect pages Logic in the template files
![Page 37: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/37.jpg)
[email protected] [email protected]
Security� Php filter User 1 is used by all Liberal permissions Client has full admin rights No security updates Insecure passwords Unencrypted sensitive data
![Page 39: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/39.jpg)
[email protected] [email protected]
Architecture � Not reusing fields Misuse distributions Config not saved to code* Files at top level directory Install ALL THE MODULES Contrib vs custom code usage Save too much data to variable table
![Page 41: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/41.jpg)
[email protected] [email protected]
Coding � Not using hook_update_N Not using Drupal coding standards t() misused or not used Hardcoded links Put all code in .module Debug comments or no comments Don’t contribute patches back
![Page 43: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/43.jpg)
[email protected] [email protected]
Maintenance � Put contrib/custom in “wrong” place Same module in multiple places Name module same as theme Forget to uninstall evaluation modules Patch and forget Remove module before uninstall Dev modules enabled on live
![Page 44: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/44.jpg)
[email protected] [email protected]
Maintenance � Not updating core and contrib Not updating db when updating modules Not using maintenance mode* Update config on live when in feature Site files in repository Settings files in repository* Deleting fields “wrong”
![Page 46: Understanding the Dark Side · answers@hook42.com CTO / Senior Architect 20+ years tech 13 years of Drupal! kristen@hook42.com @kristen_pol hook42.com My name is](https://reader033.vdocument.in/reader033/viewer/2022042919/5f6179fb836252193b053f63/html5/thumbnails/46.jpg)
[email protected] [email protected] Image Source: http://bit.ly/1KiZ8df