Planet Drupal

Syndicate content
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 36 min 9 sec ago

Acquia Developer Center Blog: Mother of All Demos II: The Future of Acquia Cloud

Tue, 04/04/2017 - 15:26
div class=field field-name-field-blog-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg typeof=foaf:Image class=img-responsive src=https://dev.acquia.com/sites/default/files/styles/blog__190_x110_/public/moad_cloud.jpg?itok=-7CeyDuc width=140 height=85 alt=cloud image title=cloud image //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpemOne of the highlights of a href=https://engage.acquia.com/ target=_blankAcquia Engage/a is when Chief Product Officer Chris Stone and his team of engineers demo Acquia products and give attendees a preview of what is on the horizon. Dubbed “The Mother of All Demos,” this presentation showcases the best of Acquia’s products and offers insight into the future of the company, not just Acquia’s product offerings.br //embr //p/div/div/divdiv class=field field-name-field-blog-tags field-type-taxonomy-term-reference field-label-inline clearfixdiv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tags/acquia-drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=acquia drupal planet/a/div/div/div

Flocon de toile | Freelance Drupal: Token and chained entities on Drupal 8

Tue, 04/04/2017 - 12:00
div class=field field--name-body field--type-text-with-summary field--label-hidden field--itempThe a href=https://www.drupal.org/project/token target=_blanktoken/a module is one of these essential modules on any Drupal 8 project. It allows you to use tokens in certain input fields, whether configuration or content, to target the value of one entity field. Many modules use it to allow users or site builder to provide dynamic value without the need for coding./p pLet's see how to access the content's values from these tokens, but also to the values ​​indirectly associated with these contents, from Entity reference fields./p/div

Roman Agabekov: Making your robots.txt unaffected by Drupal core upgrade

Tue, 04/04/2017 - 11:28
article data-history-node-id=97 role=article about=https://drupal-admin.com/blog/custom-robotstxt typeof=schema:Article class=node node--type-article node--promoted node--view-mode-teaser clearfixheaderh2 class=node__title a href=https://drupal-admin.com/blog/custom-robotstxt rel=bookmarkspan property=schema:name class=field field--name-title field--type-string field--label-hiddenMaking your robots.txt unaffected by Drupal core upgrade/span /a /h2 span property=schema:name content=Making your robots.txt unaffected by Drupal core upgrade class=rdf-meta hidden/span span property=schema:interactionCount content=UserComments:0 class=rdf-meta hidden/span div class=node__meta article typeof=schema:Person about=https://drupal-admin.ru/users/admin class=profile/articlespan Submitted by span rel=schema:author class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about=https://drupal-admin.com/users/admin typeof=schema:Person property=schema:name datatype= xml:lang=admin/span/span on span property=schema:dateCreated content=2017-04-04T09:28:00+00:00 class=field field--name-created field--type-created field--label-hiddenTue, 04/04/2017 - 09:28/span /span span property=schema:dateCreated content=2017-04-04T09:28:00+00:00 class=rdf-meta hidden/span /div /headerdiv class=node__content clearfix div property=schema:text class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempToday’s post is a quick tip that will help you keep your robots.txt after you update the site’s Drupal core with drush./p p lang=ru-RU xml:lang=ru-RUMost likely, you know the problem, too: each time you update the Drupal core (with drush, first of all), you lose all changes you may have introduced to robots.txt manually. A good idea is to always have a backup of this file handy, but every now and then you only have an outdated version of robots.txt and you learn that only when you check the updated site with webmaster tools./p/div div class=field field--name-field-tags field--type-entity-reference field--label-inline clearfix h3 class=field__label inlinetags/h3 ul class=links field__itemslia href=https://drupal-admin.com/taxonomy/term/113 property=schema:about hreflang=enDrupal Planet/a/li /ul/div /div /article

Wunderkraut Sweden Blog: Cache in Drupal 8: How it worked, and what we wanted to be solved in D8

