SlideShare a Scribd company logo
1 of 29
2013 Twin Cities Drupalcamp
Fredric Mitchell
@fredricmitchell
The Seven Stages
Of Drupal Development
1.) Shock and Denial
2.) Pain and Guilt
3.) Anger and Bargaining
4.) Depression and Reflection
5.) The Upward Turn
6.) Reconstruction
7.) Acceptance and Hope
7 Stages of Grief Drupal@fredricmitchell | 2
●
Web Development Manager at
Orbit Media Studios
●
Web Dev 10+ years, Drupal
●
Gardening, T-Ball, Thundercats
Are you qualified? @fredricmitchell | 3
●
Grief == Drupal
●
Belie All Fears
●
Want Answers
●
Reaffirmation and Confidence
You are here because... @fredricmitchell | 4
Present State @fredricmitchell | 5
http://www.codem0nk3y.com/2012/04/what-bugs-me-about-modx-and-why/cms-learning-curve/
http://www.flickr.com/photos/32029534@N00/7317378118/
1. Shock and Denial @fredricmitchell | 6
Shock provides emotional protection from being
overwhelmed all at once. This may last for weeks
months.
Shock and Denial @fredricmitchell | 7
node
entity
content type
bundle
views
entityfieldquery
preprocess
process
alter
ctools
panels
blocks
beans
i18n
entity api
workflow
workbench
state machine
hooks
query_alter
tid
vid
nid
uid
theme
ckeditor
rules
roles
permissions
content access
logintobaggan
features
spaces
context
sites
conf
2. Pain and Guilt
http://www.flickr.com/photos/cuboidal/23246255/
@fredricmitchell | 8
Although excruciating, it is important that you
experience the pain fully, and not hide it, avoid it or
escape from it.
Tools for Pain and Guilt@fredricmitchell | 9
● Google
● Pro Drupal 7 Development (book)
● drupal.org / api.drupal.org
● drupalize.me
● IRC
● Local Meetups
● Camps / Cons
● Time
http://www.flickr.com/photos/13259518@N00/7339686070/
3. Anger and Bargaining@fredricmitchell | 10
Frustration gives way to anger, and you may lash out and
lay unwarranted blame on someone else.
Causes of Anger @fredricmitchell | 11
Find a page
admin/content → Scroll & Paginate
or
Build view → Create filters → Setup perms → Set
paths → Export to features → Pray
or
Install admin_views (dependencies)
Causes of Anger @fredricmitchell | 12
Place a block
admin/structure → Blocks → Find & Scroll →
Configure
or
Install Context / Context UI → Setup perms → Set
conditions → Set Reactions
or
Install beans (dependencies)
Causes of Anger @fredricmitchell | 13
Small team working together
Features get overridden
Core is updated and break things
Patches are all over the place
Build vs. Buy
UI vs. Code
http://www.flickr.com/photos/30990153@N02/4379602297/
4. Depression. Reflection.@fredricmitchell | 14
Encouragement from others is not helpful to you during
this stage of grieving.
Sad Face :-( @fredricmitchell | 15
Retrieve single field value
The bad way
$value = $node->field_value['und'][0]['value']
The 'Drupal' way
$value = field_get_items('node', $node, 'field_value');
$value = (is_array($value)) ? reset($value) : $value;
$value = (isset($value['value']))
? $value['value']
: false;
Sad Face :-( @fredricmitchell | 16
Set a field value
The bad way
$user->field_value['und'][0]['value'] = $value;
The 'Drupal' way
Install entity_api module
$user = entity_metadata_wrapper('user', $user);
$user->field_value->set($value);
$user->save();
Sad Face :-( @fredricmitchell | 17
Get a menu
$tree = menu_tree_page_data('main-menu');
$main_menu = menu_tree_output($tree, 1);
print drupal_render($main_menu);
Get taxonomy terms
$v =
taxonomy_vocabulary_machine_name_load($n);
$terms = taxonomy_get_tree($v->vid);
foreach ($terms as $term) {
$options[$term->tid] = $term->name;
Sad Face :-( @fredricmitchell | 18
Migration
drupal.org/project/migrate
The Good – It exists!!!
The Bad – Documentation is spotty.
The Ugly – 9000 ways of doing it.
migrate_d2d
migrate_extras
Code: https://gist.github.com/fmitchell/6079933
http://www.flickr.com/photos/18850767@N02/6853403410/
5. The Upward Turn @fredricmitchell | 19
As you start to adjust, your life becomes a little calmer
and more organized.
That is helpful @fredricmitchell | 20
What node/menu/object am I on?
menu_get_object()
Querying made easy
EntityFieldQuery
URL arguments made easy
drupal_get_query_parameters()
That is helpful @fredricmitchell | 21
I want to change this form
hook_form_alter()
Examples, please!
drupal.org/project/examples
Quickly do things
drush
That is helpful @fredricmitchell | 22
I want to create a distribution
Make
Installation Profiles (derf?)
drupal.org/node/108973
drupal.org/documentation/build/distributions
http://www.flickr.com/photos/49503058184@N01/172906852/
6. Reconstruction @fredricmitchell | 23
As you become more functional, your mind starts
working again, and you will find yourself seeking
realistic solutions.
What's next? @fredricmitchell | 24
Load all the things
entity_load_multiple() - D8
Configuration
VCS, No more system settings forms - D8
Mobile
IE8 is dead, jQuery 2.0, Responsive grids - D8
What's next? @fredricmitchell | 25
Make it pretty!
Twig - D8
Services
HTTPFoundation, HTTPCache - D8
Multilingual
Everything is entity API - D8
http://www.flickr.com/photos/40461532@N05/5049303652/
7. Acceptance and Hope@fredricmitchell | 26
Acceptance does not necessarily mean instant happiness.
Given the pain and turmoil you have experienced, you
can never return to the carefree, untroubled YOU that
existed.
If I Must @fredricmitchell | 27
node
entity
content type
bundle
views
entityfieldquery
preprocess
process
alter
ctools
panels
blocks
beans
i18n
entity api
workflow
workbench
state machine
hooks
query_alter
tid
vid
nid
uid
theme
ckeditor
rules
roles
permissions
content access
logintobaggan
features
spaces
context
sites
conf
●
Drupal 8 needs you!
●
Join a group.
●
Wear your scars proudly.
The Future @fredricmitchell | 28
2013 Twin Cities Drupalcamp
Fredric Mitchell
@fredricmitchell
Thank you!!

More Related Content

Viewers also liked

#CannesLions 2014: Day 5 Recap #OgilvyCannes
#CannesLions 2014: Day 5 Recap #OgilvyCannes #CannesLions 2014: Day 5 Recap #OgilvyCannes
#CannesLions 2014: Day 5 Recap #OgilvyCannes Ogilvy
 
Presentación sobre eficiencia energetica en smart cities
Presentación sobre eficiencia energetica en  smart cities Presentación sobre eficiencia energetica en  smart cities
Presentación sobre eficiencia energetica en smart cities inLabFIB
 
彼氏から彼女へ贈るプレゼント
彼氏から彼女へ贈るプレゼント彼氏から彼女へ贈るプレゼント
彼氏から彼女へ贈るプレゼントstucon
 
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせる
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせるスペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせる
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせるstucon
 
PYMES Desarrollo Productivo y Social con Enfoque de Género
PYMES Desarrollo Productivo y Social con Enfoque de GéneroPYMES Desarrollo Productivo y Social con Enfoque de Género
PYMES Desarrollo Productivo y Social con Enfoque de GéneroApolo Ronchi
 
Defrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannDefrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannT. A. McCann
 
Social Media for Arts Entrepreneurs at ASU
Social Media for Arts Entrepreneurs at ASUSocial Media for Arts Entrepreneurs at ASU
Social Media for Arts Entrepreneurs at ASUDevon Smith
 
Ficha inscricao aluno_cisja
Ficha inscricao aluno_cisjaFicha inscricao aluno_cisja
Ficha inscricao aluno_cisjaamirpajm
 
Developing an online identity - some tips
Developing an online identity - some tipsDeveloping an online identity - some tips
Developing an online identity - some tipsBryony Taylor
 
Paid search competitive analysis
Paid search competitive analysisPaid search competitive analysis
Paid search competitive analysisAdlucent
 

Viewers also liked (13)

#CannesLions 2014: Day 5 Recap #OgilvyCannes
#CannesLions 2014: Day 5 Recap #OgilvyCannes #CannesLions 2014: Day 5 Recap #OgilvyCannes
#CannesLions 2014: Day 5 Recap #OgilvyCannes
 
Presentación sobre eficiencia energetica en smart cities
Presentación sobre eficiencia energetica en  smart cities Presentación sobre eficiencia energetica en  smart cities
Presentación sobre eficiencia energetica en smart cities
 
彼氏から彼女へ贈るプレゼント
彼氏から彼女へ贈るプレゼント彼氏から彼女へ贈るプレゼント
彼氏から彼女へ贈るプレゼント
 
Animals
AnimalsAnimals
Animals
 
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせる
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせるスペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせる
スペシャルクーポンガチャによって中高生に家計簿の習慣をつけさせる
 
PYMES Desarrollo Productivo y Social con Enfoque de Género
PYMES Desarrollo Productivo y Social con Enfoque de GéneroPYMES Desarrollo Productivo y Social con Enfoque de Género
PYMES Desarrollo Productivo y Social con Enfoque de Género
 
Defrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ TamccannDefrag Panel _Filtering information through a social network _ Tamccann
Defrag Panel _Filtering information through a social network _ Tamccann
 
Social Media for Arts Entrepreneurs at ASU
Social Media for Arts Entrepreneurs at ASUSocial Media for Arts Entrepreneurs at ASU
Social Media for Arts Entrepreneurs at ASU
 
Ficha inscricao aluno_cisja
Ficha inscricao aluno_cisjaFicha inscricao aluno_cisja
Ficha inscricao aluno_cisja
 
UX Team Of One
UX Team Of OneUX Team Of One
UX Team Of One
 
Developing an online identity - some tips
Developing an online identity - some tipsDeveloping an online identity - some tips
Developing an online identity - some tips
 
Paid search competitive analysis
Paid search competitive analysisPaid search competitive analysis
Paid search competitive analysis
 
摩根簡介
摩根簡介摩根簡介
摩根簡介
 

Similar to The 7 Stages of Drupal Development

There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010Emma Jane Hogbin Westby
 
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksMigrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksAcquia
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Chipway
 
教科書と現場のあいだ
教科書と現場のあいだ教科書と現場のあいだ
教科書と現場のあいだYukei Wachi
 
Introducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PHIntroducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PHEleison Cruz
 
Optimizing Browser Rendering
Optimizing Browser RenderingOptimizing Browser Rendering
Optimizing Browser Renderingmichael.labriola
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkMediacurrent
 
Top SharePoint misconfiguration
Top SharePoint misconfiguration Top SharePoint misconfiguration
Top SharePoint misconfiguration Serge Tremblay
 
Top 5 Non-Obvious Drupal Modules
Top 5 Non-Obvious Drupal ModulesTop 5 Non-Obvious Drupal Modules
Top 5 Non-Obvious Drupal Modulesghing
 
Drupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupDrupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupJons Slemmer
 
Views plugins-in-d7-and-d8
Views plugins-in-d7-and-d8Views plugins-in-d7-and-d8
Views plugins-in-d7-and-d8Frank Holldorff
 
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPIntroduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPEric Hogue
 
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...HostedbyConfluent
 
Why Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher EducationWhy Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher EducationAcquia
 
Drupal DevOps - Melbourne DevOps July 2013
Drupal DevOps - Melbourne DevOps July 2013Drupal DevOps - Melbourne DevOps July 2013
Drupal DevOps - Melbourne DevOps July 2013Chris Ward
 
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1Vladimir Roudakov
 
Upgrading Drupal Modules - php[world] 2015
Upgrading Drupal Modules - php[world] 2015Upgrading Drupal Modules - php[world] 2015
Upgrading Drupal Modules - php[world] 2015Chris Tankersley
 

Similar to The 7 Stages of Drupal Development (20)

Cms comparison cmsexpo
Cms comparison cmsexpoCms comparison cmsexpo
Cms comparison cmsexpo
 
There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010There's a Module for That, MIMA Summit 2010
There's a Module for That, MIMA Summit 2010
 
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksMigrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
 
教科書と現場のあいだ
教科書と現場のあいだ教科書と現場のあいだ
教科書と現場のあいだ
 
Drupal Flyover, CMS Expo
Drupal Flyover, CMS ExpoDrupal Flyover, CMS Expo
Drupal Flyover, CMS Expo
 
Introducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PHIntroducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PH
 
Optimizing Browser Rendering
Optimizing Browser RenderingOptimizing Browser Rendering
Optimizing Browser Rendering
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management Framework
 
Top SharePoint misconfiguration
Top SharePoint misconfiguration Top SharePoint misconfiguration
Top SharePoint misconfiguration
 
Top 5 Non-Obvious Drupal Modules
Top 5 Non-Obvious Drupal ModulesTop 5 Non-Obvious Drupal Modules
Top 5 Non-Obvious Drupal Modules
 
Drupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy GroupDrupalcamp Gent 2012 - DRD module - by Joy Group
Drupalcamp Gent 2012 - DRD module - by Joy Group
 
Views plugins-in-d7-and-d8
Views plugins-in-d7-and-d8Views plugins-in-d7-and-d8
Views plugins-in-d7-and-d8
 
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPIntroduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHP
 
Drupalcamp Gent 2012
Drupalcamp Gent 2012Drupalcamp Gent 2012
Drupalcamp Gent 2012
 
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...
10 Things We Learned Re-imagining Kafka for the Cloud with Addison Huddy | Ka...
 
Why Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher EducationWhy Drupal 8 Is a Game Changer for Higher Education
Why Drupal 8 Is a Game Changer for Higher Education
 
Drupal DevOps - Melbourne DevOps July 2013
Drupal DevOps - Melbourne DevOps July 2013Drupal DevOps - Melbourne DevOps July 2013
Drupal DevOps - Melbourne DevOps July 2013
 
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
 
Upgrading Drupal Modules - php[world] 2015
Upgrading Drupal Modules - php[world] 2015Upgrading Drupal Modules - php[world] 2015
Upgrading Drupal Modules - php[world] 2015
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 

The 7 Stages of Drupal Development

  • 1. 2013 Twin Cities Drupalcamp Fredric Mitchell @fredricmitchell The Seven Stages Of Drupal Development
  • 2. 1.) Shock and Denial 2.) Pain and Guilt 3.) Anger and Bargaining 4.) Depression and Reflection 5.) The Upward Turn 6.) Reconstruction 7.) Acceptance and Hope 7 Stages of Grief Drupal@fredricmitchell | 2
  • 3. ● Web Development Manager at Orbit Media Studios ● Web Dev 10+ years, Drupal ● Gardening, T-Ball, Thundercats Are you qualified? @fredricmitchell | 3
  • 4. ● Grief == Drupal ● Belie All Fears ● Want Answers ● Reaffirmation and Confidence You are here because... @fredricmitchell | 4
  • 5. Present State @fredricmitchell | 5 http://www.codem0nk3y.com/2012/04/what-bugs-me-about-modx-and-why/cms-learning-curve/
  • 6. http://www.flickr.com/photos/32029534@N00/7317378118/ 1. Shock and Denial @fredricmitchell | 6 Shock provides emotional protection from being overwhelmed all at once. This may last for weeks months.
  • 7. Shock and Denial @fredricmitchell | 7 node entity content type bundle views entityfieldquery preprocess process alter ctools panels blocks beans i18n entity api workflow workbench state machine hooks query_alter tid vid nid uid theme ckeditor rules roles permissions content access logintobaggan features spaces context sites conf
  • 8. 2. Pain and Guilt http://www.flickr.com/photos/cuboidal/23246255/ @fredricmitchell | 8 Although excruciating, it is important that you experience the pain fully, and not hide it, avoid it or escape from it.
  • 9. Tools for Pain and Guilt@fredricmitchell | 9 ● Google ● Pro Drupal 7 Development (book) ● drupal.org / api.drupal.org ● drupalize.me ● IRC ● Local Meetups ● Camps / Cons ● Time
  • 10. http://www.flickr.com/photos/13259518@N00/7339686070/ 3. Anger and Bargaining@fredricmitchell | 10 Frustration gives way to anger, and you may lash out and lay unwarranted blame on someone else.
  • 11. Causes of Anger @fredricmitchell | 11 Find a page admin/content → Scroll & Paginate or Build view → Create filters → Setup perms → Set paths → Export to features → Pray or Install admin_views (dependencies)
  • 12. Causes of Anger @fredricmitchell | 12 Place a block admin/structure → Blocks → Find & Scroll → Configure or Install Context / Context UI → Setup perms → Set conditions → Set Reactions or Install beans (dependencies)
  • 13. Causes of Anger @fredricmitchell | 13 Small team working together Features get overridden Core is updated and break things Patches are all over the place Build vs. Buy UI vs. Code
  • 14. http://www.flickr.com/photos/30990153@N02/4379602297/ 4. Depression. Reflection.@fredricmitchell | 14 Encouragement from others is not helpful to you during this stage of grieving.
  • 15. Sad Face :-( @fredricmitchell | 15 Retrieve single field value The bad way $value = $node->field_value['und'][0]['value'] The 'Drupal' way $value = field_get_items('node', $node, 'field_value'); $value = (is_array($value)) ? reset($value) : $value; $value = (isset($value['value'])) ? $value['value'] : false;
  • 16. Sad Face :-( @fredricmitchell | 16 Set a field value The bad way $user->field_value['und'][0]['value'] = $value; The 'Drupal' way Install entity_api module $user = entity_metadata_wrapper('user', $user); $user->field_value->set($value); $user->save();
  • 17. Sad Face :-( @fredricmitchell | 17 Get a menu $tree = menu_tree_page_data('main-menu'); $main_menu = menu_tree_output($tree, 1); print drupal_render($main_menu); Get taxonomy terms $v = taxonomy_vocabulary_machine_name_load($n); $terms = taxonomy_get_tree($v->vid); foreach ($terms as $term) { $options[$term->tid] = $term->name;
  • 18. Sad Face :-( @fredricmitchell | 18 Migration drupal.org/project/migrate The Good – It exists!!! The Bad – Documentation is spotty. The Ugly – 9000 ways of doing it. migrate_d2d migrate_extras Code: https://gist.github.com/fmitchell/6079933
  • 19. http://www.flickr.com/photos/18850767@N02/6853403410/ 5. The Upward Turn @fredricmitchell | 19 As you start to adjust, your life becomes a little calmer and more organized.
  • 20. That is helpful @fredricmitchell | 20 What node/menu/object am I on? menu_get_object() Querying made easy EntityFieldQuery URL arguments made easy drupal_get_query_parameters()
  • 21. That is helpful @fredricmitchell | 21 I want to change this form hook_form_alter() Examples, please! drupal.org/project/examples Quickly do things drush
  • 22. That is helpful @fredricmitchell | 22 I want to create a distribution Make Installation Profiles (derf?) drupal.org/node/108973 drupal.org/documentation/build/distributions
  • 23. http://www.flickr.com/photos/49503058184@N01/172906852/ 6. Reconstruction @fredricmitchell | 23 As you become more functional, your mind starts working again, and you will find yourself seeking realistic solutions.
  • 24. What's next? @fredricmitchell | 24 Load all the things entity_load_multiple() - D8 Configuration VCS, No more system settings forms - D8 Mobile IE8 is dead, jQuery 2.0, Responsive grids - D8
  • 25. What's next? @fredricmitchell | 25 Make it pretty! Twig - D8 Services HTTPFoundation, HTTPCache - D8 Multilingual Everything is entity API - D8
  • 26. http://www.flickr.com/photos/40461532@N05/5049303652/ 7. Acceptance and Hope@fredricmitchell | 26 Acceptance does not necessarily mean instant happiness. Given the pain and turmoil you have experienced, you can never return to the carefree, untroubled YOU that existed.
  • 27. If I Must @fredricmitchell | 27 node entity content type bundle views entityfieldquery preprocess process alter ctools panels blocks beans i18n entity api workflow workbench state machine hooks query_alter tid vid nid uid theme ckeditor rules roles permissions content access logintobaggan features spaces context sites conf
  • 28. ● Drupal 8 needs you! ● Join a group. ● Wear your scars proudly. The Future @fredricmitchell | 28
  • 29. 2013 Twin Cities Drupalcamp Fredric Mitchell @fredricmitchell Thank you!!