5. Choosing Modules
Stand on the Shoulders of Giants
- Assess the project page
- Read the README file (believe me)
- Check the issue log
- When in doubt, ask around
Saturday, January 26, 2013
7. Where does Contributed code live?
Put all contrib modules in
../sites/all/modules/
OR
../sites/all/modules/contrib
Put all custom modules in
../sites/all/modules/custom
Put all themes in
../sites/all/themes
Saturday, January 26, 2013
8. What do you need in your toolbox?
HTML / CSS / Javascript / PHP
A good code editor
Firebug or Chrome Inspector
Drush
Drupal Community
Willingness to break things
Saturday, January 26, 2013
9. Development Environment
Work locally!! No more FTPing
Use version control to push changes.
Drush is your friend
You won’t regret learning command line tools
Be equipped to browser test
Saturday, January 26, 2013
10. Development Workflow
Development Environment- Dev > Test > Live
Where do your clients QA?
Use Version control to push to production
- great for rolling back changes
- great for multi-developer environments
Code vs Content, do smart migrations
Set up a workflow to push to production
Saturday, January 26, 2013
13. A complex system that works is
invariably found to have
evolved from a simple system
that worked...
Gall's Law
Saturday, January 26, 2013
14. Build features zoomed
in, then pull back and
see how it all fits
together.
Saturday, January 26, 2013
15. Write a development plan
Forces you to think through your architecture
and implications of decisions
Makes it a lot easier to build quickly- ex: grab
all your modules at once, understand content
and layout dependencies
Build, then theme
90% of the way there is often enough
- Don’t be afraid to talk to your clients and get
to the heart of business needs
Saturday, January 26, 2013
16. Structure Content
Break up your content into the pieces you want
control over.
Important in mobile theming- content first
Consider your admins and your visitors.
Good content is user-centered
Adopt the cognitive frameworks of your users
-ERIN KISSANE
Saturday, January 26, 2013
17. Feature Development
Its essentially three steps, rinse and repeat.
1) Build a content type
2) Build a view
3) Build a layout
(Theme)
Saturday, January 26, 2013
19. Common Client-side
Performance Pitfalls
Look for the obvious first:
-Are you caching?
-Are you aggregating your CSS?
-Are the images huge?
These are stupidly easy wins :)
Saturday, January 26, 2013
20. Theming!
Where everything can be overridden.
Oh the power and the danger...
Saturday, January 26, 2013
21. There is no "best"
theme.
-@rupl
Saturday, January 26, 2013
22. Where to start
Develop a theming strategy and find
a theme to match
- ‘Starter’ themes
- Base Themes
- Responsive Theming
- Click-to-Config
Saturday, January 26, 2013
23. Control your layout through
configuration
Panels, Panelizer, Panopoly
Context
Omega
Display Suite
Saturday, January 26, 2013
24. Advancing Theming
Its all about Overriding
Configuration -> CSS -> PHP
Keep it clean and organized
Keep a custom module for small stuff
Saturday, January 26, 2013
25. You can give back to the
community.
Saturday, January 26, 2013
26. Coding Standards
-Don’t Hack Core! It may seems like a good idea now, but its
not.
- Comment heavily! You’ll thank yourself later.
- Before you do something, consider if you can make it
easier to understand. Writing code for yourself is a bad
idea.
- Use descriptive classes
- http://drupal.org/coding-standards
- http://drupal.org/project/coder will check for you
- http://drupal.org/project/examples
Saturday, January 26, 2013
27. GIT Standards
- Commit often, and do single-issue commits
- Write good commit messages, use real english and
reference outside information (ticket number, Drupal.org
issues)
- Remove things you don’t need with a proper commit, don’t
just comment them out
Saturday, January 26, 2013
28. Pay it forward
- Participate in the issue queue and documentation.
- If you use a patch (regardless of whether it works or fails),
comment on the issue.
- If you write a patch, post it.
- Write documentation and blog
Saturday, January 26, 2013
29. Learn More
Books
Camps and Cons
Training
IRC
Documentation
Spirit of willingness, giving
Blogs back and helping each other
Videos
Meetups
Saturday, January 26, 2013
30. Thank You!
@meghsweet
@chapter_three
Saturday, January 26, 2013