Tue, 04/04/2017 - 11:23
If you just want your content to be cached before Drupal 8, there were almost no problems, just turn on caching for anonymous users, and you are all set. Muhahhaha! Who am I kidding... If you just want your content to be cached before Drupal 8, there were almost no problems, just turn on caching for anonymous users, and you are all set. Muhahhaha! Who am I kidding... If you want to interact with users with different content depending on the user, role etc. You got problems, if you want to invalidate the cache, you got problems. If you want to show a View of nodes, and turn off caching of that view, but had caching for anonymous users, you got problems. And so on. The most caching issues were solved by clearing all the cache, which could bring down the site if your unlucky. So the real problem we wanted solve were not caching per see, it was cache invalidation. And like Phil Karlton supposedly said in the early nineties “There are only two hard things in Computer Science: cache… a href=https://wunderkraut.se/blogg/cache-drupal-8-how-it-worked-and-what-we-wanted-be-solved-d8 class=views-more-linkRead More/a

Code Positive: Specification By Example For Drupal Agencies

Tue, 04/04/2017 - 09:35
img src=http://www.codepositive.com/sites/default/files/styles/rss_banner/public/2017-03/behat-bridge.jpg?itok=OUGMdgjB width=940 height=230 alt=Bridging the communications gap between clients and Drupal developers title=Bridging the communications gap between clients and Drupal developers typeof=Image class=image-style-rss-banner /hr /pBridging the communications gap between clients and Drupal developers with Specification By Example./p hr /

Code Positive: Specification By Example For Drupal Angencies

Tue, 04/04/2017 - 09:35
img src=http://www.codepositive.com/sites/default/files/styles/rss_banner/public/2017-03/behat-bridge.jpg?itok=OUGMdgjB width=940 height=230 alt=Bridging the communications gap between clients and Drupal developers title=Bridging the communications gap between clients and Drupal developers typeof=Image class=image-style-rss-banner /pBridging the communications gap between clients and Drupal developers with Specification By Example./p

Droptica: Droptica: Your own Drush command in Drupal 8

Tue, 04/04/2017 - 09:19
In Drupal 8 we can easily add our own command to Drush. The whole code for the new command will be put in a custom module. We have to create only 2 files. The structure looks as follows. File d_drush_command_pack.info.yml A standard file of every module in which there is information about our plugin.

CU Boulder - Webcentral: Writing Node Migrations From Drupal 7 to Drupal 8

Tue, 04/04/2017 - 08:00
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item evenh2Are Content Migrations for Drupal 8 As Easy As Advertised?/h2 /div/div/div Developer Blog

Acquia Developer Center Blog: Password Policies and Drupal

Mon, 04/03/2017 - 17:57
div class=field field-name-field-blog-image field-type-image field-label-hiddendiv class=field-itemsdiv class=field-item evenimg typeof=foaf:Image class=img-responsive src=https://dev.acquia.com/sites/default/files/styles/blog__190_x110_/public/blog/password-screen.jpg?itok=00VR_b70 width=140 height=85 alt=password screen title=password screen //div/div/divdiv class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpPeople tend to a href=https://duo.com/blog/brief-analysis-of-the-gawker-password-dumpchoose bad passwords/a if they are allowed to./p pBy default Drupal provides some guidance about how to make your password stronger, but there's no enforcement of any particular password policy out of the box. As usual, there's a module for that. More than one in fact./p/div/div/divdiv class=field field-name-field-blog-tags field-type-taxonomy-term-reference field-label-inline clearfixdiv class=field-labelTags:nbsp;/divdiv class=field-itemsdiv class=field-item evena href=/tags/acquia-drupal-planet typeof=skos:Concept property=rdfs:label skos:prefLabel datatype=acquia drupal planet/a/div/div/div

Code Positive: Getting set up with Behat 3 on Windows

Mon, 04/03/2017 - 17:22
img src=http://www.codepositive.com/sites/default/files/styles/rss_banner/public/2017-03/radio.jpg?itok=evhlf_Su width=940 height=230 alt=Getting set up with Behat 3 on Windows title=Getting set up with Behat 3 on Windows typeof=Image class=image-style-rss-banner /pA step by step guide to installing Behat 3 for Windows. /p

Appnovation Technologies: Live from Magento Imagine 2017

Mon, 04/03/2017 - 16:17
Live from Magento Imagine 2017 It's that time of the year again, where all that is Magento finds itself in motion toward Las Vegas for the annual Magento Imagine conference. Our eCommerce Director Tim Laurent is live from Vegas this week, and outlines his expectations and thoughts for the next few days at the conference: For the third year in a row, we're at the Wynn hotel--a nice...

