community

Adding Community Features To Your Site

Lesson Fifteen of my special Getting Started With Drupal series of instructional videos.

This lesson provides guidance on how to get a community started by configuring the core forum module , the core tracker module and allowing users to be able to set up their own account. Includes a look at the changes required to the Mollom (spam prevention) and Comment Notify (subscribe to comments) modules that were initially added in Lesson Eleven.

The premium version of this lesson is encoded at the full 1024x768 resolution as originally recorded.

 

Bookmark and Share Bookmark or Share Post

Drupal Feeds Worth Following

As we start 2009 I want to share some knowledge about how I keep up with what's going on in the Drupal community. Keeping up with the Drupal community is important to me because.I believe that in order to be successful in mastering Drupal you need to immerse your self in the world of Drupal.

One of the best ways to immerse yourself in Drupal is to keep track of the various sites where Drupal is discussed on a regular basis. I choose to keep track of my sites of choice by subscribing to RSS feeds. The concept of RSS may be new to people who are just getting started in web development. For the benefit of those people I've embedded a screencast below that shows how you can get started with RSS by using Google Reader.

  • Drupal.org Main Page - These are items posted to Drupal.org that get promoted to the main page of the site. These are usually very useful stories.
  • Drupal Search on Twitter - Lists all recent posts on Twitter that mention Drupal. This updates very frequently and will contain a lot of "noise" but can help you to find interesting people who are working with Drupal.
  • Drupal Planet - An aggregation of a large number of Drupal oriented posts combined into one feed.
  • Drupal on Delicious - Returns the latest 25 bookmarks saved on Delicious that were tagged with drupal.

There are lots more potential Drupal oriented feeds out there on sites like Flickr, YouTube and many others. I've found the four in my list to be the most interesting and/or helpful. Feel free to add feeds that you think are worth mentioning in the comments.

Google Reader Screencast

This video screencast will help you learn more about using Google Reader.

Bookmark and Share Bookmark or Share Post

Building Your Video Community

I receive a fair amount of inquiries from people who are in the process of building out video based communities on top of the Drupal platform. The most important questions center around the functionality related to uploading, transcoding and storing video. What modules or techniques can be used to fully integrate community submitted video to a Drupal site?

The Basics 

It's important to note that there are three basic functions that need to take place in order to have a fully integrated video community built on Drupal. Users will need to upload videos. Those videos usually get transcoded to Adobe Flash on the server so that they can be presented in a web based player. The video then needs to be stored and delivered on demand from a server.

There's no one single way that Drupal supports the three functions required to power a video based community. So it's on the site developer to do some research and testing to figure out the method that will work best for them.

Budget Makes A Difference

I think that the method you will use to accomplish the development of a video based community will depend greatly on  the budget you have set for building the site. The most expensive option would allow you to simply hire a Drupal-savvy developer to code a custom module that will assist with uploading, transcoding and transporting the video to a content delivery network or CDN. Less expensive options would include utilizing existing Drupal modules or integrating with a video service that has the ability to plug in to Drupal via an API. No matter what you budget I believe that your first step will involve researching the options available today. I accent the word today because the world of Drupal is ever changing. So if the module or API you need doesn't exist today it could very well exist tomorrow.

Tackle Storage and Delivery First

As far as I'm concerned it makes the most sense to figure out your video storage and delivery provider first. One reason this is so important is that your storage and delivery will greatly affect the performance of your site. And if your site is slow or frequently unavailable chances are users won't spend too much time there. Another important issue is cost. Storage and delivery of video can be very expensive. So shopping around for a reasonable deal is very important. 

If you decide to handle storage and delivery yourself you will either manage your own servers, contract with a CDN, or do a combination of both. The other option is to plug in to a service that is already geared towards the storage and delivery of video. Such a service might also handle transcoding to Flash as well.

Dealing With CDNs

A CDN will assist you with storing and delivering your content to users on the web. A true CDN will spread your content among multiple servers around the world in order to facilitate the most efficient delivery of your media. Some CDNs focus on delivering downloads, while others focus on web streaming. Some do both. In creating a video community you will want to focus on a company that specializes in streaming content over the web.

You're going to need a lot of time and patience when researching CDNs. There are many (list on Wikipedia) that exist today and the field is growing. Growth is good as it helps to expand the feature set and force down the price. But there's also a risk as smaller, newer services could fail and cause you serious problems later if that happens. Prices and service features vary widely as well. I've been involved in discussions with reps for CDNs and in some cases nailing down a price is near impossible. Prices will be based on the amount of content stored and delivered. Prices do vary widely so it would be worth your time to log quotes that you receive and compare them to see who is offering the best deals.

Some people will use Amazon S3 for storage and delivery of the media from their Drupal sites. It is imporant to note that while the Amazon service is an attractive one in terms of pricing and ease of use, it is not a true CDN. The good news is that Amazon is working on a new content delivery service that could be a game changer in the CDN space.

Powering Video Via API

An Application Programming Interface or API will allow your Drupal site to connect with a third party service that can perform transcoding storage and delivery of your media. These APIs simplify to process of building a video community but they may also come at a cost. You probably won't have control over the quality of video that is transcoded. The final videos may also have video advertisments included unless you agree to pay for the service. This is an option to consider if you have a small budget and want to get started quickly.

