Not a fork

Freshness Warning
This article is over 11 years old. It's possible that the information you read below isn't current.

A question has come up here and there about what we’re doing with this community platform, especially now that’s it’s been dubbed "Gnomepal." Are we forking Drupal?

We have no intention of forking Drupal. That would be nuts. Drupal has such a great developer community, why would we want to toss that aside and build our own little fiefdom? What we’re doing is creating a pre-configured instance of Drupal with the right themes and modules woven together. With the custom code that’s needed to get it all to work.

Drupal does a lot of things. We’re taking one of those things (community) and building all the little things that are needed to make it work right out of the box. Much of it already exists either in the Drupal core or third party modules. But getting all those things working together and working well is a challenge for the non-developer. It’s not going to be for everybody and not appropriate for every site. And that’s okay.

Someone made this apt analogy. We’re Ubuntu to Drupal’s Debian.

We’re creating a way to install and use Drupal. We think it’s a better way for the types of sites we’re targeting. We think that Drupal’s power and flexibility makes it a fantastic platform to develop content sites on top of. We hope that lots of people still build their own custom sites using it. But for those non-developers who want to put together a site for their school PTA, their baseball team, or their department’s intranet, we’re building an app that can be downloaded and launched in minutes.

March 27, 2008 1:30 PM

I was wondering if you are looking for a solid beta tester to be included in testing out the new platform. I would be interested in using it for a site that needs all the features you guys have been discussing and could be a solid launchpad and live case study for the project. Please let me know if you would like to work with a great web producer that can give you good feedback and test things out in a live environment.

March 28, 2008 12:12 AM

I wrote about this two years ago: -- take these guidelines to heart. :-) Looking forward to collaborate.

Adam Kalsey
March 28, 2008 1:07 PM

Dries -- Certainly. The whole goal of this is to have something that someone can simply install and use. That updating is possible, not by trying to figure out what the latest version of module X is, but by getting an update of the whole package. Eric --We're quite a ways off from a beta, really.

Kieran Lal
March 29, 2008 7:01 PM

Hi, CivicSpace was a fork of Drupal because we couldn't initially get the core worthy installer that would meet the core developers needs. At the same time, we needed to meet end-user needs, particularly the tech saavy grassroots organizers, NPOs, and political folks who wanted the power of Drupal but needed an on ramp. Much has been made of forking Drupal and why it's a bad thing. Having gone through an expensive unforking process at CivicSpace forking is certainly something you shouldn't do lightly. But here's some guidelines for branching that should maximize your flexibility. 1) Drupal's principles include experimentation. You should experiment as well. There's nothing wrong with adding patches to a version of Drupal that meets your users needs. Just clarify that they are patches, and include them as part of the distribution so that people can easily go back to core Drupal. 2) Drupal code is really clean, and easy to modify for a PHP app. One of the advantages of this well documented code is that it welcomes changes. If you make changes to core, and a huge amount of developers do make core changes, include patches and comment well. Make sure your patches run cleanly through coder, and follow Drupal community conventions. Be sure to post your patches to a issue so others can review those patches and give you some insight how to get them into either a contrib module or a future version of core. If you introduce a security vulnerability, you'll want thousands of developer eyeballs to be familiar with the patch code style so they can easily spot it. 3) There's good stuff in HEAD, use it. Your users or your business might not be able to wait for the Drupal development cycle to put out it's next release. If you aren't running five patches from head by the end of a Drupal release cycle, you aren't paying enough attention to the excellent work being done in head: CSS aggregation, Javascript aggregation, Master-Slave, contrib replacements of core modules, back-ports of Forms API are all things we've used at CivicSpace in the past. Open Source isn't just some moral high ground, make practical use of your access to the source. Make Drupal better by distributing patches from HEAD to your users and tell the Drupal core developers how it's working, particularly in production. 4) Have a yellow light stopping distance. That's the imaginary line when you decide to blow the yellow traffic light by speeding up, or slowing down to be safe. You should have a roadmap that states when you are going to stop hacking your own distribution, and commit to getting something into core. At CivicSpace, we committed to getting the installer back to Drupal core in 4.6. We submitted patches in 4.7 and kept at it through HEAD in Drupal 5. By the time everything was said and done a lot had changed, but that's part of the collaborative process. So don't be afraid to make radical changes and experiment, just make sure you are building meritocracy points (testing other's core patches, making smaller patches to core, etc.) so that your commitments to get changes into core are credible. 5) Use terms like distributions, or branches, instead of forks. The word fork contains a lot of drama for open source communities. Avoid it if you can. But Linus and Alan Cox each maintained their own branches of Linux. Almost every Drupal hosting company has their own "Branch" in SVN which meets their own security, feature, and business needs. All the consulting companies, particular those that deal with big sites have branches that deliver higher performance benefits, often with improvements that are customer specific. Don't be afraid to do the same, but keep a patch for core up to date in a Drupal core issue for your distribution. It will make the core contributors comfortable that you are being open and transparent. Hope that helps. Drupal community Adventure guide, Acquia, Inc. Founder CivicSpace LLC