Code Positive: Benefits of Behat

Mon, 04/03/2017 - 16:10
img src=http://www.codepositive.com/sites/default/files/styles/rss_banner/public/2017-03/map.jpg?itok=fdi5qxZN width=940 height=230 alt=Benefits of Behat title=Benefits of Behat typeof=Image class=image-style-rss-banner /pBehat stories are human-readable descriptions of how a website should behave, which can be used for automated testing./p

Third Grove: Third Grove goes to DrupalCon Baltimore

Mon, 04/03/2017 - 11:59
span property=schema:name class=field-name--titleThird Grove goes to DrupalCon Baltimore/span span class=field-name--uid rel=schema:authorspan lang= about=https://www.thirdandgrove.com/user/3 typeof=schema:Person property=schema:name datatype= xml:lang=antonella/span/span span property=schema:dateCreated content=2017-04-03T09:59:04+00:00 class=field-name--createdMon, 04/03/2017 - 05:59/span

SystemSeed: Apple Pay on Concern.net

Mon, 04/03/2017 - 09:35
pWe are very happy to announce that after several months of combined work with Concern Worldwide and Apple we now support Apple Pay via desktop, iPhone, iPad and Apple Watch @ a href=https://www.concern.net/enConcern.net/a!/ppThis was a fascinating endeavour for our team with many requirements spanning both hardware and software./ppWe now have tools in place for a href=http://concern.net/enConcern.net/a donation forms to enable existing donors to make a donation, or increase their regular donations by following a marketing link and press a single button on the form before using their fingerprint to authenticate payment./ppThere is a famous saying that i“The best GUI is no GUI”/i This ideal is now a tangible possibility./ppStay tuned for further developments as to how you can donate without fuss to one of the world’s leading charities./ppOur many thanks to all the teams at SystemSeed, Concern and Apple that helped facilitate this work./ppPlease consider making the world a brighter place for those in need by going to a href=http://concern.net/enConcern.net/a and donating via Apple Pay or any other method today./p

Jeff Geerling's Blog: MidCamp 2017 Presentation - Drupal VM for Drupal 8 Development

Sat, 04/01/2017 - 20:23
div class=field field-name-body field-type-text-with-summary field-label-hiddendiv class=field-itemsdiv class=field-item even property=content:encodedpMidCamp is one of my favorite Drupal events—it hits the sweet spot (at least for me) in terms of diversity, topics, and camp size. I was ecstatic when one of my session submissions was accepted, and just finished presenting a href=https://www.midcamp.org/session/developing-drupal-8-drupal-vmDeveloping for Drupal 8 with Drupal VM/a./p pa href=https://www.slideshare.net/geerlingguy/drupal-vm-for-drupal-8-dev-midcamp-2017img src=//www.jeffgeerling.com/sites/jeffgeerling.com/files/images/drupal-vm-presentation.png width=650 height=366 alt=Drupal VM presentation slide class=insert-image //a/p pYou can see slides from the presentation here: a href=https://www.slideshare.net/geerlingguy/drupal-vm-for-drupal-8-dev-midcamp-2017Drupal VM for Drupal 8 Development/a, but without the full video there are a lot of gaps (especially on slides where there's just a giant emoji!). Luckily, Kevin Thull of a href=http://bluedropshop.comBlue Drop Shop/a is hard at work recording emall/em the sessions and posting them to YouTube. He's already processed the video from my session, and it's available below:/p/div/div/div

MidCamp - Midwest Drupal Camp: MidCamp 2018, March 8-11

Sat, 04/01/2017 - 17:40
pMidCamp 2017 was a huge success! Thank you to everyone who came, helped, supported, spoke and attended!/p pMidCamp 2018 is confirmed for March 8th through March 11th, 2018 back here at the DePaul University Lincoln Park Student Center!/p pCome and join us next year!/p pStay connected:/p ul lia href=https://www.midcamp.org/midcampagramMidcampagram/a/li lia href=https://www.flickr.com/photos/midcamp/MidCamp photos on Flickr/a/li lia href=https://twitter.com/search?f=realtimeamp;q=%23MidCampamp;src=typd#MidCamp/a/li liRecordings of sessions are on the a href=https://www.youtube.com/channel/UCWf6JWaRR8GIHbrZyDFhV3A/feedMidCamp youtube channel/a/li lia href=https://twitter.com/MidwestCampMidCamp on Twitter/a/li lia href=https://www.facebook.com/MidCampMidCamp on Facebook/a/li lia href=https://plus.google.com/+MidCampOrgMidCamp on Google+/a/li lia href=https://joind.in/event/midcamp-2017MidCamp on Joind.in/a/li /ul

