Web services in Drupal 8

In my DrupalCon keynote in Chicago, I talked about the key initiatives that I believe we should focus on for Drupal 8 core. One of those key initiatives that I talked about was web services.

The future is a world where content management systems need to output data to many more devices and integrate with more and more systems and services. Today, Drupal is optimized for outputting HTML and core ships with an old XML-RPC backend. If we want Drupal to be the go-to platform in a world with many different devices and integrated services, we need to fundamentally change that.

The goal of Drupal 8's Web Service Initiative is to make Drupal equally good at outputting data as XML, JSON and other non-HTML formats, to expose Drupal's functionality through a RESTful interface, but also for Drupal to better support different page layouts when delivering HTML pages to different devices.

HTML5 is obviously a big part of such a future as well, however, for that I'll setup a dedicated initiative. I believe both can be worked on (mostly) in parallel and by different people. I'm still talking to different people about the HTML5 initiative. Both initiatives combined should get us in a great position with Drupal 8.

Larry Garfield

I've decided to make Larry Garfield (aka Crell) the Initiative Owner for the Web Services Initiative in Drupal 8. As the Initiative Owner Larry will act as the project manager and/or technical lead. In this role, Larry and myself will work closely together on defining the architecture and approach. This means I don't need to be involved in every small conversation myself, but that I still need to sign of on the approach and implementation.

Larry was the obvious choice for two reasons. First, he is a great architect able to tackle complex problems, as demonstrated by his work on Drupal 7's database abstraction layer. Second, Larry has already put in a lot of thought and effort into this.

As many of you know, this initiative is near and dear to my heart. I trust that Larry will do a great job. For more details, please read Larry's announcement blog post or join the technical conversation.

Staking our future on PHP

I believe that the growth of PHP depends increasingly on applications like Drupal, Joomla!, WordPress, phpBB, Typo3, ezPublish and similar systems. Specifically, I believe that most organizations adopt PHP primarily because they want to use one of these popular applications which have PHP at their core. Fewer organizations adopt PHP because they want to build from scratch their own PHP applications. Hence, more than ever, the future of PHP depends on popular PHP applications that have emerged over recent years.

Conversely, the future of Drupal depends on PHP. Moreover, many of us are staking our future, and that of our businesses, on Drupal and, by extension, on PHP. The same is true for those who make their living with Joomla!, WordPress, phpBB, vBulletin, Typo3, and ezPublish.

It seems that we have arrived at a point in which there is a symbiotic relationship between PHP and the most popular PHP applications. A relationship that did not exist when PHP was created. Symbiotic relationships are obligatory: we depend entirely on each other for survival. And yet, I feel like we've been living apart. It makes sense for us (i.e, application developers) to contribute to the development of PHP, and for the PHP core developers to work more closely with the developers of the most popular PHP applications.

Having spent ten years of my life developing Java Virtual Machines and run-time systems, I feel that I'd be able to contribute to PHP. Unfortunately, I don't currently have time for it. Maybe when Acquia is a bit larger, we'll hire a full-time engineer to contribute to PHP's development. Maybe other organizations will consider doing the same, or more people will find the time to be active in more than just one project. It seems as though our future would really benefit from such people.

If you could contribute to PHP core, what would you change?

White House releases source code for IT Dashboard

Vivek Kundra just released the Drupal software code for the ITDashboard.gov tool, which is built on Drupal by REI Systems. You can find the source code at http://www.cio.gov/tools/. More information can be found in a blog post by Alex Howards from O'Reilly Radar: White House releases IT Dashboard as open source code.

This is important for Drupal and Open Source: the U.S. Government, one of the largest IT buyers and users in the world, has just taken another big step in embracing Open Source and becoming an active contributor. It also enables us, the Open Source community, to help the U.S. Government enhance ITDashboard.gov or to recommend it to our respective governments all around the world. Very cool!

Configuration management in Drupal 8

In my DrupalCon keynote in Chicago, I talked about the key initiatives that I believe we should focus on for Drupal 8 core. One of those key initiatives that I talked about was configuration management.

For some, configuration management is a bit of an abstract term. In short, it refers to a mechanism for handling configuration changes. Site owners often want to have fine-grained visibility and control over configuration changes with the purpose of maintaining integrity and traceability throughout the life-cycle of the website. For example, they might want to lock down a site's configuration so site builders can't make changes in a production environment, they might want tools to automatically apply a set of configuration changes made to site A to site B, they might want to rollback changes, or go back in time to see who made what configuration change when. It will also paves the path for better staging; some site owners want to be able to merge user generated content into their development environment, and new content back to the production.

