Charlie Lowe raised a great idea to clarify the existing mission statement to help people better understand the "Drupal philosophy."

I've created an issue for this here because issues tend to be where we do most of our "back and forth," and also so it will hopefully get some attention from developers, too.

Comments

webchick’s picture

For reference, the existing mission statement:

By building on relevant standards and open source technologies, Drupal supports and enhances the potential of the Internet as a medium where diverse and geographically-separated individuals and groups can collectively produce, discuss, and share information and ideas. With a central interest in and focus on communities and collaboration, Drupal's flexibility allows the collaborative production of online information systems and communities.

cel4145’s picture

I'd suggest that the best way to start would be to collect lists of points that people believe should be in the mission statement. Then once we sort of agree on a list, start writing the mission statement.

I'll get some things started. In a recent comment, I wrote thing such as

* emphasis on software for building communities with roots in social software experimentation
* clean, effecient code in Drupal core
* Drupal as a flexible development platform as opposed to do it all CMS
* minimal core download (e.g., many modules are contrib instead of in core)
* database abstraction layer based on node and taxonomy system

I'd also add

* GPL philosophy of open source

webchick’s picture

Here's a stab at a rewrite. I imagine it needs lots of work. ;)

--

Drupal is a content-management framework built to enable website architects to rapidly develop full-featured, community-based sites. It supports many powerful features including a database abstraction layer, a taxonomy categorization system, search-engine optimization, and more.

Some of the things the Drupal community has come to value through the process of developing this application are:

  • No hacking required. Drupal strives to be extensible in every possible way, from plugging in additional functionality to changing the look and feel of the site.
  • Drupal can do it. Whether it's a small brochure-ware site or personal blog, or a full-blown e-commerce site with thousands of users and interactive features, Drupal is built to be able to handle any task placed before it.
  • Standards support. Drupal prides itself on generating clean, standards-compliant output.
  • A small, powerful core. While contributed modules allow the addition of almost limitless functionality, our focus is to keep Drupal core as light-weight and flexible as possible, while delivering critical features of use to site builders.
  • No roadmap. Drupal is an organic, individual-driven project where people are free to drive its development direction.
  • Anyone can help. Whether you're a hard-core hacker, someone with an eye for design, or a new user capable of providing feedback on usability, literally anyone can help move the project forward.
cel4145’s picture

sepeck also has some previously posted thoughts

webchick’s picture

Oops, I missed your reply. But looks like we're both basically on the same page.

The one about open source is a great one. Maybe something like:

    Free as in freedom, and as in beer. Drupal's GPL-licensed code ensures that you'll never be stuck waiting for a company to get around to implementing your feature. You can either implement it yourself, or pay someone to do it.

(ok, needs a lot of work :P)

I also thought of another one:

  • Promote a healthy developer community. At the fore-front of Drupal's development is a informal policy of mentorship; "veteran" contributors provide guidance and reviews to people who are starting out, and eventually these people start doing the same. The result is an extremely vibrant, active developer community around the project.
webchick’s picture

And also maybe something like...

  • Big-picture thinking. While other projects can tend to focus on discrete pieces of functionality, Drupal developers tend to think "big-picture" -- developing APIs and abstracting out common bits of functionality that can be used in a variety of ways (for example, the node and taxonomy systems).
cel4145’s picture

I like almost of all of these in terms of the points being made. However, I'd avoid the use of imperitive and 2nd person. Typically mission statements are exactly that--statements. "This is what the thing is," not a "how it applies to you" kind of style. Definition, not instruction.

But I'm getting ahead of my own advice. Once we know what we want to say, then we can determine the style :-)

webchick’s picture

Another thing that should probably be in here somewhere too is that in general, the weight of your opinions increase as your contributions to the project increase. Maybe under the "No roadmap" point?

webchick’s picture

Charlie: Yeah, good points regarding writing style. Though I do like the idea of it being scannable (I'm one of those people with a 2.5 second attention span when it comes to reading things like this, and I think there's a lot we need to get across on this page). Maybe what we actually want is a succinct, 1-paragraph actual "statement" and then the more detailed points below it. Hm...

But yeah, maybe this would be a better-titled issue as "what messages should we try and convey in an updated mission statement?" and we can have a second issue for, "what should the mission statement actually be?" ;)

cel4145’s picture

+1 to all :-)

With a document like this, I tend to think it is easiest to first come up with the content, then worry about rhetorical strategies for writing it. Let the form follow the function, which is dependent on the content. Most likely the short, succinct statement--one paragraph--is best. But it all depends.

