Online Mind Mapping and Brainstorming

Create your own awesome maps

Online Mind Mapping and Brainstorming

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account? Log In

Drupalcon DC 2009 (as seen by Canary Promotion + Design) by Mind Map: Drupalcon DC 2009
(as seen by Canary Promotion + Design)
0.0 stars - 0 reviews range from 0 to 5

Drupalcon DC 2009 (as seen by Canary Promotion + Design)



modules to check out needs a new moderator

Wed, March 4th

theming drupal w/ Emma Jane Hogbin


book: front end drupal

browser shots, $70 - 1 month

devel module, create a library of design ideas

Blog your toolkit

drupal plugin for netbeans

rocking your dev environment

read your editor's source code!, freak!

browsers, firebug, firefox -ProfileManager -no-remote, testing firefox profile, tamper data, intercept redirects and see what's being sent, iMacros, record macros in broser, drupal for firebug

drupal modules, admin menu, devel, simpletest, automated testing, easy to code, login toboggan, login form on all access denied pages, xdebug, integrate w/ ide for developer heaven

notes in her blog,,,

source code management, organize source code, put development modules in a separate directory, check in clean code for 3rd party modules, to track difs on modded code, test upgrades against a production copy, write update functions that automates what you do in the D interface, updates then become version controled, manage your branches and merge changes, not clear on what this is

automation and regression testing, use build tools, makefile targets, sql, backup, restore, clearcache, tags, doc, test, drush, command line drupal!, alias for other projects, create different aliases

Q and A, vimperator, vim in firefox, virtual document root, svn check outs creates creates virt sites,,, drubuntu, multisite apache, modules, coder, trace module, shows hooks called with micro second timing, switch user, don't let devel tools hit your live server, install profles, let's try to build a canary one, checkout contrib and grep against it, aegir

asynchronous data