April 15, 2008 7:51 AM

This an interesting topic to bring up but the follow up done by CivicSpace was extremely helpful. I find the most interest in the use of terms instead of "fork" in open source communities. I can see where the drama induced by this term could spark a conflict of interests but I guess I don't find it to be as much of a problem. I am not an expert so I cannot add constructive insight like before me, but it was this very a helpful topic that clarified a few key points. Everyone should consider 4 and establish their own "yellow light"

Your comments:

Text only, no HTML. URLs will automatically be converted to links. Your email address is required, but it will not be displayed on the site.


Not your company or your SEO link. Comments without a real name will be deleted as spam.

Email: (not displayed)

If you don't feel comfortable giving me your real email address, don't expect me to feel comfortable publishing your comment.

Website (optional):

Follow me on Twitter

Best Of

  • Simplified Form Errors One of the most frustrating experiences on the Web is filling out forms. When mistakes are made, the user is often left guessing what they need to correct. We've taken an approach that shows the user in no uncertain terms what needs to be fixed.
  • Pitching Bloggers Forget what you learned in your PR classes. Start acting like a human instead of a marketer, and the humans behind the blogs will respond.
  • How not to apply for a job Applying for a job isn't that hard, but it does take some minimal effort and common sense.
  • Embrace the medium The Web is different than print, television, or any other medium. To be successful, designers must embrace those differences.
  • Newly Digital Newly Digital is an experimental writing project. I've asked 11 people to write about their early experiences with computing technology and post their essays on their weblogs. So go read, enjoy, and then contribute. This collection is open to you. Write up your own story, and then let the world know about it.
  • More of the best »

Recently Read

Get More

Subscribe | Archives


Building the Customer-Informed Product (Aug 15)
Strong products aren't composed of a list of features dictated by customers. They are guided by strong visions, and the execution of that vision is the primary focus of product development.
Assumptions and project planning (Feb 18)
When your assumptions change, it's reasonable that your project plans and needs change as well. But too many managers are afraid to go back and re-work a plan that they've already agreed to.
Feature voting is harmful to your product (Feb 7)
There's a lot of problems with using feature voting to drive your product.
Encouraging 1:1s from other managers in your organization (Jan 4)
If you’re managing other managers, encourage them to hold their own 1:1s. It’s such an important tool for managing and leading that everyone needs to be holding them.
One on One Meetings - a collection of posts about 1:1s (Jan 2)
A collection of all my writing on 1:1s
Are 1:1s confidential? (Jan 2)
Is the discussion that occurs in a 1:1 confidential, even if no agreed in the meeting to keep it so?
Skip-level 1:1s are your hidden superpower (Jan 1)
Holding 1:1s with peers and with people far below you on the reporting chain will open your eyes up to what’s really going on in your business.
Do you need a 1:1 if you’re regularly communicating with your team? (Dec 28)
You’re simply not having deep meaningful conversation about the process of work in hallway conversations or in your chat apps.

Subscribe to this site's feed.


Adam Kalsey

Mobile: 916.600.2497

Email: adam AT

Twitter, etc: akalsey



©1999-2019 Adam Kalsey.