Drupal

A timeline with key technology events that impacted Drupal. Examples include the first mobile browser, social media, etc.
A list of technology events that came after Drupal, and that directly or indirectly impacted Drupal. To stay relevant, Drupal had to adjust to many of them.
A mobile rich text editor displays a toolbar with formatting options and an on-screen keyboard for text input.
By tapping into a rich text field such as Body, a toolbar comes up with two tabs with editor buttons below: Format (containing buttons such as Bold, Italic, Left/Right Align, and Lists) and Insert (for Links, Images, and the like).
Diagram showing Drupal's web service building blocks, including HAL, REST, Serialization, JSON API, GraphQL, and Waterwheel dependencies.
An overview of the key building blocks to create web services in Drupal. Out of the box, Drupal core can expose raw JSON structures reflecting its internal storage, or it can expose them in HAL. Note: Waterwheel has an optional dependency on JSON API if JSON API methods are invoked through Waterwheel.js.
A design proposal for Automatic Updates.
A design proposal for Automatic Updates. There are updates available for different modules. You can upgrade them immediately using the user interface, or you can let the scheduler run to do it for you.
A book page displays a screenshot of a website featuring a black-and-white photo of three people posing together.
@Hagen, next time take a picture of your book on my website? ;-)
A screenshot of the content administration using Drupal 8's Carlo theme
The content administration screen with the new design system.
A screenshot of the spacing guidelines of Drupal 8's Carlo theme
Sample space sizing guidelines from the new design system.
A bubble chart comparing commercial and FLOSS CMSs by install base and revenue, showing larger bubbles for FLOSS CMSs.
What is wrong with this picture? *Brain teaser.*
Graph showing the number of Drupal commits per month, with a sharp increase after 2009.
Aggregated results from core and contributed modules.
Graph showing the number of Drupal committers per month, increasing steadily from 2001 to 2011 with sharp growth at the end.
Aggregated results from core and contributed modules.
Configuraton management initiative
The four different focus areas for Drupal 8. The configuration management initiative is part of the 'Improve Drupal for developers' track.
Contributions by country
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each commit. Note that the geographical location of contributors doesn't always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America.
Contributions by country
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each commit. Note that the geographical location of contributors doesn't always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America.
A graph showing the top 20 contributing countries in 2019.
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each issue. Note that the geographical location of contributors doesn't always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America.
A graph showing the top 20 contributing countries in 2020.
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each issue. Note that the geographical location of contributors doesn't always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America. Wim's contributions count towards Belgium as that is his country of residence.
A graph showing the top 20 contributing countries in 2021.
The top 20 countries from which contributions originate. The data is compiled by aggregating the countries of all individual contributors behind each issue. Note that the geographical location of contributors doesn't always correspond with the origin of their sponsorship. Wim Leers, for example, works from Belgium, but his funding comes from Acquia, which has the majority of its customers in North America. Wim's contributions count towards Belgium as that is his country of residence.
A graph that shows that compared to males, female contributors do more sponsored work, and less volunteer work.
Compared to men, women do more sponsored work, and less volunteer work. We believe this is because men have the privilege of more free time.
A graph that shows that compared to males, female contributors do more sponsored work, and less volunteer work.
Compared to men, women do more sponsored work, and less volunteer work. We believe this is because men have the privilege of more free time.
A graph that shows that compared to males, female contributors do more sponsored work, and less volunteer work.
Compared to men, women do more sponsored work, and less volunteer work. We believe this is because men have the privilege of more free time.
Contributions by individuals vs organizations
The number of individual contributors is up 28% year over year and the number of organizations contributing is up 26% year over year.
Contributions by technology companies
Sponsored code contributions to Drupal.org from technology and infrastructure companies. The chart does not reflect sponsored code contributions on GitHub, Drupal event sponsorship, and the many forms of value that these companies add to Drupal and other open-source communities.
A graph showing which continent contributes the most by looking at the number of inhabitants.
Contribution credits per capita calculated as the amount of contributions per continent divided by the population of each continent. 0.001% means that one in 100,000 people contribute to Drupal. In North America, 3 in 100,000 people contributed to Drupal the last year.
A graph showing which continent contributes the most by looking at the number of inhabitants.
Contribution credits per capita calculated as the amount of contributions per continent divided by the population of each continent. 0.001% means that one in 100,000 people contribute to Drupal. In North America, almost 4 in 100,000 people contributed to Drupal the last year.
Top contributing individuals based on weighted credits.
The top 30 contributing individuals based on weighted Drupal.org issue credits.
Top 30 organizations contributing to Drupal
The top 30 contributing organizations based on the number of Drupal.org commit credits.
Top 30 organizations contributing to Drupal
The top 30 contributing organizations based on the number of Drupal.org commit credits.
Top conytinuying organizations
Top contributing organizations based on the number of issue credits.
Top contributing organizations based on weighted credits.
The top 30 contributing organizations based on weighted Drupal.org issue credits.
A graph showing how difficult upgrades frustrate users by forcing them back into a beginner learning phase.
The problem with disruptive upgrades. People don't upgrade because they don't want to move back into the "suck zone". You have to make it easy to upgrade because users will remember the pain of this upgrade when it comes time for the next one. An upgrade should be worth it so you need a good balance between "upgrade pain" and "added value". (Taken from Why they don't upgrade (and what to do about it)).
A graph showing three learning paths: drop-out, amateur, and expert, based on effort and persistence over time.
Users will typically fall into one of the three categories: expert, amateur, or drop-out. The drop-outs decide that during that "I suck at this" phase, it isn't worth continuing. They give up. The amateur made it past the suck threshold, but now they don't want to push for new skills and capabilities. They don't want to suck again. They'll never get past the kick-ass threshold where there is a much greater chance they'll become passionate. (Taken from How to be an expert.)
A graph showing user ability over time, highlighting the "suck threshold" and "passion threshold" for skill improvement.
The goal of a software application is to get users up the curve as quickly as possible. People get passionate if you help them kick ass with your product. The "time to stop sucking" and "time to first kick-ass" quotients are among the biggest advantages we have in a world where the competition is both fierce and plentiful. Get your users up there faster, and you win. More importantly, it's a way in which we can make a positive impact on the lives of users. (Taken from Attenuation and the suck threshold.)
A diagram shows user feelings about a product, with "Love" and "Hate" on opposite ends and "Zone of Mediocrity" in the middle.
The more successful the product or service is, the stronger the pressure to give in to user requests. The more users you have, the more diverse the requests. The worst thing we can do is give in. We have to listen to our users but resist. The overwhelming pull of that right (hate) side slides you closer and closer to the middle. Those who hate it will hate it until you've neutered it into submission and taken away the magic some once loved. (Taken from Don't give in to feature demands.)
Decoupled Drupal sites
A few examples of organizations that use decoupled Drupal.
Bar chart comparing Drupal performance, showing requests per second for different versions and caching levels.
The number of pages Drupal can serve per second. Higher bars are better.
Bar chart showing Drupal 5's performance improvement over Drupal 4.
The relative performance improvement of Drupal 5's normal database caching compared to Drupal 4.7's database caching. A miss rate of 0% means that all page requests result in a cache hit and that all pages can be served from the database cache. A miss rate of 100% means that all page requests result in a cache miss, and that we had to dynamically generate all pages.
Graph showing Drupal 7 commit history from 2008 to 2010, with contributions by Dries and Angie over time.
We opened the Drupal 7 development branch in February 2008, and released Drupal 7.0 in January 2011. This graph shows the stacked commit history from beginning to end. I appointed Angie as my Drupal 7 co-maintainer in August 2008 after having been the sole committer for 7 months. The peak around August 2009 (the highest peak) was the first attempted Drupal 7 code freeze. The momentum steadily built up towards the initial code freeze date. Interestingly, we remained most productive during the extended code freeze period ... more code freezes are better than one code freeze? ;-)
Bar chart showing Drupal 7 commit history, comparing Dries' and Angie's contributions over time as a percentage of total commits.
I averaged at 3.6 commits per day, whereas Angie's average is 2.6 commits per day (including weekends and holidays).
A world map showing locations of over 250 Drupal 7 release parties in more than 90 countries.
A map of all the Drupal 7 release parties around the world: over 250 parties in more than 90 countries.
Drupal 7 toolbar and shortcut bars wrap on an iPhone screen, taking up a significant portion of the display.
On an iPhone or other mobile device, the default Drupal 7 toolbar and shortcut bars both wrap, taking up nearly a third of the screen.
A visual comparison of Drupal 7 and Drupal 8's administration UI
A comparison of the Drupal 7 and Drupal 8 content creation screen to highlight some of the improvements in Drupal 8.
The experimental layout builder in Drupal 8.6 with the Umami demo profile
The new Umami demo profile together with the Layout Builder.
The Media Library in Drupal 8.6
The Media Library in Drupal 8.6
The Workspaces module in Drupal 8.6
The Workspaces module in Drupal 8.6
Table displaying Drupal cache tags for different cache IDs, showing entity views and associated tags.
Example cache tags for different cache IDs.
Graph showing a rise in Drupal core patch contributions from 400 in March 2011 to over 4,000 in October 2012.
Momentum around Drupal core has increased from around 400 patch contributions per month in March of 2011 to over 4,000 in October of 2012.
A pie chart showing that only a fourth of the modules have 5 or more deprecations.
Most contributed modules currently have no or very few deprecation warnings today. Only a fourth of the modules have 5 or more deprecations.
Diagram of the Drupal 8 render pipeline, showing steps for rendering content and where alternative strategies can be applied.
A snapshot of the Drupal 8 render pipeline diagram that highlights where alternative render strategies can be implemented.
Drupal 8.
Drupal 8.3 will support multiple different editorial workflows. Each workflow can define its own workflow states as well as the possible transitions between them. Each transition has permissions associated with them to control who can move content from one state to another.
Drupal workspaces prototype
An outside-in design that shows how content creators could work in different workspaces. When you're building out a new section on your site, you want to preview your entire site, and publish all the changes at once. Designed by Jozef Toth at Pfizer.
A timeline that shows we hope to release Drupal 9 in June 2020
Planned Drupal 8 and 9 minor release dates.
Screenshot of a Google Hangout video call with nine smiling participants, the founding members of the Drupal AI initiative.
Some of the founding members of the Drupal AI initiative during our launch call on Google Hangouts.
Blue LED string lights, glowing against a dark background
Drupal-blue LEDs, controllable through a REST API and a Drupal website. Photo by Phil Norton.
Terminal output showing successful run of Drupal Check with no errors.
Output of Drupal Check command indicating no deprecated code was found.
Screenshot of the Drupal.
Drupal.com as launched in 2005.
Screenshot of Drupal.
Drupal.com as launched in 2009.
A screenshot of the Drupal administration interface from 2003, showing user roles and management options in a web browser.
How Drupal looked like in 2003.
A screenshot of the Drupal content management system's access control settings page from 2006.
How Drupal looks in 2006.
Diagram comparing a coupled Drupal website with a headless CMS, showing content delivery through APIs to multiple front ends.
This diagram illustrates the differences between a coupled – but headless-enabled – Drupal website and a headless CMS with various front ends receiving content.
Diagram comparing a coupled Drupal website with a headless CMS, showing how content is delivered to multiple front ends.
This diagram illustrates the differences between a traditional Drupal website and a headless CMS with various front ends receiving content.
Diagram comparing two Drupal architectures: one as both a front end and content service, and another as an API-first backend.
This diagram illustrates the ideal architecture for Drupal, which should be leveraged as both a front end in and of itself as well as a content service for other front ends.
Commit message where the project was named "Drupal" and the GNU GPL license was added.
The commit where I dubbed my website project "Drupal" and added the GPL license.
A graph that shows how Drupal is perceived by beginners, intermediate users and expert users.
Beginners struggle with Drupal while experts love Drupal.
A graph that shows how Drupal, WordPress, AEM and Sitecore are perceived by beginners, intermediate users and experts.
Drupal's sentiment curve goes in the opposite direction of WordPress', AEM's and Sitecore's. This presents both a big challenge and opportunity for Drupal.
Screenshot of Drupal 11 upgrade status report in the administration interface.
Screenshot of a Drupal upgrade status report showing hosting environment compatibility checks.
A clapperboard with "DrupalCON Brussels" details next to a Drupal logo featuring the word "Bootlegging.
© Development Seed
Two blue Druplicon stress balls with smiling faces, placed side by side against a dark background.
Druplicon stress balls ... sometimes one needs them. Created and distributed by Ixis.
A Drupal.
A screenshot of an issue comment on Drupal.org. You can see that jamadar worked on this patch as a volunteer, but also as part of his day job working for TATA Consultancy Services on behalf of their customer, Pfizer.
Several stacked cardboard boxes labeled "Drupal Gardens Eye Grow Drupal", with some boxes open revealing packing materials.
Guess what is in these boxes?
Forbes article discussing Drupal, an open-source community management system, with its blue droplet logo prominently displayed.
Drupal was mentioned in Forbes as part of an article called "Social networking terms you should know". Great to see our work being recognized by Forbes. *Super!*
A group of people collaborating on Drupal 7 core and Views upgrade at a coding sprint, using laptops.
With chx, dereine, seutje, mrbaileys, Bojhan and myself working Drupal 7 core and the Drupal 7 upgrade of Views.
Diagram comparing traditional, fully decoupled, and progressively decoupled Drupal, showing how the CMS renders and delivers content.
Under progressive decoupling, the CMS renderer still outputs the skeleton of the page.
A diagram compares traditional Drupal with progressively decoupled Drupal, showing how pages and components interact with the CMS.
In the case of many-headed Drupal, fully decoupled applications can live alongside progressively decoupled pages, whose skeletons are rendered through the CMS.
Diagram comparing traditional (monolithic) and decoupled (headless) Drupal architectures, showing front end separation in decoupled approach.
Traditional ("monolithic") versus fully decoupled ("headless") architectural paradigm.
Diagram comparing traditional and fully decoupled Drupal architectures, showing direct rendering versus multiple endpoints for content delivery.
In a fully decoupled architecture, the theme layer is often ignored altogether, and many content management capabilities are lost, though many clients ingesting data are possible.
Banner with "Happy 8th Birthday", colorful balloons, date "1-15-2009", and Drupal logo on a blue background.
© Jamey Boje (aka graphicsguru)
Banner with "Happy 9th Birthday" text, date "1-15-2010", Drupal logo, and colorful balloons on a blue background.
© Jamey Boje (aka graphicsguru)
A diagram showing a spectrum of site building solution; low-code solutions on the left and high-code solutions on the right
Over the past year, JavaScript frameworks have become more complex, while static site generators have become less complex.
A word cloud of all the individuals who contributed to Drupal 8.8.
Thanks to the 641 individuals who worked on Drupal 8.8 so far.
A screenshot from a Jive Software whitepaper comparing Jive Social Business Software to Drupal, highlighting perceived advantages.
A screenshot from Jive Software's whitepaper called: "The unique advantage of Jive Social Business Software over Open Source Software".
A speaker at a podium smiles while presenting, with a large projected face behind them.
Photo credit: Chrys.
A mockup of a potential new navigation menu for Drupal administrators and editors.
A Mark Boulton mockup of the "header" that we might see in Drupal 7.
A prototype of a media library interface with selectable image thumbnails and an "Insert Selected to Page" button.
A work-in-progress prototype of the proposed media library.
A man with closed eyes holds a clear astronaut-style helmet around his head in a desert landscape.
© Moby.com
Acquia Cloud now supports Node.js for Headless Drupal
On Acquia Cloud, customers can access Drupal and Node.js environments from a single user interface.
A word cloud of all the organizational contributors who contributed to Drupal 8.8.
Thanks to the 243 different organizations who contributed to Drupal 8.8 to date.
Bar chart showing survey results on familiarity with open-source CMS platforms, with WordPress, Joomla, and Drupal ranking highest.
© 2009 Open Source CMS market share report by Water & Stone and CMSWire.
Bar chart showing positive and negative sentiment for various CMS platforms, with WordPress and Drupal having mostly positive feedback.
© 2009 Open Source CMS market share report by Water & Stone and CMSWire.
Line graph showing PHP5 adoption rate increasing steadily from July 2004 to March 2007, based on Nexen data.
PHP5's adoption rate based on data from Nexen.
PHP5 naive forecast
A naive forecast of PHP5's adoption rate. As the major Linux distributions (RedHat, Debian and Ubuntu) started shipping PHP5 recently, I was optimistic and assumed PHP5's growth to be exponential. Based on data from Nexen.
A mountain images with 5 product strategy tracks leading to the top
Drupal's five product strategy tracks. A number of current initiatives is shown on each track.
A sample of the last product survey showing that we should focus on content authors
An example result from the 2016 Drupal product survey. The result shows that in 2016 we decided to focus on "content authors" as the most important persona. Since that survey, we improved Drupal's authoring workflows, media management, layout building, and more.
A design proposal for the Project Browser.
A design proposal for the Project Browser. Users can filter modules by category, development status, security policy and more. Users can also page through results or sort the results by the number of active installs.
A funnel-shaped diagram illustrating Drupal's release cycle, narrowing through phases from development to final release with increasing restrictions.
Phases of development, represented as a funnel gradually getting smaller as fewer and fewer patches are accepted. In Development Phase, anything goes: major new APIs, new features, etc. Feature Completion Phase allows for tying up loose ends on features that are already committed, or significantly in progress. Clean-Up Phase is for stabilization, better consistency, and completing conversions to new APIs. Polish Phase moves to focus on the upgrade path, performance optimization, and improving docs. Finally, during Release Phase, we crank on critical bugs until we release!
Reservoir API documentation
API documentation auto-generated based on the content model built in Reservoir.
Reservoir side by side previews of HMTL and JSON API
Reservoir includes side-by-side previews of content in HTML and JSON API output.
Reservoir welcome screen
The welcome screen after installing Reservoir.
Feature branches merge into the main branch only when ready, enabling independent development and faster releases.
Feature branching; each feature is developed in a dedicated branch. A feature branch is only merged into the main branch when it is "shippable". We no longer have to wait for the slowest feature before we can create a new release.
A diagram showing trunk-based development, where all work is on one main branch, delaying release until all features are ready.
Trunk-based development; all development is done on a single main branch and as a result we can only release as fast as the slowest feature.
Diagram comparing Drupal's current state, progressive decoupling, and full decoupling, showing backend and frontend responsibilities.
A framework can assume responsibility over very little, such as with Backbone, or a great deal of the stack, including the rendering process.
A diagram comparing coupled, fully decoupled, and progressively decoupled Drupal front-end experiences for users, editors, and site builders.
This diagram shows some of the possible front-end experiences that could rely on a single Drupal back-end. In full decoupling, a custom application built using a client-side framework encompasses the entire front-end. In progressive decoupling, JavaScript manipulates an initial state already provided by the theme layer.
Line graph showing Drupal.
The past growth in absolute numbers. The "January 2007"-kink is due to the fact that data for December 2006 is not yet available at this point.
Bar chart showing Drupal.
The past growth in relative numbers. In 2005, the number of nodes and comments grew by more than 300%. In 2006, the number of nodes and comments grew by more than 230%.
A line graph shows projected site activity growth for Drupal.
A growth projection using a polynomial fit (multiple regression). Simply put, the correlation coefficient R-square, is a measure for the quality of the fit. R-square can assume values between 0 and 1, where a value of 1 indicates a perfect fit. Bear in mind that a statistical fit may be anything but an accurate prediction of future growth.
Pie chart showing CMS usage: 37% homegrown, 28% none, 24% open source, and 11% commercial.
Source: 2006 State of Web Development, SitePoint Pty Ltd. and Ektron, Inc., August 2006.
Pie chart showing CMS usage: 37% Homegrown, 28% None, 24% Open Source, and 11% Commercial.
Source: 2006 State of Web Development, SitePoint Pty Ltd. and Ektron, Inc., August 2006.
Line chart showing Drupal's production code and test code from 2012 to 2026. Test code grows from near zero to over 650,000 lines; production code grows from 90,000 to 300,000 lines.
Drupal's test code now exceeds production code by more than two to one. Source: Drupal Core Metrics.
Values and principles alpha
An overview of Drupal's values with supporting principles.
A screenshot of the node edit form showing the new 'vertical tabs' feature.
The current node edit form in Drupal 7, the next major version of Drupal that is currently under development. Note the improved text format selector and the vertical tabs near the bottom. The "vertical tabs" show different groups of settings along with a summary.
A display of all the ingredients required to make a Drupal cake
Step 1: buy the ingredients.
A close-up of colorful m&m's
Step 7: unpack the m&m's. You'll want lots of those ...
A close-up of blue m&m's only
Step 8: filter out all the blue ones (by eating the other ones).
Butter and white chocolate being melted on a stove
Step 10: melt butter and chocolate 'au bain marie'. Add cream and sugar to complete the frosting.
A round cake with a triangular piece on top
Step 6: put the cake and the hair together.
Frosting being applied on a cake
Step 11: pour the frosting over the cake.
A hand decorating a cake with blue m&m's
Step 12: put the blue m&m's on the cake. We used a piece of paper to get the eyes right.
A hand taking the top of the cake off
Step 4: take off the top.
A cake being cut in half
Step 3: flatten the cake by cutting off the top.
A finished cake the shape of Druplicon
Step 13: that's it! Happy birthday Drupal!
Sugar, butter, cream, m&m's and white chocolate displayed in bowls
Step 9: take sugar, butter, cream, and genuine Belgian white chocolate to make frosting.
A cake in a cake pan
Step 2: bake a regular cake. It should be round because this will become Druplicon's face ...
A close up of a triangular piece of cake
Step 5: create Druplicon-hair out of the top (you know, the thingy that sticks out of his head).
A newspaper article from *De Morgen* discusses the launch of an online community for young people to share creative content.
© De Morgen
A newspaper article from De Standaard discusses 16plus, a Flemish video-sharing website inspired by YouTube.
© De Standaard
An envelope from Taiwan with two Drupal stickers, including one for a Drupal Taiwan Meetup event.
Charles Chuang sent me some Drupal stickers from Taiwan.
A screenshot of Google's mentor administration panel displaying a list of accepted student projects with their mentors.
A screenshot of Google's mentor administration panel which shows the accepted applications.
A table showing the time spent in Drupal 7 functions, sorted by self-time, with call counts for 100 requests.
This figure shows how much time is spent in each function. The functions are sorted by the 'Self' column, which shows the time spent in each function without the time spent in its children. The third column shows how often the function was called to serve 100 requests to the main page.
A table showing functions that call `db_query()` in Drupal 7, with execution time, count, and caller details.
This picture depicts db_query()'s callers.
A table showing time spent in Drupal 7 functions, sorted by inclusive time, with call counts for 100 requests.
This figure shows how much time is spent in each function. The functions are sorted by the 'Incl' column, which shows the time spent in each function including the time spent in the function's children. The third column shows how often the function was called to serve 100 requests to the main page.
Table showing function execution times when page caching is disabled, sorted by self-time and call frequency.
This figure shows how much time is spent in each function when page caching is disabled. The functions are sorted by the 'Self' column, which shows the time spent in each function without the time spent in its children. The second column shows how often the function was called to serve 100 requests to the main page.
Table showing time spent in each function during page caching, sorted by self-time and call frequency for 100 requests.
This figure shows how much time is spent in each function when page caching is enabled. The functions are sorted by the 'Self' column, which shows the time spent in each function without the time spent in its children. The second column shows how often the function was called to serve 100 requests to the main page.
Table showing Drupal functions querying the database for 100 cached pages, with execution time, query count, and function names.
This figure shows the Drupal functions responsible for querying the database when serving 100 cached pages. The first column shows how much time is spent in the calls to db_query(). The second column shows how many times each function queried the database and the last column shows the functions' names and source files.
Table showing Drupal functions querying the database, with execution time, query count, and function names from source files.
This figure shows the Drupal functions responsible for querying the database when serving 100 pages. The first column shows how much time is spent in the calls to db_query(). The second column shows how many times each function queried the database and the last column shows the functions' names and source files.
Drupal 5 theme customization interface showing the Garland theme with a color picker for adjusting the color scheme.
The new default core theme that will ship with Drupal 5.0. The new theme is called Garland and was created by Stefan Nagtegaal and Steven Wittens. The screenshot shows you the new theme as well as the color picker to alter the color scheme.
A music website featuring Sony artists' videos, ratings, and reviews, with Beyoncé's "Irreplaceable" highlighted as a top video.
Musicbox is a community site by Sony Music where you can watch and rate and review the music videos of all Sony artists.
A bowl filled with brown sugar, ready to be used as an ingredient for baking cookies.
Step 2: unpack the ingredients.
A bowl filled with smooth, mixed cookie dough, ready for the next step in baking.
Step 3: mix all the ingredients as you would normally do.
A metal ring is bent into the shape of the Drupal logo, with pliers resting nearby.
Step 5: bend a metal ring so it takes the shape of Druplicon (the Drupal logo).
A round cookie cutter is pressed into rolled-out dough on a floured surface.
Step 6: cut Druplicons in dough using our Druplicon cookie cutter.
A person carefully lifts a small piece of cookie dough from a larger sheet on a floured surface.
Step 7: take out the Druplicon shaped dough.
Freshly baked cookies resting on a baking sheet after being taken out of the oven.
Step 9: take the cookies out of the oven.
Baking ingredients and tools, including flour, sugar, butter, an egg, and food coloring, arranged on a countertop.
Step 1: buy the tools and the ingredients to make the cookies of your choice. Could be peanut butter cookies, oatmeal cookies or sugar cookies as long there is room for custom frosting.
A hand dips a fish-shaped cookie into a bowl of blue frosting.
Step 11: dip the cookies into the frosting.
A plate of homemade cookies with blue icing, shaped like the Drupal logo, celebrating Drupal's birthday.
Step 13: that's it! Happy birthday Drupal!
A tray of cookies baking in the oven, with a reflection of a Drupal-themed t-shirt on the glass.
Step 8: put the Druplicon dough in the oven. That's my "DrupalCon Brussels" t-shirt reflecting in the oven's cover glass.
A packet of white frosting and a bottle of blue food coloring for mixing blue frosting.
Step 10: mix the frosting with blue food coloring.
A hand holds a cookie covered in blue frosting, with excess frosting dripping off.
Step 12: dip the cookies in the frosting.
A YSlow performance report for Drupal.
The current YSlow score for the drupal.org front page is 74 (C). YSlow suggests that we reduce the number of CSS background images using CSS sprites, that we use a Content Delivery Network (CDN) like Akamai for delivering static files, and identifies an Apache configuration issue that affects the Entity Tags or ETags of static files. The problem is that, by default, Apache constructs ETags using attributes that make them unique to a specific server. A stock Apache embeds inode numbers in the ETag which dramatically reduces the odds of the validity test succeeding on web sites with multiple servers; the ETags won't match when a browser gets the original component from server A and later tries to validate that component on server B.
Bar chart showing the number of people with expert, little, or no experience, and those wanting to learn Drupal-related skills.
The Y-axis shows the number of people that selected the given skill.
A white mug with the Drupal logo, filled with a frothy drink, with a spoon inside.
Good morning world! Remember, sleep is no substitute for good coffee.
A heat map of Drupal's admin page shows where users looked and clicked within the first five seconds.
The heat map shows where the users look the first 5 seconds after landing on Drupal's main administration page. The red X's show where the users clicked.
A timeline comparing Drupal 7 development cycles with and without testing, showing differences in development and code freeze periods.
The Drupal 7 timeline assuming that we fully embrace testing.
Projected Drupal 7 timeline showing a 5-month development phase and 7-month code freeze, with a marker for July 15, 2008.
The projected Drupal 7 timeline based on the actual Drupal 6 timeline.
A timeline for Drupal 6 showing a 5-month development cycle followed by a 7-month code freeze.
The actual Drupal 6 timeline.
A line graph compares global Google search trends for Drupal, Joomla, and WordPress from 2004 to 2008.
The numbers on the graph reflect how many searches have been done for a particular term, relative to the total number of searches done on Google over time. See Google Insights results for Drupal.
A world map and list showing regional search interest in Drupal, with darker blue indicating higher search volume.
Regional Drupal interest by country. Google uses the term 'search volume index' for these heatmaps, meaning that they normalized the data by the total traffic from each respective region. In other words, just because two regions show the same percentage for a particular term doesn't mean that their absolute search volumes are the same. See Google Insights results for Drupal.
Top search terms related to Drupal, with "drupal module" ranking highest and several rising searches marked as breakout trends.
The top search on Drupal -- great for marketing people. Breakout means that the search term has experienced a change in growth greater than 5000%. See Google Insights results for Drupal.
A black BMW M5 with a custom California license plate that reads "DRUPAL", parked in a garage.
A car spotted with a 'Drupal star' license plate.
A Drupal logo appears in the sky above a green hill, with sunlight and a double rainbow behind it.
Rainbow over a cross on a hill in Maui, Hawaii.
Two people pose at the Boston.
Last night there was a launch party to celebrate the launch of Boston.gov. It was an honor to give some remarks about this project alongside Boston Mayor Marty Walsh (pictured above), as well as Lauren Lockwood (Chief Digital Officer of the City of Boston) and Jascha Franklin-Hodge (Chief Information Officer of the City of Boston).
Drupal on nasdaq billboard times square
Nasdaq CIO and vice president Brad Peterson at the Acquia Engage conference showing the Drupal logo on Nasdaq's MarketSite billboard at Times Square NYC.
Kevin Thull recording kit
This is one of Kevin Thull's recording kits used to record hundreds of Drupal presentations around the world. Each kit runs at about $450 on Amazon.
A photo of a runner at the Ultra-trail Snowdonia ultramarathon
© Ultra-trail Snowdonia and No Limits Photography
A photo of a runner at the Ultra-trail Snowdonia ultramarathon
© Ultra-trail Snowdonia and No Limits Photography
The proposal from the Drupal Governance Task Force
Me reviewing the Drupal Governance proposal on a recent trip.
A timeline that shows how we shifted Drupal 8's release windows
We shifted Drupal 8's minor release windows so we can adopt Symfony's releases faster.