joshk chapter3 AHAH / AJAX browser becomes platform the drupal flow Booting up: initial state tips build object level data into the dom drupal.settings for global info keep html compliant degrade gracefully drupal behaviours hook to DOM elements w/ jquery better then $(document).ready() override friendly re-attachable contextual why behaviours CODE: Drupal.behaviors.asyncTeaser = function(context){... AJAX Menu Callbacks hook_menu as usual finish with print() instead of return structured data use drupal_json() (or theme_ahah) be aware of other outputs(eg devel) scale

techniques, earlier drupal bootstraps, static files

New node

Organic Groups w/ Moshe Wietzman

use cases,, yahoo groups, intranet, departments get a group, employees get a blog, product companies, each product gets a group, fans discuss how to use and improve it, geographic groups around a product,,

integrates with notifications module, allows users to be very granular about notifications

node form, can have private or public group posts, use for publishing, move from a private group to public, og access module, each group is an audience, allows cross-posting, can be disabled if you dont need it

integrates with other modules, panels, token, rules, cck, views, search, node access, actions

addon modules, og vocabulary, og panels, og nodequeue, menu trails, mandatory group, feed api, og contacts, og resetter, og blueprints, og facets, subdomain, url for each group, views bulk operations, apachesolr, spaces

general, can be used with any content type, all data is exposed to views, possible to invite other users to groups

Advanced Theming Techniques

trevor twining & bevan rudge,, civicactions,

theme anatomy, .info, add stylesheets, add regions, provide default settings, include js, template override, for people more comfortabele w/ markup than code, template file, find original template & copy to your theme, use a variant name, preprocess functions are better, separate logic from appearance, less code, less problems, better error handling, theme functions, find orginal function, copy to your theme, rename for your theme, lots of duplicate code, no preprocess for theme hooks, directly call original theme function in you theme override, you can send modified variables to the orig theme function, function override, good for wjere you need more specialized logic, better performance, up to 5x better then tpl.php, theme at module level, needed for theming new functionality

subtheming, can base it on zen, create a 'canary' starter theme that get's us to a starting point, then create a client theme based on the canary theme that only has code specific to that site, user zen for subtheming, use zen's body classes, we add more custom classes

theme forms, remember to cleare the theme registry cache, all forms start by going thru the default form theme functions, change at the theme registry level, modify indiv form elements, great walkthru on trellon, declare a new theme-specific rendering function, can also use a custom tpl,, work around entire form

possible BOF session

PBS + Drupal = Great

clean content w/ webpurify

custom rss feeds from filtered views results

embedable flash widgets

social media gallery, pretty flash(?) layout

live chats, module - liveupdate

backend admin, simplemenu, views, panels

Learning jQuery UI

$(find things).DoStuff();

jQuery-based Interaction, Widgets, Effects, and Theming Library

Interactions, draggable(), droppable(), resizable(), tabs(), sortable(), drag n drop to different tabs and sort, and many more, selectable()

'"all options are optional"

widgets, accordian, date picker, translations, multiple months at once, date range is coming, dialog, modal option, client-side validation, progress bar

Thu, Mar 5th

Scaling Drupal. Not if, How

got here late so I'll need to catch the video later :)

CDN, Simple CDN

config Apache to gZip files

move .htaccess rules to static conf files

Is Drupal Moral?

David Weinberger

the web advances truth, connections, and generosity over books and previous paradigms, "a blog without links ... is a horrible deformed creature"

don't trust moral intuitionism, "Some people's guts are fascist nazi prick guts"

Semantic web

lot's of buzz about this one, must check the video later

A Paradigm for Reusable Drupal Features

Dev Seed

How to Build websites faster

blog is a feature, as is:, press room, create content type, create various fields, imagecache settings, related blocks and views, tax vocabulary, tag cloud, etc, problems, slow process, not reusable, dsconnected pieces, context module, defines groups of 'things' as a context, node types, cck fields, menus, blocks, combine those things into a 'feature', and it becomes code, anatomy of a feature, [table outlineing the structure], items are either scripted or exportable, walk thru for a blog feature, create the node type w/ cck, create the view, spaces are integrated into views, add to a context, create a namespace and attribute, automatically builds a menu, BUILD WITH CODE, you can write functions to script this manually, module should be able to write code in future, enables the ability to just install new features in new sites, why build as code, reusible, distributable, version control, scripting, pain to debug, pain to maintain, not easily extensible, Exportables, already in views via chaos tools, abtract data storeage so modules can be indifferent towhere item is: code, db,, provides definititions, not scripts, easy to maintain, overridable and extensible, who has, views, panels, context_ui, imagecache, recipe for exportables, string identifiers, api finctions for collecting all items, node_get_types(), imagecache_presets(), structured array of object to represent your item, featuremaer.module?, need mass adoption of exportibles, image gallery, publication library

Usability testing at the University of Baltimore

Addison Berry Becca Scollen Brad Bowman (beeradb) Bojhan Somers (Bojhan) Matt Tucker (ultimateboy) Nathaniel Catchpole (catch)

baltimore, less formal, beginning and intermediate, some remote sessions, eye tracking, one way mirror, mostly intermediate users, some beginners

patches for testing, vertical tabks, text format drop downs, remove post settings from admin, password checker

findings, some things are working :), installation, rename input formats to 'text formats', confirmed issues from other sessions, How do I create content, video of a user who could NOT find 'create content'

Issues, people are confused once they install, node orphaanage, nodes are orphaned by default, menus and taxonomy are optional and misunderstood, even if tey find it on admin it 'isn't part of the site', confused that search actually appears in theme when you enable it, wanted to enable a block, menus, navigation menu is confusing, unclear relationship wit menus and blocks, parent item selection is confusing, text formats, is a mess, multiple configure links!, taxonomy, too absstract, complicated word

solutions, bouncing druplicon

BOF Tools for launching and dev,


Drush - command line Drupal productivity

discussing Drush 2.x development

drush commands, drush status, dl, download core and modules, goes and gets the latest stable version, can dl by wget or check out with cvs, cron, status, search, cache clear, install, enable, handle's dependencies, disable, smartly disable dependencies as well, status modules, refresh, what modules need upgrading, update, update modules, can set it up to automatically commit new updates to svn, info, sync, for moving to a new server, does it skip svn directories?, they think so :), eval, arbetrary php code, be careful!, sql, url, version server, version client, dump, can exclude specific tables, query, load, cli, opens up a mysql shell, script, run php scripts, help, each command has it's own help