Colorfield: Drupal Dev Days Seville 2017 documentation

Sat, 04/01/2017 - 17:38
span property=schema:name class=field field--name-title field--type-string field--label-hiddenDrupal Dev Days Seville 2017 documentation/span span rel=schema:author class=field field--name-uid field--type-entity-reference field--label-hiddenspan lang= about=https://colorfield.be/user/1 typeof=schema:Person property=schema:name datatype= xml:lang=christophe/span/span span property=schema:dateCreated content=2017-04-01T15:38:12+00:00 class=field field--name-created field--type-created field--label-hiddenSat, 01/04/2017 - 17:38/span div property=schema:text class=clearfix text-formatted field field--name-body field--type-text-with-summary field--label-hidden field__itempJust bookmarking here the amazing documentation that was produced during the Dev Days./p/div

Drupal core announcements: Drupal 8 core release window on Wednesday, April 05, 2017

Sat, 04/01/2017 - 03:00
div class=field field-type-datestamp field-field-start7 div class=field-items div class=field-item odd div class=field-label-inline-first Start:nbsp;/div span class=date-display-start2017-04-04 12:00/spanspan class=date-display-separator - /spanspan class=date-display-end2017-04-06 12:00 UTC/span /div /div /div div class=field field-type-userreference field-field-organizers div class=field-labelOrganizers:nbsp;/div div class=field-items div class=field-item odd a href=/user/4521 title=View user profile.catch/a /div div class=field-item even a href=/user/1639494 title=View user profile.cilefen/a /div div class=field-item odd a href=/user/24722 title=View user profile.xjm/a /div /div /div div class=field field-type-text field-field-event-type div class=field-labelEvent type:nbsp;/div div class=field-items div class=field-item odd Online meeting (eg. IRC meeting) /div /div /div pThis Wednesday, April 05 is the release window for Drupal 8.3.0, the next scheduled a href=https://www.drupal.org/core/release-cycle-overview#minorminor release/a of Drupal 8. There will be no Drupal 7 bugfix release this month./p pTo ensure a reliable release window for the minor release, there will be a Drupal 8.3.x commit freeze from 12:00 UTC Tuesday to 12:00 UTC Thursday. Now is a good time to update your development/staging servers to the latest 8.3.x-dev code and help us catch any regressions in advance. If you do find any regressions, please report them in the a href=http://drupal.org/project/issues/drupal?version=8.xissue queue/a. Thanks!/p pTo see all of the latest changes that will be included in the release, see the a href=http://cgit.drupalcode.org/drupal/log?h=8.3.x8.3.x commit log/a./p pOther upcoming core release windows after this week include:/p ulliWednesday, April 19 (security release window)/li liWednesday, May 03 (patch release window)/li /ulpFor more information on Drupal core release windows, see the documentation on a href=http://drupal.org/documentation/version-info#whenrelease timing/a and a href=http://drupal.org/node/1173280security releases/a, as well as the a href=https://www.drupal.org/core/release-cycle-overviewDrupal core release cycle overview/a./p

Aten Design Group: Testing for the Brave and True: Part Zero

