Drupal Dojo website

Tagged:

This project will build a Web site that will serve as a learning community. Ultimately, the final product could also be used by another organization to create and run a similar program. Utilizing Web‐based social networking tools such as blogs, forums, and wikis, and a centralized repository for learning materials (video, audio, slideshows, documents) program administrators, facilitators, and participants will be able to attract, accept, and direct contributor time and resources and a easy to use platform for real-time online mentoring and also be able to disseminate information and collaborate with each other in a centralized virtual space both in and out of regular sessions. By generalizing these tools as much as possible and making them freely available to the public through the creation of tools and installation profiles, a wide variety of organizations and communities will be able to download them and customize them to match the individual needs of their particular program.

The entire project is being developed in the open with each phase an opportunity to learn by participating and/or observation.

Referenced by Last post Author
Reconciling the site spec and development site 9:52am Mar 17, 2010 gusaus

Drupal Dojo website - Open issues and priorites

The following are open issues and priorities that need to be resolved before the new Drupal Dojo site is live:

Background

In May 2007 Dries wrote a blog post identifying the levels and thresholds associated with ascending the Drupal learning curve (http://buytaert.net/drupal-learning-curve). He identified specific levels (thresholds) that individuals involved with using and/or developing for Drupal ranging from new users (I “suck” threshold) to active contributors to the Drupal community (“I kick ass” threshold). In response to the know-do gap between those who simply struggled in the Drupal community and those who actually advanced the spirit, mission and vision of the project the Drupal Dojo was born. The model was based on the Japanese concept of the dojo, which means: “the place of the way” and is defined as a training facility (http://en.wiktionary.org/wiki/dojo), usually led by one or more sensei; the Japanese term for “teacher” (http://en.wiktionary.org/wiki/sensei). The primary purpose of the Dojo was to provide a structured and safe learning environment for individuals looking to ascend the Drupal learning curve and connect like minded individuals (students) to other individuals who have experience and expertise (teachers).

From the outset of the initiative the Dojo was a tremendous success. For those that were familiar with the features, functionality, intricacies and nuances of the application it is an extremely flexible framework capable of being shaped into anything a developer needed it to be, however that same flexibility also breeds complexity and confusion with each new feature release. The associated learning curve has increased exponentially for new users, but fortunately they had a great resource in the Dojo, and could turn to the members/teachers to overcome the challenges with becoming proficient with the platform. As a result, demand and supply were united and under the leadership of individuals like Josh Koenig (joshk) , Addison Berry (add1sun), Dmitri Gaskin (dmitrig01), Joon Park (dvessel), Joel Farris (senpai), and Victor Kane (victorkane) the community thrived. However, with all volunteer led and driven projects, the success of the community are generally tied to a passionate core of volunteers, who much like everyone else don't always have time to carry-on with the vigor as they started with. In addition, the Dojo proved itself to be an excellent training and recruiting ground, and many of the initial key contributors went on to new opportunities or assumed more responsible roles (as a result of their involvement) that significantly impacted their ability to carry-out the mission and vision of the Dojo (http://groups.drupal.org/node/6622). The immediate result was the fact that the Dojo was a victim of its own success and has labored to maintain a relatively meager existence since late-2007. And despite numerous attempts to resurrect and formally re-define the Dojo over the past two years (http://groups.drupal.org/node/6622, http://groups.drupal.org/node/8919, http://groups.drupal.org/node/8414) the Dojo has failed to find firm footing with which to grow from largely due to a lack of a formally defined leadership structure and a achievable plan to both formalize the mission and vision and a leadership structure to help realize the goal. Most recently, in October 2008 Josh Koenig attempted to once again rally the Dojo for a comeback (http://groups.drupal.org/node/15832 ), but it struggled to gain the critical mass to move forward in a timely manner; at least until recently. Upon a close analysis of the history and legacy of the Dojo, the missing ingredient appeared to be someone who could assume the roles and responsibilities left open as the prior cadre of leaders took on new roles or moved on from the Drupal community.

However, notwithstanding the false starts and numerous challenges facing the community, the demand for a resource similar to the Dojo has not subsided. In fact to date the group has over 1900 members, with new members joining almost daily. Fortunately, a number of individuals continued to keep the idea of the Dojo alive. Thanks in large part to the individual effort of gusaus and a number of other dedicated volunteers, a new plan slowly began to take shape. Key among the principles, finding the right people to fulfill the right roles to provide passionate stewardship to the Dojo and help guide it back to it's respected place in the Drupal community. Over the past 12-months the Dojo has continued to produce a number of lessons (e.g. http://groups.drupal.org/node/16640 ), made an investment (http://groups.drupal.org/node/16983 ), funded totally by donations (http://groups.drupal.org/node/17806 ), to replace the previous screencasting/web conferencing system with DimDim a fully featured web conferencing system (http://groups.drupal.org/node/16320 ), and recently introduced a new Media Ninja class (http://groups.drupal.org/node/18213). To that end, the Dojo 2.0 team appears to have been reborn, similar to a phoenix rising from its own ashes.

The new Dojo team has lofty, but achievable, ambitions, starting with a significant redesign of the Dojo website (http://www.drupaldojo.com), and using the momentum and experience gained in that project to fuel and produce new learning activities for members of the Dojo. There are many more great things to come, but the journey of a thousand miles starts with a single step.

Objectives

Using widely supported and freely available software, the primary objective of this project is to re-create the Dojo as an effective learning, mentoring, and collaboration platform. As a secondary, but no less important objective, the project will also produce a set or tools (and configuration patterns) that will further enable online learning and promote collaboration, documentation and courseware, especially with a focus on realtime participation for the Drupal community. Secondary objectives include the creation of a 'open learning and collaboration portal' install profile will be available on http://drupal.org, learning materials captured during the development that will be in the Drupal handbooks, http://drupaldojo.com, and distributed around the web, and enforcing the concept of giving back by making any new modules, themes, site recipes, and documentation that are developed through, or as a result of the project, available on http://drupal.org.

Use Cases

A list of potential uses for this type of site/profile:

Drupal

  • Drupal Dojo will have a more effective platform to provide free online training, mentoring, and a showcase for Drupal.
  • Local user groups could create a platform to provide free online training, mentoring, and a showcase for Drupal on a local level.
  • Drupal camp or conference site
  • Showcase for the niche communities like Drupal Design, Drupal Media, or Drupal Education.

Other

  • An online community where artists, activists from around the world could share, discuss, create and collaborate.
  • An educational or arts organization could create an open learning portal for tutorials, how-tos, podcasts, and other materials that will educate and empower consumers, content providers, and producers; Aggregate news and learning materials from other sources.
  • Media platform for TV and Radio Stations, but also have utility for Community Technology Centers, Schools, and Libraries.

Main Features

The features have been previously defined in a number of locations (Original Dojo 2.0 site spec http://drupal.org/node/201891. Site spec on groups.drupal.org - http://groups.drupal.org/node/15953) and the feature list was further refined by reviewing the SxSW project definition (http://www.drupalshowdown.com/ )

  • General information pages about the program.
  • Session calendar - A calendar that lists upcoming events and sessions.
  • Event management & ticket sales across venues.
  • Pages
 that 
contain
 supplemental 
downloadable 
materials
 for 
each
 session, 
including 
Word
 and
 PDF
 files, 
MP3
 recordings,
 links
 to
 other
 Web
 sites,
 You Tube
 videos
 and
 other
 social 
media 
content.

  • A 
“community
 classifieds”
 section
 where 
program
 participants
 can
 post
 services
 offered,
 services
 needed,
 help
 needed
 and
 other 
opportunities
 or
 community
 resources.

  • A discussion forum where users can continue talking about issues between sessions.
  • Individual 
blogs
 for 
each
 program
 participant 
and 
staff 
member.

  • The ability to rate pages and posts using either a “+1” or “five star” rating system
  • Web‐based contact forms for outside (anonymous) users to contact administrators for information about the Dojo, or to offer sponsorships, etc.
  • Sponsor and support section - sponsor pages and banner listing/advertising individuals, organizations or companies who have sponsored some part of the Dojo.
  • Virtual meeting and collaboration space - A sub-domain to support live lessons and collaborative workshops.
  • Rich media sharing and distribution - provide users several ways to share and distribute content
  • Code Snippet / Pastebin - A pastebin to paste code during lessons.
  • Google Analytics package for tracking site traffic.
  • i18n: Multi-language Support - Provide the Dojo site in multiple languages.
  • [Integrated IRC client].
  • News feeds for Dojo & Kata events
  • Call for Dojo sessions/lessons
  • Suggestions for Lessons
  • Curriculum Management / Learning Management features ** Including prerequisites / learn more recommendations ** Drupal Learning Taxonomy - Management (including roles)
  • Rating / recommendation solutions

Design

Design
 should
 focus 
on
 maintaining 
a 
clear 
and 
consistent
 visual 
identity
 and
 utilizing 
usability 
and
 accessibility 
best
 practices.

 HTML
 and 
CSS 
used
 on
 the
 site
 should
 adhere
 to
 W3C
 standards, 
work 
seamlessly
 in
 all
 “A
 grade” 
browsers
 as
 defined
 by 
Yahoo,
 and
 use 
a
 progressive
 enhancement
 approach
 to
 development, 
ensuring
 that
 as 
many
 people
 are
 able
 to
 use
 the
 site 
as 
possible.

Functionality

  • Multiple user accounts, with differing levels of administrative privileges:
    • Administrative user (s) should have full access to all of the site’s features and functionality
    • Staff users should have access to add and update calendar events and site‐wide announcements, create/edit general content and directory listings, be able to moderate/delete user‐submitted content including comments and forum discussions, and may add and manage user accounts. Staff users should be able to post materials from sessions for access by all users, including Word and PDF files, MP3 recordings, YouTube and other related learning/media/ social media content.
    • Authenticated users should be able to comment on content (lessons, etc.), engage in forum discussions, rate posts, conduct polls, and edit wiki‐style group project planning pages. They should also be able to easily post files in common document and image formats (Word, PDF, JPEG, etc.) as well as content from YouTube and other popular social media sites as part of their submissions and/or comments. Users should be able to subscribe to customized site updates via e‐mail as well as RSS and share content outside of the Dojo site.
    • Anonymous users should be able to only view general content about the program, and be able to contact administrators for additional information about the Dojo via a Web‐based contact form.
  • Forms
 that 
send
 e‐mail
 (e.g., 
the 
Contact 
form) - Forms 
should 
e‐mail
 the
 admin‐configurable
 designated
 address(es)
 all
 content 
submitted 
by
 the
 user.

  • Integration 
with
 third‐party 
e‐mail 
listserv
 software, 
e.g.,
 Constant
 Contact, 
Emma, 
EZ‐MLM‐IDX.

  • WYSIWIG formatter - Allows bolding, italics, links, ordered and unordered lists, and other commonly used formatting features for General page, Blog, Events, News, Wiki‐style pages, and Forum main content areas .
  • Embedded content - Main content text areas should be able to have content item‐specific, optional embedded local or remote image(s), photo gallery, remotely‐hosted (e.g. Google video or YouTube) videos, local audio/podcasts, local file attachments (.pdf, .txt, .doc, .docx, .rtf, .xls, .xlsx, .csv, .ppt, .pptx, .key) displayed in or adjacent to the main content area.
  • Versioning and/or revisions should be enabled for as many types of content as possible.
  • General 
page
 - General 
pages 
have 
a 
title 
(required) 
and 
main
 content 
area 
(required).


  • Events
 - Site
 should 
be 
able
 to
 handle
 multi‐day
 events
 that 
have
 a
 date
 range
 (start 
and
 end
 date
–
required),
 title 
(required),
 time
 and
 location 
text
 field, 
short 
description,
 and
 main
 content
 text
 area. 
Events
 should 
be 
able
 to
 be
 flagged
 “public” 
by 
“Staff”‐level
 accounts
 only.

  • News
 - News
 items 
have
 a
 title 
(required), 
date
 (required),
 short
 description
 and
 main
 content 
text 
area 
(required). 
News 
should 
be
 able
 to
 be
 flagged
 “public”
 by
 “Staff”‐level
 accounts
 only.

  • Blog - Blog
 posts 
have 
a 
title
 (required),
 author
 (required)
 date 
(required),
 short 
description 
and 
main
 content
 text 
area 
(required).



  • Classified
 listings
 - Classified
 listings 
have 
a 
title
 (required),
 expiration
 date 
(required), 
main
 content 
area.

  • Poll - Users should be able to create multiple choice poll questions that other users can vote on. Creators should be able to set an expiration date for polls they create and view how many votes have been registered for each question. Polls can be attached to message board posts, blog posts, and project pages.
  • Forum - Forums should offer standard Internet message board functionality: Users can post new discussion topics, reply to, and quote other user’s posts. In addition to post subject and content, posts should include username and time stamp. Administrative users should be able to moderate user posts (edit, delete, lock discussions, ban users) and make topics “stick” to the top of the board.
  • Ratings - Users should be able to rate learning objects, lessons, general ok - pages, wiki pages and blog posts as specified by administrative users with either a five‐star or “+1” rating system. The system should record the number of users who have rated the specified content.
  • Banner ads - Administrative
 users
 should
 be
 able
 to
 upload
 banner
 advertisements
 that 
appear
 in
 specified 
locations
 on
 specified 
pages
 on
 the
 site.

 Administrative
 users
 can
 track
 the
 number
 of
 impressions 
and
 clickthroughs 
for 
an 
ad,
 and 
set 
campaigns 
to 
appear
 either
 for
 a
 specified
 number
 of
 impressions 
or
 period 
of 
time.


Technical Requirements

  • Web Server: Apache 1.3 or Apache 2.x hosted on UNIX/Linux with mod_rewrite extension to allow for clean URLs.
  • PHP: PHP 5.2 or higher (to stay forward compatible with the upcoming D7 release) with 16 MB of memory, the PHP XML extension (for blogapi, drupal, and ping modules) and an image library for PHP (GD or ImageMagick).
  • Database Server: MySQL 4.1 or higher. Preferably MySQL 5.0 to stay forward compatible with the upcoming D7 release.

Information Architecture

  • User Roles and Permissions
  • Workflows
  • Taxonomy Structure
  • Primary menu items
  • Blocks
  • CCK Node Types and fields
  • User profile fields
  • Views
  • Panels
  • Third party integration

Session

Fields

Resources

Track

Tracks are the newest exciting feature for the Dojo: a collection of lessons under a common theme. Anyone is welcome to create a track, and mix and match related lessons. They don't even have to be your lessons. Then other users on the Dojo can work their way through your track, marking lessons completed as they do so.

Sponsor

Fields

  • Logo
  • Description
  • Link to Website

Resource

A resource is a Drupal learning asset (video, audio, slideshows, documentation) submitted from an external source.

Fields

Resources

User

This is a compilation of previous ideas and discussions.

Account information
This should be the only required info upon sign-up

  • username
  • E-mail address
  • password

Profile

  • Real Name
  • Drupal user name
  • IRC user name
  • Title
  • Company or organization
  • Interests/skills
  • Location
    • City
    • State
    • Zip or postal code
  • Website url: Your professional web page, blog, etc.
  • Short biography: A short history or background about yourself (25 words max).
  • Contact information: Public contact information (email, IM, phone, etc.)

Helping out (I think this could all be taxonomy)

  • Topics you would like to present - autocomplete
  • Where are you willing to travel - countries; regions; continents
  • Languages you present in
  • Role interested in (checkboxes)
    • Presenter
    • Video crew
    • Remote presentation setup
    • WIFI magician
    • Fundraiser
    • Mentor
    • Organizer

What remuneration do you need? (checkboxes)

  • Travel costs
  • A place to sleep
  • A hotel room
  • Speaker fee

Type of presentations you would like to give (checkboxes)

  • Drupal Dojo (screencast for webinar)
  • Drupal Kata (project training session)
  • Remote (screencast for event)
  • Drupal User Group (10-50)
  • Drupalcamp (30-200)
  • Drupalcon (50-400)

Content

  • My content (text, audio, video, photos)
  • My projects
  • Friends
  • Favorite posts (lessons or posts of any kind)

Resources

User Roles and Permissions

Multiple user accounts, with differing levels of administrative privileges:

  • Administrative user (s) should have full access to all of the site’s features and functionality
  • Staff users should have access to add and update calendar events and site‐wide announcements, create/edit general content and directory listings, be able to moderate/delete user‐submitted content including comments and forum discussions, and may add and manage user accounts. Staff users should be able to post materials from sessions for access by all users, including Word and PDF files, MP3 recordings, YouTube and other related learning/media/ social media content.
  • Authenticated users should be able to comment on content (lessons, etc.), engage in forum discussions, rate posts, conduct polls, and edit wiki‐style group project planning pages. They should also be able to easily post files in common document and image formats (Word, PDF, JPEG, etc.) as well as content from YouTube and other popular social media sites as part of their submissions and/or comments. Users should be able to subscribe to customized site updates via e‐mail as well as RSS and share content outside of the Dojo site.
  • Anonymous users should be able to only view general content about the program, and be able to contact administrators for additional information about the Dojo via a Web‐based contact form.

Taxonomy

  • Type
    • Lesson, Tutorial, or Howto
    • Workshop, Sprint, or Project
    • Discussion, Coffeetalk, or BOF
    • Showcase, Case Study, or Demo
  • Category
    • Business Side
    • Code & Development
    • Design & Usability
    • Performance & Scalability
    • Showcase & Strategy
    • Site Building
  • Difficulty Level
    • Beginner
    • Intermediate
    • Advanced
    • Expert
  • Audience Industry
    • Education
    • Entertainment
    • Library
    • Marketing
    • Media
    • Non-profit
  • Drupal Version
    • Drupal 5
    • Drupal 6
    • Drupal 7

Audience Industry

  • Education
  • Entertainment
  • Library
  • Marketing
  • Media
  • Non-profit

Category

  • Business Side
  • Code & Development
  • Design & Usability
  • Performance & Scalability
  • Showcase & Strategy
  • Site Building

Difficulty Level

  • Beginner
  • Intermediate
  • Advanced
  • Expert

Drupal Version

  • Drupal 5
  • Drupal 6
  • Drupal 7

Type

  • Lesson, Tutorial, or Howto
  • Workshop, Sprint, or Project
  • Discussion, Coffeetalk, or BOF
  • Showcase, Case Study, or Demo

Milestones

Phase 1

  • Iteration 1 - Drupal core, basic site structure (information architecture) created, user roles/permissions created, configuration.
  • Iteration 2 - Contact form(s), participant directory, discussion forums.
  • Iteration 3 - Event calendar, ability to sign-up for events, ability to rate content.
  • Iteration 4 - Session submission and workflow.
  • Iteration 5 - Themeing
  • Iteration 6 - Analytics and SEO
  • Iteration 7 - i18n

Phase 2

  • Iteration 1 - Learning object repository
  • Iteration 2 - Media upload, aggregation and sharing
  • Iteration 3 - Virtual meeting/collaboration integration

Deliverables

All 
materials 
provided 
as
 deliverables
 for
 this 
project 
will
 be
 available
 under 
a
 free
 distribution
 license 
(e.g., 
GPL,
 Creative
Commons, 
BSD, 
etc.)


  • The Drupal Dojo site will be hosted externally (www.drupaldojo.com)
  • Install profile and configuration patterns (features) will be available on drupal.org
  • Any new modules, themes, site recipes, and documentation developed will be available on drupal.org
  • All learning materials, curriculum, courseworks derived from the development will be in the drupal handbooks, drupaldojo.com, and distributed around the web.

Site Map

  • Global 
elements:

    • Navigation

    • Header

    • Footer:
 copyright,
 contact 
address


    • Breadcrumbs

  • Home
 - Home 
page 
should 
include 
a
 login 
form
 for
 authenticated
 users,
 a
 dynamic
 list
 of 
up‐to‐3 
most
 recent 
“public” ‐ flagged 
News
 items 
and
 a
 dynamic
 list 
of
 up‐to‐5
 upcoming 
“public”‐ flagged 
events, 
as 
well 
as 
an
 area
 for 
home‐page
 specific
 content. 
RSS
 feed
 should 
be 
available
 for 
publicly 
available 
news
 and
 events.

  • News 
and 
Events - List 
of 
staff‐posted
 announcements,
 followed
 by
 a
 list
 of 
all
 upcoming 
posted
 events,
 sorted 
by
 date.
 Only
 items
 flagged
 as
 “public” 
should
 be 
viewable
 to
 anonymous
 users. 
Event
 titles 
should
 link
 to
 the
 event
 details
 page
 if 
main
 content 
area
 for
 that 
event 
is
 non‐null. 
News
 titles
 should
 link
 to
 the 
news
 item
 detail 
page. 
RSS
 feed
 should 
be 
available
 fo
r publicl
y available news and
 events.

  • Blogs

 - List
 of 
10 
most
 recent
 blog
 posts
 by
 all 
users
 (title,
 short
 description,
 date,
 author, 
number
 of
 comments)

    • Individual 
blog
 home
page

 - List
 of
 10 
most 
recent
 blog
 posts
 by
 selected
 users
 (title,
 lead 
copy,
 date,
 author, 
number 
of 
comments

    • Individual
 blog 
article
 page

 - Full
 text
 of
 blog
 posts, 
and 
all 
comments 
posted
 in
 a
 threaded
 form


  • Sponsors - Lists individuals, organizations or companies who have sponsored some part of the Kata and/or related lessons, sessions and projects.
    • Corporate sponsors - Link to detail page with logo, company description, and members.
    • Individual sponsors - Link to detail page with badge and description.
  • Classifieds - Lists 
all 
posted 
classified
 ads.

Only 
ads 
flagged
 as
 “public”
 should
 be
 viewable 
to
 anonymous 
users.

  • Discussions

 - A
 set 
of 
moderated 
message
board 
forums

  • About - General 
information 
about
 the
 program
  • Directory

 - A
 list
 of
 all
 users
 with 
an
 account
 on
 the
 site

  • Contact - A
 Web‐based 
contact
 form 
that 
allows
 anonymous
users 
to 
e‐mail 
program
 staff


About

General 
information 
about
 the
 program

Home

Home 
page 
should 
include 
a
 login 
form
 for
 authenticated
 users,
 a
 dynamic
 list
 of 
up‐to‐3 
most
 recent 
“public” ‐ flagged 
News
 items 
and
 a
 dynamic
 list 
of
 up‐to‐5
 upcoming 
“public”‐ flagged 
events, 
as 
well 
as 
an
 area
 for 
home‐page
 specific
 content. 
RSS
 feed
 should 
be 
available
 for 
publicly 
available 
news
 and
 events.


Resources

News 
and 
Events

List 
of 
staff‐posted
 announcements,
 followed
 by
 a
 list
 of 
all
 upcoming 
posted
 events,
 sorted 
by
 date.
 Only
 items
 flagged
 as
 “public” 
should
 be 
viewable
 to
 anonymous
 users. 
Event
 titles 
should
 link
 to
 the
 event
 details
 page
 if 
main
 content 
area
 for
 that 
event 
is
 non‐null. 
News
 titles
 should
 link
 to
 the 
news
 item
 detail 
page. 
RSS
 feed
 should 
be 
available
 fo
r publicl
y available news and
 events.


Sponsors

Lists individuals, organizations or companies who have sponsored some part of the Dojo and/or related lessons, sessions and projects.

  • Corporate sponsors - Link to detail page with logo, company description, and members.
  • Individual sponsors - Link to detail page with badge and description.

Resources

Team

  • Aaron Winborn
    • Developer (mentor)
  • Trever Twining
    • Themer, Front-end developer (mentor), Design, UX (mentor)
  • Gus Austin
    • Marketing, Documentation, Producer, Outreach, Fundraiser, Site Builder, Facilitator, Trainer, Learning Program Developer
  • Eric Johnston
    • Project Management (mentor), Producer, Marketing, Site Builder, Facilitator, Trainer, Learning Program Developer
  • Doug Vann
    • Developer (mentor), Marketing, Fundraiser
  • Stacy Wray
    • Content Editor & Manager

Budget Estimate

To be determined by the project team.