install w/ a symlink to get global access to drush

drush tries to figure out the correct root path and uri from it's location

running drush from a site directory enables lots of relavent commands

can set up a drushrc.php file to setup drush settings

an module can implement drush commands, devel, coder, aegir


Drupal Core multilanguage, drupal knows about languages, downloadable, installer, interface, email, user translated, path aliases, nodes, flag your content, content translation, problems, same concept, multiple user interfaces, complex language negotiation setup


Fri, Mar 6th

Why I Hate Drupal

The Business of Open Source

Liza Kindred

openness and collaboration are good principles for biz

free redistribution, of ideas, ideas are not unique, or of any value w/o execution, everybody should share ideas

source code, core values over mission statements

derived works, ideas need to grow, and change over time, and die

integrity of the author's source code, credit, focus on giving credit over taking

no discrimination against people or groups, lull is diverse in location, and personalty, all types need a voice in the org, and experience

no discrimination against fields of endevor, open source marketing, profit, yes, let's

distribution of liscence, good ideas should be applied to the whole org

liscense must not restrict other software

liscense must

open books, look up

b corps, ave multiple bottom lines, money and ecology, for example, social venture network, green business awards, money / life balance

books, small gients, peak, chip conley, marketing that matters, open business models, open business models, giving, giving, bill clinton

must build in time for emplyees to contribute back to OS project

must build time in for employees to contribute back to os project, builds expertese, and reputation, and reputation

cost-savings of contributing back, standing on the shoulders of giants, community makes your module better

Project management

Project Management For Fun and Profit

agile, def, pro, user-centric social networking sites, web apps, considerations, need to be able to say 'no', need resources to client resources and materials - time, attention, materials, need very progressive clients

waterfall, def, pros, brochure ware, interactivity

estimations,, don't estimate 'to' a budget

scheduling, people take different amounts of time to do same work, look at whole picture, team and individual schedules, client availability, holidays

design, most clients (and people) don't care about code., is it pretty

toolbox, gantt, merlin, ms project, wireframes, omnigraffe, visio, task tracking, basecamp, unfuddle, storm, harvest, liquid planner, bug tracing, mantis, trac, JIRA, case tracker module, code review, crucible, skype / IM, the phone!

clients, great projects do NOT happen in spite of bad clients, find, seek, cultivate great clients, get their business and needs, and convince good clients of that, know who to say 'no' to, good clients know they are investing, only build a site that has a good reason to exist, is there enough in the budget, reasonable timeline, is there a good reason for the deadline?, key metrics of success, when are we done, who decides?, client management, keep you eye on the ball, always be aware of the status, have a central contact, that person needs to be authoritive, you are now the general of the web aspect of their brand. act like it, make the client look like a rockstar in their org, and they will LOVE you and come back, be on time, something will go wrong. plan for it, manage expectations wit an iron grip, now to say no, voice concerns early, protect your team, offer alternative options, be helful, bless and release, it's ok to end bad relationships

warning signs, i don't care, just get it done, i don't need project management, i need it this week, I could get a freelancer for cheap, my neighbor says...

drupal specifics, know your modules,, even non devs, balance site config tasks between devs and non-devs, work closely with IA/UE designers to be clear on what's possible / easy / hard / impossible, know how to suggest ways to add value, knowing modules that will benefit their project, give back to the community

Making Dates and Calendars Rock!


date, walk thru of the features

views 2 calendar, cal page is navigation, + lots of attachments, year, month, day, week, feed, ical, date argument, defaults to current date

date and time, can set up as many formats as you want

modules, dev calendar, dev date, dev cck, date tools


design style guide


changing d7

learn cvs

seperate order for fields in creation vs. display, add to cck issue que

community initiatives, section on d.o

challenge, make and contribute a theme?, core theme for 7, adding weights to js and css

New node