Sat, 04/01/2017 - 00:25
img src=https://atendesigngroup.com/sites/default/files/functional_testing_drupal.png width=1000 height=600 alt= /pIf you're not testing, you're doing it wrong. I can't remember how many times I've heard those words. Each time, I'd feel a little pang of guilt, a little bit of shame that every day, I wrote code for myself and clients that wasn't tested. I'd be frustrated with the developers who repeated that mantra. Sure, it was easy to say, but hard to live up to. How do I test? What do I test? Should I test? How would I justify the costs?/p pAs a developer who started his career writing custom code for Drupal applications, it was easy to skip testing. Drupal 7 was really quite untestable, at least in any practical sense. Drupal core itself was tested, and big modules like Views, Ctools, and Entity API had test suites too. But finding tests in other custom code or smaller modules was a rarity. Even today, with a vastly more testable code base, documentation for testing Drupal code is terse and hard to come by. It's focused on educating core contributors and module maintainers, not day-to-day developers writing modules to satisfy particular real-world needs./p pI hope this series will change that for you./p pI will make the case that you should be testing; that you'll save time and you'll save money, and that you won't need to justify the cost. This series will start from first principles:/p ul liWhat is automated testing?/li liWhy is automated testing a net positive?/li liHow do I write my first test?/li liHow do I write the one after that? (because that's really where it gets hard isn't it?)/li /ul h2Part Zero/h2 h3What is automated testing?/h3 pI define automated testing as the act of asserting that your code achieves its goals without human interaction./p h3Types of Automated Tests/h3 pThere are many types of automated testing. Each serves a specific need and each operates at a different level of abstraction. They form something like a pyramid, your most numerous tests should be at the bottom, as you go higher up the stack, you should have fewer and fewer tests./p div class=imageimg src=/sites/default/files/p0.png alt=Functional Test Pyramid//div pAt the lowest level, are strongunit tests/strong (and that's what this series will focus on). Unit testing is code that you write to test or exercise the actual custom code that you write. Unit tests isolate very small bits of functionality and assert that your code can handle all kinds of inputs correctly. You might write a unit test to assert that an span class=geshifiltercode class=php geshifilter-phpaddspan style=color: #66cc66;#40;/spanx, yspan style=color: #66cc66;#41;/span/code/span function adds numbers correctly./p div class=imageimg src=/sites/default/files/p1.png alt=Functional Test Pyramid - Unit Tests//div pAbove unit tests, are strongintegration tests/strong. Integration tests assert that the small bits of functionality that you tested with unit tests integrate together. Perhaps you wrote a suite of arithmetic functions which you unit tested individually. When those functions come together into a calculator, you might write integration tests to validate that they all work in harmony./p div class=imageimg src=/sites/default/files/p2.png alt=Functional Test Pyramid - Integration Tests//div pAt the highest level are strongsystem tests/strong. System tests assert that your application works as a cohesive whole. These acceptance tests are usually best expressed as the functionality your client cares about. Can my potential customer use a calculator to estimate a mortgage payment and then call me for a quote?/p div class=imageimg src=/sites/default/files/p3.png alt=Functional Test Pyramid - System Tests//div pThere are no definite lines of separation between these types of tests, they all fall along a continuum—it's a curve, not a step function./p pIt's not important to know exactly where your test falls on that curve, really, it's just important to know that:/p ul liYou can test at different levels of abstraction./li liYou do not need to test emeverything/em at every level of abstraction./li /ul h3Different Tools for Different Tests/h3 pJust as there are different types of tests, there are different tools that go along with them. As with all things in software development, there are lots of tooling choices and tradeoffs no matter what you choose. The beauty of using Drupal, however (or any framework) is that some of those choices have already been made for you either officially or by convention in the community./p pAt the lowest level, is strongunit testing/strong. The standard adopted by Drupal 8 is PHPUnit. PHPUnit is a suite of command line tools and base classes that make writing tests easier. Drupal has extended some of the PHPUnit classes with some extra features that make testing code written specifically for Drupal easier. The Drupal class used for unit testing is called a href=https://api.drupal.org/api/drupal/core!tests!Drupal!Tests!UnitTestCase.php/class/UnitTestCase/8.2.xUnitTestCase/a. We're going to take a deep dive into this, and all the Drupal testing classes and tools later in the series./p pAt the strongintegration test/strong level, Drupal uses a mix of PHPUnit and Simpletest, but is migrating all of its Simpletest based code to extensions of PHPUnit tests that can achieve the same things. In Drupal, the class primarily used for this kind of testing is called a href=https://api.drupal.org/api/drupal/core%21tests%21Drupal%21KernelTests%21KernelTestBase.php/class/KernelTestBase/8.2.xKernelTestBase/a./p pAt the strongsystem test/strong level the lines begin to become somewhat blurred. Drupal calls these “Functional” tests and there are two classes for them. a href=https://api.drupal.org/api/drupal/core%21modules%21simpletest%21src%21WebTestBase.php/class/WebTestBase/8.2.xWebTestCase/a and a href=https://api.drupal.org/api/drupal/core%21tests%21Drupal%21Tests%21BrowserTestBase.php/class/BrowserTestBase/8.2.xBrowserTestBase/a classes can do quite a bit, and are the standard for testing Drupal Core and contributed modules. They work well for contributed modules and Drupal core because they don’t need to test the specifics of a real-world Drupal application and all the configuration and customization that implies./p pThe Drupal community has largely settled on Behat as the standard for testing real-world Drupal applications. Behat works by starting a headless browser that can emulate a real user by doing things like clicking links and filling out forms. These kinds of tests let you test the configuration of your Drupal site holistically—your theme, javascript and custom code—which ensures that everything works well together./p pI hope this post has given you a sense of what automated testing is and some basic terminology that we can share in the next part of this series: “Why Automated Testing will Save You Time and Treasure.”/p

