Notes by:
Nick Young
http://oitdesign.ncsu.edu
@usaussie or @oitdesign
North Carolina State University
DrupalCon 2011: Chicago: Day 3 Notes
********************************************************
Session 1: Advanced Features Usage
********************************************************
Session URL: http://chicago2011.drupal.org/sessions/advanced-features-usage
Treehouse Agency
- Most everything in this presentation relates to Drupal 6
- some things apply to Drupal 7, but not tested yet
- features integrates with your workflow
- Common issues
- more in code, less in configuration
- keep features small and purposeful
- helps to resolve version control issues
- less chance of two people working/updating the same piece of code at the same time
- keep features at a default state
- ie: everything in the database matches what you have in code
- anything the client is going to edit in the user interface
- the feature will get reverted, no matter how hard you try
- anything that has serial IDs
- Breaking functionality
- 3rd party custom modules --- which goes back to the “don’t put anything in features that the client can edit in the UI”
- taxonomy is considered content
- Be careful when exporting roles and permissions
- permissions are defined by the modules that use them, so be sure that the roles are consistent if you’re including roles+their permissions in a feature
- too much other stuff over my head to take good notes :-)
********************************************************
Session 2: Faster Front End Performance
********************************************************
Session URL: http://chicago2011.drupal.org/sessions/faster-front-end-performance
- ways to minimize/save filesize
- JSMin
- uglifyJS
- YUI Compressor
- Google Closure Compiler
- Max connections per domain
- 6 connections per domain are made (max...default)
- use to specify the speed (slow it down) of your connection to see what it’s like for people on slower connections
- number of images on a page
- size of those images
- limited color palette
- non-lossless compression
- animations
- transparency
- “opposite of a gif”
- whole spectrum of color options
- lossy compresson
- no transparency
- no animation
- limited color palette
- non-lossless compression
- no animation
- no transparency
- unlimited color palette
- lossy compression
- no animation
- transparency
- unlimited color palette
- no animation
- charts and images like this
- JPEG should be used (or PNG-24)
- get much smaller sizes
- JPEG artifacts
- PNG Transparency
- use image presets to only display the necessary version of each image
- small/medium/thumbnail etc, rather than displaying the large version and just resizing in the browser
- presented took the whitehouse.gov site from around 250Kb down to 88kb by converting the 22 images to 4.
- any images served from “blah” directory, put it in the browser cache
- to get around the users not getting any new changes, when the image is changed on the server, change the filename (add a version number or date on the end of the file name)
- use external style sheets and external scripts whenever possible
- put any extra scripts last, but still before the $closure variable
- put any extra scripts last, but still before the $page_bottom variable
- of course, putting any javascript at the end, may effect the UI if you’re augmenting/affecting front facing items (table sorters, positioning etc).
- be concise, direct if possible
- #nav > .nav-list > li > a { color: #000; }
- browsers read selectors from right to left.
- ie: #nav #primary li a
- it will look for all links first, then those links inside an li, then those li links inside the #primary, then all #primary li links inside a #nav
- NEVER use a universal selector unless absolutely necessary
********************************************************
Session 3: Drupal Carolinas BOF
********************************************************
No real notes here...just talking about how to better serve the Drupal community in the Carolinas.
The ideas were to form an LLC / Non-Profit so that all Drupal Camps would be able to take advantage of that central resource (funding, bank accounts, planning etc).