Drupal Kata
Drupal Learning Tracks
A key deliverable of the Drupal Open Learning Initiative is to provide a framework for a Drupal learning curriculum. Here's the outline so far:
Project Planning and Management
Topics to cover
- Requirement Gathering
- How to write a drupal based functional specification document.
- How to asses times for tasks and to break up the work
- Approaches to running Virtual Teams
- Ongoing monitoring of the work done/project management best practices.
- Waterfall vs Agile
- What else?
Projects/tasks
- Establish process for open collaborative development
- Create guidelines on how to define and scope out projects and tasks
- Finalize Site Spec for Drupal Dojo (drupaldojo.com)
- Finalize site spec for Drupal Kata (drupalkata.com)
Resources
Program Leads
- Kristof Van Tomme
- You!?!
Coding and Development
Overview: Learn the latest techniques in site development. / simpletests, coding practices, scalability, deployment and so on.
Audience: hobbyist, consultant, web developer
Goals
- Create a foundation for development and deployment of Drupal sites
- Rapidly create a site with a Drupal specific workflow
- Build sites without coding
- Use Drupal as a platform
Recommended session and lesson topics
Infrastructure (Nuts and bolts of code, servers, databases, etc.):
- Build environment and version control environment. (taken as a configuration management and not develop task (i.e. after-process hooks rather than how to use SVN)
- Provisioning (not part of development work flow, but rather its pre-requisite)
- Development environment (as environment for all the developers of a project and how that ties in to configuration management)
- Non-functional planning (constraints, etc.)
- Scaling Drupal, performance and scalability (server/database optimization and distribution)
- Virtual servers and virtual services ec2, s3 Drupal and *AMP, a systems level view
Development Workflow (Getting from code to production):
- Development environment (including USE of version control and build env.)
- Quality Assurance (following/implementing process, procedures, standards)
- Testing (unit testing, black and white box testing itself).
- Security
Site Implementation (How requirements can be implemented without coding):
- Internationalization
- Contributed modules: Best of overview
- Editorial work flow
- Drupal distributions
Extending Drupal (Using Drupal as a platform):
- 3rd party apps
- External data
Projects, Tasks and Initiatives
- Development: patching existing code or writing new code
- Testing: testing software or writing tests for an existing code base
Resources
- Code development track on Drupal Groups
- Coding sessions (DrupalCon Paris)
- Code and Development sessions (DrupalCon DC)
- Site Building (DrupalCon DC)
- Code development track (DrupalCon Szeged)
- Site building sessions (DrupalCon Boston)
- Site building track descriptions (DrupalCon Boston)
Program Leads
- Aaron Winborn
- Kristof Van Tomme
- TBD
Information Architecture
Information architecture involves identifying the organizational relationships between the various content and functionality of the site, categorizing content, defining labels (names) and navigation systems, and enough interface design to demonstrate how data will be presented.
Topics covered
- User Roles and Permissions
- Workflows
- Taxonomy Structure
- Primary menu items
- Blocks
- CCK Node Types and fields
- User profile fields
- Views
- Panels
- Third party integration
Design and Usability
Overview: focus on the site builders, themers and those interested in delivering a killer user experience both for Drupal itself and for their own sites.
Goals
- Attract more designers to Drupal
- Improve Drupal’s visual design
Lesson and session ideas
Graphic design: “Drupal for Designers”
These sessions covers topics that relate more towards creating the visual design of a Drupal site.
- Designing for Drupal (Structure of a Drupal site, visualizing your design in Drupal…)
- Introduction to Drupal for designers (including the most important contrib modules)
- Drupal-friendly CSS tricks (form elements, menus, etc)
- Making a Drupal site not look like one – new ways of theming common UI elements
Usability/Interaction design: “User friendly Drupal”
- Usability bling in Drupal 6
- User Experience Testing
- Interaction design with JavaScript in Drupal 6
- Building intuitive forms (layout, multistep, custom widgets, …)
- Brainstorming: An interface for media handling
- Learning jQuery
Resources
- Design and Usability track on Drupal Groups
- User Experience and Design (DrupalCon Paris)
- Design & Usability (DrupalCon DC)
- Showcases, user experience and design track (DrupalCon Szeged)
- Design and user experience track sessions (DrupalCon Boston)
- Design and user experience track descriptions (DrupalCon Boston)
Program Leads
- tbd
Business, Marketing, and Community
Overview:
- Showcases, case studies, industry discussions, discussions about the business of consulting, and the business of open source.
- Local community building and focus on efforts such as the Drupal Dojo, Drupal Kata, Google Summer of Code and GHOP.
Goals and Objectives
- Promote a sustainable business ecosystem in the Drupal community
- Educate businesses about the benefits and costs of using Drupal as a platform for their business
- Market successful use of Drupal through case studies and showcases
Lesson and session ideas
The Drupal ecosystem
- Building sustainable Drupal business that support the community
- Small giants: building high quality Drupal businesses
- All About Open Source: Not Free as in Beer (What Does That Mean?)
- My Drupal: A Panel Discusses Drupal in the Open Marketplace
- The Costs of Free Software: A Panel Discussion
- Drupal marketshare: What can developers do to increase the reach?
Businesses learning to use Drupal
- My Drupal: A Panel Discusses Drupal in the Open Marketplace
- Small Pond, Giant Fish: How to effectively recruit in the Drupal community
- Business Best Practices: Drupal Companies Share Tips and Tricks
- Running Virtual Teams: A Panel Discussion
- Monetizing an open source deployment: How is value created? Where is the value? When? Why an open source deployment is a ‘real option’ for the firm.
- Enterprise deployments: How they differ from small sites? Issues? Working with the client team?
- Structure/Documentation requirements
- Fast, Cheap, Great: You Pick Two (Differentiating)
Hosting meetups, camps, and virtual classes
- You can host your own user group. It's easy!
- How to contribute to camps.
- Interfacing with complimentary industry groups and open source communities.
- Working with local non-profits and educational orgs
- Starting local Drupal Dojo sessions and workshops
- Leverage the Drupal Kata program
- develop and fund projects important to your community
- learn from participating on real projects
- match designers, themers, developers, project managers, media, promotion, and marketing types
How to help build the community online
- Existing infrastructure: IRC, E-mail, Forums, Groups, Documentation
- How to get remote presenters
- Drupal Dojo - There is a lot of work being done on to revive this great service, and we'll be reporting on how to get involved.
- The Drupal Kata is a new project learning program that provides hands on training in a wide range of areas ranging from site planning, drafting proposals, project management, information architecture, development, design, infrastructure, to business and community.
- How to manage a volunteer project that benefits Drupal
Projects, Tasks and Initiatives
- Drupal Open Learning Initiative - creating a sustainable project learning and training program/platform for Drupal.
- Drupal.org redesign - ongoing status report; meet the people involved; how to get involved
- Documentation - what's going on w/ documentation and how can we help
- Define how individuals and companies can support the long term sustainably of Drupal learning and training.
- Options and incentives for supporting development (sprints/workshops, volunteering, sponsoring, mentoring)
- Interface with the Drupal learning/mentoring groups such as the Drupal Dojo, Drupal Kata, Google Summer of Code and GHOP
- Create Drupal case studies and elevator pitches
- Develop Educational video resources
- Create engaging sessions and events
Resources
Related tracks and sessions
- Business Development and Strategy (DrupalCon Paris)
- Business sessions (DrupalCon DC)
- Community sessions (DrupalCon DC)
- Growing Drupal sessions (DrupalCon Szeged)
- Business and marketing sessions (DrupalCon Boston)
Drupal Groups
- Community group
- Drupal Event Organizing
- Local User Group Organizers group
- Drupal Dojo group
- Drupal Kata group
Other
- Success stories: Real-life examples of how drupal can help to solve your business problems.
- Organizing events
- Drupal Organizer Kit for Conferences, Camps, Meetups and Unconferences
- Notes from DrupalCon Boston Event Organizer BOF
- Drupal Meetup Organizing Guide
- Drupal Camp Organizing Guide
- Notes from DrupalCon Barcelona Organizer Session
- Drupal User Group Best Practices
- DrupalCon Organizers Guidelines
- How to get remote presenters
- Building a Conference Website and Giving It All Away: How It Was Done at DrupalCampLA 2009
- Drupal Camp San Francisco: A Case study
- DrupalCon vs DrupalCamp vs DrupalSummit(?) - Issues for international drupal events
- Show cases
Program Leads
- Gus Austin
- Doug Vann
- You?!?
Infrastructure
Infrastructure (Nuts and bolts of code, servers, databases, etc.)
- Build environment and version control environment.
- Scaling Drupal, performance and scalability (server/database optimization and distribution)
- Virtual servers and virtual services ec2, s3
Development Workflow (Getting from code to production)
- Development environment (including USE of version control and build env.)
- Quality Assurance (following/implementing process, procedures, standards)
- Testing (unit testing, black and white box testing itself).