You are here
The goal of the Spark distribution is to incubate authoring experience improvements in a Drupal 7 and Drupal 8. It was announced earlier this month, and since then we've been hard at work on initial research and design.
The Spark team's primary focus is on improving Drupal's content authoring and editing experience, and the first feature we're prioritizing is in-place editing: the ability to edit content, menus, etc. directly on the page, without the need to navigate to a separate edit form. Think of it as "true" WYSIWYG.
Members of Acquia's design team spent time analyzing how some of the most widely adopted Open Source as well as proprietary CMSs do in-place editing. We then prototyped some initial ideas, and performed usability testing on those prototypes to see what works and what doesn't. After a number of iterations, we're happy to report that the usability testing has validated Spark's general design direction. People loved the prototype. Now is a good time for us to share our initial prototype and to solicit further feedback from the community so we can shift gears into implementation.
The following 5-minute video walks through the HTML/JS prototype, and also provides a bit of background on the Spark project:
Our goal is to deliver this functionality in a contributed module for Drupal 7 first and foremost, which will live at the In-Place Editing project on drupal.org. This module will be bundled into the Spark distribution. Depending on how it is received, I hope we can also target this functionality for Drupal 8 core.
From a technical architecture standpoint, we are currently in the process of selecting the WYSIWYG editor to use in Spark for in-place editing of HTML content. For now, we plan to focus on supporting only the Filtered/Full HTML text formats in order to get us to something testable faster.
Later, we are hoping to branch out into other areas of authoring experience too, including helping with the content creation form improvements that the Drupal usability team has been spear-heading, as are well as the layouts UI work being actively discussed in the usability group. The Drupal usability team is doing an incredible job with these issues, and once fully staffed, I would like to see the Spark team help implement these improvements for Drupal 8 and backport them to Drupal 7 so we can ship it with the Spark distribution. (Did I mention that the Spark team is hiring? ;-))
As you can see, things are starting to move along quite nicely. Please join the discussion in the Spark issue queue if this functionality sounds exciting to you and you'd like to help!
I selected Angela "webchick" Byron as my co-maintainer for Drupal 7 back in DrupalCon Szeged in August 2008. Since then, together we shepherded efforts of 1,000 core contributors to create Drupal 7, got the release out the door in January of last year, and worked hard thereafter to stabilize Drupal 7, to the point that the number of Drupal 7 sites eclipsed the number of Drupal 6 sites earlier this year.
However, Angela's level of responsibility in the community has grown significantly in the past 3.5 years, and she wears many hats, from Drupal Association board member to code sprint planner to Drupal.org coordinator to evangelist to general community cat herder. We both felt that it was time to transition the role of Drupal 7 core co-maintainer off of her plate, in order to give her more time to focus on her other community roles.
When thinking about replacements for Angela, David Rothstein was at the top of my list. David was a key contributor to Drupal 7 and heavily involved in a wide range of issues throughout the code base. He was also on the Drupal Gardens team, developing against Drupal 7 while it was still in active development, and so has a very thorough and deep understanding of Drupal 7's internals. David is extremely conscientious and thorough in his reviews, and is incredibly calm and respectful in his communication style.
I'm thrilled to say that David accepted the invitation to join the core co-maintainer team, and will have time to work on managing Drupal 7 releases through community time provided by his current employer, Advomatic. David will not be committing to the Drupal 8 branch, but will be focused on guaranteeing the quality of Drupal 7.
Please join me in welcoming David to the core maintainer team!
At DrupalCon Denver, I announced the need for a strong focus on Drupal's authoring experience in my State of Drupal presentation. During my core conversation later in the week, I announced the creation of a Drupal 7 distribution named "Spark" (formerly code-named "Phoenix"). The goal of Spark is to act as an incubator for Drupal 8 authoring experience improvements that can be tested in the field.
I hope for Spark to provide a "safe space" to prototype cutting-edge interface design and to build excellent content tools that are comparable with the experience of proprietary alternatives. While not a final list, some initial thinking around the features we want to experiment with is:
- Inline editing and drag-and-drop content layout tools ("true" WYSIWYG)
- Enhanced content creation: auto-save, save as draft and more
- Useful dashboards for content creators
- Mobile content authoring and administration support
The vision behind the Spark distribution is to be "the Pressflow of Drupal authoring experience". Pressflow provided a "spoon" of Drupal 6 with various performance enhancements that made their way into Drupal 7 core while it was in development. The same improvements were made available to Drupal 6 users so they could easily be tested in the field. With Spark, we want to test authoring experience improvements in Drupal 7 on real sites with real users and real content. We also want to target the best improvements for inclusion into Drupal 8 core.
I'm excited to announce that Acquia will fund the Spark distribution. Core developers Gábor Hojtsy and Wim Leers will work on Spark full-time starting in late May. They will work along side Angie Byron (webhchick), Alex Bronstein (effulgentsia), myself and other members at Acquia. While we have some promising candidates so far, Acquia is still seeking applicants to join the Spark team (with a strong preference to candidates located in or willing to move to the Boston area):
- Drupal UX Interaction Designer, who can conceptualize and prototype cutting-edge interface design.
The Spark team will collaborate with the Drupal usability and the core development teams.
For many years now, developers around the world have celebrated and promoted the numerous benefits that open source has to offer IT and business communities. Despite the flare for technology innovation and bringing new offerings to market, the real value of the open source community is the culture of the people that represent it. A shared ethos, coupled with a collaborative working model and mutual respect has delivered and will continue to deliver cutting edge software offerings that are increasingly competing with traditional proprietary vendors.
But open source has moved beyond simply being a novelty or hobby, as its potential for huge cost reductions and delivering significant savings to the bottom line have become recognized by hard pressed businesses around the globe. Implementations of open source projects can also now be found in many countries in the government sector, with the UK, US, and France being notable examples. Only recently, it was announced that Iceland was shifting over to an open source model to help make savings and reduce the deficit.
For those of us working in the community, the only surprise with these headline-grabbing government sector implementations was that they weren’t happening faster.
When making the case for open source, despite the numerous benefits on offer, it’s vital that providers demonstrate they have the same structure and ecosystems you would expect from a major proprietary software vendor. In this context, open source offerings need to be appropriately packaged up with hosting, consultancy and the support network that many IT decision-makers consider to be a necessity for implementation. That’s why I founded Acquia, which serves as a commercial vehicle for enabling Drupal open source adoption into enterprise-size organizations, offering support and service level agreements that enterprise users expect.
But the open source community has recently seen two major developments that have fundamentally changed the perception of everything we have to offer. The first being Red Hat reaching the $1 billion USD revenue mark, which provided a huge confidence boost to open source developers that their business model is profitable and can be successful. This landmark achievement will open the floodgates to more developer-focused organizations achieving unprecedented success and puts further pressure on the traditional proprietary vendors that have dominated the IT landscape for so long.
Another landmark announcement is that Microsoft has chosen to move into the open source space, a signal of just how seriously the value of community development has become. Some expected this news to be met with a negative reaction, but the open source community should celebrate the fact that a large proprietary software organization is investing in open source and extend a warm welcome to Microsoft.
With businesses looking for IT solutions that can deliver both innovation and cost savings, there has never been a more exciting time to be involved in open source. With open source businesses reaching the $1billion dollar revenue mark and leading proprietary firms opening up new subsidiaries to invest in open source, the open source community should feel that the best days are still yet to come. Once a fast growing self-contained community, open source is now recognized as a genuine alternative to proprietary software with a serious offering that will empower businesses across the globe.
Acquia works with many large enterprises that bet on Drupal. These organizations are doing amazing things with Drupal and innovating by breaking through prior limitations. However, in talking to our customers, we noticed that there is limited knowledge sharing and discussion happening among the heaviest Drupal users. Similar problems are often solved multiple times independently, and in incompatible ways. And since few of these large companies are vocal and active in the community, the expertise gained from solving these problems isn't making its way back into the software that all Drupal users rely on.
To help solve these issues, I'm announcing a new program called "Large Scale Drupal" as part of my group at Acquia's Office of the CTO.
Large Scale Drupal is a group of large enterprise Drupal users who meet regularly to discuss and collaborate on common problems. We provide a forum for enterprise users, listen to their needs, prioritize them as a group, and then figure out a proper way to address those needs through knowledge sharing, white papers, training and development. The intent is not to keep the outcome of these meetings just within the group. We want to share what we learn in the Large Scale Drupal group with the specific intent of it becoming a contributed project to Drupal. Once contributed, anyone is welcome to discuss and assist to the project.
So what are these projects? These are common needs for large enterprises that are considered large and complicated Drupal problems. Through a consensus-driven process our first project is working on creating a better content staging system geared toward supporting a publishing workflow. We've already started having detailed discussions and working on some of the basic architecture. We are connecting Large Scale Drupal program participants with members of the community to help advance projects like Workbench, and build new contributions like a site preview system. This program will add to those systems by helping define the needs of the users, funding some of the work, and contributing patches to the code.
The goal of these projects is to foster knowledge sharing and collaboration among members of the group and the community. The Large Scale Drupal members get the benefits of sharing their development costs with other members. The community benefits by gaining new contributions to Drupal, and an influx of expert talent into the Drupal contributor pool. Both the contributions of these companies, and the expertise that they bring to the table will help Drupal remain a long-term viable project.
I'm excited to work with the Large Scale Drupal program members to get them more involved in Drupal and become active contributors to the community. I have a big vision for Large Scale Drupal; something I hope to write more about later. For now, I wanted to announce and bring awareness to the program.
We've already made a number of process improvements to help accelerate Drupal core's development velocity. Today, I'd like to talk about how we can better streamline the Drupal core decision-making process.
The Drupal core queue is filled with extremely passionate, intelligent and determined individuals who always strive to solve problems in the best possible way. However, we do sometimes come to disagreements about the best way to approach a particular solution, and when two or more individuals fundamentally disagree, issues can sometimes turn into stalemates; or worse, turn ugly. When this happens, it saps strength from the core development team, and makes it difficult (and scary) for new contributors to engage.
Going forward, I'd like to propose the following workflow change to help un-stick issues where opinions seem deadlocked:
- Create a balanced issue summary at the top of the issue that reflects the current state and history of the discussion, and outlines the pros and cons of various options.
- Move the "Assigned to" field to "Dries". (Note that access to do this is restricted to those contributors listed in MAINTAINERS.txt; you can either ask one of them to do so on your behalf.)
- Once per week (barring travel or other things that might come up), I will go through this list and either make a decision myself, or delegate the decision to another contributor, along with a date for a decision to be made. If there is still not agreement by that date, the person delegated the responsibility will make what they feel is the best decision, and we'll move forward. If it's particularly contentious, we can tag it "revisit before release" and look at it again in November or so.
I hope that this process change will allow us to continue to make bold strides in Drupal 8, while giving dissenting opinions a chance to be heard.