Chocolate Lily: The Coming Drupal Fork

Fri, 03/31/2017 - 18:31
div class=field field-name-body field-type-text-with-summary field-label-hidden view-mode-rssdiv class=field-itemsdiv class=field-item even property=content:encodedpIn recent days there's been a bunch of insightful and thought provoking reflection within the Drupal community (as well as a share of bullshit). I've benefited from hearing perspectives that remind me of my biases and privileged placement as a cis white male. A a href=http://buytaert.net/living-our-values#comment-132181comment by Melissa Anderson/a, someone I know and respect, had particular impact for me./p pA lot of attention has focused on a particular action by Drupal project owner Dries Buytaert. But many are going deeper./p pThe trouble with Drupal is not so much any individual action./p pThe trouble is that, for all its collective trappings and thousands of contributors, Drupal is formally structured as a dictatorship./p pReally? In 2017? Yes, really./p h2The Thing About Dictatorship/h2 pAs detailed in a href=https://www.drupal.org/contribute/core/maintainersdocumentation of the Drupal project structure/a, the self-anointed benevolent dictator for life not only exerts ultimate control over code but also preserves [that is, controls] the philosophy, culture, and principles of the project./p pWow. Think about that for a minute./p pThe occasional overt dictate can indeed be worrisome. But I'm actually much more troubled by what's so normalized in the project that it passes without comment./p pI won't repeat what I've gone on (and on!) about in previous comments and reflections on Drupal's power structure going back over a dozen years. Here's a selection:/p ul lia href=https://www.drupal.org/node/15916Making Drupal fully 'community-driven': A Proposal for restructuring the Drupal project/a (January, 2005)./li lia href=https://www.drupalwatchdog.com/volume-4/issue-2/will-revolution-be-drupalizedWill The Revolution Be Drupalized?/a (September, 2014)./li lia href=https://tag1consulting.com/blog/tag1-spotlight-nedjo-rogersTag1 Spotlight: Nedjo Rogers/a (April, 2015)./li /ul pBut I will add I'm struck anew by what seems to me the unusual depth and reach of the authoritarian model in the Drupal project./p pI've often heard it said, for example, that Linux, too, has a so-called benevolent dictator for life./p pTrue. But, contrary to Drupal, the Linux dictator doesn't individually set the terms of reference of, and appoint every member to, key community structures. (Come to think of it, isn't there something Orwellian about a so-called a href=https://www.drupal.org/governance/community-working-groupCommunity Working Group/a a href=https://www.drupal.org/node/2850603appointed by a dictator/a?) Unlike Buytaert with the Drupal Association, the Linux dictator doesn't have his a href=https://assoc.drupal.org/files/BRDDCIRevisedBylaws0423014.pdfname written into the bylaws/a of the Linux Foundation as a director with own reserved slot, nor has he served as the de facto permanent a href=https://www.drupal.org/association/boardboard president/a of the Linux Foundation since its inception. He doesn't have a seemingly permanent seat on the committee that vets every nomination to the Linux Foundation board./p pAnd, crucially, unlike Buytaert in Drupal, he isn't a founder and key executive of the Linux company that exerts the deepest influence on the software./p pEffective checks on the absolute power of the project founder? It's really hard to find any./p pFor thousands of people caught up in the Drupal project, what does all this mean in practice? As in many communities, boundaries often blur. Drupal can come to define not only one's work life, but also leisure activities like volunteer coding or meetup organizing, even key daily social links and interactions./p pPut that together with a patriarchal model, intimately tied to capitalism and corporate power, permeating all these realms - work, leisure, friendship, community - and you get a deeply troubling degree of influence. One that, precisely because it's everywhere, may be almost invisible. In a community where it's all about personal ties and influence, power seldom needs to act overtly./p pDictator for life. This, too, is something to think long and hard about. That's a lot of future years. For those who stay, what does it mean, this prospect of being part of a dictatorship culture most of one's life?/p pThere's a tonne of beautiful energy in the Drupal project. There are brilliant and passionate people who care deeply about our community and are rightfully proud of our collective project./p pNot thanks to the dictatorship model. In spite of it./p pIs what we're seeing the beginnings of a Drupal spring? If so, where might it lead?/p h2The Coming Fork/h2 pConditions are ripe for a fork of the Drupal project. But what kind of fork?/p pFor a software community mired in regressive power dynamics, a fork can be a positive source of renewal, allowing participants to resolve contradictions and carry forward the project's best attributes./p pOr a fork can replicate the same regressive crap that prompted problems in the first place./p pWorse--given the current context, a fork could reinforce and enshrine forms of cis white male privilege./p pSo the key question is not so much whether to fork. Rather, it seems to be: if so, how?/p h3A cultural fork/h3 pYes, there are deep problems with Drupal's code base, many resulting from the warping effects of corporate interests. But the primary challenge of a fork is not about code. It's about culture./p pThe dictatorship model in Drupal runs deep. So, no, a light makeover isn't going to cut it. A fork needs a radical cultural reset./p pWe need to look to voices of diversity and inclusion./p pWe need to create room for critical perspectives and insights that too often have been shouted down by louder voices in the project--ones that, over and over, have rushed to attack questioners of the founder's prerogatives. (I speak as someone who's repeatedly been targeted for my critical voice. And sometimes, yes, silenced.)/p pWe need to deeply question a culture that promotes living for the cause as a positive or even a required leadership quality./p pIn the Backdrop fork of Drupal, I and others a href=https://github.com/backdrop/backdrop-issues/issues/59#issuecomment-25050487promoted a project management committee structure/a, replacing the single dictator with a group of lead contributors. And I do think the more diverse and inclusive a href=https://backdropcms.org/leadershipBackdrop leadership team/a is a huge improvement over Drupal./p pBut, here, is it enough? Not nearly./p pI personally want to look for inspiration and ideas to the a href=http://platformcoop.netplatform cooperative/a movement, which is opening horizons for free software collectively owned by those who use and build it./p pThat vs. dictatorship? I know where my heart is./p h3Existing strengths/h3 pA fork should draw in existing progressive initiatives and structures in and around the Drupal space./p pOne that I'm involved with is a href=http://drutopia.orgDrutopia/a./p pWe've also got an expending number of engaged, radical organizations and cooperatives in the Drupal sphere. How do we draw them in? Or, maybe better put: how can we be open to them drawing us in?/p h3A fork shouldn't require people to switch/h3 pStrategically, a new fork will probably have the most scope and impact if it doesn't force people to switch immediately to something new. Instead, it could work as a drop-in replacement for Drupal 8--and future Drupal versions./p pFor those familiar with the MySQL database, think a href=https://mariadb.comMariaDB/a, the community-led fork of MySQL. If you already use MySQL, you can switch very painlessly to MariaDB--and get some great improvements for your effort. Your existing MySQL databases just work. The MariaDB project maintains compatibility by merging in changes from MySQL./p pIn the same way, a Drupal fork could just work if your site was originally built on Drupal./p h2Moving Forward/h2 pCrises in authoritarian systems play out in familiar ways. There will be - there already are - calls for a brand of healing that involves returning to the fold, reflecting sagely on lessons supposedly learned, and pledging renewed faith in the beneficent leader. Ah, I see one such post just appeared from the Drupal Association. Right on cue./p pAnd there will be organizing on the ground. By those of us truly fed up with a corrosive patriarchal agenda, one that once again masks its power behind a false and exploitative language of inclusion./p pWho are hungry for progressive change./p /div/div/div