The new YouTube API allows for video to be submitted from third-party sites. A module has been committed for Drupal 5 and there are a number of discussions on the topic over at Drupal.org. So while there appears to be no locked in solution for Drupal and YouTube at the moment, integration can be accomplished if you work with a developer who knows Drupal pretty well. 

A company called KickApps offers a single sign on (SSO) module for Drupal 4, 5 and 6. According to KickApps the SSO module allows you to create a seamless experience, which theoretically will allow users to upload videos to the KickApps service then display them on your site. The KickApps service is free if you allow advertisements but you can also pay them to "buy out" the advertising inventory.

Brightcove is one of the larger players in the online video services space. They offer integration services that can assist you with connecting Drupal to their video platform. Brightcove helps major corporations manage, store and deliver internet video so expect the price tag for integrating with their system to be on the high end. But if you have the money to spend my experience with Brightcove has been that they have got first class tools to help you manage a video community.

A Drupal Solution

If you're on a budget or are planning a smaller community that doesn't need the power of a third party service then you can build a video based community with Drupal. Check out the following modules.

FlashVideo - Travis Tidwell has built a module called FlashVideo that handles upload, transcoding and storage of video. The module is supported on Drupal 5 and 6. More recent versions allow video to be shipped off to Amazon S3 for storage and delivery. Travis has posted a very detailed tutorial on the setup and usage of this module.The module appears to do many things that video community builders will want so it is definitely worth a look.

Media Mover - This module assists with some of the background work related to storing and processing video. The most notable feature is that it will transport a video from your server to the Amazon S3 storage service and insert the proper link into your site.

Twistage - This module provides for integration with the Twistage video hosting service.

Video - This is an older module that handles upload and presentation of video files. The module also includes very basic play count statistics. This module will embed a video in your site but does not transcode the video to flash prior to doing so. A demo of this modules functionality can be seen here.

There's More

This post isn't intended to cover every tool, technique or module that can help you build a video community with Drupal. My hope is that those looking for a place to start or some direction will find this helpful. Your links to other tools and services or general suggestions about building video communities with Drupal are welcome in the comments.

Bookmark and Share Bookmark or Share Post

Building Community With Comments

On many sites communities begin with comments. And the comment features found in Drupal are deep enough that they can help you turn a website into a community.

Drupal not only contains many comment related features but also settings for each content type contained within your Drupal install. So you can have different comment settings for blog posts and pages for example. The screenshots below show the standard comment settings for Drupal.

Drupal Comment Settings Drupal Comment Settings

Comment Settings

The standard comment settings contain many options to help you customize the experience for your users. You dcomments can be  threaded discussions or flat. When comments are flat each comment always appears after the previous one. Threaded discussion allow users to reply to specific comments and those replies are grouped together.

As of Drupal 6 comments are searchable. So when users search your site the returned results may include information contained in the comments. You can also provide a field that allows people to enter a title for their comment, which makes the comments have the feel of a forum. If you allow anonymous comments you can also choose to require that commenters provide contact information.

Protecting Comments

The access controls within Drupal give you the option to only make comments available to those who have registered for an account on your site. This feature provides you a certain amount of protection against malicious comments. Limiting comments to registered users can reduce the amount of comments you receive. You also have the option of editing the overall permissions for commenters so that all posted comments (or only those posted by anonymous users) will be held for approval. An example of the comment management queue is shown in the picture at left.

You can allow anonymous comments and still be protected if you add comment protection modules like Akismet or Mollom. Both of these modules call back to a central server to prevent comments that they think might be spam. I've tried both and they work well and can help keep your site protected.

A simpler option for protecting comments involves presenting a visual riddle to ensure that the poster is a human and not a machine.The captcha and recaptcha modules will add such a riddle at the end of your comment submission forms. Users must type in the correct word presented in order to successfully submit their comment. It's worth noting that captchas are not fool proof and some users get annoyed when presented with a captcha.

Extending Comment Functions

Drupal has plenty of modules that can help you add features to make comments more compelling. Comment RSS provides an RSS feed of comments for your site and for individual nodes. Comment Closer lets you shut down the comments on a particular node after a given amount of time. Comment Notify allows users to be notified automatically via email of follow up comments on a node.Comment Subscribe offers similar features to Comment Notify but allows you to only subscribe to direct replies of a particular comment.

A relatively new service called Disqus offers the ability to totally replace the Drupal comment system with a comment system manage on their servers. The Disqus module allows site owners to make that switch. Spam protection is then handled by Disqus but you also lose the ability of Drupal 6 to index the comments so that they may appear in your search results.

Tools For Site Administrators

There are a few different tools that can help a site adminstrator to stay on top of comments. By subscribing to the previously mentioned Comment RSS module you can stay abreast of recent site comments in your RSS feed reader. You could also use the comment RSS feed to create a widget (using a site like Widgetbox) that can be posted on another site or social network.

In Drupal 6 You can set up triggers and actions to generate an email each time a comment is posted on your site. The Subscriptions module appears to provide similar functionality. The Watcher module (currently only Drupal 5) allows node authors to receive notificatons of new comments via email.

Administrators also have to option of placing a recent comments block on their site. The recent comments block is a standard option in the block administration view for a Drupal install. When activated, the block will display a link to the ten most recently posted comments on your site in reverse chronological order.

Bookmark and Share Bookmark or Share Post
Syndicate content