A good mission statement has two purposes. Secondarily is its ability to communicate to others outside an organization what the group is about. It's primary purpose is as a policy document which guides actions of people within the organization and long term planning. I think 90% of us who have been with Drupal for at least a year and active in some way could agree 90% of the time on the general philosophy behind the "Drupal way." If we codify that, it will really help others.

I've probably repeated myself a little. But I think to make this an acceptable mission statement that works as a policy document, the best strategy is definitely to come up with a list of clearly written, concise bullet points. Then go to the development list and ask them to refine that list into whatever is most acceptable 90% of the time to the 90% mentioned above. Then finally, we can figure out the best way to write it up, which will be the easiest part. LOL

Amazon’s picture

User experience needs to a major item.

Drupal provides a user experience for web site developers and administrators to quickly deploy powerful websites that meet complex requirements . It allows sites to be maintained quickly and is customizable and learnable to meet the needs of less technical users who manage the website regularly.

That's what it does today. What do we want the mission to be regarding user experience?

cel4145’s picture

Maybe something like one of the following?

* Drupal strives to provide a positive user experience for website developers, site administrators, and everyday site users.

*Drupal emphasizes user-centered design in its coding practices, API, site construction features, administration options, and the GUI interfaces used by site visitors.

Amazon’s picture

they sound nice. Not sure they get to the point of what Drupal is good at. First bullet is good and identifies the audience but doesn't really say what it is doing.

-Rapidly meeting requirements of site developers by having an extensible core, with lots of contributed modules that can be quickly deployed.
---fast deployment means it's relatively easy to do a complex job

-Advanced management to quickly maintain sites, by unpublishing or deleting content, administering users include granular permissions, and fast upgrading
-- fast maintenance means it fast and straight forward for common website maintenance

- Customization means the site can made to be learnable by the site managers and end-users
---

*Drupal emphasizes user-centered design in its coding practices,
-- others care to comment if they think this is valid?

API,
-- extensibility is a key asset not just through APIs it permeates the entire design

site construction features,
-- yes, site developers love Drupal because it's so rich for developing sites.

administration options
-- this is too vague - maintenance, management time and effort is reduced

, and the GUI interfaces used by site visitors.
-- GUI interfaces redundant?
-- I think the notion that the people managing the site can get an interface that they can learn and be effective with is a key distinguishing feature. Other CMS's don't have as much customization and are forced to learn someone else's supposidely easier way

Want to try again?

cel4145’s picture

"Not sure they get to the point of what Drupal is good at"

They weren't supposed to. A mission statement is about a philosophy, or in this case, more principles or focus of design, not about what the product does. What are the goals? That's why I used verbs like "emphasizes" and "strives."

Gary Feldman’s picture

Shouldn't the technical and non-technical goals be separated?

The goal of building Internet communities describes the origins and motivations for Drupal and many of its contributors, but is distant from questions of whether it's standards compliant, has a large or small core, or has a database abstraction layer.

I see a mission statement around having a high-quality, flexible, GPL content management system with an emphasis on community sites and the ability to rapidly deploy a variety of web sites, simple or complex, community or commercial, internationalizable, localizable, secure, and efficient.

On the other hand, a technical philosophy statement might say that Drupal is built around a small, efficient core and a large library of plugin modules. There is a strong emphasis on coding standards and good coding style, clean interfaces, relying on standards compliant PHP and SQL as much as possible, and generating standards compliant XHTML and CSS. Flexibility and ease of development are achieved with small powerful interfaces, using abstraction to factor out commonly used concepts. Peer review is required of all code, to maintain quality and security. The developer community is open and supportive, with respect earned in proportion to contribution.

The technical philosophy statement can be followed by technical policies, containing more specific details.

Gary
\

nofue’s picture

Great points so far -- but none to the point. If it's going to be a Mission Statement it should follow the generally accepted guidelines to write such a thing.

Here are some basic guidelines in writing a mission statement. Pay a visit to
B·Plans
If you're short on words, here's an aid to guide you:
Generator

Seriously, I think there are two different things to talk about -- the Drupal project and it's outcome. I was trained to write m/s for a way too long time. Most m/s are a bunch of lies, neatly made up to grab the attention and believes of the unaware. It's the first impression of a business entity, hence it should be short, sweet and to the point. No need to exaggerate, understatement works better than superlatives.

My 0.02,

Norbert

sepeck’s picture

Status: Active » Closed (fixed)

No activity. The current mission statement has stood the test of time for now. This is something that can be revisited by the community again when interest and time allow. (My 2 cents until revisited, I feel the current one still works for us).