To enable all of the above in a modern and elegant way, we need to make a number of changes to Drupal. These changes will be worked on as part of the Configuration Management Initiative for Drupal 8 core.

Greg Dunlap (and David Strauss)

Also in my DrupalCon keynote in Chicago, I outlined changes to the Drupal development process. Each of the Drupal 8 initiatives will have an Initiative Owner that reports to me, and that acts as a project manager and/or technical lead.

I'm excited to announce Drupal 8's first initiative owner today. After some back and forth with various people and in-person meetings, I've decided that Greg Dunlap (aka heyrocker on drupal.org) will be responsible for leading Drupal 8's Configuration Management initiative. Not only is Greg both passionate and knowledgeable about the about the topic of configuration management, his employer NodeOne has generously offered that Greg can work on it half of his time.

I've also asked David Strauss to be an ‘architecture gatekeeper' for the Configuration Management Initiative. He needs to sign off on the architectural choices and the API design. Like Greg, David has been an evangelist for better configuration management in core. When both Greg and David are happy with the implementation, I'll consider including it in Drupal 8 core.

For more details, read Greg's announcement blog post, or better yet, participate in the design discussions.

My week in review: week #2

I'm tracking my work related activities because people often ask me what my days look like. For one month, I'm posting a weekly summary of my work week (e.g. Monday - Friday, not including weekend work). I'll post four summaries in total as that should give people a good sense. This is the summary of the second week. You can compare it with the summary of the first week, if you like.

Activity Organization Hours Comments
Business development Acquia 5 Meetings with (potential) partners
E-mail Acquia 5
Human resources Acquia 2.5 Interviewing potential hires
Management meetings Acquia 2.5 Weekly status meeting with updates from sales, marketing and engineering.
Staff meeting Acquia 2.5 All company update meeting
Product / engineering management Acquia 5 Reviewed marketing, sales and engineering progress of different Acquia products, and brainstormed about resource allocation
Transportation Acquia 12 Driving to work and trip to Washington DC
Writing code Acquia 0
Preparing presentation slides Acquia 2 Gave 2 presentations that required preparation. Fortunately got some help from marketing.
Attending conferences Acquia 6 Gave one keynote at a cloud event, and gave one presentation at 360info/AIIM in Washington DC
Blogging Drupal 2 Wrote 3 short blog posts
Drupal 8 initiatives Drupal 4 Talked to potential initiative owners for Configuration Management, HTML5 and Design
Drupal Association Drupal 1 Started planning a face-to-face meeting with the Board of Directors in early May
E-mail Drupal 7
Reviewing Drupal core patches Drupal 2
Press interviews Drupal 1 Did two short interviews about Open Source and online collaboration
Writing code Drupal 0
E-mail Mollom 2 Helped close two large new customers
Product / engineering management Mollom 1 Refined our engineering methodology and reviewed some user interface designs
Writing code Mollom 0

State of Drupal presentation (March 2011)

Two weeks ago, at DrupalCon Chicago, I gave my traditional State of Drupal presentation. In good tradition, you can download a copy of my slides (PDF, 52 MB) or you can watch a video recording of my keynote on archive.org.

Just before DrupalCon, m62.net, a presentation development company, offered to help me with the production of my slides. I took them up on their offer. They helped me put together the video and helped me with the visuals, as well as the delivery. They went above and beyond to help me -- all free of charge. I think the slides were very effective in delivering the message so a big "Thank you!" to m62.

ING using Drupal

You know when a piece of software is mature when it starts being adopted by financial services organizations. ING Financial Services recently moved a number of sites from Oracle Stellent to Drupal. Among these sites are http://ing.us, the main portal for their US market. The driver behind this migration was to move to a platform that was more dynamic and provided faster time to market.

During the initial launch of the project, ING had no one that knew Drupal, MySQL or PHP. They brought in external help to do the site development. Today, they have an in-house team to develop upcoming Drupal sites. Many large organizations follow exactly this trajectory.

Ing us
© 1999-2011 Dries Buytaert Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.
Drupal is a Registered Trademark of Dries Buytaert.