Community + Code: Episode 14 - Mike Herchel

๐ **Source:** [Community + Code: Episode 14 - Mike Herchel](https://www.youtube.com/watch?v=vEaN-j1q2hs)
> [!note]+ Document Notes
> tags: [drupal, cms, community, dripyard, drupal-canvas, marketplace, web-development]
> author: Community + Code
> source: YouTube
> reference: https://www.youtube.com/watch?v=vEaN-j1q2hs
> date created: 2024-12-19 14:32
>
> # ๐ท๏ธ Title: Community + Code: Episode 14 - Mike Herchel on Drupal Themes, Dripyard, and the Future of Drupal CMS
>
<!-- deep-read:sections start -->
## ๐งฐ Action Inbox
- [H1] Research Drupal Canvas release timeline โ mentioned RC1/RC2 status #drupal-canvas
- [H2] Check Drupalcon Chicago pricing and site template marketplace launch โ March timeline #drupal-events
- [H3] Explore single directory components documentation โ component development workflow #drupal-themes
## ๐งญ Table of Contents
- [๐ Summary](#-summary)
- [๐ Main Content](#-main-content)
- [๐๏ธ Notes](#๏ธ-notes)
- [๐ References](#-references)
- [๐ฃ๏ธ Paraphrase](#๏ธ-paraphrase)
- [๐ฐ Newsletter](#-newsletter)
- [โ
Action Items](#-action-items)
- [๐งช Hypotheses](#-hypotheses)
- [๐ Methodology](#-methodology)
- [โ Questions](#-questions)
- [๐ฎ Future Research](#-future-research)
- [๐ก Implications](#-implications)
- [๐ง Learning Styles Assessment](#-learning-styles-assessment)
- [๐ Accessibility Assessment](#-accessibility-assessment)
- [๐ DEIB Assessment](#-deib-assessment)
- [โ
Logical Validity](#-logical-validity)
- [๐ก๏ธ DARVO Analysis](#-darvo-analysis)
- [๐ฏ Conclusion](#-conclusion)
### ๐ References
- [Dripyard](https://dripyard.com)
- [Drupal Starshot Product Strategy](https://dri.es)
- [Community + Code Podcast](https://communityandcode.com)
## ๐ Summary
- Mike Herchel, co-founder of Dripyard, discusses creating premium Drupal themes using new component architecture
- Why Drupal historically lacked a robust theme marketplace compared to WordPress
- How Drupal's shift toward mid-market with Drupal CMS and Canvas page builder changes the landscape
- Community collaboration vs commercial competition dynamics between Drupal and WordPress ecosystems
- Technical evolution from table-based layouts to modern component-driven development
## ๐ Main Content
Mike Herchel explains how Drupal's new single directory components solve historical theming limitations that prevented a viable marketplace. Unlike WordPress themes that could predict markup structure, Drupal themes couldn't anticipate custom content types or views configurations, making universal themes nearly impossible.
The introduction of components allows themes to ship with 50-60 reusable components that can be mapped to any content structure through Drupal Canvas, the upcoming page builder. This enables site templates - complete packages with themes, content types, modules, and sample content.
Drupal's strategy targets the mid-market ($10K-30K budget websites) that WordPress dominates, moving away from enterprise-only focus. The community maintains collaborative values by keeping modules GPL-free forever while allowing commercial themes through CSS/JavaScript licensing loopholes.
## ๐๏ธ Notes
#### โฑ๏ธ [00:00](https://youtu.be/vEaN-j1q2hs?t=0) โ [H1] Introduction to Dripyard and Premium Drupal Themes
- Key idea: Dripyard sells premium Drupal themes that "don't suck" using new component architecture
- Evidence: "We sell premium Drupal themes that don't suck"
#### โฑ๏ธ [02:15](https://youtu.be/vEaN-j1q2hs?t=135) โ [H2] Historical Drupal Theme Limitations
- Key idea: Themes couldn't predict markup structure from dynamic content types and views
- Evidence: "The theme could never predict what the DOM structure was and what the CSS classes is"
#### โฑ๏ธ [04:30](https://youtu.be/vEaN-j1q2hs?t=270) โ [H2] Single Directory Components Solution
- Key idea: New component system provides predictable markup and data schema
- Evidence: "You have a theme can ship a whole library components as you know the markup the schema of what type of data it has"
#### โฑ๏ธ [08:45](https://youtu.be/vEaN-j1q2hs?t=525) โ [H1] Drupal's Mid-Market Strategy Shift
- Key idea: Moving from enterprise-only to compete with WordPress in $10K-30K budget range
- Evidence: "We need to recapture this mid-market...for for Drupal to become feasible of like being being a CMS chosen for a website, you know, that has like maybe a budget of like 10 to $30,000"
#### โฑ๏ธ [12:20](https://youtu.be/vEaN-j1q2hs?t=740) โ [H2] Drupal CMS and Canvas Page Builder
- Key idea: Drupal CMS provides preconfigured "easy button" with Canvas as next-gen page builder
- Evidence: "Aquia...is creating a next generation page builder called Drupal Canvas. And Drupal Canvas does everything that you pretty much, you know, you would assume it would do"
#### โฑ๏ธ [15:10](https://youtu.be/vEaN-j1q2hs?t=910) โ [H1] Site Templates Marketplace Launch
- Key idea: Complete packages with themes, content types, modules, and sample content launching at Drupalcon Chicago
- Evidence: "The marketplace is is set to kick off like right around Dripcon Chicago, which is going to be in March"
#### โฑ๏ธ [18:30](https://youtu.be/vEaN-j1q2hs?t=1110) โ [H2] WordPress vs Drupal Commercial Ecosystem
- Key idea: WordPress has significantly more money due to robust commercial ecosystem
- Evidence: "The amount of money in the WordPress ecosystem is like significantly more than in the Drupal ecosystem"
#### โฑ๏ธ [22:15](https://youtu.be/vEaN-j1q2hs?t=1335) โ [H1] Community Collaboration vs Competition
- Key idea: Drupal developers more likely to collaborate and merge competing solutions
- Evidence: "If I have an SEO plugin and you have an SEO plugin, then we might work together and be like, well, let's make one of these things the de facto SEO plugin"
#### โฑ๏ธ [26:40](https://youtu.be/vEaN-j1q2hs?t=1600) โ [H2] Module Ecosystem Stays Free
- Key idea: Modules remain GPL forever while themes can be commercialized
- Evidence: "Dre had stated modules will always be GPL forever free...and it's it's the themes that, you know, that that that could be commercial code"
#### โฑ๏ธ [30:20](https://youtu.be/vEaN-j1q2hs?t=1820) โ [H2] GPL Licensing Strategy
- Key idea: CSS and JavaScript aren't necessarily GPL, enabling closed-source premium themes
- Evidence: "Things like CSS and JavaScript will not necessarily be GPL"
#### โฑ๏ธ [35:45](https://youtu.be/vEaN-j1q2hs?t=2145) โ [H1] Mike's Origin Story in Tech
- Key idea: Started with Dell/Gateway tech support, discovered web design through coworker
- Evidence: "I got into uh computers back in like 1999. I used to do technical support for Dell and Gateway Computers"
#### โฑ๏ธ [42:10](https://youtu.be/vEaN-j1q2hs?t=2530) โ [H2] Discovery of Drupal Community
- Key idea: Found Florida Drupal Camp in 2010, became hooked on community aspect
- Evidence: "I was kind of hooked on the I was like, 'Holy I didn't know that there was actual community'"
#### โฑ๏ธ [48:30](https://youtu.be/vEaN-j1q2hs?t=2910) โ [H1] Drupal CMS First-Time User Experience
- Key idea: Guided install asking "what type of site" provides better UX than other CMSs
- Evidence: "It's asking you like what type of site you want to you want to create"
#### โฑ๏ธ [52:45](https://youtu.be/vEaN-j1q2hs?t=3165) โ [H2] Canvas vs Gutenberg Developer Experience
- Key idea: Canvas uses same component system as regular Drupal, no separate markup versions needed
- Evidence: "If I want to create a component that works in and outside of canvas, it's it's the same as creating a component like outside of canvas"
## ๐ References
- [Dripyard Premium Drupal Themes](https://dripyard.com)
- [Drupal Starshot Strategy](https://dri.es)
- [Drupal Single Directory Components](https://www.drupal.org/docs/develop/theming-drupal/using-single-directory-components)
## ๐ฃ๏ธ Paraphrase
- Drupal historically couldn't support a theme marketplace because themes couldn't predict the markup structure generated by dynamic content types and views, unlike WordPress where themes have more predictable structures
- The new single directory component system allows themes to ship complete libraries of components with defined markup, data schemas, CSS and JavaScript, solving the theming prediction problem
- Drupal is shifting strategy from enterprise-only to compete in the mid-market space dominated by WordPress, launching site templates and a marketplace at Drupalcon Chicago in March
## ๐ฐ Newsletter
**Drupal's Theme Revolution: Learning from WordPress While Staying True to Community Values**
The Drupal ecosystem is experiencing a significant transformation with the emergence of premium theme marketplaces like Dripyard. This shift addresses a historical limitation where Drupal themes couldn't predict content structure, making universal themes nearly impossible.
The breakthrough came with single directory components - a system that lets themes ship complete component libraries with defined markup, data schemas, and styling. Combined with the upcoming Drupal Canvas page builder, this enables "site templates" that include themes, content types, and sample content in one package.
What's fascinating is how Drupal maintains its collaborative community values while embracing commercialization. Modules stay GPL-free forever, encouraging continued collaboration, while themes can be commercialized through CSS/JavaScript licensing approaches.
For WordPress developers, this evolution offers insights into balancing commercial success with community health - something both ecosystems continue to navigate.
Resources: [Drupal CMS](https://www.drupal.org/drupal-cms), [Single Directory Components](https://www.drupal.org/docs/develop/theming-drupal/using-single-directory-components), [Community + Code Podcast](https://communityandcode.com)
## โ
Action Items
#### DevRel
- Developer advocacy: Document component development patterns, create Canvas tutorials
- Education: Workshop curriculum for WordPress->Drupal migration, site template development
- Developer experience: Component debugging tools, YAML validation improvements
- Developer marketing: Case studies comparing Canvas to Gutenberg development experience
- Community management: Bridge WordPress and Drupal communities through cross-pollination events
#### Community
- Maintainers: Component library governance, site template quality standards
- Contributors: First-time contributor paths for theme/template development
- Sponsors: Marketplace revenue sharing models, community fund allocation
- Ecosystem: Cross-CMS collaboration opportunities, shared component standards
#### WordPress
- Core: Study Drupal's guided installation UX improvements
- Design: Evaluate Canvas interface patterns for Gutenberg improvements
- Community: Explore collaboration vs competition dynamics in plugin ecosystem
- Documentation: Component development documentation improvements
- Themes: Research site template concepts for WordPress implementation
## ๐งช Hypotheses
- Drupal's component-based theming will enable a more robust premium theme ecosystem than historically possible
- Site templates combining themes, content types, and sample data will reduce Drupal's learning curve for mid-market adoption
- The GPL loophole for CSS/JavaScript will sustain commercial theme development while preserving module collaboration
- Drupal Canvas will provide superior developer experience compared to Gutenberg's dual-markup requirement
### ๐ Methodology
- Study design: Compare theme development workflows between Drupal components and WordPress blocks
- Data sources: Developer survey on Canvas vs Gutenberg experience, marketplace adoption metrics
- Experiments: A/B test guided installation vs traditional setup flows for first-time CMS users
### โ Questions
- How will the balance between commercial themes and free modules affect long-term community dynamics?
- Can Drupal's mid-market strategy succeed without fragmenting the enterprise customer base?
- Will WordPress adopt similar guided installation patterns based on intended site purpose?
### ๐ฎ Future Research
- Cross-CMS component portability standards and interoperability possibilities
- Economic impact analysis of premium marketplaces on open source community health
- User experience research on guided vs traditional CMS installation flows
### ๐ก Implications
- Practice: Component-driven development becomes standard for both CMSs, changing developer skillsets
- Policy: GPL interpretation for CSS/JavaScript licensing may influence other open source projects
- Security: Site templates introduce new supply chain considerations for bundled components
- Education: Need for cross-CMS literacy as platforms adopt each other's successful patterns
- Funding: Premium marketplaces could provide sustainable revenue for core development
### ๐ง Learning Styles Assessment
Reading level estimate: 12th grade
#### ๐ Visual learners
- Present: Component architecture diagrams, Canvas interface screenshots
- Improve: Drupal vs WordPress ecosystem comparison charts, development workflow visualizations
#### ๐ Aural learners
- Present: Full podcast interview available
- Improve: Component development audio tutorials, Canvas feature walkthrough narration
#### ๐ฃ๏ธ Verbal learners
- Present: Clear explanations of technical concepts, historical context provided
- Improve: Glossary of Drupal-specific terms, analogy-based explanations for WordPress developers
#### ๐งฉ Kinesthetic learners
- Present: Mentions of hands-on component development, filing bugs
- Improve: Step-by-step component creation labs, Canvas builder sandbox
#### ๐ง Logical learners
- Present: Clear problem-solution structure, technical architecture explanations
- Improve: Decision trees for CMS selection, component dependency diagrams
#### ๐งโ๐คโ๐ง Social learners
- Present: Community collaboration examples, conference networking stories
- Improve: Cross-CMS developer exchange programs, collaborative component development guides
#### ๐งโโ๏ธ Solitary learners
- Present: Personal journey narrative, individual learning experiences
- Improve: Self-paced component development course, reflection prompts on community vs commercial balance
#### ๐ฟ Naturalistic learners
- Present: Ecosystem evolution analogies, organic community growth patterns
- Improve: CMS ecosystem health metrics, sustainable development practice examples
### ๐ Accessibility Assessment
#### Screen reader semantics
- Present: Structured headings in transcript, speaker identification
- Improve: Time-stamped sections need proper heading hierarchy, add component interface descriptions
#### Keyboard navigation
- Present: Standard podcast player controls
- Improve: Transcript navigation shortcuts, component demo keyboard accessibility
#### Contrast and readability
- Present: Clear transcript formatting
- Improve: Ensure code examples meet contrast requirements, larger text options for technical diagrams
#### Text resizing and reflow
- Present: Responsive transcript layout
- Improve: Ensure component documentation scales properly at 200% zoom
#### Media and captions
- Present: Full transcript provided
- Improve: Add timestamp synchronization, downloadable transcript option
#### Forms and interactions
- Present: Basic podcast interface
- Improve: Canvas interface accessibility evaluation, component form accessibility guidelines
### ๐ DEIB Assessment
#### Cultural breadth
- Present: Discussion of different CMS communities, global conference examples
- Improve: Include perspectives from developers in different economic regions, non-English language considerations
#### Inclusive language
- Present: Professional, welcoming tone throughout
- Improve: Define technical jargon consistently, avoid CMS tribalism language
#### Neurodiversity support
- Present: Clear structure with timestamped sections
- Improve: Break longer technical explanations into shorter chunks, add visual cues for topic transitions
#### Representation
- Present: Focus on technical merit over personal characteristics
- Improve: Include diverse voices in future episodes, showcase varied developer backgrounds
#### Psychological safety
- Present: Respectful discussion of competing platforms
- Improve: Acknowledge different learning paths, validate various levels of technical expertise
### โ
Logical Validity
#### Strong reasoning
- Deductive strength: Clear cause-effect relationship between technical limitations and marketplace failure
- Inductive strength:
---
## Full Transcript
[00:01] [music]<br>[00:07] [music]<br>[00:18] [music]<br>[00:21] Welcome to Community and Code, uh, the<br>[00:23] podcast where we talk to the humans<br>[00:25] behind the commits. I'm here today with<br>[00:28] Mike Hershel, who is a co-founder of<br>[00:31] something called Dripyard and a longtime<br>[00:33] member and uh, developer in the Drupal<br>[00:35] community. Welcome to the show, Mike.<br>[00:37] >> Hey, thanks for having me. So I think<br>[00:39] we'll we can start by uh asking uh what<br>[00:43] is a dripyard?<br>[00:45] >> That's a good question. Oh, there's a<br>[00:48] whole bunch of background. Uh so like<br>[00:51] the tlddr of dripyard is we sell premium<br>[00:54] Drupal themes that don't suck. Um like<br>[00:58] >> so so Drupal in the past like really<br>[01:02] never had a robust theme ecosystem like<br>[01:04] WordPress or Web Flow or any of the<br>[01:06] other competitors have. And and part of<br>[01:08] that reason is just because uh within<br>[01:11] within within Drupal the theme is so<br>[01:14] separated from like the rest of the<br>[01:17] system it would never have any idea what<br>[01:19] the markup is. So like a Drupal<br>[01:21] developer would go in and create you<br>[01:23] know their views which are kind of like<br>[01:25] the smart list like the loop type stuff<br>[01:27] and but the theme could never predict<br>[01:30] what you know what the DOM structure was<br>[01:32] and what the CSS classes is. So, so it<br>[01:34] could never you can never theme against<br>[01:36] that and that recently all changed.<br>[01:38] Drupal now sh has the a concept of<br>[01:40] components. We have like a a thing<br>[01:42] called single directory components where<br>[01:44] you have a a theme can ship a whole<br>[01:46] library components as you know the<br>[01:48] markup the schema of what type of data<br>[01:50] it has and you know JavaScript and CSS.<br>[01:53] So our company uh is now shipping uh<br>[01:56] themes that uh you know have a whole<br>[02:00] library of components. you can wire your<br>[02:02] data directly in there, you know,<br>[02:03] through the UI or through code. But<br>[02:06] yeah, that's that's basically the gist<br>[02:08] of it. [laughter]<br>[02:10] >> So, I'm a WordPress dude and I think a<br>[02:14] lot of a lot of this is going to be uh<br>[02:16] we do this in WordPress and and how does<br>[02:18] this work in Drupal? And I I it's funny<br>[02:20] because I was at uh I was at Bad Camp uh<br>[02:23] last month.<br>[02:24] >> It was my first Bad Camp, which is Bay<br>[02:25] Area Drupal Camp. Uh and I was doing<br>[02:27] that that thing. I was being that<br>[02:29] person, the the voice of why is<br>[02:31] WordPress do this uh for the for the<br>[02:32] Drupal folks there. Um so so I I I will<br>[02:36] definitely empathize uh [clears throat]<br>[02:38] putting you in this position having just<br>[02:40] been in that position from the other<br>[02:42] side. Um but so so talk a little bit<br>[02:46] more about like like you you mentioned<br>[02:49] some there's like specifically technical<br>[02:51] limitations of u the way that themes<br>[02:54] sort of existed in Drupal in the past<br>[02:56] that sort of prevented the existence or<br>[02:59] I guess feasibility of something like a<br>[03:01] marketplace. Uh<br>[03:02] >> yeah.<br>[03:03] >> Can I guess from from from a dev<br>[03:06] perspective, somebody like I have a<br>[03:08] history of like building WordPress<br>[03:10] themes and actually had a a site for a<br>[03:13] while where I was attempting to sell<br>[03:15] WordPress themes. Why what what is the<br>[03:19] sticking point? What are the sticking<br>[03:20] points that prevented that from being<br>[03:23] really uh doable in in Drupal from like<br>[03:26] like a in the weeds kind of uh<br>[03:30] direction? Yeah. Yeah. So, if you want<br>[03:33] to get down into the weeds, um, like<br>[03:36] Drupal, of course, has been around for a<br>[03:38] very long time. And like, so within<br>[03:41] Drupal, you go into your admin form or<br>[03:44] your admin side and you create what's<br>[03:46] called content types, which are the same<br>[03:47] thing as post types, you know,<br>[03:49] >> and and they're all fieldable. They're<br>[03:51] all kind of and and then we have another<br>[03:54] like uh module that's integrated in in<br>[03:57] into Drupal called views and you create<br>[03:59] like basic like like a listing of items<br>[04:02] and you can create filters and smarts.<br>[04:04] It's it's really powerful. You can do a<br>[04:05] heck of a lot of stuff with it. But as<br>[04:08] you do that uh as you create these<br>[04:10] content types as you create these fields<br>[04:13] within the content types as you create<br>[04:15] these views Drupal will add markup. you<br>[04:18] know, it'll add like a thing like it'll<br>[04:20] like with Drupal a piece of content is<br>[04:22] called a node. And so it'll add like a c<br>[04:26] a default CSS class on there called like<br>[04:28] node- dash, you know, episode or<br>[04:31] something if you're doing a podcast<br>[04:32] website.<br>[04:34] But when you're trying to sell a theme,<br>[04:38] you know, you're trying to sell a theme<br>[04:39] that can work with a whole bunch of<br>[04:41] things and the theme doesn't have this<br>[04:44] functionality. Themes cannot cannot<br>[04:46] contain content types. They can't<br>[04:47] contain views.<br>[04:49] >> So<br>[04:51] you can ship a theme, but you don't know<br>[04:53] that that CSS class is going to be no d-<br>[04:56] episode.<br>[04:57] >> Sure.<br>[04:57] >> And you also don't know, you know, what<br>[05:00] the HTML structure is underneath, you<br>[05:03] know, and and and so that made things<br>[05:06] that made things pretty pretty,<br>[05:09] you know, almost impossible for a robust<br>[05:12] theme ecosystem. And and there's<br>[05:13] companies out there that do sell Drupal<br>[05:15] themes. you'll see them on<br>[05:16] >> theme forest and stuff like that.<br>[05:18] >> Um, these the themes that are sold like<br>[05:23] they kind of get around that by by<br>[05:25] shipping a a custom module with themes.<br>[05:27] And so the custom module might install<br>[05:29] some content types,<br>[05:31] >> you know, might have some views and<br>[05:32] stuff like that.<br>[05:33] >> But as soon as you go away from where<br>[05:37] that custom or where that custom module<br>[05:40] points you to, everything falls apart<br>[05:42] because theme can't handle that,<br>[05:44] >> right?<br>[05:45] And uh so so that's the difference, you<br>[05:48] know, and uh<br>[05:51] yeah. Yeah, that's basically<br>[05:53] >> Yeah. So like fundamentally I I guess<br>[05:55] sort of quasi equivalent, although I<br>[05:57] think you could still probably build a<br>[05:58] theme that was open enough in WordPress<br>[06:00] to to support this too. But like the the<br>[06:04] idea of like I'm doing uh like I we were<br>[06:07] talking before we start we hit record is<br>[06:09] like this website has a uh a custom post<br>[06:12] type called episodes and if like<br>[06:16] WordPress didn't understand and didn't<br>[06:18] like already like have some like base<br>[06:21] classes and whatever that just the<br>[06:23] themes expect to use or you know that<br>[06:25] are general enough. Um, then the idea is<br>[06:29] that because the theme doesn't<br>[06:30] necessarily know about the existence of<br>[06:32] the episode post type, it would and<br>[06:34] because Drupal specifically is kind of<br>[06:38] architected from the perspective of like<br>[06:40] we're letting you tell us what types of<br>[06:43] content you're using on your site. Uh,<br>[06:46] then it's like the theme is like, well,<br>[06:49] like I don't know what you're doing. Uh,<br>[06:52] so it can't really fill in those gaps as<br>[06:54] as easily is what I'm hearing. Yeah,<br>[06:56] exactly. So, you know, the and the theme<br>[06:58] can maybe do like some default styling,<br>[07:01] you know, you know, put some spacing<br>[07:02] around stuff, but you know, and and like<br>[07:05] me like like I the default theme in<br>[07:08] Drupal is called Olive Arrow. Like when<br>[07:09] you install when you install Drupal,<br>[07:11] that's what you get. And and I was the<br>[07:13] primary dev on that. And so we had to<br>[07:16] basically try to accommodate everything<br>[07:19] without the ability to accommodate<br>[07:20] everything.<br>[07:21] >> Sure. you know, but but with the<br>[07:24] introduction of components, you know, so<br>[07:26] so so now like as a as a theme<br>[07:29] developer, I can I can ship a library,<br>[07:31] you know, 50 60 components or more. And<br>[07:35] let's say I want to create an episode,<br>[07:37] you know, content type or post type or<br>[07:38] whatever. At that point, you know, I can<br>[07:41] I can kind of drag in, you know, the a<br>[07:44] title component, you know, map that to<br>[07:47] the, you know, my title field. I can<br>[07:49] drag in, you know, same thing with a<br>[07:50] body field or, you know, a video field<br>[07:53] and, you know, potentially, you know,<br>[07:56] MP3, like an audio player and stuff like<br>[07:58] that,<br>[07:59] >> right?<br>[08:00] >> And and so and so now it's it comes a<br>[08:03] lot more flexible, which is pretty neat.<br>[08:06] >> And uh I have been watching uh what's<br>[08:09] been going on in in Drupal land. Um this<br>[08:12] is sort of a uh one might suggest a<br>[08:16] fortuitous time for the existence or<br>[08:18] emergence of a theme development shop.<br>[08:21] Uh given that uh Dre Boyart the founder<br>[08:24] of Drupal has been talking a lot about<br>[08:26] uh marketplaces uh and selling Drupal<br>[08:30] stuff. Uh talk about that relationship<br>[08:33] and and what your thoughts are about<br>[08:36] sort of a commercial ecosystem for<br>[08:38] Drupal.<br>[08:40] >> Yeah. So like for the longest time when<br>[08:43] I say for the longest time maybe like<br>[08:44] for the past 10 years Drupal really<br>[08:47] concentrated on like the enterprise you<br>[08:49] know we were like all right let's just<br>[08:51] put all our time and effort into<br>[08:52] tracking down these Fortune 500<br>[08:54] companies and try to get these<br>[08:55] million-dollar contracts and you know<br>[08:57] that would work for the for for like the<br>[09:00] larger companies but at the same time<br>[09:03] the the unintended consequ consequence<br>[09:05] of that is that Drupal's market share<br>[09:07] started to decline<br>[09:08] >> and when the architecture declines that<br>[09:12] means that there are less Drupal<br>[09:14] developers. there are less people, you<br>[09:16] know, in that bid market kind of<br>[09:17] learning Drupal, knowing what Drupal is.<br>[09:20] And that has hurt Drupal, you know, and<br>[09:24] so eventually the, you know, the powers<br>[09:26] that be the leadership within Drupal<br>[09:28] said like, "All right, well, we need to<br>[09:30] recapture this mid-market and and and so<br>[09:34] the the put together this huge strategy<br>[09:37] and this is up on Drees's uh uh he has a<br>[09:41] blog somewhere called Starshot Product<br>[09:43] Strategy. Starshot was the code name for<br>[09:45] Drupal CMS before it was called Drupal<br>[09:47] CMS.<br>[09:48] >> And so basically the goal is to for for<br>[09:52] Drupal to become feasible of like<br>[09:56] being being a CMS chosen for a website,<br>[10:00] you know, that has like maybe a budget<br>[10:02] of like 10 to $30,000 or something like<br>[10:05] that, which right now, unless you're a<br>[10:07] Drupal developer, you probably don't<br>[10:09] want to do that because, you know,<br>[10:10] Drupal Drupal can be a little expensive.<br>[10:13] So, uh, as part of that, they they<br>[10:16] decided, all right, well, we're going to<br>[10:18] create this, uh, kind of like<br>[10:21] I call it like an easy button for<br>[10:23] Drupal, you know, and, uh, called Drupal<br>[10:25] CMS, and it has like all the modules<br>[10:27] that you have to download preconfigured,<br>[10:29] you know, because there's like some<br>[10:30] modules that should totally be part of<br>[10:32] Drupal core, things like, you know, like<br>[10:34] the uh, friendly paths, you know, so if<br>[10:37] you create a piece of content, it's not<br>[10:38] node one, it's like, you know, whatever<br>[10:42] it automatically gets that node title in<br>[10:44] there and stuff for SEO. Um, so it has<br>[10:47] all this stuff preconfigured. It's<br>[10:48] pretty nice, but um there's still a<br>[10:51] couple missing pieces in there. Uh, one<br>[10:53] of missing pieces is like a decent page<br>[10:56] builder. Like Drupal has this whole<br>[10:58] ecosystem of page builders because no<br>[10:59] one has specifically like taken over<br>[11:02] >> and honestly this is something that's<br>[11:04] like kind of hurt Drupal. You know, you<br>[11:06] can kind of do anything in Drupal, but<br>[11:07] it shouldn't be this much effort. you<br>[11:08] know, WordPress has Gutenberg, Web Flow<br>[11:10] has whatever the hell Web Flow has,<br>[11:12] etc., you know,<br>[11:13] >> and so so there's a there Aquia, which<br>[11:17] is kind of like the largest Drupal<br>[11:19] company and the one that Drew founded,<br>[11:21] uh, is creating a next generation page<br>[11:22] builder called Drupal Canvas. And Drupal<br>[11:25] Canvas does everything that you pretty<br>[11:27] much, you know, you would assume it<br>[11:29] would do, you know, and and does a few<br>[11:32] extra things, too, which is pretty cool.<br>[11:34] So you can like copy and paste<br>[11:35] components, group components, create<br>[11:36] what's called like patterns, you know,<br>[11:39] edit them, you know, you can map your<br>[11:42] data to it. It's it's pretty cool. Um<br>[11:45] and then um<br>[11:48] so so at that point we have you know<br>[11:52] once Drupal Canvas comes out which will<br>[11:54] probably be next month and then you know<br>[11:56] we have then Drupal CMS 2.0 will be<br>[11:59] released. So at that point we have like<br>[12:03] a pretty good starting point but we<br>[12:06] still need to like kind of put<br>[12:07] everything together to compete with<br>[12:09] WordPress to compete with Web Flow, Wix,<br>[12:12] Squarespace, you know, and all<br>[12:14] Contentful and all those headless CMS's.<br>[12:17] So at that point um [clears throat] you<br>[12:20] know the Drupal Association of Powers<br>[12:22] that be said like like we need this<br>[12:24] ecosystem. We want to do something<br>[12:26] called site templates. And site<br>[12:28] templates are basically like it's a it's<br>[12:31] a theme. It's a Drupal theme but also<br>[12:34] like preconfigured with those content<br>[12:36] types you know which are similar to post<br>[12:38] types. Uh you know has it can come<br>[12:42] preconfigured with modules and it can<br>[12:44] also come preconfigured with um default<br>[12:48] content you know. So, an example of this<br>[12:51] is like let's say I'm a church and I<br>[12:52] want to, you know, I want a church<br>[12:54] churchy website, you know, and uh<br>[12:57] >> I built a couple of those.<br>[12:59] >> Yeah. Yeah.<br>[13:01] Uh, you know, I I I I would<br>[13:03] hypothetically be able to browse this<br>[13:05] marketplace, look for a site template uh<br>[13:08] that like, you know, it would have maybe<br>[13:10] have a list of content types. You know,<br>[13:11] you may have like sermons,<br>[13:14] you know, events and blog, all that all<br>[13:16] that good stuff. And uh at that point uh<br>[13:20] pull it down, install it and at that<br>[13:23] point you would number one have all you<br>[13:25] would have content so you can just edit<br>[13:27] your content and then you would have a<br>[13:29] beautiful theme hopefully and everything<br>[13:31] preconfigured. So it's and but at but at<br>[13:34] that point like what's really cool is<br>[13:36] you have that flexibility of Drupal now<br>[13:38] like like Drupal is hyper flexible.<br>[13:40] Drupal can build like so many things if<br>[13:43] you have, you know, if you kind of know<br>[13:45] your way around it. Like like Drupal's<br>[13:47] freaking amazing. So So that's that's<br>[13:50] kind of where we're going with that. And<br>[13:53] and to get started, we're we're like the<br>[13:56] the marketplace is is set to kick off<br>[13:59] like right around Dripcon Chicago, which<br>[14:01] is going to be in March. And um it's<br>[14:04] going to be kind of like almost like a<br>[14:06] beta, you know, like we're going to be<br>[14:08] there. We're going to have a couple site<br>[14:09] templates. There's going to be 15 or 16<br>[14:10] other companies that have some tight<br>[14:12] site templates. We don't know what we're<br>[14:14] going to build yet or at least I don't<br>[14:15] know what we're going to build.<br>[14:17] >> Mhm.<br>[14:17] >> But um all our stuff is going to work.<br>[14:20] It's going to be awesome. It's going to<br>[14:21] be super successful and and uh hopefully<br>[14:24] people will buy it,<br>[14:25] >> you know, and if they buy it, well,<br>[14:27] that's good. Like<br>[14:30] like I I I can tell you like I've been<br>[14:33] to a number of word camps. I've been to<br>[14:35] like Word Camp Miami and Jacksonville,<br>[14:37] probably one or two others. And the<br>[14:40] amount of money in the WordPress<br>[14:41] ecosystem is like significantly more<br>[14:45] than in the Drupal ecosystem.<br>[14:48] >> And the reason is is because of the uh<br>[14:52] like the the robust commercial ecosystem<br>[14:55] around WordPress. you know, you have,<br>[14:57] you know, however many theme vendors,<br>[14:59] you got all these modu plug-in vendors,<br>[15:02] you know, and and and stuff like that,<br>[15:05] and they're all advertising. And and the<br>[15:07] thing about that is like that's why, you<br>[15:11] know, Word Camp US can cost thing like<br>[15:13] $50 or something like that because, you<br>[15:16] know, they get Is it $50 or is it just a<br>[15:18] couple hundred? Yeah, it's Yeah, it's I<br>[15:21] think<br>[15:22] I want to say this last year it was $50<br>[15:25] a day. I have honestly paid less<br>[15:28] attention to<br>[15:30] word camp prices because my company pays<br>[15:32] for them. So like I never even look at<br>[15:34] like the ticket price.<br>[15:35] >> But uh but yeah, I think it was I think<br>[15:37] it was $50 a day. So if you're going to<br>[15:39] Word Camp US, it would be a hundred day<br>[15:41] $100 I think. [snorts]<br>[15:42] >> Yeah. So that's like ridiculous.<br>[15:44] >> That's super that's super cheap. uh as<br>[15:45] compared to Drupalcon which is like 1K<br>[15:48] basically.<br>[15:49] >> Yeah. Yeah. And and and Drupalcon is<br>[15:51] lowering their prices FYI. Like<br>[15:53] Drupalcon Chicago like the prices are<br>[15:55] going to start like at 500 just because<br>[15:57] we're kind of realizing we're pricing<br>[15:59] people out, you know, especially like a<br>[16:00] lot of the smaller companies like like<br>[16:02] Dripyard, you know, like to drop a<br>[16:04] couple grand going there, you know,<br>[16:06] that's that's a little more significant<br>[16:08] than if you're like Pantheon or Aqua or,<br>[16:10] you know, Automatic or something like<br>[16:12] that. You know,<br>[16:13] >> you're hitting on all of my all of my uh<br>[16:16] like key touch points about things in<br>[16:18] the WordPress ecosystem. [laughter] Like<br>[16:20] there's just so many crossovers. So uh<br>[16:23] so one of the things, okay, so a<br>[16:25] foundational I'll start here. A<br>[16:26] foundational part of this podcast<br>[16:28] specifically came out of a sticker that<br>[16:31] I got from Drupal Con, which is right<br>[16:33] here, cuz I was at Drupalcon last year.<br>[16:36] Come for the code, stay for the<br>[16:37] community. And that that was I that<br>[16:40] resonated with me because that's the<br>[16:42] reason why I was in the WordPress<br>[16:44] community and ultimately that became one<br>[16:46] of the foundations for how I wanted to<br>[16:49] do this this show. Um, and one of the<br>[16:52] things that I learned when I was in<br>[16:54] Atlanta, uh, that is distinct about the<br>[16:58] Drupal community from the WordPress<br>[17:01] developer ecosystem is that in Drupal,<br>[17:05] more frequently, if we both have tools<br>[17:10] or modules or whatever that serve a<br>[17:12] similar purpose that we're probably more<br>[17:15] likely to be like, hey, let's join<br>[17:17] forces and make the best thing. So like<br>[17:19] if I have an SEO plugin and you have an<br>[17:20] SEO plugin, then we might work together<br>[17:23] and be like, well, let's make one of<br>[17:25] these things the de facto SEO plugin and<br>[17:27] make it the best plugin or module. Um<br>[17:30] whereas in the WordPress ecosystem, uh<br>[17:32] if I have an SEO plugin and you have an<br>[17:34] SEO plugin, I'm probably not going to<br>[17:36] talk to you because that's my IP and I<br>[17:38] might turn around and sell it. So, I<br>[17:40] heard I had a lot of conversations at uh<br>[17:43] Drupal Con about this, but also uh about<br>[17:46] the idea of a marketplace because that<br>[17:48] was sort of when Dre started uh floating<br>[17:50] the idea. Um<br>[17:52] >> and uh and my reaction as someone in the<br>[17:55] WordPress ecosystem is I really like<br>[17:58] that model of of being collaborative and<br>[18:01] sharing and and like you know joining<br>[18:04] these two uh things instead of like<br>[18:06] really going headto-head and competing.<br>[18:08] Um, what do you what is your take on<br>[18:11] sort of like because I because in<br>[18:14] WordPress we're more likely to be<br>[18:16] competitors and not sharing those ideas<br>[18:17] and being sort of siloing yourselves<br>[18:19] off. So what is your take on that sort<br>[18:21] of uh dynamic in terms of like do you do<br>[18:24] you see that as uh something that could<br>[18:26] be a risk to like the Drupal like<br>[18:28] developer ecosystem as things get<br>[18:30] [clears throat] a little bit more<br>[18:31] competitive?<br>[18:32] >> Yeah, things are always a risk, right?<br>[18:34] like as soon as you make big changes<br>[18:35] like this and these are the these are<br>[18:37] some of the biggest changes in the<br>[18:38] Drupal ecosystem uh ever you know uh<br>[18:42] there's always a risk. Um, so like to to<br>[18:46] expand on your point, like I I saw a<br>[18:48] blog post at one point that like<br>[18:49] WordPress had like I don't knowund and<br>[18:52] something form builders, you know, that<br>[18:55] that that you can buy and and and and<br>[18:57] they won't play nice with each other.<br>[18:59] >> And and and then like furthermore, like<br>[19:02] if you have WordPress and you install<br>[19:03] like, you know, 14 15 plugins, you're<br>[19:06] kind of<br>[19:07] >> your site's like a little funky. You're<br>[19:10] probably fighting Yeah. Yeah. Yeah. you<br>[19:12] can be fighting some bugs and stuff like<br>[19:14] that. Like one of the cool things is<br>[19:16] with Drupal is like all the modules play<br>[19:19] well together. Like Drupal has a very<br>[19:21] robust set of API APIs, you know, and<br>[19:24] and that's something that that we do<br>[19:26] better than WordPress. WordPress does a<br>[19:28] lot of better a lot a lot of things<br>[19:30] better than Drupal, but one thing we<br>[19:31] have is like a robust APIs that allow<br>[19:34] things to work together. So if you have<br>[19:35] like 60 70 modules installed on a uh on<br>[19:38] a Drupal site it it like that's normal.<br>[19:41] You know if you have a couple hundred<br>[19:43] that's fine too.<br>[19:44] >> Um and so like going into like Drupal<br>[19:50] has probably like three or four page<br>[19:52] builders but there's one like big one.<br>[19:53] It's called web form. You know it's easy<br>[19:56] and built around web form. There's<br>[19:57] ecosystems that build on top of that. So<br>[20:00] like you you know you'll have web form<br>[20:02] commerce, web form this, web form that<br>[20:04] that that allow you to do like you know<br>[20:07] little things and it's just really nice.<br>[20:08] You don't have to evaluate you don't<br>[20:10] know. You don't got to pay you know $20,<br>[20:13] $40 or whatever for something like that.<br>[20:14] You just try it. You get it to work and<br>[20:16] and everything goes. So like that's<br>[20:20] that's one of the advantages that that<br>[20:24] Drupal has and that's something that I<br>[20:26] think you know the leadership<br>[20:27] recognizes. Um,<br>[20:30] you know, Dre had stated modules will<br>[20:33] always be GPL forever free,<br>[20:35] >> you know, and it's it's the themes that,<br>[20:40] you know, that that that could be<br>[20:42] commercial code. So, back when I was you<br>[20:45] like back when I was like researching<br>[20:48] like like doing a little bit of due<br>[20:49] diligence like can I do dripyard, you<br>[20:51] know? So started looking into GPL and<br>[20:54] like everything because GPL for those<br>[20:56] who don't know has a very sticky license<br>[20:58] you know where like if if if you write<br>[21:01] PHP that builds on top of Drupal or<br>[21:04] WordPress and then distribute it it's<br>[21:06] technically GPL which means it's free<br>[21:09] >> and [clears throat] um<br>[21:12] >> but that doesn't necessarily apply to<br>[21:14] things that<br>[21:16] it's it's a little bit of legally but<br>[21:18] like things that are not directly<br>[21:20] interfacing with that. So things that<br>[21:22] can run in the browser,<br>[21:24] >> things like CSS and JavaScript will not<br>[21:27] necessarily be GPL and and I did a<br>[21:29] little bit of digging and and there's a<br>[21:31] Drupal licensing working group, you<br>[21:32] know, and there was some talk about that<br>[21:34] and and the conclusion that that I saw<br>[21:36] within this issue is yeah, yeah, like<br>[21:39] CSS and G and JavaScript is not<br>[21:41] necessarily GPL. So at that point, I was<br>[21:45] like, all right, well, we can do this.<br>[21:46] We can just kind of, you know, have our<br>[21:48] CSS and everything closed source. So<br>[21:52] the TLDDR of all the all of this is that<br>[21:58] like<br>[22:00] it's it's kind of like a fine line, you<br>[22:02] know, like you can't<br>[22:05] you like like it's not necessarily a<br>[22:08] good idea for everything to cost money<br>[22:11] and and then people don't collaborate,<br>[22:13] you know. Um but at the same time, you<br>[22:15] need money because people need to get<br>[22:17] paid,<br>[22:17] >> right? Like I am doing this because to<br>[22:20] tell you the truth like I wanna I want<br>[22:22] to be able to make six figures and work<br>[22:25] 20 hours a week. That is my dream,<br>[22:27] >> you know. And uh and<br>[22:31] >> yeah, so it's it's going to be a fine<br>[22:33] line. I have a feeling that like as we<br>[22:36] as as as Drupal continues to like<br>[22:40] continue down this path, there are going<br>[22:42] to be, you know, changes and people are<br>[22:44] going to figure things out. people like<br>[22:45] like Drupal's going to make mistakes and<br>[22:48] they're going to say like, "All right,<br>[22:49] well, let's back this up a little bit or<br>[22:52] maybe we should go forward a little bit<br>[22:53] more." You know, maybe we're not doing<br>[22:54] this enough.<br>[22:56] >> Yeah.<br>[22:56] >> So, I I think it's going to be trial and<br>[22:58] error.<br>[22:59] >> Yeah. Yeah. that's interesting about the<br>[23:01] about modules being different and and<br>[23:05] and like the marketplace not being<br>[23:08] handled uh or not covering modules<br>[23:10] necessarily versus themes and themes<br>[23:12] being the thing that we're that we're<br>[23:14] talking about first. I think it makes a<br>[23:16] lot of sense uh both from sort of<br>[23:18] Drupal's history but also like creating<br>[23:22] like [snorts] not shutting off that sort<br>[23:24] of collaborations which I do recognize I<br>[23:26] think happens a lot more in modules<br>[23:27] because like you said like you can have<br>[23:28] dependency modules and whatever like<br>[23:30] this module calls these other three<br>[23:32] modules and whatever and you do need to<br>[23:33] sort of like keep that ecosystem. Um, in<br>[23:36] WordPress there is kind of sort of an<br>[23:38] equivalent. Um, there are like plugins<br>[23:40] that are like add-ons or additional<br>[23:44] functionality [snorts] to an existing<br>[23:45] plugin and maybe that existing plugin is<br>[23:48] a premium plugin. Um, or maybe it's like<br>[23:51] a free plugin and the extension is uh is<br>[23:54] a premium thing or whatever. Like<br>[23:55] there's all sorts of like weird things<br>[23:57] like that. Um, but um but yeah, I think<br>[24:01] that that's interesting. Do you see uh a<br>[24:04] future where there might be also a<br>[24:06] module marketplace both like you know<br>[24:09] besides drupal.org and getting your<br>[24:10] stuff like normally that way but like<br>[24:12] having like a like the equivalent of<br>[24:14] like an invado sort of thing where you<br>[24:16] could like purchase and and integrate<br>[24:19] like premium uh modules for Drupal.<br>[24:22] >> I would be really really surprised.<br>[24:25] There are like some modules that like<br>[24:27] kind of do the whole GPL loophole and<br>[24:29] put some processing processing on the<br>[24:32] server, you know, that's kind of how<br>[24:33] they how they do it. So there's there's<br>[24:36] things like that. I I can't see any any<br>[24:41] invado type marketplace for for for<br>[24:44] modules. I I think if that happened,<br>[24:46] people would kind of get pissed and then<br>[24:48] just like download it and throw it up on<br>[24:50] drupal.org or GitHub or something like<br>[24:52] that, which has happened in the past,<br>[24:54] you know,<br>[24:54] >> happens in WordPress, too.<br>[24:56] >> Yeah. Yeah. And and it's interesting<br>[24:58] like it's an interesting topic, right?<br>[25:00] So, if I sell a site template, let's say<br>[25:02] I sell this for like $1,000 and I have<br>[25:04] my theme and also like has, you know,<br>[25:06] composer file that references a bunch of<br>[25:08] modules. These modules are key key<br>[25:11] components to this site template. Well,<br>[25:14] I'm making all the profit of that. These<br>[25:15] module these module maintainers aren't<br>[25:18] making you know? Don't know if I<br>[25:20] can say that word, but I just did.<br>[25:22] [laughter]<br>[25:22] But, uh,<br>[25:23] >> I'll flag the explicit tag. It's not a<br>[25:25] problem.<br>[25:26] >> Yeah. Yeah. Um, you know, and that go<br>[25:30] but that also goes all the way down, you<br>[25:32] know, like, well, at that point, the<br>[25:34] core maintainers and the core developers<br>[25:37] are not getting paid, you know, the<br>[25:38] Apache developers or EngineX. Um and and<br>[25:42] and also like the argument would be that<br>[25:47] well these module maintainers and<br>[25:51] developers have been doing kind of<br>[25:52] unpaid unpaid labor for years and years<br>[25:56] while other people are making money. You<br>[25:57] have agencies, you know, like agencies.<br>[25:59] I used to work for a company called<br>[26:00] Labot<br>[26:01] >> and and and they would put together<br>[26:02] these great websites for these large<br>[26:05] companies for multi-million dollar<br>[26:06] contracts and and you know, does that<br>[26:12] money go toward those module developers?<br>[26:14] No. I I mean, to be fair, there are some<br>[26:16] that there's a there's a number that<br>[26:17] would work at that company, but still,<br>[26:19] you know, so it it's a really<br>[26:22] interesting ecosystem. like open source<br>[26:25] is really interesting and and h like how<br>[26:29] how that works and how that can work. So<br>[26:33] >> yeah,<br>[26:34] >> I'm interested.<br>[26:36] So, so one of the things that happens a<br>[26:38] lot in uh the WordPress commercial<br>[26:41] ecosystem is that even even though<br>[26:46] technically because because Matt Melan<br>[26:48] has explicitly stated a number of times<br>[26:51] that he believes that all code uh in<br>[26:54] plugins and themes should be uh GPL<br>[26:58] licensed or GPL compatible uh even even<br>[27:00] when it doesn't have to be because<br>[27:02] that's the spirit of the GPL, not<br>[27:04] necessarily the letter, you Um, so he's<br>[27:06] like he doesn't like things like Invato<br>[27:09] or they have mixed licenses or whatever.<br>[27:10] He's uh he's much more like everything<br>[27:12] should be GPL. And if everything is GPL,<br>[27:15] then that means anybody can take your<br>[27:16] code and then republish it and put it<br>[27:18] somewhere else and now it's their code<br>[27:19] because that's what the GPL allows you<br>[27:21] to do is basically redistribute it uh as<br>[27:23] is. Um, so the the the thing that most<br>[27:27] uh premium WordPress plugins and themes<br>[27:31] sort of do is okay, what you're paying<br>[27:35] for is access to uh updates. Uh, so they<br>[27:40] have a different update mechanism that<br>[27:42] so it's not going to be on like<br>[27:43] WordPress.org and get automatic updates<br>[27:45] that way. Uh, it's going to be through<br>[27:46] their own sort of homebrew update<br>[27:48] mechanism. And two, they're also selling<br>[27:50] support for a contracted period of time.<br>[27:54] Um, is that sort of the model that you<br>[27:57] are thinking of uh for dripyard as well?<br>[27:59] Are you thinking that uh primarily you<br>[28:03] are selling the proprietary<br>[28:06] like JavaScript and CSS? I mean, you<br>[28:09] know, like that is that is the thing<br>[28:11] that is that is being sold even if it's<br>[28:14] like you're selling it with a bunch of<br>[28:15] other stuff that is technically GPL<br>[28:17] compatible.<br>[28:19] So, like we're definitely like selling<br>[28:22] support add-ons, you know, reoccurring,<br>[28:24] and that's like a $100 a year. So,<br>[28:26] that's not a heck of a lot of money.<br>[28:28] [clears throat]<br>[28:28] >> Um, updates, you know, will people just<br>[28:33] will download the zip file from our, you<br>[28:36] know, when they log in, get, you know,<br>[28:38] get their theme and stuff like that and<br>[28:41] then they can, you know, download their<br>[28:42] updates that way and, you know,<br>[28:44] hopefully their changes will be in a sub<br>[28:45] theme so they don't get clobbered.<br>[28:47] >> Mhm. But um<br>[28:50] like it's<br>[28:56] like I can't really<br>[29:00] I it's going to be interesting to see<br>[29:02] how things go. I I I can't really tell<br>[29:04] you I I can tell you what we're doing,<br>[29:07] >> but I can't tell you what everything<br>[29:09] everyone else is doing like. And<br>[29:12] >> yeah, I I don't know if that really<br>[29:14] answers your question or not, but<br>[29:15] >> I was I mean I was wondering from from<br>[29:17] the perspective of of Dripyard<br>[29:19] specifically. Yeah. So it sounds like<br>[29:20] that you would like kind of and that's<br>[29:22] one of the things too like if you're<br>[29:23] gating access to the files uh because<br>[29:26] you have to be a logged in user and you<br>[29:28] have to pay to get the login in the<br>[29:29] first place, then then that's that's an<br>[29:31] easy way of of making sure that people<br>[29:33] are are paying for your stuff.<br>[29:35] >> Yeah. Yeah, we're doing that. And and<br>[29:36] there's there's like to tell you the<br>[29:38] truth, there's like nothing stopping<br>[29:40] people, you know, from dist<br>[29:42] redistributing our stuff after after<br>[29:44] they purchase it, you know, like we<br>[29:46] could sue them, but you know, we themes<br>[29:49] for $500, you know,<br>[29:52] >> you know, more than likely what we'll<br>[29:53] end up I'll I'll end up like spilling<br>[29:55] something on my Drupal account or<br>[29:56] something. But like, you know, Yeah. Uh<br>[30:00] but but at the same time, you know, like<br>[30:02] like our thought process is, well, if<br>[30:04] you're if you're starting a uh a project<br>[30:07] with Drupal, you're probably spending<br>[30:08] significantly more than $10,000. Just<br>[30:10] spend like $500 on a theme, you know,<br>[30:13] you know, add in some support seems<br>[30:15] pretty reasonable. And and honestly,<br>[30:17] like these themes that we developed um<br>[30:20] over 10 months and I'm like probably<br>[30:22] thousands of hours, you know, and uh<br>[30:26] they're really good, you know. They're<br>[30:28] they're they're awesome and it's going<br>[30:31] to save people tens of thousands of<br>[30:33] dollars, you know, by by using these. So<br>[30:38] >> So what I we've talked a lot about<br>[30:40] Drupal and we've talked a lot about<br>[30:41] WordPress. What I often like to do uh is<br>[30:45] to really talk about<br>[30:47] >> um sort of what your journey to tech or<br>[30:51] web development was sort of like in the<br>[30:53] first place. like how did you get to be<br>[30:56] >> uh how did you get to be my cersel<br>[30:59] co-founder of Dripyard? Like what what<br>[31:01] led to uh to you just getting involved<br>[31:04] in the stuff in the first place?<br>[31:05] >> So I was born at a very young age.<br>[31:08] [laughter]<br>[31:11] >> I got I got into uh computers back in<br>[31:14] like 1999. I used to do technical<br>[31:16] support for Dell and Gateway Computers<br>[31:17] before they like shipped off all that<br>[31:19] stuff over to India, you know. So I<br>[31:20] would talk to your grandmother trying to<br>[31:22] troubleshoot Windows 98. Mhm.<br>[31:24] >> I moved up to up to Gainesville and I<br>[31:27] got this job doing technical support<br>[31:28] over the phone technical support uh just<br>[31:30] because like I had done that before and<br>[31:32] we it was this enterprise software<br>[31:34] company called Bar Systems that like<br>[31:36] would interface between like mainframes<br>[31:38] and like regular networks and stuff and<br>[31:41] it was so slow that we we would just sit<br>[31:43] there and twiddle our thumbs and the guy<br>[31:45] in the office next to me he was doing<br>[31:47] these websites and he was using<br>[31:48] Macromedia fireworks and uh showed me<br>[31:51] how to do that and I had to use<br>[31:53] Photoshop This would have been like<br>[31:54] 2001, 2002. And I would literally like<br>[31:57] do all my designs and fireworks. We both<br>[31:59] would. And then we would slice it up and<br>[32:02] we would just export it. And it was it<br>[32:04] was literally like a table full of<br>[32:06] images that would be your<br>[32:07] >> I remember those. Yep. That was awful. I<br>[32:09] hate those.<br>[32:09] >> Yeah, I found I found some of those on<br>[32:11] my old hard drive and I have some of<br>[32:13] those up in my on my GitHub. Like if you<br>[32:15] have some links or something like like<br>[32:17] show notes or something, I'll I'll I'll<br>[32:18] shoot you some links. You can see sp<br>[32:20] space spacer gifs and stuff in there.<br>[32:22] >> Yeah. So, I got into websites and I<br>[32:24] started doing like my brother's band's<br>[32:26] website. I did my brother's friends<br>[32:28] man's websites and I started like, you<br>[32:30] know, doing websites as a side hustle<br>[32:33] and stuff like that. I remember I would<br>[32:36] I would put these ads on Craigslist for<br>[32:38] barter to do websites for like to have<br>[32:40] people do stuff for our house. And I<br>[32:42] ended up getting this guy. He was a<br>[32:44] starting a lawn care company. and uh we<br>[32:47] became friends, you know, he put in a<br>[32:49] sprinkler system and and he he said he<br>[32:51] had this website called uh or he had a<br>[32:54] domain name called gatortailgating.com,<br>[32:56] you know, and I'm a big flirty gator<br>[32:57] football fan,<br>[32:59] >> you know, and I was like, I like<br>[33:00] tailgating. I'm like, let's do this, you<br>[33:02] know.<br>[33:03] >> So, I um I started looking for CMSs.<br>[33:06] This would have been 2007.<br>[33:09] And I don't know why I didn't look at<br>[33:11] WordPress, but I I looked at Jumla and I<br>[33:13] looked at Drupal. And I chose Drupal to<br>[33:16] be honest because it had an integrated<br>[33:17] forum which is like such a funny thing<br>[33:20] to select. But then I kind of got into<br>[33:22] it and around and I I started doing like<br>[33:25] a little bit of freelance in Drupal. You<br>[33:27] know, I would just literally like do<br>[33:29] everything the wrong way, you know, like<br>[33:31] edit the files and core, which you're<br>[33:32] not supposed to do, etc., etc.<br>[33:35] >> And um I eventually uh made my way like<br>[33:39] I remember I Googled, you know,<br>[33:42] Gainesville Drupal just to see if what<br>[33:44] would h happen, you know, and I found I<br>[33:46] found this thing on groups. Drupal.org<br>[33:49] that led me to Florida Drupal Camp. And<br>[33:51] I went down there in early 2010 and I<br>[33:53] was kind of hooked on the I was like,<br>[33:55] "Holy I didn't know that there was<br>[33:56] actual community. I thought it was just<br>[33:58] like a bunch of nerds developing this,<br>[34:00] you know, and they taught me how to do<br>[34:02] stuff that I didn't know how to do. I<br>[34:03] went home and I was like so<br>[34:04] enthusiastic, you know,<br>[34:06] >> ended up going the next few years and<br>[34:08] started volunteering and stuff and um I<br>[34:12] started looking for Drupal jobs at that<br>[34:13] point. I was working for the Florida<br>[34:15] High School Athletic Association at the<br>[34:17] time, just doing like all their computer<br>[34:18] stuff and I migrated their like fairly<br>[34:21] large website to Drupal 6 at the time<br>[34:24] and uh then I uh I ended up uh you know<br>[34:29] kind of getting more involved with<br>[34:30] Florida Drupal Camp. I ended up uh you<br>[34:33] know getting a my job at Labot back in<br>[34:35] uh 2014<br>[34:38] and uh kind of just kind of just went<br>[34:40] head on into Drupal at that point. you<br>[34:42] know, if I wasn't already there. and I<br>[34:45] ended up uh getting involved in Drupal<br>[34:47] core development at Labot where you know<br>[34:50] uh I uh [clears throat] I I got kind of<br>[34:54] got roped into uh leading a team to do a<br>[34:57] new theme for Drupal where the previous<br>[34:59] theme for Drupal just had been around<br>[35:01] for so long. you know, at the time I was<br>[35:03] probably like 10 years old, which is<br>[35:05] like a million in internet years, you<br>[35:07] know,<br>[35:08] >> and and and so went through that and<br>[35:10] everybody was really happy and, you<br>[35:12] know, ended up doing a bunch of other<br>[35:14] cool stuff, you know, and then uh ended<br>[35:18] up quitting Lilot for more money, you<br>[35:20] know, and then quitting that job for<br>[35:21] more money,<br>[35:22] >> end up getting laid off and that, you<br>[35:24] know, and then I was like, you know,<br>[35:27] that led me to here and I was like, cuz<br>[35:29] I had been mulling this company for a<br>[35:32] And I was even talking to other<br>[35:33] developers while I was still like,<br>[35:35] >> you know, in various different jobs<br>[35:37] about potentially starting this with<br>[35:38] them. And then I was like, this is going<br>[35:41] to be it. I'm going to I'm I just got<br>[35:43] laid off. This is going to be my kick in<br>[35:45] the ass. I'm going to I'm going to start<br>[35:48] this up. And you know, so I I uh I<br>[35:51] reached out to my current business<br>[35:53] partner, this guy named Andy Giles, who<br>[35:55] lives in Asheville, North Carolina, and<br>[35:57] he's a amazing backend dev. He's he's<br>[35:59] he's a horrible front end dev<br>[36:01] >> and but he's also like really good at<br>[36:03] things like DevOps and uh e-commerce and<br>[36:06] he's a nice guy you know and uh we ended<br>[36:08] up um ended up talking him talking him<br>[36:11] into I said we're going to get rich<br>[36:12] we're gonna you know all this type of<br>[36:15] stuff and uh you know I I you know we<br>[36:19] like moneywise we had to invest in some<br>[36:21] designers you know so we ended up we at<br>[36:24] at this point we both probably threw<br>[36:26] about like five grand into the business<br>[36:27] to pay for some designs, you know, and<br>[36:31] uh just a heck of a lot of work. Ended<br>[36:33] up taking an equity line of credit<br>[36:34] against my house so I had something to<br>[36:36] live off of. Um and ended up uh just<br>[36:40] like spending I I I thought we were<br>[36:42] going to have this first first theme out<br>[36:44] in like three months. It took took like<br>[36:46] 10 months<br>[36:47] >> because there like it's funny how much<br>[36:50] work goes into making sure your themes<br>[36:53] can support like almost anything that<br>[36:56] the kitchen sink, you know? Right.<br>[36:57] Right.<br>[36:58] >> And and um but now we have this whole<br>[37:02] design system. We have a we have a<br>[37:04] system behind everything. So it's it's<br>[37:05] really easy to kind of turn around new<br>[37:07] themes at at this point. But what we're<br>[37:10] um I guess the answers your question,<br>[37:13] but I guess where I'm going with this is<br>[37:14] like currently we're kind of working on<br>[37:16] uh making sure we have full support for<br>[37:18] Drupal Canvas, which is that nextG page<br>[37:20] builder that's going to come out in<br>[37:21] about a month.<br>[37:23] >> Yeah. Tell me about uh so I've I've been<br>[37:26] sort of watching the evolution of uh<br>[37:30] Drupal CMS uh since<br>[37:33] uh well I guess since January this year<br>[37:36] pretty much.<br>[37:37] >> Um and and like I went back before<br>[37:40] before I went to Drupal Con uh in in<br>[37:43] Atlanta. Um I went back and I watched<br>[37:46] Dre's like last two keynotes before<br>[37:48] that. Um, and I watched the one from<br>[37:50] Vienna this last uh couple weeks. Um,<br>[37:54] and I remember when I was in Atlanta and<br>[37:57] he was showing what was then referred to<br>[38:00] as experience builder, which is now<br>[38:01] Drupal canvas. Uh, I was like I I I<br>[38:05] tweeted actually I guess it's not<br>[38:07] tweeting if you do it on blue sky. Uh,<br>[38:08] it's like blute. I don't know. Um, I I<br>[38:12] posted on Blue Sky that this looks like<br>[38:16] the thing that Gutenberg should have<br>[38:19] been all along.<br>[38:20] >> Yeah.<br>[38:20] >> Um, I was like so incredibly impressed<br>[38:23] by uh what looked to be like way more<br>[38:27] intuitive, way easier uh to use. And<br>[38:30] I've I've played with and installed uh<br>[38:33] Drupal CMS. And I I fully believe, in<br>[38:36] fact, I wrote a blog post on the<br>[38:38] Pantheon blog about this. I fully<br>[38:40] believe that that is like a thousand<br>[38:43] times better experience uh first-time<br>[38:46] user experience for installing uh a CMS<br>[38:49] than than WordPress. And part of that<br>[38:51] has to do with like it's more of like a<br>[38:53] guided install. It's asking you<br>[38:54] questions, but also it's it's asking you<br>[38:58] like<br>[38:59] what type of site you want to you want<br>[39:02] to create. And most like every other CMS<br>[39:07] I've ever installed just gives you a<br>[39:09] bunch of form fields<br>[39:10] >> and it doesn't ask you the question,<br>[39:12] what are you trying to build?<br>[39:13] >> And so because of [clears throat] that,<br>[39:16] >> uh, you never ask the question of<br>[39:18] yourself, what type of website are you<br>[39:21] trying to build? You just kind of like,<br>[39:22] oh well, I'm just going to click a<br>[39:23] couple buttons and then I have a website<br>[39:24] and then I'm just going to do stuff,<br>[39:26] right? Like, but you never actually have<br>[39:27] to intentionally like come up with like,<br>[39:29] no, what am I actually trying to create?<br>[39:31] And I thought that that was a really uh<br>[39:32] a really good like just like just slow<br>[39:35] down and like make this the process a<br>[39:37] little bit more more user friendly. And<br>[39:39] then also when it when it installs like<br>[39:41] I feel like like the user interface<br>[39:44] which in the past uh for me as somebody<br>[39:46] who is more familiar with WordPress the<br>[39:48] user interface and the Drupal admin is<br>[39:50] very complex and hard for me to navigate<br>[39:53] and know where all the stuff is and it<br>[39:55] feels better. And maybe it's just<br>[39:57] because it looks more like the WordPress<br>[39:58] admin. I don't know. Uh, but it feels<br>[40:00] better for me to like in in the Drupal<br>[40:02] CMS admin. Um, I don't know, maybe just<br>[40:06] because stuff is on the left, I guess.<br>[40:07] Uh, but like it feels like it's easier<br>[40:09] for me to to navigate. I guess I guess<br>[40:10] my question is like uh somewhere in here<br>[40:13] is a question I think uh which is um<br>[40:16] like where do you see like do you do you<br>[40:20] believe that that capturing the sort of<br>[40:24] mid-market or that first-time user<br>[40:25] experience uh will be like the changing<br>[40:30] point for driving more Drupal adoption?<br>[40:34] [snorts]<br>[40:34] I mean, I I I would say definitely, you<br>[40:37] know, like there's a lot more mid-market<br>[40:39] than uh enterprise market, you know, and<br>[40:43] and and honestly, to tell you the truth,<br>[40:45] like the enterprise people want the same<br>[40:47] crap as the mid-market people for for<br>[40:49] the most part, you know, they want to be<br>[40:50] able to assemble<br>[40:51] >> pages without having to like, you know,<br>[40:54] have a post doctorate or something like<br>[40:55] that, you know. Um like you know like I<br>[40:59] don't know if you're familiar with like<br>[41:01] um Adobe Enterprise Ma u<br>[41:04] builder. Yeah manager. Yeah.<br>[41:06] >> Yeah. Yeah. Yeah. like they have like<br>[41:08] nice drag and drop stuff, but they don't<br>[41:10] do what Drupal does, you know,<br>[41:12] >> and but but they ended up they end up<br>[41:14] selling selling their product based on<br>[41:16] like showing that drag and drop stuff to<br>[41:19] the marketers and the marketers, you<br>[41:21] know, get super excited about that<br>[41:23] because it's pretty sexy,<br>[41:25] >> you know, and and and if we if if we can<br>[41:28] match that and surpass it, which I<br>[41:29] believe we will, like that's going to be<br>[41:32] a big deal, you know, and and the same<br>[41:34] thing with like Gutenberg, like like<br>[41:37] Like like canvas is built by by looking<br>[41:40] at the lessons from everything, you<br>[41:42] know, from things like Gutenberg and AM<br>[41:45] and and almost every other page builder<br>[41:46] out there. They were all evaluated<br>[41:49] >> as as these technical requirements<br>[41:51] started coming in for Drupal Canvas.<br>[41:54] >> Yeah.<br>[41:54] >> You know, and um like one thing that I<br>[41:58] really like I I I've done like a little<br>[42:00] bit of Gutenberg development under<br>[42:02] Drupal because there is a Gutenberg<br>[42:04] module for Drupal.<br>[42:05] >> Yep. But but like one thing that I<br>[42:07] really disliked about Gutenberg is you<br>[42:09] have to have like almost two versions of<br>[42:11] your markup. you know, you have to have<br>[42:13] the one that appears in the editor and<br>[42:16] the one that appears, you know, on the<br>[42:18] homepage and stuff<br>[42:19] >> and and and like that's something that,<br>[42:24] [clears throat] you know, like with<br>[42:27] Drupal Canvas, like like right now I'm<br>[42:28] in the process of uh you know, making<br>[42:30] sure all of our components work well and<br>[42:33] and and there's some funky things I'm<br>[42:35] having to kind of work through, but you<br>[42:37] know, it it's all this is kind of<br>[42:40] normal. But like I I add like an<br>[42:42] additional setting like a prop or you<br>[42:44] know a slot and it just shows it just<br>[42:46] it's just like nice.<br>[42:48] >> Mhm.<br>[42:48] >> And and it like to developer experiences<br>[42:51] getting right up there. And then like<br>[42:54] coming from previous Drupal page<br>[42:57] builders which which honestly a lot of<br>[42:59] them are like really kind of rough<br>[43:02] unless you did a lot of manual work.<br>[43:03] like you can make these page builders<br>[43:05] awesome, but that requires, you know, a<br>[43:08] person who knows what they're doing to<br>[43:10] install a bunch of modules and configure<br>[43:12] them just so you know. Um, but just like<br>[43:15] right out of the box, it's just like<br>[43:16] nice. You start dragging stuff, you<br>[43:18] start copying and pasting stuff,<br>[43:20] everything it updates on the fly. Uh,<br>[43:23] there's a nice preview button. The<br>[43:26] there's there's all the things that just<br>[43:28] like feel like very intuitive.<br>[43:31] Um, so it's nice and and and there's<br>[43:34] still like a kill a little rough edges<br>[43:36] like like I go in there and I I am<br>[43:38] filing bugs, you know, like I find stuff<br>[43:41] and I'm filing bugs because it's not<br>[43:42] stable yet.<br>[43:43] >> But it's it's it's like head and<br>[43:46] shoulders above,<br>[43:48] you know, anything else that Drupal's uh<br>[43:50] done before. And like as far like I I I<br>[43:55] like it better than Gutenberg, too.<br>[43:57] though Gutenberg<br>[43:59] I tell you the truth like it's going to<br>[44:01] be interesting to see how that works out<br>[44:03] you know<br>[44:05] >> yeah I I<br>[44:08] so I've been in the last year or so been<br>[44:12] playing a lot more so as as Gutenberg<br>[44:15] has has developed in the WordPress<br>[44:17] ecosystem it's extended to be more than<br>[44:20] just like the block editor in uh content<br>[44:23] stuff it's been expanded to do more site<br>[44:26] editing things. Um, the site that that<br>[44:28] this podcast is uh is the website, the<br>[44:31] community code website uh is just uh a<br>[44:35] 2025 like default theme and a bunch of<br>[44:38] customizations in the full site editor<br>[44:41] to change the different layouts for the<br>[44:43] different pages and and uh the episodes<br>[44:45] and and whatever. Like so like I can do<br>[44:48] a lot of stuff just using the tools that<br>[44:51] are that are core without having to<br>[44:53] build like a theme at all or think about<br>[44:56] that anymore which is pretty impressive.<br>[44:58] Like it didn't used to be like that. Um,<br>[45:00] but it took a long time to get to that<br>[45:03] point and and for a long time it was<br>[45:05] like there's a lot of things that you're<br>[45:07] like a lot of limitations that you uh<br>[45:10] that I was like running up against uh<br>[45:12] and like oh I don't know how to do this<br>[45:14] thing or how do you like I just I just<br>[45:16] need to change a line of CSS to fix this<br>[45:18] other problem whatever. Um and it took a<br>[45:21] lot to to get to the point where where<br>[45:22] it is now. Um but it does seem like I<br>[45:26] mean demos aren't aren't live a<br>[45:29] And so like it the proof is in the<br>[45:31] pudding when you actually start to use<br>[45:32] it. But it what I've seen of uh Drupal<br>[45:35] canvas uh it feels like it's a better<br>[45:39] like it's it's further along that that<br>[45:42] timeline [clears throat] to a usable<br>[45:44] thing than a lot of the stuff that has<br>[45:48] been in WordPress core for you know the<br>[45:51] last couple years and then iterated on<br>[45:53] to get to get to the point where it is<br>[45:54] now. [snorts]<br>[45:56] >> Yeah. I can't really speak to like,<br>[45:59] you know, like when I don't know<br>[46:02] WordPress nearly as well as you and and<br>[46:04] I haven't used it recently, so I can't<br>[46:06] like really speak to how it feels<br>[46:08] compared to, you know, mo modern<br>[46:10] Gutenberg. My most of my Gutenberg<br>[46:12] experience comes within the context of<br>[46:14] Drupal, which is not not the correct<br>[46:16] experience,<br>[46:17] >> specific flavor. Yeah.<br>[46:18] >> Yeah. Yeah. Yeah. And I I I can tell you<br>[46:21] that like there are some some things in<br>[46:24] Drupal Canvas that like, you know, need<br>[46:27] to be worked on and and I've been filing<br>[46:29] bugs and pinging the appropriate people<br>[46:32] in Slack, which I'm I'm pretty sure<br>[46:34] they're probably,<br>[46:35] >> you know, oh crap, here's Hersel again,<br>[46:38] you know, [laughter]<br>[46:39] >> but um [clears throat] but but at the<br>[46:41] same time, like a number of the bugs I<br>[46:42] found have become release blockers.<br>[46:44] >> Yeah.<br>[46:45] >> You know, and and and things like that,<br>[46:47] and that helps. So, um,<br>[46:51] it's gonna take iteration. I I think<br>[46:54] like the the success or failure on on<br>[46:59] canvas is going to be like how it feels,<br>[47:02] you know, how intuitive is it, how it<br>[47:04] feels, how many paper cuts are there.<br>[47:07] >> Yeah. you know, we can deal with a<br>[47:08] couple couple paper cuts, but if there's<br>[47:10] too many paper cuts, it starts to get<br>[47:12] like really really annoying, you know,<br>[47:14] and and and on top of that, like how<br>[47:17] well how well developers can extend it,<br>[47:20] you know? You know, if I want to inject<br>[47:24] XYZ or something in there in into the<br>[47:27] edit edit editorial interface, how easy<br>[47:31] can I do that, you know?<br>[47:33] Yeah, that's that's actually a really<br>[47:36] good point and something that I wanted<br>[47:37] to talk about too. And I know we're<br>[47:38] getting close to time, but I want to<br>[47:39] still throw this in because um one of<br>[47:43] the things about uh that when Gutenberg<br>[47:46] development started forced uh WordPress<br>[47:49] developers to learn was the the fact<br>[47:53] that Gutenberg the decision was made<br>[47:55] very early on to to make it a React<br>[47:57] interface. And so that meant that not<br>[47:59] only did uh WordPress developers need to<br>[48:02] learn JavaScript, but they also needed<br>[48:04] to specifically learn React. Um, and the<br>[48:06] learning curve like you know having<br>[48:09] having played with React uh a little bit<br>[48:12] I didn't I mean not before Gutenberg<br>[48:14] obviously why would I uh but having<br>[48:17] played with it since like I do like<br>[48:20] using uh React coming from like a PHP<br>[48:23] background because it makes a little bit<br>[48:25] more sense uh to my brain [cough] but<br>[48:27] like there's [clears throat] definitely<br>[48:27] a learning curve there. um talk about<br>[48:30] like the developer experience for<br>[48:33] building things for canvas because as I<br>[48:35] understand it, it's not that same sort<br>[48:37] of like you need to learn a<br>[48:38] fundamentally different language<br>[48:39] anymore.<br>[48:40] >> Yeah. Yeah. So like if I want to create<br>[48:43] a component that works in and outside of<br>[48:45] canvas, it's it's the same as creating a<br>[48:47] component like outside of canvas, you<br>[48:50] know. So I I mentioned that that Drupal<br>[48:52] has this concept of uh direct uh<br>[48:55] components which are called single<br>[48:57] directory components and basically like<br>[48:59] within your theme you have a component<br>[49:00] directory and within within that<br>[49:03] component directory you have you know a<br>[49:05] directory for every single component uh<br>[49:07] and there's two mandatory files for your<br>[49:10] component. There's a twig file which is<br>[49:12] which is like the markup language that<br>[49:14] Drupal uses. It's it's like standard<br>[49:17] HTML and then some curly brackets. You<br>[49:19] can put for loops and all that type of<br>[49:21] stuff in there. [snorts]<br>[49:22] And uh then there's a the component.yamo<br>[49:25] file. The component.yammo file will say<br>[49:26] hey this is a component. And then it'll<br>[49:28] also list the um type of data that that<br>[49:33] twig file is expecting you know. So you<br>[49:35] say like I'm gonna have a title. It's<br>[49:36] going to be a string and you know you<br>[49:39] can call it you know title or something<br>[49:42] you know or you know I'm going to have<br>[49:43] this you know portrait landscape<br>[49:46] checkbox boolean you know I have an<br>[49:49] array all all this type stuff right and<br>[49:52] [clears throat] so so it it describes<br>[49:54] what the twig file is expecting and then<br>[49:57] you have a couple optional files you can<br>[49:58] have a CSS file in there you you can<br>[50:00] have a JavaScript file in there if if if<br>[50:02] it sees those it'll automatically be<br>[50:04] loaded whenever the whenever the<br>[50:06] component is loaded and you can also<br>[50:08] like put into the AML file you know<br>[50:10] stuff for additional CSS files or you<br>[50:14] know dependencies on other type of you<br>[50:17] know stuff too if you want. Um so so at<br>[50:20] that point you have you have a directory<br>[50:23] I mean a single directory component<br>[50:25] [snorts] and as soon as uh canvas sees<br>[50:29] that single directory component it'll be<br>[50:31] available. Now, if something is screwed<br>[50:33] up in that YAML file, like let's say<br>[50:36] like you got your YAML indentation<br>[50:38] incorrect or something like that, what's<br>[50:39] kind of cool is you can go to like a<br>[50:41] little reports page, find your component<br>[50:43] in there, and it'll tell you exactly<br>[50:44] what's wrong with it, which is super<br>[50:45] nice from a development experience.<br>[50:48] >> Um, but once that component is is there<br>[50:52] and it's working, uh, like Drupal will<br>[50:56] know, hey, this is a string. Uh, so I'm<br>[51:01] going to put a, you know, a little text<br>[51:04] field in there, you know, and you and<br>[51:05] there's some other, uh, like stuff in<br>[51:07] your YAML you can add to say like I want<br>[51:09] to load a rich text editor, you know,<br>[51:11] >> and there's there's some stuff in there<br>[51:13] says this, you know, you can say this is<br>[51:14] an object and it's going to accept, you<br>[51:16] know, this is going to be an image. So<br>[51:18] that'll give you like a little widget to<br>[51:20] browse to to an image, load into your<br>[51:22] meter library and stuff like that, you<br>[51:24] know, and at that point it kind of it's<br>[51:26] this kind of works. So, the development<br>[51:29] experience for creating components is<br>[51:32] pretty pretty good. There's a couple<br>[51:34] rough edges, like a couple, and these<br>[51:36] are being worked on, you know, and I'm<br>[51:37] like I'm totally on top of that. Um, but<br>[51:41] even the rough edges have workarounds,<br>[51:43] you know, and and like if if you go to<br>[51:45] the dripard blog and stuff, I actually<br>[51:47] blog about this type of stuff because<br>[51:50] it's kind of it's kind of fun, you know?<br>[51:51] It's fun to<br>[51:52] >> to like solve these problems as I'm<br>[51:54] doing this. you know, um,<br>[51:58] as far as the development experience of<br>[52:00] extending the actual editorial<br>[52:02] interface, that's a good question. Like<br>[52:04] I haven't done that, you know.<br>[52:06] >> Um, like, uh, dripyard's editorial<br>[52:09] interface is built within React. But<br>[52:11] that being said, like like when<br>[52:13] Gutenberg was, you know, started, what<br>[52:17] was this like probably like five, six,<br>[52:18] seven years ago or something like that,<br>[52:21] >> React a lot more people know React than<br>[52:24] they did back then, you know, like like<br>[52:26] React is is is React was common back<br>[52:29] then, but it's much more common right<br>[52:30] now, right?<br>[52:31] >> So like I feel that people will be able<br>[52:33] to kind of jump in there and get in into<br>[52:36] it. But that being said, like you know,<br>[52:39] people have not yet because it's not<br>[52:41] technically stable right now. Like as of<br>[52:42] time of this recording, it's a release<br>[52:44] camp like RC1 or RC2 or something like<br>[52:46] that,<br>[52:46] >> right?<br>[52:47] >> Yeah. Yeah. But I mean that's<br>[52:49] interesting though because like<br>[52:50] fundamentally what I'm hearing is like<br>[52:52] if you want to build something that can<br>[52:54] be used by Canvas, you don't have<br>[52:56] [clears throat] to learn a completely<br>[52:58] different language. And I think that<br>[52:59] that's huge. Uh I think that that's a<br>[53:01] really big thing that that uh<br>[53:03] >> uh Canvas has going for it. And like you<br>[53:05] said, like even even beyond that, the<br>[53:08] the developer ecosystem today for people<br>[53:12] who know React or people who have<br>[53:14] encountered React is probably a lot<br>[53:15] broader and bigger than it was five or<br>[53:18] six years ago when we were talking about<br>[53:19] uh whether we were going to use React or<br>[53:21] Vue to put into to build Gutenberg on<br>[53:23] top of. So<br>[53:24] >> yeah, absolutely.<br>[53:25] >> So like just the ecosystem is different.<br>[53:27] >> Um yeah. Well, thank you so much uh for<br>[53:29] coming on, Mike. Uh, I appreciate, uh,<br>[53:32] learning about Drupal and and having an<br>[53:35] extremely nerdy conversation<br>[53:36] [clears throat] comparing, uh, CMS's.<br>[53:39] Um, uh, where can, uh, people find you<br>[53:42] if they're looking for you online?<br>[53:43] >> Uh, that's a good question. So, uh, my<br>[53:46] website is hersel.com and that's spelled<br>[53:48] with a C, like there's no S's in there.<br>[53:49] So, hl.com.<br>[53:51] Uh, dripyard.com is my company. If<br>[53:54] you're into Drupal, check out our blog<br>[53:56] and, you know, buy our stuff. I'm on<br>[53:58] like blue sky atmike.hershel.com<br>[54:02] and I'm on mastadon. You can I'm on like<br>[54:05] most of the things. Oh, on LinkedIn I am<br>[54:08] Mike Hershel's disembodied head and it<br>[54:10] has like my head floating right there<br>[54:12] and uh people have like come up to me at<br>[54:15] conferences like you're a disembodied<br>[54:16] [laughter] head. Yeah.<br>[54:18] >> Hello Mr. Disembodied head.<br>[54:19] >> Yep.<br>[54:21] >> Awesome. Well, thank you so much, Mike,<br>[54:23] again for coming on and for everyone<br>[54:25] else uh for listening uh either now or<br>[54:28] in the future if you're coming upon<br>[54:30] across this episode at some distant<br>[54:32] point in the future. Uh and uh until<br>[54:35] next time, uh we'll see you on the<br>[54:36] internet.<br>[54:37] >> All right, bye everybody.<br>[54:42] [music]<br>[54:50] [music]
<!-- deep-read:sections end -->
[[3. Resources/Readwise/Full Document Contents/Articles/Community + Code Episode 14 - Mike Herchel|Full Document Contents]]
## Document Notes
---
tags: #drupal #cms #community #marketplace #themes #drupal-cms
author: Community and Code Podcast
source: YouTube
reference: https://www.youtube.com/watch?v=JAHLIOsIjxg
date created: 2024-12-29 15:30
---
# ๐ท๏ธ Title: Episode 14: Mike Herchel - Drupal Themes, Marketplaces, and Community Evolution
## ๐งฐ Action Inbox
- [H1] Research Drupal CMS installation experience vs WordPress โ compare onboarding flows #wordpress #drupal
- [H2] Explore single directory components architecture โ understand component system design #drupal #development
- [H3] Investigate commercial ecosystem differences โ analyze WordPress vs Drupal monetization #business
## ๐งญ Table of Contents
- [[#๐ Summary]]
- [[#๐ Main Content]]
- [[#๐๏ธ Notes]]
- [[#๐ References]]
- [[#๐ฃ๏ธ Paraphrase]]
- [[#๐ฐ Newsletter]]
- [[#โ
Action Items]]
- [[#๐งช Hypotheses]]
- [[#๐ Methodology]]
- [[#โ Questions]]
- [[#๐ฎ Future Research]]
- [[#๐ก Implications]]
- [[#๐ง Learning Styles Assessment]]
- [[#๐ Accessibility Assessment]]
- [[#๐ DEIB Assessment]]
- [[#โ
Logical Validity]]
- [[#๐ก๏ธ DARVO Analysis]]
- [[#๐ฏ Conclusion]]
### ๐ References
- [DripYard](https://dripyard.com)
- [Drupal CMS](https://www.drupal.org/drupal-cms)
## ๐ Summary
- Mike Herchel, co-founder of DripYard, discusses building premium Drupal themes and the evolution of Drupal's commercial ecosystem
- DripYard creates premium themes enabled by Drupal's new single directory components architecture
- Drupal is targeting the mid-market with Drupal CMS and marketplace initiatives to compete with WordPress
- The conversation explores community dynamics, technical architectures, and business models between Drupal and WordPress ecosystems
- Key focus on Drupal Canvas page builder and how it compares to WordPress Gutenberg
## ๐ Main Content
Mike Herchel co-founded DripYard to sell premium Drupal themes, addressing a historical gap in Drupal's ecosystem. Unlike WordPress, Drupal never developed a robust theme marketplace due to technical limitations - themes couldn't predict content structure since content types and views were created dynamically by site builders.
The introduction of single directory components changed this paradigm. These components bundle markup (Twig templates), schema (YAML), CSS, and JavaScript in single directories, allowing themes to ship complete component libraries that site builders can wire to their data through UI or code.
This technical evolution coincides with Drupal's strategic shift toward the mid-market through Drupal CMS and upcoming marketplace initiatives. Dries Buytaert's "Starshot" strategy aims to recapture market share by making Drupal feasible for $10-30K projects rather than only enterprise implementations.
The conversation reveals fundamental differences between WordPress and Drupal ecosystems. Drupal emphasizes collaboration - competing modules typically merge rather than fragment. WordPress tends toward competitive silos. Drupal maintains strict GPL requirements for modules while allowing proprietary CSS/JavaScript in themes.
Drupal Canvas, the new page builder, represents lessons learned from Gutenberg and other builders. It avoids Gutenberg's dual markup requirement (editor vs. frontend) and provides unified component development experience. The technical architecture allows developers to extend editorial interfaces without learning fundamentally new languages.
## ๐๏ธ Notes
#### โฑ๏ธ [00:01:23](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=83) โ [H1] DripYard sells premium Drupal themes that don't suck
- Key idea: Premium themes now possible due to single directory components
- Evidence: "We sell premium Drupal themes that don't suck... Drupal now has the concept of components"
#### โฑ๏ธ [00:03:45](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=225) โ [H2] Historical theme limitations in Drupal ecosystem
- Key idea: Themes couldn't predict markup structure from dynamic content types
- Evidence: "The theme doesn't have this functionality. Themes cannot contain content types. They can't contain views"
#### โฑ๏ธ [00:06:12](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=372) โ [H2] Single directory components enable predictable theming
- Key idea: Components bundle markup, schema, CSS and JavaScript together
- Evidence: "I can ship a library, you know, 50 60 components or more... drag in the title component, map that to the title field"
#### โฑ๏ธ [00:08:30](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=510) โ [H1] Drupal's strategic shift toward mid-market
- Key idea: Starshot strategy aims to recapture market share from enterprise-only focus
- Evidence: "We need to recapture this mid-market... become feasible for a website with maybe a budget of like 10 to $30,000"
#### โฑ๏ธ [00:11:45](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=705) โ [H2] Drupal Canvas as next-generation page builder
- Key idea: New page builder incorporates lessons from Gutenberg and other systems
- Evidence: "Drupal Canvas does everything that you pretty much would assume it would do... copy and paste components, group components"
#### โฑ๏ธ [00:14:20](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=860) โ [H2] Site templates concept for marketplace
- Key idea: Templates include theme plus preconfigured content types and default content
- Evidence: "Site templates are basically like it's a theme... but also preconfigured with those content types... can come preconfigured with default content"
#### โฑ๏ธ [00:18:15](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=1095) โ [H1] Community collaboration vs competition dynamics
- Key idea: Drupal emphasizes merging competing solutions rather than fragmentation
- Evidence: "If we both have tools that serve a similar purpose... let's join forces and make the best thing"
#### โฑ๏ธ [00:22:30](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=1350) โ [H2] GPL licensing strategy for marketplace
- Key idea: Modules remain GPL forever, themes can have proprietary CSS/JavaScript
- Evidence: "Modules will always be GPL forever free... it's the themes that could be commercial code"
#### โฑ๏ธ [00:26:45](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=1605) โ [H3] WordPress ecosystem monetization comparison
- Key idea: WordPress has more robust commercial ecosystem driving conference funding
- Evidence: "The amount of money in the WordPress ecosystem is like significantly more... Word Camp US can cost like $50"
#### โฑ๏ธ [00:31:20](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=1880) โ [H2] Mike's journey from tech support to Drupal core
- Key idea: Community involvement led from freelance work to core development
- Evidence: "I Googled Gainesville Drupal... found Florida Drupal camp... I was hooked"
#### โฑ๏ธ [00:38:10](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=2290) โ [H2] DripYard business model and investment
- Key idea: Significant upfront investment in design and development systems
- Evidence: "We both probably threw in about like five grand... took an equity line of credit against my house"
#### โฑ๏ธ [00:42:30](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=2550) โ [H1] Drupal CMS superior onboarding experience
- Key idea: Guided installation process asks intentional questions about site purpose
- Evidence: "It's asking you like what type of site you want to create... what are you trying to build?"
#### โฑ๏ธ [00:47:15](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=2835) โ [H2] Canvas vs Gutenberg technical comparison
- Key idea: Canvas avoids dual markup requirement and provides unified development
- Evidence: "One thing that I really disliked about Gutenberg is you have to have like almost two versions of your markup"
#### โฑ๏ธ [00:52:45](https://www.youtube.com/watch?v=JAHLIOsIjxg?t=3165) โ [H2] Component development experience in Canvas
- Key idea: Same development process works inside and outside page builder
- Evidence: "If I want to create a component that works in and outside of canvas, it's the same as creating a component outside of canvas"
## ๐ References
- [DripYard](https://dripyard.com)
- [Drupal CMS](https://www.drupal.org/drupal-cms)
- [Single Directory Components](https://www.drupal.org/docs/develop/theming-drupal/using-single-directory-components)
- [Community and Code Podcast](https://communityandcode.com)
## ๐ฃ๏ธ Paraphrase
- DripYard creates premium Drupal themes enabled by new component architecture that solves historical theming limitations
- Drupal is strategically shifting from enterprise-only to mid-market through Drupal CMS and marketplace initiatives
- The Drupal community emphasizes collaboration over competition, contrasting with WordPress's more competitive ecosystem
## ๐ฐ Newsletter
Mike Herchel's insights reveal how technical architecture shapes commercial ecosystems. Drupal's new single directory components are enabling premium theme marketplaces for the first time, while strategic initiatives like Drupal CMS target the mid-market with better onboarding experiences.
Key takeaway: The relationship between technical capabilities and business models is crucial for CMS ecosystem health. WordPress developers can learn from Drupal's collaborative community dynamics and component-based architecture approaches.
The upcoming Drupal Canvas page builder incorporates lessons from Gutenberg development, offering unified component development without dual markup requirements.
Resources: [Learn WordPress](https://learn.wordpress.org/), [Developer Docs](https://developer.wordpress.org/), [WP-CLI](https://wp-cli.org/)
## โ
Action Items
#### DevRel
- Developer advocacy: Present Drupal component architecture at WordPress events, create cross-CMS learning content
- Education: Develop workshops comparing WordPress blocks vs Drupal components
- Developer experience: Document lessons learned from Canvas vs Gutenberg development
- Developer marketing: Create content strategy highlighting technical innovation in CMS space
- Community management: Foster cross-pollination between WordPress and Drupal communities
#### WordPress
- Core: Evaluate Drupal's guided installation UX for potential WordPress improvements
- Core Program Team: Study component architecture patterns for future block system evolution
- Design: Research Drupal CMS onboarding flow for WP.org improvement insights
- Documentation: Compare developer experience documentation between ecosystems
- Community: Explore collaboration opportunities with Drupal community initiatives
## ๐งช Hypotheses
- Component-based architectures enable more robust theme marketplaces than traditional template systems
- Guided installation experiences significantly improve first-time user success rates
- Collaborative community models produce more stable ecosystems than competitive ones
- Mid-market focus drives healthier commercial ecosystems than enterprise-only strategies
### ๐ Methodology
- Comparative analysis of WordPress vs Drupal onboarding conversion rates
- Developer survey on component vs block development experiences
- Market analysis of theme/template pricing and adoption patterns across CMSs
### โ Questions
- How can WordPress incorporate Drupal's collaborative community dynamics while maintaining competitive innovation?
- What technical architecture changes would enable WordPress to support Drupal-style component marketplaces?
- How might guided installation experiences impact WordPress adoption in the mid-market?
### ๐ฎ Future Research
- Cross-CMS component architecture standardization initiatives
- Community governance models that balance collaboration and competition
- Installation and onboarding UX research across CMS platforms
### ๐ก Implications
- Practice: Component-based development may become standard across CMS platforms
- Policy: GPL licensing strategies need evolution for modern commercial ecosystems
- Education: Cross-CMS learning opportunities benefit entire open source community
- Funding: Successful commercial ecosystems require balanced community and business interests
### ๐ง Learning Styles Assessment
Reading level estimate: 12-14 (technical discussion with industry-specific terminology)
#### ๐ Visual learners
- Present: Technical architecture discussion benefits from diagrams
- Improve: Component architecture diagrams, marketplace comparison charts, ecosystem flow visuals
#### ๐ Aural learners
- Present: Podcast format ideal for this content
- Improve: Supplementary audio summaries of key technical concepts
#### ๐ฃ๏ธ Verbal learners
- Present: Clear analogies comparing WordPress and Drupal concepts
- Improve: Glossary of cross-CMS terminology, story-driven examples
#### ๐งฉ Kinesthetic learners
- Present: Discussion references hands-on development experiences
- Improve: Lab exercises comparing component vs block development
#### ๐ง Logical learners
- Present: Technical architecture reasoning and business model analysis
- Improve: Decision trees for CMS selection, timeline of ecosystem evolution
#### ๐งโ๐คโ๐ง Social learners
- Present: Community dynamics discussion, collaborative examples
- Improve: Discussion prompts for cross-CMS community engagement
#### ๐งโโ๏ธ Solitary learners
- Present: Deep technical discussion suitable for individual study
- Improve: Reflection questions on personal development experience
#### ๐ฟ Naturalistic learners
- Present: Ecosystem metaphors throughout discussion
- Improve: Sustainability considerations for open source business models
### ๐ Accessibility Assessment
#### Screen reader semantics
- Present: Structured conversation with clear topic transitions
- Improve: Timestamped navigation, enhanced topic summaries
#### Keyboard navigation
- Present: Standard podcast player controls
- Improve: Chapter navigation, speed controls
#### Contrast and readability
- Present: Audio content avoids visual contrast issues
- Improve: High-contrast transcription formatting
#### Text resizing and reflow
- Present: Transcript supports text scaling
- Improve: Responsive transcript layout design
#### Media and captions
- Present: Full transcript available
- Improve: Time-synced captions, downloadable formats
### ๐ DEIB Assessment
#### Cultural breadth
- Present: US-focused perspective with some international awareness
- Improve: Global CMS ecosystem perspectives, multilingual considerations
#### Inclusive language
- Present: Professional, respectful technical discussion
- Improve: Define technical jargon, avoid insider assumptions
#### Neurodiversity support
- Present: Structured conversation with clear transitions
- Improve: Consistent formatting, clear topic boundaries
#### Representation
- Present: Two male developers from similar backgrounds
- Improve: Diverse voices in future episodes, varied experience levels
#### Psychological safety
- Present: Respectful cross-community comparison
- Improve: Acknowledge different valid approaches, avoid tribalism
### โ
Logical Validity
#### Strong reasoning
- Deductive strength: Technical limitations create marketplace barriers (solid premise-conclusion chain)
- Inductive strength: WordPress success patterns could apply to Drupal (reasonable generalization)
- Causal reasoning: Component architecture enables theme markets (clear cause-effect relationship)
- Analogical strength: Cross-CMS comparisons illuminate design choices (appropriate analogies)
#### Fallacies
- Appeal to popularity: "WordPress has more money therefore better model" - oversimplifies complex factors
- False dilemma: Collaboration vs competition presented as binary choice - hybrid models exist
#### Tone of voice
- Overall tone: Collaborative and analytical, respectful of both ecosystems while acknowledging trade-offs
### ๐ก๏ธ DARVO Analysis
- Deny: No denial patterns observed - both speakers acknowledge limitations in their preferred systems
- Attack: No attacks on accusers - technical criticisms focus on systems not people
- Reverse victim/offender: No victim/offender dynamics present
- Emotional cues and rhetoric: Positive, solution
---
## Full Transcript
[00:13] [music]<br>[00:18] Welcome to Community and Code, uh, the<br>[00:20] podcast where we talk to the humans<br>[00:22] behind the commits. I'm here today with<br>[00:25] Mike Hershel, who is a co-founder of<br>[00:28] something called Dripyard and a longtime<br>[00:30] member and uh developer in the Drupal<br>[00:32] community. Welcome to the show, Mike.<br>[00:34] >> Hey, thanks for having me.<br>[00:36] >> So, I think we'll we can start by uh<br>[00:39] asking uh what is a dripyard?<br>[00:42] >> That's a good question. Oh, there's a<br>[00:45] whole bunch of background. Uh so, like<br>[00:48] the TLDDR of dripyard is we sell premium<br>[00:51] Drupal themes that don't suck. Um like<br>[00:55] >> so so Drupal in the past like really<br>[00:59] never had a robust theme ecosystem like<br>[01:01] WordPress or Web Flow or any of the<br>[01:03] other competitors have. And and part of<br>[01:05] that reason is just because uh within<br>[01:08] within the within Drupal the theme is so<br>[01:11] separated from like the rest of the<br>[01:14] system it would never have any idea what<br>[01:16] the markup is. So like a Drupal<br>[01:18] developer would go in and create you<br>[01:20] know their views which are kind of like<br>[01:22] the smart list like the loop type stuff<br>[01:24] and but the theme could never predict<br>[01:27] what you know what the DOM structure was<br>[01:29] and what the CSS classes is. So so it<br>[01:31] could never you can never theme against<br>[01:33] that and that recently all changed.<br>[01:35] Drupal now sh has the a concept of<br>[01:37] components. We have like a a thing<br>[01:39] called single directory components where<br>[01:41] you have a a theme can ship a whole<br>[01:43] library of components as you know the<br>[01:45] markup the schema of what type of data<br>[01:47] it has and you know JavaScript and CSS.<br>[01:50] So our company uh is now shipping uh<br>[01:53] themes that uh you know have a whole<br>[01:57] library of components you can wire your<br>[01:59] data directly in there you know through<br>[02:00] the UI or through code. But yeah that's<br>[02:04] that's basically the gist of it.<br>[02:07] So, I'm a WordPress dude and I think a<br>[02:11] lot of a lot of this is going to be uh<br>[02:13] we do this in WordPress and and how does<br>[02:15] this work in Drupal? And I I it's funny<br>[02:17] because I was at uh I was at Bad Camp uh<br>[02:20] last month.<br>[02:21] >> It was my first Bad Camp, which is Bay<br>[02:22] Area Drupal Camp.<br>[02:23] >> Uh and I was doing that that thing. I<br>[02:25] was being that person, the the voice of<br>[02:27] why is WordPress do this uh for the for<br>[02:29] the Drupal folks there. Um so so I I I<br>[02:33] will definitely empathize uh putting<br>[02:35] [clears throat] you in this position<br>[02:37] having just been in that position from<br>[02:38] the other side. Um but so so talk a<br>[02:42] little bit more about like like you you<br>[02:45] mentioned some there's like specifically<br>[02:47] technical limitations of u the way that<br>[02:50] themes sort of existed in Drupal in the<br>[02:53] past that sort of prevented the<br>[02:55] existence or I guess feasibility of<br>[02:58] something like a marketplace. Uh<br>[02:59] >> yeah.<br>[03:00] >> Can I guess from from from a dev<br>[03:04] perspective, somebody like I have a<br>[03:06] history of like building WordPress<br>[03:07] themes and actually had a a site for a<br>[03:10] while where I was attempting to sell<br>[03:12] WordPress themes. Why what what is the<br>[03:16] sticking point? What are the sticking<br>[03:17] points that prevented that from being<br>[03:20] really uh doable in in Drupal from like<br>[03:23] like a in the weeds kind of uh<br>[03:27] direction? Yeah. Yeah. So, if you want<br>[03:30] to get down into the weeds, um, like<br>[03:33] Drupal, of course, has been around for a<br>[03:35] very long time. And like, so within<br>[03:38] Drupal, you go into your admin form or<br>[03:41] your admin side and you create what's<br>[03:43] called content types, which are the same<br>[03:44] thing as post types, you know, and and<br>[03:46] they're all fieldable. They're all kind<br>[03:48] of and and then we have another like uh<br>[03:52] module that's integrated in in into<br>[03:54] Drupal called views and you create like<br>[03:57] basic like like a listing of items and<br>[03:59] you can create filters and smarts. It's<br>[04:01] it's really powerful. You can do a heck<br>[04:02] of a lot of stuff with it. But as you do<br>[04:05] that uh as you create these content<br>[04:08] types as you create these fields within<br>[04:10] the content types as you create these<br>[04:13] views Drupal will add markup. you know,<br>[04:15] it'll add like a thing like it'll like<br>[04:18] with Drupal, a piece of content is<br>[04:19] called a node. And so it'll add like a c<br>[04:23] a default CSS class on there called like<br>[04:25] node- dash, you know, episode or<br>[04:28] something if you're doing a podcast<br>[04:29] website.<br>[04:31] But when you're trying to sell a theme,<br>[04:35] you know, you're trying to sell a theme<br>[04:36] that can work with a whole bunch of<br>[04:38] things and the theme doesn't have this<br>[04:41] functionality. Themes cannot cannot<br>[04:43] contain content types. They can't<br>[04:44] contain views.<br>[04:46] >> So<br>[04:48] you can ship a theme, but you don't know<br>[04:50] that that CSS class is going to be no d-<br>[04:53] episode.<br>[04:54] >> Sure.<br>[04:54] >> And you also don't know, you know, what<br>[04:57] the HTML structure is underneath, you<br>[05:00] know, and and and so that made things<br>[05:03] that made things pretty pretty,<br>[05:06] you know, almost impossible for a robust<br>[05:09] theme ecosystem. And and there's<br>[05:10] companies out there that do sell Drupal<br>[05:12] themes. you'll see them on<br>[05:13] >> theme forest and stuff like that.<br>[05:15] >> Um, these the themes that are sold like<br>[05:20] they kind of get around that by by<br>[05:22] shipping a a custom module with themes.<br>[05:24] And so the custom module might install<br>[05:26] some content types,<br>[05:28] >> you know, might have some views and<br>[05:29] stuff like that.<br>[05:30] >> But as soon as you go away from where<br>[05:34] that custom or where that custom module<br>[05:37] points you to, everything falls apart<br>[05:39] because theme can't handle that,<br>[05:41] >> right?<br>[05:42] And uh so so that's the difference, you<br>[05:45] know, and uh<br>[05:48] yeah. Yeah, that's basically<br>[05:50] >> Yeah. So like fundamentally I I guess<br>[05:52] sort of a quasi equivalent, although I<br>[05:54] think you could still probably build a<br>[05:56] theme that was open enough in WordPress<br>[05:57] to to support this too. But like the the<br>[06:01] idea of like I'm doing uh like I we were<br>[06:04] talking before we start we hit record is<br>[06:06] like this website has a uh a custom post<br>[06:09] type called episodes and if like<br>[06:13] WordPress didn't understand and didn't<br>[06:15] like already like have some like base<br>[06:18] classes and whatever that just the<br>[06:20] themes expect to use or you know that<br>[06:22] are general enough. Um then the idea is<br>[06:26] that because the theme doesn't<br>[06:28] necessarily know about the existence of<br>[06:29] the episode post type it would and<br>[06:32] because Drupal specifically is kind of<br>[06:35] architected from the perspective of like<br>[06:37] we're letting you tell us what types of<br>[06:40] content you're using on your site. Uh<br>[06:43] then it's like the theme is like well<br>[06:46] like I don't know what you're doing. Uh<br>[06:49] so it can't really fill in those gaps as<br>[06:51] as easily is what I'm hearing. Yeah,<br>[06:53] exactly. So, you know, the and the theme<br>[06:56] can maybe do like some default styling,<br>[06:58] you know, you know, put some spacing<br>[06:59] around stuff, but you know, and and like<br>[07:02] me like like I the default theme in<br>[07:05] Drupal is called Olive Arrow. Like when<br>[07:06] you install when you install Drupal,<br>[07:08] that's what you get. And and I was the<br>[07:10] primary dev on that. And so we had to<br>[07:14] basically try to accommodate everything<br>[07:16] without the ability to accommodate<br>[07:17] everything.<br>[07:18] >> Sure. you know, but but with the<br>[07:21] introduction of components, you know, so<br>[07:23] so so now like as a as a theme<br>[07:26] developer, I can I can ship a library,<br>[07:28] you know, 50 60 components or more. And<br>[07:32] let's say I want to create an episode,<br>[07:34] you know, content type or post type or<br>[07:35] whatever. At that point, you know, I can<br>[07:38] I can kind of drag in, you know, the a<br>[07:41] title component, you know, map that to<br>[07:44] the, you know, my title field. I can<br>[07:46] drag in, you know, same thing with a<br>[07:47] body field or, you know, a video field<br>[07:50] and, you know, potentially, you know,<br>[07:53] MP3, like an audio player and stuff like<br>[07:55] that,<br>[07:56] >> right?<br>[07:57] >> And and so and so now it's it comes a<br>[08:00] lot more flexible, which is pretty neat.<br>[08:03] >> And uh I have been watching uh what's<br>[08:06] been going on in in Drupal land. Um this<br>[08:09] is sort of a uh one might suggest a<br>[08:13] fortuitous time for the existence or<br>[08:15] emergence of a theme development shop.<br>[08:18] Uh given that uh Dre Boyart the founder<br>[08:21] of Drupal has been talking a lot about<br>[08:23] uh marketplaces uh and selling Drupal<br>[08:27] stuff. Uh talk about that relationship<br>[08:30] and and what your thoughts are about<br>[08:33] sort of a commercial ecosystem for<br>[08:35] Drupal.<br>[08:37] >> Yeah. So like for the longest time, when<br>[08:40] I say for the longest time, maybe like<br>[08:42] for the past 10 years, Drupal really<br>[08:44] concentrated on like the enterprise. You<br>[08:46] know, we were like, "All right, let's<br>[08:47] just put all our time and effort into<br>[08:49] tracking down these Fortune 500<br>[08:51] companies and try to get these<br>[08:52] million-dollar contracts." And, you<br>[08:54] know, that would work for the for for<br>[08:57] like the larger companies. But at the<br>[08:59] same time, the the unintended consequ<br>[09:02] consequence of that is that Drupal's<br>[09:04] market share started to decline. And<br>[09:06] when the market share declines that<br>[09:09] means that there are less Drupal<br>[09:11] developers. There are less people you<br>[09:13] know in that bid market kind of learning<br>[09:15] Drupal knowing what Drupal is. And that<br>[09:18] has hurt Drupal you know and so<br>[09:21] eventually the you know the<br>[09:23] [clears throat] powers that be the<br>[09:24] leadership within Drupal said like all<br>[09:25] right well we need to recapture this<br>[09:28] midm market and and and so the the put<br>[09:33] together this huge strategy and this is<br>[09:34] upre's uh uh he has a blog somewhere<br>[09:39] called starshot product strategy star<br>[09:41] was the code name for Drupal CMS before<br>[09:43] it was called Drupal CMS<br>[09:45] >> and so Basically, the goal is to for for<br>[09:49] Drupal to become feasible of like<br>[09:53] being being a CMS chosen for a website,<br>[09:57] you know, that has like maybe a budget<br>[09:59] of like 10 to $30,000 or something like<br>[10:02] that, which right now, unless you're a<br>[10:04] Drupal developer, you probably don't<br>[10:06] want to do that because, you know,<br>[10:07] Drupal Drupal can be a little expensive.<br>[10:10] So, uh, as part of that, they they<br>[10:13] decided, all right, well, we're going to<br>[10:15] create this, uh, kind of like<br>[10:18] I call it like an easy button for<br>[10:20] Drupal, you know, and, uh, called Drupal<br>[10:22] CMS, and it has like all the modules<br>[10:24] that you have to download preconfigured,<br>[10:26] you know, because there's like some<br>[10:27] modules that should totally be part of<br>[10:29] Drupal core, things like, you know, like<br>[10:31] the u friendly paths, you know, so if<br>[10:34] you create a piece of content, it's not<br>[10:35] node one, it's like, you know, whatever<br>[10:39] it automatically gets that node title in<br>[10:41] there and stuff for SEO. Um, so it has<br>[10:44] all this stuff preconfigured. It's<br>[10:45] pretty nice, but um there's still a<br>[10:48] couple missing pieces in there. Uh, one<br>[10:50] of missing pieces is like a decent page<br>[10:53] builder. Like Drupal has this whole<br>[10:55] ecosystem of page builders because no<br>[10:56] one has specifically like taken over.<br>[10:59] >> And honestly, this is something that's<br>[11:01] like kind of hurt Drupal. You know, you<br>[11:03] can kind of do anything in Drupal, but<br>[11:04] it shouldn't be this much effort. you<br>[11:05] know, WordPress has Gutenberg, Web Flow<br>[11:07] has whatever the hell Web Flow has,<br>[11:09] etc., you know,<br>[11:10] >> and so so there's a there Aquia, which<br>[11:14] is kind of like the largest Drupal<br>[11:16] company and the one that Drew founded,<br>[11:18] uh, is creating a next generation page<br>[11:19] builder called Drupal Canvas. And Drupal<br>[11:22] Canvas does everything that you pretty<br>[11:24] much, you know, you would assume it<br>[11:26] would do, you know, and and does a few<br>[11:29] extra things, too, which is pretty cool.<br>[11:31] So you can like copy and paste<br>[11:32] components, group components, create<br>[11:33] what's called like patterns, you know,<br>[11:36] edit them, you know, you can map your<br>[11:39] data to it. It's it's pretty cool. Um<br>[11:42] and then um<br>[11:45] so so at that point we have you know<br>[11:49] once Drupal Canvas comes out which will<br>[11:51] probably be next month and then you know<br>[11:54] we have then Drupal CMS 2.0 will be<br>[11:56] released. So at that point we have like<br>[12:00] a pretty good starting point but we<br>[12:03] still need to like kind of put<br>[12:04] everything together to compete with<br>[12:06] WordPress to compete with Web Flow, Wix,<br>[12:09] Squarespace, you know, and all<br>[12:12] Contentful and all those headless CMS's.<br>[12:14] So at that point um [clears throat]<br>[12:17] you know the Drupal Association of<br>[12:19] Powers that be said like like we need<br>[12:21] this ecosystem. We want to do something<br>[12:23] called site templates. And site<br>[12:25] templates are basically like it's a it's<br>[12:28] a theme. It's a Drupal theme, but also<br>[12:32] like preconfigured with those content<br>[12:34] types, you know, which are similar to<br>[12:35] post types. Uh, you know, has it can<br>[12:39] come preconfigured with modules and it<br>[12:41] can also come preconfigured with um<br>[12:44] default content, you know. So, an<br>[12:47] [clears throat] example of this is like<br>[12:48] let's say I'm a church and I want to,<br>[12:50] you know, I want a church churchy<br>[12:52] website, you know, and uh<br>[12:54] >> I built a couple of those.<br>[12:56] >> Yeah. Yeah.<br>[12:58] Uh, you know, I I I I would<br>[13:00] hypothetically be able to browse this<br>[13:02] marketplace, look for a site template uh<br>[13:05] that like, you know, it would have maybe<br>[13:07] have a list of content types. You know,<br>[13:08] you may have like sermons, you know,<br>[13:11] events and blog, all that all that good<br>[13:14] stuff. And uh at that point uh pull it<br>[13:17] down, install it and at that point you<br>[13:20] would number one have all you would have<br>[13:22] content so you can just edit your<br>[13:24] content and then you would have a<br>[13:26] beautiful theme hopefully and everything<br>[13:28] preconfigured. So it's and but at but at<br>[13:31] that point like what's really cool is<br>[13:33] you have that flexibility of Drupal now<br>[13:35] like like Drupal is hyperflexible.<br>[13:37] Drupal could build like so many things<br>[13:39] if you have, you know, if you kind of<br>[13:42] know your way around it. Like like<br>[13:44] Drupal's freaking amazing. So So that's<br>[13:47] that's kind of where we're going with<br>[13:49] that. And and to get started, we're<br>[13:52] we're like the the marketplace is is set<br>[13:55] to kick off like right around Dripcon<br>[13:57] Chicago, which is going to be in March.<br>[14:00] And um it's going to be kind of like<br>[14:02] almost like a beta, you know, like we're<br>[14:04] going to be there. We're going to have a<br>[14:05] couple site templates. There's going to<br>[14:06] be 15 or 16 other companies that have<br>[14:08] some tight site templates. We don't know<br>[14:11] what we're going to build yet, or at<br>[14:12] least I don't know what we're going to<br>[14:13] build.<br>[14:14] >> Mhm.<br>[14:14] >> But, um, all our stuff is going to work.<br>[14:17] It's going to be awesome. It's going to<br>[14:18] be super successful. And And, uh,<br>[14:20] hopefully people will buy it,<br>[14:22] >> you know, and if they buy it, well,<br>[14:24] that's good. Like,<br>[14:27] like I I I can tell you like I've been<br>[14:30] to a number of word camps. I've been to<br>[14:32] like Word Camp Miami and Jacksonville,<br>[14:34] probably one or two others, and the<br>[14:37] amount of money in the WordPress<br>[14:38] ecosystem is like significantly more<br>[14:42] than in the Drupal ecosystem.<br>[14:45] >> And the reason is is because of the uh<br>[14:49] like the the robust commercial ecosystem<br>[14:52] around WordPress. you know, you have,<br>[14:54] you know, however many theme vendors,<br>[14:56] you got all these modu plug-in vendors,<br>[14:59] you know, and and and stuff like that,<br>[15:02] and they're all advertising. And and the<br>[15:04] thing about that is like that's why, you<br>[15:08] know, Word Camp US can cost thing like<br>[15:10] $50 or something like that because, you<br>[15:13] know, they get Is it $50 or is it just a<br>[15:15] couple hundred? Yeah, it's Yeah, it's I<br>[15:18] think<br>[15:19] I want to say this last year it was $50<br>[15:22] a day. I have honestly paid less<br>[15:25] attention to<br>[15:27] word camp prices because my company pays<br>[15:29] for them. So like I never even look at<br>[15:31] like the ticket price,<br>[15:32] >> but uh but yeah, I think it was I think<br>[15:34] it was $50 a day. So if you're going to<br>[15:36] Word Camp US, it would be a hundred day<br>[15:38] $100 I think. [snorts]<br>[15:39] >> Yeah. So that's like ridiculous.<br>[15:41] >> But that's super that's super cheap. uh<br>[15:42] as compared to Drupalcon which is like a<br>[15:44] 1K basically.<br>[15:46] >> Yeah. Yeah. And and and Drupalcon is<br>[15:48] lowering their prices FYI like Drupalcon<br>[15:51] Chicago like the prices are going to<br>[15:52] start like at 500 just because we're<br>[15:54] kind of realizing we're pricing people<br>[15:56] out, you know, especially like a lot of<br>[15:58] the smaller companies like like<br>[15:59] Dripyard, you know, like to drop a<br>[16:01] couple grand going there, you know,<br>[16:03] that's that's a little more significant<br>[16:05] than if you're like Pantheon or Aqua or,<br>[16:08] you know, Automatic or something like<br>[16:09] that. You know,<br>[16:10] >> you're hitting on all of my all of my uh<br>[16:13] like key touch points about things in<br>[16:15] the WordPress ecosystem. [laughter] Like<br>[16:17] there's just so many crossovers. So, uh<br>[16:20] so one of the things, okay, so a<br>[16:22] foundational I'll start here. A<br>[16:23] foundational part of this podcast<br>[16:25] specifically came out of a sticker that<br>[16:28] I got from Drupal Con, which is right<br>[16:30] here, because I was at Drupalcon last<br>[16:32] year. Come for the code, stay for the<br>[16:34] community. And that that was I that<br>[16:37] resonated with me because that's the<br>[16:40] reason why I was in the WordPress<br>[16:41] community and ultimately that became one<br>[16:43] of the foundations for how I wanted to<br>[16:46] do this this show. Um, and one of the<br>[16:49] things that I learned when I was in<br>[16:51] Atlanta, uh, that is distinct about the<br>[16:55] Drupal community from the WordPress<br>[16:58] developer ecosystem is that in Drupal,<br>[17:02] more frequently, if we both have tools<br>[17:07] or modules or whatever that serve a<br>[17:09] similar purpose that we're probably more<br>[17:12] likely to be like, hey, let's join<br>[17:14] forces and make the best thing. So like<br>[17:16] if I have an SEO plugin and you have an<br>[17:17] SEO plugin, then we might work together<br>[17:20] and be like, well, let's make one of<br>[17:22] these things the de facto SEO plugin and<br>[17:24] make it the best plugin or module. Um,<br>[17:27] whereas in the WordPress ecosystem,<br>[17:29] >> uh, if I have an SEO plugin and you have<br>[17:31] an SEO plugin, I'm probably not going to<br>[17:33] talk to you because that's my IP and I<br>[17:36] might turn around and sell it. So, I<br>[17:37] heard I had a lot of conversations at uh<br>[17:40] Drupal Con about this, but also uh about<br>[17:43] the idea of a marketplace because that<br>[17:45] was sort of when Dre started uh floating<br>[17:47] the idea. Um<br>[17:49] >> and uh and my reaction as someone in the<br>[17:52] WordPress ecosystem is I really like<br>[17:55] that model of of being collaborative and<br>[17:58] sharing and and like you know joining<br>[18:01] these two uh things instead of like<br>[18:03] really going headto-head and competing.<br>[18:05] Um, what do you what is your take on<br>[18:08] sort of like because I because in<br>[18:11] WordPress we're more likely to be<br>[18:13] competitors and not sharing those ideas<br>[18:14] and being sort of siloing yourselves<br>[18:16] off. So what is your take on that sort<br>[18:18] of uh dynamic in terms of like do you do<br>[18:21] you see that as uh something that could<br>[18:24] be a risk to like the Drupal like<br>[18:26] developer ecosystem as things get a<br>[18:28] little [clears throat] bit more<br>[18:28] competitive?<br>[18:29] >> Yeah, things are always a risk, right?<br>[18:31] like as soon as you make big changes<br>[18:32] like this and these are the these are<br>[18:34] some of the biggest changes in the<br>[18:35] Drupal ecosystem uh ever you know uh<br>[18:39] there's always a risk. Um, so like to to<br>[18:43] expand on your point, like I I saw a<br>[18:45] blog post at one point that like<br>[18:46] WordPress had like I don't knowund and<br>[18:49] something form builders, you know, that<br>[18:52] that that you can buy and and and and<br>[18:54] they won't play nice with each other.<br>[18:56] >> And and and then like furthermore, like<br>[18:59] if you have WordPress and you install<br>[19:00] like, you know, 14 15 plugins, you're<br>[19:03] kind of<br>[19:04] >> your site's like a little funky. You're<br>[19:07] probably fighting Yeah. Yeah. Yeah. you<br>[19:09] can be fighting some bugs and stuff like<br>[19:11] that. Like one of the cool things is<br>[19:13] with Drupal is like all the modules play<br>[19:16] well together. Like Drupal has a very<br>[19:18] robust set of API APIs, you know, and<br>[19:21] and that's something that that we do<br>[19:23] better than WordPress. WordPress does a<br>[19:25] lot of better a lot a lot of things<br>[19:27] better than Drupal, but one thing we<br>[19:28] have is like a robust APIs that allow<br>[19:31] things to work together. So, if you have<br>[19:32] like 60 70 modules installed on a uh on<br>[19:35] a Drupal site, it it like that's normal.<br>[19:38] You know, if you have a couple hundred,<br>[19:40] that's fine, too.<br>[19:41] >> Um, and so like going into like Drupal<br>[19:47] has probably like three or four page<br>[19:49] builders, but there's one like big one.<br>[19:50] It's called Web Form. You know, it's<br>[19:52] easy<br>[19:53] >> and built around Webform. There's<br>[19:54] ecosystems that build on top of that. So<br>[19:57] like you you know you'll have web form<br>[19:59] commerce, web form this, web form that<br>[20:01] that that allow you to do like you know<br>[20:04] little things and it's just really nice.<br>[20:06] You don't have to evaluate you don't<br>[20:07] know. You don't got to pay you know $20,<br>[20:10] $40 or whatever for something like that.<br>[20:11] You just try it. You get it to work and<br>[20:14] and everything goes. So like that's<br>[20:17] that's one of the advantages that that<br>[20:21] Drupal has and that's something that I<br>[20:23] think you know the leadership<br>[20:24] recognizes. Um,<br>[20:27] you know, Dre had stated modules will<br>[20:30] always be GPL forever free,<br>[20:32] >> you know, and it's it's the themes that,<br>[20:37] you know, that that that could be<br>[20:39] commercial code. So, back when I was you<br>[20:42] like back when I was like researching<br>[20:45] like like doing a little bit of due<br>[20:46] diligence like can I do driftyard, you<br>[20:48] know? So started looking into GPL and<br>[20:51] like everything because GPL for those<br>[20:53] who don't know has a very sticky license<br>[20:55] you know where like if if you write PHP<br>[20:59] that builds on top of Drupal or<br>[21:01] WordPress and then distribute it it's<br>[21:03] technically GPL which means it's free<br>[21:06] >> and [clears throat] um<br>[21:08] >> but that doesn't necessarily apply to<br>[21:11] things that<br>[21:13] it's it's a little bit of legal but like<br>[21:16] things that are not directly interfacing<br>[21:18] with that. So things that can run in the<br>[21:20] browser,<br>[21:20] >> things like CSS and JavaScript will not<br>[21:24] necessarily be GPL and and I did a<br>[21:26] little bit of digging and and there's a<br>[21:28] Drupal licensing working group, you<br>[21:29] know, and there was some talk about that<br>[21:31] and and the conclusion that that I saw<br>[21:34] within this issue is yeah, yeah, like<br>[21:36] CSS and G and JavaScript is not<br>[21:38] necessarily GPL. [snorts] So at that<br>[21:42] point, I was like, all right, well, we<br>[21:43] can do this. We can just kind of, you<br>[21:44] know, have our CSS and everything closed<br>[21:47] source. So,<br>[21:49] the TLDDR of all the all of this is that<br>[21:55] like<br>[21:57] it's it's kind of like a fine line, you<br>[21:59] know, like you can't<br>[22:03] like like it's not necessarily a good<br>[22:05] idea for everything to cost money and<br>[22:08] and then people don't collaborate, you<br>[22:10] know. Um, but at the same time, you need<br>[22:13] money because people need to get paid,<br>[22:14] >> right? Like I am doing this because to<br>[22:17] tell you the truth like I wanna I want<br>[22:19] to be able to make six figures and work<br>[22:22] 20 hours a week. That is my dream,<br>[22:24] >> you know. And uh and<br>[22:28] >> yeah, so it's it's going to be a fine<br>[22:30] line. I have a feeling that like as we<br>[22:33] as as as Drupal continues to like<br>[22:37] continue down this path, there are going<br>[22:39] to be, you know, changes and people are<br>[22:41] going to figure things out. people like<br>[22:42] like Drupal's going to make mistakes and<br>[22:45] they're going to say like, "All right,<br>[22:46] well, let's back this up a little bit or<br>[22:49] maybe we should go forward a little bit<br>[22:50] more, you know, maybe we're not doing<br>[22:51] this enough."<br>[22:53] >> Yeah.<br>[22:53] >> So, I I think it's going to be trial and<br>[22:55] error.<br>[22:56] >> Yeah. Yeah. that's interesting about the<br>[22:58] about modules being different and and<br>[23:02] and like the marketplace not being<br>[23:05] handled uh or not covering modules<br>[23:07] necessarily versus themes and themes<br>[23:10] being the thing that we're that we're<br>[23:11] talking about first. I think it makes a<br>[23:13] lot of sense uh both from sort of<br>[23:15] Drupal's history but also like creating<br>[23:19] [snorts] like not shutting off that sort<br>[23:21] of collaborations which I do recognize I<br>[23:23] think happens a lot more in modules<br>[23:24] because like you said like you can have<br>[23:25] dependency modules and whatever like<br>[23:27] this module calls these other three<br>[23:29] modules and whatever and you do need to<br>[23:30] sort of like keep that ecosystem. Um, in<br>[23:33] WordPress there is kind of sort of an<br>[23:35] equivalent. Um, there are like plugins<br>[23:38] that are like add-ons or additional<br>[23:41] functionality to an existing plugin and<br>[23:43] maybe that existing plugin is a premium<br>[23:46] plugin. Um, or maybe it's like a free<br>[23:48] plugin and the extension is uh is a<br>[23:51] premium thing or whatever. Like there's<br>[23:52] all sorts of like weird things like<br>[23:54] that. Um, but um but yeah, I think that<br>[23:58] that's interesting. Do you see uh a<br>[24:01] future where there might be also a<br>[24:04] module marketplace both like you know<br>[24:06] besides drupal.org and getting your<br>[24:07] stuff like normally that way but like<br>[24:09] having like a like the equivalent of<br>[24:11] like an invado sort of thing where you<br>[24:13] could like purchase and and integrate<br>[24:16] like premium uh modules for Drupal.<br>[24:19] >> I would be really really surprised.<br>[24:22] There are like some modules that like<br>[24:24] kind of do the whole GPL loophole and<br>[24:26] put some processing processing on the<br>[24:29] server, you know, that's kind of how<br>[24:30] they how they do it. So there's there's<br>[24:33] things like that. I I can't see any any<br>[24:38] invado type marketplace for for for<br>[24:41] modules. I I think if that happened,<br>[24:43] people would kind of get pissed and then<br>[24:45] just like download it and throw it up on<br>[24:47] drupal.org or GitHub or something like<br>[24:49] that, which has happened in the past,<br>[24:51] you know,<br>[24:52] >> happens in too. [laughter]<br>[24:53] >> Yeah. Yeah. And and it's interesting<br>[24:55] like it's an interesting topic, right?<br>[24:57] So, if I sell a site template, let's say<br>[24:59] I sell this for like $1,000 and I have<br>[25:01] my theme and also like has, you know, a<br>[25:03] composer file that references a bunch of<br>[25:05] modules. These modules are key key<br>[25:08] components to this site template. Well,<br>[25:11] I'm making all the profit of that. These<br>[25:12] module these module maintainers aren't<br>[25:15] making you know? Don't know if I<br>[25:17] can say that word, but I just did.<br>[25:19] [laughter] But, uh,<br>[25:20] >> I'll flag the explicit tag. It's not a<br>[25:22] problem.<br>[25:23] >> Yeah. Yeah. Um, you know, and that go<br>[25:27] but that also goes all the way down, you<br>[25:29] know, like, well, at that point, the<br>[25:31] core maintainers and the core developers<br>[25:34] are not getting paid, you know, the<br>[25:35] Apache developers or EngineX. Um and and<br>[25:39] and also like the argument would be that<br>[25:44] well these module maintainers and<br>[25:48] developers have been doing kind of<br>[25:49] unpaid unpaid labor for years and years<br>[25:53] while other people are making money. You<br>[25:54] have agencies, you know, like agencies.<br>[25:56] I used to work for a company called<br>[25:57] Labot<br>[25:58] >> and and and they would put together<br>[25:59] these great websites for these large<br>[26:02] companies for multi-million dollar<br>[26:04] contracts and and you know, does that<br>[26:09] money go toward those module developers?<br>[26:11] No. I I mean, to be fair, there are some<br>[26:13] that there's a there's a number that<br>[26:14] would work at that company, but still,<br>[26:16] you know, so it it's a really<br>[26:19] interesting ecosystem. like open source<br>[26:22] is really interesting and and h like how<br>[26:26] how that works and how that can work. So<br>[26:30] >> yeah,<br>[26:31] >> I'm interested.<br>[26:33] So, so one of the things that happens a<br>[26:35] lot in uh the WordPress commercial<br>[26:38] ecosystem is that even even though<br>[26:43] technically because because Matt Melan<br>[26:45] has explicitly stated a number of times<br>[26:48] that he believes that all code uh in<br>[26:52] plugins and themes should be uh GPL<br>[26:55] licensed or GPL compatible uh even even<br>[26:57] when it doesn't have to be because<br>[26:59] that's the spirit of the GPL, not<br>[27:01] necessarily the letter, you Um, so he's<br>[27:03] like he doesn't like things like Invato<br>[27:06] or they have mixed licenses or whatever.<br>[27:07] He's uh he's much more like everything<br>[27:09] should be GPL. And if everything is GPL,<br>[27:12] then that means anybody can take your<br>[27:13] code and then republish it and put it<br>[27:15] somewhere else and now it's their code<br>[27:16] because that's what the GPL allows you<br>[27:18] to do is basically redistribute it uh as<br>[27:20] is. Um, so the the the thing that most<br>[27:24] uh premium WordPress plugins and themes<br>[27:28] sort of do is okay, what you're paying<br>[27:32] for is access to uh updates. Uh, so they<br>[27:37] have a different update mechanism that<br>[27:39] so it's not going to be on like<br>[27:40] WordPress.org and get automatic updates<br>[27:42] that way. Uh, it's going to be through<br>[27:43] their own sort of homebrewed update<br>[27:45] mechanism. And two, they're also selling<br>[27:48] support for a contracted period of time.<br>[27:51] Um, is that sort of the model that you<br>[27:54] are thinking of uh for dripyard as well?<br>[27:56] Are you thinking that uh primarily you<br>[28:00] are selling the proprietary<br>[28:03] like JavaScript and CSS? I mean, you<br>[28:06] know, like that is that is the thing<br>[28:08] that is that is being sold even if it's<br>[28:11] like you're selling it with a bunch of<br>[28:12] other stuff that is technically GPL<br>[28:14] compatible.<br>[28:16] So, like we're definitely like selling<br>[28:19] support add-ons, you know, reoccurring,<br>[28:21] and that's like $100 a year. So, that's<br>[28:23] not a heck of a lot of money.<br>[28:25] >> Um, [clears throat]<br>[28:26] updates, you know, will people just will<br>[28:30] download the zip file from our, you<br>[28:33] know, when they log in, get, you know,<br>[28:36] get their theme and stuff like that and<br>[28:38] then they can, you know, download their<br>[28:39] updates that way and, you know,<br>[28:41] hopefully their changes will be in a sub<br>[28:42] theme so they don't get clobbered.<br>[28:44] >> Mhm. But um<br>[28:47] like it's<br>[28:53] like I can't really<br>[28:57] I it's going to be interesting to see<br>[28:59] how things go. I I I can't really tell<br>[29:01] you I I can tell you what we're doing,<br>[29:04] >> but I can't tell you what everything<br>[29:06] everyone else is doing like. And<br>[29:09] >> yeah, I I don't know if that really<br>[29:11] answers your question or not, but<br>[29:12] >> I was I mean I was wondering from from<br>[29:14] the perspective of of Dripyard<br>[29:16] specifically. Yeah. So it sounds like<br>[29:17] that you would like kind of and that's<br>[29:19] one of the things too like if you're<br>[29:20] gating access to the files uh because<br>[29:23] you have to be a logged user and you<br>[29:25] have to pay to get the login in the<br>[29:26] first place, then then that's that's an<br>[29:28] easy way of of making sure that people<br>[29:30] are are paying for your stuff.<br>[29:32] >> Yeah. Yeah, we're doing that. And and<br>[29:34] there's there's like to tell you the<br>[29:35] truth, there's like nothing stopping<br>[29:37] people, you know, from dist<br>[29:39] redistributing our stuff after after<br>[29:41] they purchase it. You know, like we<br>[29:43] could sue them, but you know, we themes<br>[29:46] for $500, you know,<br>[29:49] >> you know, more than likely what we'll<br>[29:50] end up I'll I'll end up like spilling<br>[29:52] something on my Drupal account or<br>[29:53] something. But like, you know, Yeah. Uh<br>[29:57] but but at the same time, you know, like<br>[29:59] like our thought process is, well, if<br>[30:01] you're if you're starting a uh a project<br>[30:04] with Drupal, you're probably spending<br>[30:05] significantly more than $10,000. Just<br>[30:07] spend like $500 on a theme, you know,<br>[30:10] you know, add in some support seems<br>[30:12] pretty reasonable. And and honestly like<br>[30:14] these themes that we developed um over<br>[30:18] 10 months and I'm like probably<br>[30:20] thousands of hours you know and uh<br>[30:23] they're really good you know they're<br>[30:25] they're they're awesome and it's going<br>[30:28] to save people<br>[30:29] >> tens of thousands of dollars you know by<br>[30:31] by using these. So<br>[30:35] >> so what I we've talked a lot about<br>[30:37] Drupal and we've talked a lot about<br>[30:38] WordPress. What I often like to do uh is<br>[30:42] to really talk about um sort of what<br>[30:46] your journey to tech or web development<br>[30:49] was sort of like in the first place.<br>[30:51] Like how did you get to be uh how did<br>[30:55] you get to be my cersal co-founder of<br>[30:57] Dripyard? Like what what led to uh to<br>[31:00] you just getting involved in the stuff<br>[31:01] in the first place?<br>[31:02] >> So I was born at a very young age.<br>[31:05] [laughter]<br>[31:08] I got I got into uh computers back in<br>[31:11] like 1999. I used to do technical<br>[31:13] support for Dylan Gateway Computers<br>[31:14] before they like shipped off all that<br>[31:16] stuff over to India, you know. So I<br>[31:18] would talk to your grandmother trying to<br>[31:19] troubleshoot Windows 98. Mhm.<br>[31:21] >> I moved up to up to Gainesville and I<br>[31:24] got this job doing technical support<br>[31:25] over the phone technical support uh just<br>[31:27] because like I had done that before and<br>[31:30] we it was this enterprise software<br>[31:31] company called Bar Systems that like<br>[31:33] would interface between like mainframes<br>[31:35] and like regular networks and stuff and<br>[31:38] it was so slow that we we would just sit<br>[31:40] there and twiddle our thumbs and the guy<br>[31:42] in the office next to me he was doing<br>[31:44] these websites and he was using<br>[31:45] Macromedia fireworks and uh showed me<br>[31:48] how to do that and I had to use<br>[31:50] Photoshop This would have been like<br>[31:51] 2001, 2002. And I would literally like<br>[31:54] do all my designs and fireworks. We both<br>[31:56] would. And then we would slice it up and<br>[31:59] we would just export it. And it was it<br>[32:01] was literally like a table full of<br>[32:02] images that would be<br>[32:04] >> I remember those. Yep. That was awful. I<br>[32:06] hate those.<br>[32:06] >> Yeah, I found I found some of those on<br>[32:08] my old hard drive and I have some of<br>[32:10] those up in my on my GitHub. Like if you<br>[32:12] have some links or something like like<br>[32:14] show notes or something, I'll I'll I'll<br>[32:16] shoot you some links. You can see sp<br>[32:17] spaceer gifs and stuff in there.<br>[32:19] >> Yeah. So, I got into websites and I<br>[32:21] started doing like my brother's band's<br>[32:23] website. I did my brother's friends<br>[32:25] man's websites and I started like, you<br>[32:27] know, doing websites as a side hustle<br>[32:30] and stuff like that. I remember I would<br>[32:33] I would put these ads on Craigslist for<br>[32:35] barter to do websites for like to have<br>[32:37] people do stuff for our house. And I<br>[32:39] ended up getting this guy. He was a<br>[32:41] starting a lawn care company. and uh we<br>[32:44] became friends, you know, he put in a<br>[32:46] sprinkler system and and he he said he<br>[32:48] had this website called uh or he had a<br>[32:51] domain name called gatortailgating.com,<br>[32:53] you know, and I'm a big flirty gator<br>[32:54] football fan,<br>[32:56] >> you know, and I was like, I like<br>[32:57] tailgating. I'm like, let's do this, you<br>[32:59] know.<br>[33:00] >> So, I uh I [clears throat] started<br>[33:02] looking for CMSs. This would have been<br>[33:04] 2007.<br>[33:06] And I don't know why I didn't look at<br>[33:08] WordPress, but I I looked at Jumla and I<br>[33:10] looked at Drupal. And I chose Drupal to<br>[33:13] be honest because it had an integrated<br>[33:14] forum which is like such a funny thing<br>[33:17] to select. But then I kind of got into<br>[33:19] it and around and I I started doing like<br>[33:22] a little bit of freelance in Drupal, you<br>[33:24] know, I would just literally like do<br>[33:26] everything the wrong way, you know, like<br>[33:28] edit the files and core, which you're<br>[33:29] not supposed to do, etc., etc.<br>[33:32] And um I eventually uh made my way like<br>[33:36] I remember I Googled you know<br>[33:39] Gainesville Drupal just to see if<br>[33:40] there's what would h happen you know and<br>[33:42] I found I found this thing on groups.<br>[33:45] Drupal.org that led me to Florida Drupal<br>[33:47] camp and I went down there in early 2010<br>[33:50] and I was kind of hooked on I was like<br>[33:52] holy I didn't know that there was<br>[33:53] actual community. I thought it was just<br>[33:55] like a bunch of nerds developing this<br>[33:57] you know and they taught me how to do<br>[33:59] stuff that I didn't know how to do. I<br>[34:00] went home and I was like so<br>[34:02] enthusiastic, you know, ended up going<br>[34:04] the next few years and started<br>[34:05] volunteering and stuff and um I started<br>[34:09] looking for Drupal jobs at that point. I<br>[34:10] was working for the Florida High School<br>[34:12] Athletic Association at the time just<br>[34:14] doing like all their computer stuff and<br>[34:16] I migrated their like fairly large<br>[34:18] website to Drupal 6 at the time and uh<br>[34:22] then I uh I ended up uh you know kind of<br>[34:26] getting more involved with Florida<br>[34:27] Drupal Camp. I ended up uh you know<br>[34:30] getting a my job at Labot back in uh<br>[34:33] 2014<br>[34:35] and uh kind of just kind of just went<br>[34:37] head on into Drupal at that point you<br>[34:39] know if I wasn't already there and I<br>[34:42] ended up uh getting involved in Drupal<br>[34:44] core development at Labot where you know<br>[34:47] uh I uh [clears throat] I I got kind of<br>[34:51] got roped into uh leading a team to do a<br>[34:54] new theme for Drupal where the previous<br>[34:56] theme for Drupal just had been around<br>[34:58] for so long, you know, at the time I was<br>[35:00] probably like 10 years old, which is<br>[35:02] like a million in internet years, you<br>[35:04] know,<br>[35:05] >> and and and so went through that and<br>[35:07] everybody was really happy and, you<br>[35:09] know, ended up doing a bunch of other<br>[35:11] cool stuff, you know, and then uh ended<br>[35:15] up quitting Lilot for more money, you<br>[35:17] know, and then quitting that job for<br>[35:18] more money,<br>[35:19] >> end up getting laid off and that, you<br>[35:22] know, and then I was like, you know,<br>[35:24] that led me to here and I was like,<br>[35:26] because I had been mulling this company<br>[35:28] for a while and I was even talking to<br>[35:30] other developers while I was still like,<br>[35:32] >> you know, in various different jobs<br>[35:34] about potentially starting this with<br>[35:35] them. And then I was like, this is going<br>[35:38] to be it. I'm going to I'm I just got<br>[35:40] laid off. This is going to be my kick in<br>[35:42] the ass. I'm going to I'm going to start<br>[35:45] this up. And you know, so I I uh I<br>[35:48] reached out to my current business<br>[35:50] partner, this guy named Andy Giles, who<br>[35:52] lives in Asheville, North Carolina, and<br>[35:54] he's a amazing backend deb. He's he's<br>[35:56] he's a horrible front end dev<br>[35:58] >> and but he's also like really good at<br>[36:00] things like DevOps and uh e-commerce and<br>[36:03] he's a nice guy, you know, and uh we<br>[36:05] ended up um ended up talking him talking<br>[36:08] him into I said we're going to get rich.<br>[36:09] we're gonna have, you [laughter] know,<br>[36:11] all this type of stuff. And uh, you<br>[36:14] know, I I, you know, we like moneywise,<br>[36:17] we had to invest in some designers, you<br>[36:19] know, so we ended up we at at this<br>[36:21] point, we both probably threw in about<br>[36:23] like five grand into the business to pay<br>[36:25] for some designs, you know, and uh just<br>[36:29] a heck of a lot of work. Ended up taking<br>[36:30] an equity line of credit against my<br>[36:32] house so I had something to live off of.<br>[36:34] um and ended up uh just like spending I<br>[36:38] I I thought we were going to have this<br>[36:40] first first theme out in like 3 months.<br>[36:42] It took took like 10 months<br>[36:44] >> because there like it's funny how much<br>[36:47] work goes into making sure your themes<br>[36:50] can support like almost anything that<br>[36:53] the kitchen sink, you know, right?<br>[36:55] >> And and um<br>[36:57] >> but now we have this whole design<br>[36:59] system. We have a we have a system<br>[37:01] behind everything. So, it's it's really<br>[37:02] easy to kind of turn around new themes<br>[37:05] at at this point. But what we're uh I<br>[37:09] guess the answers your question, but I<br>[37:10] guess where I'm going with this is like<br>[37:11] currently we're kind of working on uh<br>[37:14] making sure we have full support for<br>[37:15] Drupal Canvas, which is that nextgen<br>[37:17] page builder that's going to come out in<br>[37:18] about a month.<br>[37:20] >> Yeah. Tell me about uh so I've I've been<br>[37:23] sort of watching the evolution of uh<br>[37:27] Drupal CMS uh since<br>[37:30] uh well I guess since January this year<br>[37:33] pretty much.<br>[37:34] >> Um and and like I went back before<br>[37:37] before I went to Drupal Con uh in in<br>[37:40] Atlanta. Um I went back and I watched<br>[37:43] Dre's like last two keynotes before<br>[37:45] that. Um, and I watched the one from<br>[37:48] Vienna this last uh couple weeks. Um,<br>[37:52] and I remember when I was in Atlanta and<br>[37:54] he was showing what was then referred to<br>[37:57] as experience builder, which is now<br>[37:58] Drupal canvas. Uh, I was like I I I<br>[38:02] tweeted actually I guess it's not<br>[38:04] tweeting if you do it on blue sky. Uh,<br>[38:05] it's like blute. I don't know. Um, I I<br>[38:09] posted on Blue Sky that this looks like<br>[38:13] the thing that Gutenberg should have<br>[38:16] been all along.<br>[38:17] >> Yeah.<br>[38:17] >> Um, I was like so incredibly impressed<br>[38:20] by uh [snorts] what looked to be like<br>[38:24] way more intuitive, way easier uh to<br>[38:26] use. And I've I've played with and<br>[38:29] installed uh Drupal CMS. And I I<br>[38:32] [clears throat] fully believe, in fact,<br>[38:34] I wrote a blog post on the Pantheon blog<br>[38:35] about this. I fully believe that that is<br>[38:38] like a thousand times better experience<br>[38:42] uh first-time user experience for<br>[38:44] installing uh a CMS than than WordPress.<br>[38:47] And part of that has to do with like<br>[38:49] it's more of like a guided install. It's<br>[38:51] asking you questions, but also it's it's<br>[38:53] asking you like<br>[38:56] what type of site you want to you want<br>[38:59] to create. And most like every other CMS<br>[39:04] I've ever installed just gives you a<br>[39:06] bunch of form fields<br>[39:07] >> and it doesn't ask you the question,<br>[39:09] what are you trying to build?<br>[39:11] >> And so because of that, [clears throat]<br>[39:13] >> uh, you never ask the question of<br>[39:16] yourself, what type of website are you<br>[39:18] trying to build? You just kind of like,<br>[39:19] oh well, I'm just going to click a<br>[39:20] couple buttons and then I have a website<br>[39:21] and then I'm just going to do stuff,<br>[39:23] right? Like, but you never actually have<br>[39:24] to intentionally like come up with like,<br>[39:26] no, what am I actually trying to create?<br>[39:28] And I thought that that was a really uh<br>[39:29] a really good like just like just slow<br>[39:32] down and like make this the process a<br>[39:34] little bit more more user friendly. And<br>[39:36] then also when it when it installs like<br>[39:38] I feel like like the user interface<br>[39:40] which in the past uh for me as somebody<br>[39:43] who is more familiar with WordPress the<br>[39:45] user interface and the Drupal admin is<br>[39:47] very complex and hard for me to navigate<br>[39:50] and know where all the stuff is and it<br>[39:52] feels better. And maybe it's just<br>[39:54] because it looks more like the WordPress<br>[39:55] admin. I don't know. Uh, but it feels<br>[39:57] better for me to like in in the Drupal<br>[39:59] CMS admin. Um, I don't know, maybe just<br>[40:03] because stuff is on the left, I guess.<br>[40:04] Uh, but like it feels like it's easier<br>[40:06] for me to to navigate. So, I guess I<br>[40:07] guess my question is like, uh, somewhere<br>[40:10] in here is a question, I think. uh which<br>[40:12] is um like where do you see like do you<br>[40:16] do you believe that that capturing the<br>[40:20] sort of mid-market or that first-time<br>[40:22] user experience uh will be like the<br>[40:26] changing point for driving more Drupal<br>[40:30] adoption?<br>[40:31] I mean, I I I would say definitely, you<br>[40:34] know, like there's a lot more mid-market<br>[40:36] than uh enterprise market, you know, and<br>[40:40] and and honestly, to tell you the truth,<br>[40:42] like the enterprise people want the same<br>[40:44] crap as the mid-market people for for<br>[40:46] the most part, you know, they want to be<br>[40:47] able to assemble<br>[40:48] >> pages without having to like, you know,<br>[40:50] have a post doctorate or something like<br>[40:52] that, you know.<br>[40:54] Um like you know like I don't know if<br>[40:57] you're familiar with like um Adobe<br>[40:59] Enterprise Manage<br>[41:01] Builder. Yeah. Manager. Yeah.<br>[41:03] >> Yeah. Yeah. Yeah. like they have like<br>[41:05] nice drag and drop stuff, but they don't<br>[41:07] do what Drupal does, you know,<br>[41:09] >> and but but they ended up they end up<br>[41:11] selling selling their product based on<br>[41:13] like showing that drag and drop stuff to<br>[41:16] the marketers and the marketers, you<br>[41:18] know, get super excited about that<br>[41:20] because it's pretty sexy,<br>[41:22] >> you know, and and and if we if if we can<br>[41:25] match that and surpass it, which I<br>[41:27] believe we will, like that's going to be<br>[41:29] a big deal, you know, and and the same<br>[41:31] thing with like Gutenberg, like like<br>[41:34] Like canvas is built by by looking at<br>[41:37] the lessons from everything, you know,<br>[41:40] from things like Gutenberg and AM and<br>[41:42] and almost every other page builder out<br>[41:44] there. They were all evaluated as as<br>[41:47] these technical requirements started<br>[41:48] coming in for Drupal Canvas.<br>[41:51] >> Yeah.<br>[41:51] >> You know, and um like one thing that I<br>[41:55] really like I I I've done like a little<br>[41:57] bit of Gutenberg development under<br>[41:59] Drupal because there is a Gutenberg<br>[42:01] module for Drupal.<br>[42:02] >> Yep. But but like one thing that I<br>[42:04] really disliked about Gutenberg is you<br>[42:06] have to have like almost two versions of<br>[42:08] your markup. you know, you have to have<br>[42:10] the one that appears in the editor and<br>[42:13] the one that appears, you know, on the<br>[42:15] homepage and stuff<br>[42:16] >> and and and like that's something that,<br>[42:21] you know, like with Drupal Canvas, like<br>[42:25] like right now I'm in the process of uh<br>[42:27] you know, making sure all of our<br>[42:28] components work well and and and there's<br>[42:31] some funky things I'm having to kind of<br>[42:32] work through, but you know, it it's all<br>[42:36] this is kind of normal. But like I I add<br>[42:39] like an additional setting like a prop<br>[42:41] or you know a slot and it just shows it<br>[42:43] just it's just like nice.<br>[42:45] >> Mhm.<br>[42:45] >> And and it like to developer experiences<br>[42:48] getting right up there. And then like<br>[42:51] coming from previous Drupal page<br>[42:54] builders which which honestly a lot of<br>[42:56] them are like really kind of rough<br>[42:59] unless you did a lot of manual work.<br>[43:00] like you can make these page builders<br>[43:02] awesome, but that requires, you know, a<br>[43:05] person who knows what they're doing to<br>[43:07] install a bunch of modules and configure<br>[43:09] them just so, you know, um, but just<br>[43:12] like right out of the box, it's just<br>[43:13] like nice. You start dragging stuff, you<br>[43:15] start copying and pasting stuff,<br>[43:17] everything it updates on the fly. Uh,<br>[43:20] there's a nice preview button. The<br>[43:23] there's there's all the things that just<br>[43:25] like feel like very intuitive.<br>[43:28] Um, so it's nice and and and there's<br>[43:31] still like a kill a little rough edges<br>[43:33] like like I go in there and I I am<br>[43:35] filing bugs, you know, like I find stuff<br>[43:38] and I'm filing bugs because it's not<br>[43:39] stable yet.<br>[43:40] >> But it's it's it's like head and<br>[43:43] shoulders above,<br>[43:45] you know, anything else that Drupal's uh<br>[43:47] done before. And like as far like I I I<br>[43:52] like it better than Gutenberg, too.<br>[43:54] though Gutenberg<br>[43:56] I tell you the truth like it's going to<br>[43:58] be interesting to see how that works out<br>[44:00] you know<br>[44:02] >> yeah I I<br>[44:05] so I've been in the last year or so been<br>[44:09] playing a lot more so as as Gutenberg<br>[44:12] has has developed in the WordPress<br>[44:14] ecosystem it's extended to be more than<br>[44:17] just like the block editor in uh content<br>[44:20] stuff it's been expanded to do more site<br>[44:23] editing things. Um, the site that that<br>[44:25] this podcast is uh is the website, the<br>[44:28] community code website uh is just uh a<br>[44:32] 2025 like default theme and a bunch of<br>[44:35] customizations in the full site editor<br>[44:38] to change the different layouts for the<br>[44:40] different pages and and uh the episodes<br>[44:42] and and whatever. Like so like I can do<br>[44:45] a lot of stuff just using the tools that<br>[44:48] are that are core without having to<br>[44:50] build like a theme at all or think about<br>[44:53] that anymore which is pretty impressive.<br>[44:55] Like it didn't used to be like that. Um,<br>[44:57] but it took a long time to get to that<br>[45:00] point and and for a long time it was<br>[45:02] like there's a lot of things that you're<br>[45:04] like a lot of limitations that you uh<br>[45:07] that I was like running up against uh<br>[45:09] and like oh I don't know how to do this<br>[45:12] thing or how do you like I just I just<br>[45:13] need to change a line of CSS to fix this<br>[45:15] other problem whatever. Um and it took a<br>[45:18] lot to to get to the point where where<br>[45:20] it is now. Um but it does seem like I<br>[45:23] mean demos aren't aren't live a<br>[45:26] And so like it the proof is in the<br>[45:28] pudding when you actually start to use<br>[45:29] it. But it what I've seen of uh Drupal<br>[45:32] Canvas uh it feels like it's a better<br>[45:36] like it's it's further along that that<br>[45:39] timeline to [clears throat] a usable<br>[45:41] thing than a lot of the stuff that has<br>[45:45] been in WordPress core for you know the<br>[45:48] last couple years and then iterated on<br>[45:50] to get to get to the point where it is<br>[45:51] now. [snorts]<br>[45:53] >> Yeah. I can't really speak to like,<br>[45:56] you know, like when I don't know<br>[45:59] WordPress nearly as well as you and and<br>[46:01] I haven't used it recently, so I can't<br>[46:03] like really speak to how it feels<br>[46:05] compared to, you know, mo modern<br>[46:07] Gutenberg. My most of my Gutenberg<br>[46:09] experience comes within the context of<br>[46:11] Drupal, which is not not the correct<br>[46:14] experience,<br>[46:14] >> specific flavor. Yeah.<br>[46:15] >> Yeah. Yeah. Yeah. And I I I can tell you<br>[46:18] that like there are some some things in<br>[46:21] Drupal Canvas that like, you know, need<br>[46:24] to be worked on and and I've been filing<br>[46:26] bugs and pinging the appropriate people<br>[46:29] in Slack, which I'm I'm pretty sure<br>[46:31] they're probably,<br>[46:32] >> you know, oh crap, here's Hersel again,<br>[46:35] you know, [laughter]<br>[46:36] >> but um [clears throat] but but at the<br>[46:38] same time, like a number of the bugs I<br>[46:39] found have become release blockers.<br>[46:41] >> Yeah.<br>[46:42] >> You know, and and and things like that,<br>[46:44] and that helps. So, um,<br>[46:48] it's gonna take iteration. I I think<br>[46:51] like the the success or failure on on<br>[46:56] canvas is going to be like how it feels,<br>[46:59] you know, how intuitive is it, how it<br>[47:01] feels, how many paper cuts are there.<br>[47:04] >> Yeah. you know, we can deal with a<br>[47:05] couple couple paper cuts, but if there's<br>[47:07] too many paper cuts, it starts to get<br>[47:09] like really really annoying, you know,<br>[47:11] and and and on top of that, like how<br>[47:14] well how well developers can extend it,<br>[47:17] you know? You know, if I want to inject<br>[47:21] XYZ or something in there in into the<br>[47:24] edit edit editorial interface, how easy<br>[47:28] can I do that, you know?<br>[47:30] Yeah, that's that's actually a really<br>[47:33] good point and something that I wanted<br>[47:34] to talk about too. And I know we're<br>[47:35] getting close to time, but I want to<br>[47:36] still throw this in because um one of<br>[47:40] the things about uh that when Gutenberg<br>[47:43] development started forced uh WordPress<br>[47:46] developers to learn was the the fact<br>[47:50] that Gutenberg the decision was made<br>[47:52] very early on to to make it a React<br>[47:54] interface. And so that meant that not<br>[47:56] only did uh WordPress developers need to<br>[47:59] learn JavaScript, but they also needed<br>[48:01] to specifically learn React. Um, and the<br>[48:03] learning curve like you know having<br>[48:06] having played with React uh a little bit<br>[48:09] I didn't I mean not before Gutenberg<br>[48:11] obviously why would I uh but having<br>[48:14] played with it since like I do like<br>[48:17] using uh React coming from like a PHP<br>[48:20] background because it makes a little bit<br>[48:22] more sense uh to my brain but like<br>[48:24] [clears throat] there's definitely a<br>[48:25] learning curve there. um talk about like<br>[48:28] the developer experience for building<br>[48:30] things for canvas because as I<br>[48:32] understand it, it's not that same sort<br>[48:34] of like you need to learn a<br>[48:35] fundamentally different language<br>[48:36] anymore.<br>[48:38] >> Yeah. Yeah. So like if I want to create<br>[48:40] a component that works in and outside of<br>[48:42] canvas, it's it's the same as creating a<br>[48:44] component like outside of canvas, you<br>[48:47] know. So I I mentioned that that Drupal<br>[48:49] has this concept of uh direct uh<br>[48:52] components which are called single<br>[48:54] directory components and basically like<br>[48:56] within your theme you have a component<br>[48:57] directory and within within that<br>[49:00] component directory you have you know a<br>[49:02] directory for every single component uh<br>[49:04] and there's two mandatory files for your<br>[49:07] component. There's a twig file which is<br>[49:09] [snorts] which is like the markup<br>[49:10] language that Drupal uses. It's it's<br>[49:12] it's like standard HTML and then some<br>[49:15] curly brackets. You can put for loops<br>[49:17] and all that type of stuff in there. And<br>[49:20] uh then there's a the component.yaml<br>[49:22] file. The component.yaml file will say,<br>[49:23] hey, this is a component. And then it'll<br>[49:25] also list the um type of data that that<br>[49:30] twig file is expecting, you know. So you<br>[49:32] say like I'm going to have a title. It's<br>[49:33] going to be a string and you know you<br>[49:36] can call it you know title or something<br>[49:39] you know or you know I'm gonna have this<br>[49:41] you know portrait landscape checkbox and<br>[49:44] it's a boolean you know I have an array<br>[49:46] all this type stuff right and so<br>[49:50] [clears throat]<br>[49:50] so it it describes what the twig file is<br>[49:53] expecting and then you have a couple<br>[49:54] optional files you can have a CSS file<br>[49:56] in there you you can have a JavaScript<br>[49:58] file in there if if if it sees those<br>[50:00] it'll automatically be loaded whenever<br>[50:01] the whenever the component is loaded and<br>[50:04] you can also like put into the YAML file<br>[50:06] you know stuff for additional CSS files<br>[50:09] or you know dependencies on other type<br>[50:13] of you know stuff too if you want. Um so<br>[50:17] so at that point you have you have a<br>[50:19] directory I mean a single directory<br>[50:21] component and as soon as uh canvas sees<br>[50:26] that single directory component it'll be<br>[50:28] available. Now, if something is screwed<br>[50:30] up in that YAML file, like let's say<br>[50:33] like you got your YAML indentation<br>[50:35] incorrect or something like that, what's<br>[50:36] kind of cool is you can go to like a<br>[50:38] little reports page, find your component<br>[50:40] in there, and it'll tell you exactly<br>[50:41] what's wrong with it, which is super<br>[50:42] nice from a development experience.<br>[50:45] >> Um, but once that component is is there<br>[50:49] and it's working, uh, like Drupal will<br>[50:54] know, hey, this is a string. Uh, so I'm<br>[50:58] going to put a, you know, a little text<br>[51:01] field in there, you know, and you and<br>[51:02] there's some other, uh, like stuff in<br>[51:04] your YAML you can add to say like I want<br>[51:06] to load a rich text editor, you know,<br>[51:08] >> and there's there's some stuff in there<br>[51:10] says this, you know, you can say this is<br>[51:12] an object and it's going to accept, you<br>[51:13] know, this is going to be an image. So<br>[51:16] that'll give you like a little widget to<br>[51:17] browse to to an image, load into your<br>[51:19] meter library and stuff like that,<br>[51:21] [snorts] you know, and at that point it<br>[51:22] kind of it's this kind of works. So, the<br>[51:26] development experience for creating<br>[51:28] components is pretty pretty good.<br>[51:30] There's a couple rough edges, like a<br>[51:32] couple, and these are being worked on,<br>[51:34] you know, and I'm like I'm<br>[51:35] [clears throat] totally on top of that.<br>[51:37] Um, but even the rough edges have<br>[51:40] workarounds, you know, and and like if<br>[51:42] if you go to the dripard blog and stuff,<br>[51:44] I actually blog about this stuff because<br>[51:47] it's kind of it's kind of fun, you know?<br>[51:48] It's fun to<br>[51:49] >> to like solve these problems as I'm<br>[51:51] doing this. you know<br>[51:53] >> [gasps]<br>[51:53] >> um<br>[51:55] as far as the development experience of<br>[51:57] extending the actual editorial interface<br>[52:00] that's a good question like I haven't<br>[52:02] done that you know<br>[52:04] >> um like uh dripyard's editorial<br>[52:06] interface is built within React but that<br>[52:08] being said like like when Gutenberg was<br>[52:12] you know started what was this like<br>[52:14] probably like five six seven years ago<br>[52:16] or something like that<br>[52:18] >> react it a lot more people know React<br>[52:20] than they did back you know, like like<br>[52:23] React is is is React was common back<br>[52:26] then, but it's much more common right<br>[52:27] now,<br>[52:27] >> right?<br>[52:28] >> So, like I feel that people will be able<br>[52:30] to kind of jump in there and get in into<br>[52:33] it. But that being said, like you know,<br>[52:36] people have not yet because it's not<br>[52:38] technically stable right now. Like as of<br>[52:40] time of this recording, it's a release<br>[52:41] camp like RC1 or RC2 or something like<br>[52:43] that,<br>[52:44] >> right?<br>[52:44] >> Yeah. Yeah. But I mean that's<br>[52:46] interesting though because like<br>[52:47] fundamentally what I'm hearing is like<br>[52:49] if you want to build something that can<br>[52:51] be used by canvas, you don't<br>[52:53] [clears throat] have to learn a<br>[52:54] completely different language. And I<br>[52:55] think that that's huge. Uh I think that<br>[52:57] that's a really big thing that that uh<br>[53:00] >> uh Canvas has going for it. And like you<br>[53:02] said, like even even beyond that, the<br>[53:05] the developer ecosystem today for people<br>[53:09] who know React or people who have<br>[53:11] encountered React is probably a lot<br>[53:12] broader and bigger than it was five or<br>[53:15] six years ago when we were talking about<br>[53:16] uh whether we were going to use React or<br>[53:18] Vue to put into to build Gutenberg on<br>[53:20] top of. So<br>[53:21] >> yeah, absolutely.<br>[53:22] >> So like just the ecosystem is different.<br>[53:24] >> Um yeah, well thank you so much uh for<br>[53:26] coming on Mike. Uh, I appreciate, uh,<br>[53:29] learning about Drupal and and having an<br>[53:32] extremely nerdy [clears throat]<br>[53:33] conversation comparing, uh, CMS's. Um,<br>[53:37] where can, uh, people find you if<br>[53:39] they're looking for you online?<br>[53:40] >> Uh, that's a good question. So, uh, my<br>[53:43] website is hersel.com and that's spelled<br>[53:45] with a C, like there's no S's in there.<br>[53:46] So, hl.com.<br>[53:48] Uh, dripyard.com is my company. If<br>[53:51] you're into Drupal, check out our blog<br>[53:53] and, you know, buy our stuff. I'm on<br>[53:55] like blue sky atmike.hershel.com<br>[53:59] and I'm on mastadon. You can I'm on like<br>[54:02] most of the things. Oh, on LinkedIn I am<br>[54:05] Mike Herschel's disembodied head and it<br>[54:07] has like my head floating right there<br>[54:09] and uh people have like come up to me at<br>[54:12] conferences like you're a disembodied<br>[54:13] head. Yeah. [laughter]<br>[54:15] >> Hello Mr. Disembodied head.<br>[54:16] >> Yep.<br>[54:18] >> Awesome. Well, thank you so much, Mike,<br>[54:20] again, again, for coming on and for<br>[54:21] everyone else uh for listening uh either<br>[54:24] now or in the future if you're coming<br>[54:26] upon across this episode at some distant<br>[54:29] point in the future. Uh and uh until<br>[54:32] next time, uh we'll see you on the<br>[54:33] internet. All right, bye everybody.<br>[54:37] [music]<br>[54:42] [music]
## Highlights
- something called Dripyard and a longtime member and uh, developer in the Drupal community. Welcome to the show, Mike. >> Hey, thanks for having me. So I think we'll we can start by uh asking uh what is a dripyard? >> That's a good question. Oh, there's a whole bunch of background. Uh so like the tlddr of dripyard is we sell premium Drupal themes that don't suck. Um like >> so so Drupal in the past like really ([View Highlight](https://read.readwise.io/read/01kc26cfh2y9ee2m2skm126veb))
- Tags: ๐ป ai highlighted
- marketplace. Uh >> yeah. >> Can I guess from from from a dev perspective, somebody like I have a history of like building WordPress themes and actually had a a site for a while where I was attempting to sell WordPress themes. Why what what is the sticking point? What are the sticking points that prevented that from being really uh doable in in Drupal from like like a in the weeds kind of uh ([View Highlight](https://read.readwise.io/read/01kc26cfhfy8va5vmejz657qa7))
- Tags: ๐ป ai highlighted
- >> And and so and so now it's it comes a lot more flexible, which is pretty neat. >> And uh I have been watching uh what's been going on in in Drupal land. Um this is sort of a uh one might suggest a fortuitous time for the existence or emergence of a theme development shop. Uh given that uh Dre Boyart the founder of Drupal has been talking a lot about uh marketplaces uh and selling Drupal ([View Highlight](https://read.readwise.io/read/01kc26cfkc3tr036z64rysmvvx))
- Tags: ๐ป ai highlighted
- >> and honestly this is something that's like kind of hurt Drupal. You know, you can kind of do anything in Drupal, but it shouldn't be this much effort. you know, WordPress has Gutenberg, Web Flow has whatever the hell Web Flow has, etc., you know, >> and so so there's a there Aquia, which is kind of like the largest Drupal company and the one that Drew founded, uh, is creating a next generation page builder called Drupal Canvas. And Drupal Canvas does everything that you pretty much, you know, you would assume it would do, you know, and and does a few ([View Highlight](https://read.readwise.io/read/01kc26cfmzxhq3fjad9h9c90dg))
- Tags: ๐ป ai highlighted
- extra things, too, which is pretty cool. So you can like copy and paste components, group components, create what's called like patterns, you know, edit them, you know, you can map your data to it. It's it's pretty cool. Um and then um so so at that point we have you know once Drupal Canvas comes out which will probably be next month and then you know we have then Drupal CMS 2.0 will be released. So at that point we have like ([View Highlight](https://read.readwise.io/read/01kc26cfq0hp183pay0njwpc57))
- Tags: ๐ป ai highlighted
- a pretty good starting point but we still need to like kind of put everything together to compete with WordPress to compete with Web Flow, Wix, Squarespace, you know, and all Contentful and all those headless CMS's. So at that point um [clears throat] you know the Drupal Association of Powers that be said like like we need this ecosystem. We want to do something called site templates. And site templates are basically like it's a it's ([View Highlight](https://read.readwise.io/read/01kc26cfrrpfdfvrpjysn4mjrb))
- Tags: ๐ป ai highlighted
- preconfigured. So it's and but at but at that point like what's really cool is you have that flexibility of Drupal now like like Drupal is hyper flexible. Drupal can build like so many things if you have, you know, if you kind of know your way around it. Like like Drupal's freaking amazing. So So that's that's kind of where we're going with that. And and to get started, we're we're like the the marketplace is is set to kick off like right around Dripcon Chicago, which ([View Highlight](https://read.readwise.io/read/01kc26cft3c6e2p90f40dtg91k))
- Tags: ๐ป ai highlighted
- but but at the same time, you know, like like our thought process is, well, if you're if you're starting a uh a project with Drupal, you're probably spending significantly more than $10,000. Just spend like $500 on a theme, you know, you know, add in some support seems pretty reasonable. And and honestly, like these themes that we developed um over 10 months and I'm like probably thousands of hours, you know, and uh they're really good, you know. They're they're they're awesome and it's going ([View Highlight](https://read.readwise.io/read/01kc26cfxnabybvhyf7c8jff9v))
- Tags: ๐ป ai highlighted
- design system. We have a we have a system behind everything. So it's it's really easy to kind of turn around new themes at at this point. But what we're um I guess the answers your question, but I guess where I'm going with this is like currently we're kind of working on uh making sure we have full support for Drupal Canvas, which is that nextG page builder that's going to come out in about a month. >> Yeah. Tell me about uh so I've I've been sort of watching the evolution of uh ([View Highlight](https://read.readwise.io/read/01kc26cg55p6fmyr1y21teyx5r))
- Tags: ๐ป ai highlighted
- a big deal, you know, and and the same thing with like Gutenberg, like like Like like canvas is built by by looking at the lessons from everything, you know, from things like Gutenberg and AM and and almost every other page builder out there. They were all evaluated >> as as these technical requirements started coming in for Drupal Canvas. >> Yeah. >> You know, and um like one thing that I really like I I I've done like a little ([View Highlight](https://read.readwise.io/read/01kc26cgharsrwwte7ameegz02))
- Tags: ๐ป ai highlighted