Introducing Backdrop, a fork of Drupal.
Backdrop is intended to be a home for developers and users who might otherwise consider adopting other platforms. The goal of the project is to provide shiny new features built on an iteration of the existing Drupal 7 APIs: before Symfony, PSR-0, and the "Drupal Kernel".
Preserving our audience
Backdrop is a project built on years of love for a software project, Drupal. For many developers, their work on Drupal has led to enormous opportunities and changes. New jobs, new cities, a huge number of friends and social gatherings. Hundreds of hours spent developing both sites for clients and reusable code for the core or the contrib module repository; empowering others to promote their ideas through a system that anyone can install for free.
The traditional audience of Drupal is not a crowd of professional developers. We've gotten to that point through years of building flexible systems that can be built at low cost. However, "low cost" isn't exactly how most people would describe Drupal today. Even in the current version of Drupal, we've abstracted things beyond where a new developer could pick up Drupal in a day, grasp the basic concepts, and then start building a website.
Many of Drupal's leading developers today didn't even know PHP when they first started making Drupal websites, but after some initial hacking, they were hooked. Backdrop aims to meet the needs of this community. It will provide a simple, intuitive API that's easy to understand at first glance.
Backdrop appeals to a different developer audience than Drupal 8. By rewinding APIs back a bit further (removing database query abstraction and page-level renderable arrays for example), Backdrop will lower its barrier to entry, increase performance, and position itself closer to the market of WordPress users.
The hypothetical growth chart below estimates the Drupal market today, and on into the future. It's not backed up by statistics or hard numbers, it only depicts the general history of Drupal's audience and predicts the future of the Drupal market, with and without Backdrop.
Backdrop will grow the overall market by sustaining those that may leave the Drupal community without it, and will appeal to new adopters who may find Drupal 8 too complex.
A Product for End-Users
Drupal 8 includes some great end-user features: a visual editor, revamped content creation, built-in Views module, and more. Backdrop also aims to provide all of these end-user features without the increased code complexity.
Backdrop will put its end-users and contrib developers first. This means making things work with the existing architecture whenever possible. By working within the existing framework, we can spend more effort on end-user features with less risk of breaking compatibility.
A Different Release Cycle
Backdrop aims to deliver features to end-users more quickly with more frequent ("minor") releases. At the same time, APIs will move more slowly over longer ("major") release cycles. Backdrop will encourage both developers and end-users to upgrade through the features it delivers.
MajorIncompatible API changes(3 years)
MinorBackwards-compatible feature and API additions(4 months)
PatchBackwards-compatible bug fixes(as-needed)
The amount of work can be kept to a minimum by organizing development branches cleverly with Git. Bugs will be fixed in the patch release version first, which is merged into the minor release, which in turn is merged into the major release. This means when fixing bugs, the fix is made to the production version of the software first, and then merged in to the future version.
Appeal to existing Drupal 6 and 7 Developers
We will deliver modern features (configuration management, content listings, rich-text editing, etc.) on a traditional Drupal-based architecture.
Maintain an Easy-to-understand Architecture
We will make sure that new developers can understand the basics of the Backdrop architecture (info files, hooks, and callbacks) with minimal effort. An hour should be enough to summarize the architecture.
Keep APIs Stable ("Major" versions)
We will make the upgrade process easier on end-users by maintaining slower-moving core APIs.
Deliver New Features Often ("Minor" versions)
We will deliver new features at regular intervals with minimal risk of API breakage.
Ensure Great Performance
We will focus on direct implementations and speed rather than accounting for edge-cases through abstraction.
Provide a Better End-User Experience
We will constantly be improving the editorial and site-building experience. The intial release aims to improve content creation (matching Drupal 8's advancements), and deliver a universal layout manager for site-builders (replacing blocks).
Grow the community
We will focus on attracting new developers at all points of the spectrum, but especially remembering the entry-level developer.
Podcasts & Discussion
If you'd like to hear more information about Backdrop CMS, check out these great podcasts covering the topic:
- Drupalize.me Podcast: Backdrop: A Drupal Fork. Addison Berry (add1sun) interviews founding forkers Nate Haug and Jen Lampton on why Backdrop CMS decided to fork Drupal.
- DrupalEasy Podcast 114: Community sprints and discussing Backdrop CMS. Drupal (and Backdrop) community members discuss the impact and direction of the Backdrop CMS fork.
- Modules Unraveled: Backdrop and Drupal8. Discussion with Jen Lampton, Nate Haug, John Albin Wilkins, and Alex Bronstein about both Backdrop CMS and Drupal 8
- Taking Drupal: Backdrop CMS. Discussion with Nate, Jen and Drupal community members about Backdrop CMS.
If you don't have the time to contribute, you can help get Backdrop off the ground by providing seed funding to kick start infrastructure, development, and branding. Donations are being gratefully through PayPal. Please use the widget on the right.
Participate in Weekly Meetings
Weekly progress meetings are being held on Google Hangouts. Agendas for each meeting will be posted ahead of time on Twitter, and the hangout URL will shared in our IRC channel: #backdrop on Freenode.
Miss a meeting? No problem! Videos of past meetings will be automatically posted on the BackdropCMS YouTube Channel.
Join our Mailing List
Interested in where Backdrop is headed? Join our mailing list for news and updates.
Thanks for reading the Backdrop introduction. Please join in development and help us make Backdrop an amazing system that anyone can learn and use.
- Added information about our weekly meetings.
- Added PayPal donate button for Backdrop CMS.
- Added more links to Backdrop Podcasts.
UPDATE 9/21: We've received a lot of feedback (on both sides, though mostly positive) since this was published. In the past 10 days alone:
- We've received 256 stars and 64 people have forked the Backdrop repository.
- We've merged in over 50 pull requests.
- We've been topping the most trending PHP projects on Github on and off. :)
- We've raised over $2500 in funding to get Backdrop's initial infrastructure off the ground and seed development efforts.