cyberschorsch.dev: My Top 10 sessions I am excited about at Drupal Con Lille 2023

DrupalCon Lille 2023 is right around the corner and many Drupal developers will meet and share their knowledge. In this blog post, I've curated my top 10 sessions from the event, each offering unique insights and valuable takeaways. From technical writing to project management, these sessions cover a wide range of topics that are sure to elevate the Drupal community's expertise.

cyberschorsch.dev: Using the s3fs module for media file hosting

Leveraging an S3-compatible file system in Drupal can significantly enhance the delivery of media assets to your website's visitors, especially when your audience spans the globe. In this blog post, I will guide you through the process of configuring the S3FS module for Drupal and demonstrate how to dynamically alter the file system for specific fields.

ImageX: New in Drupal: Assemble Any Website Functionality Easily With Recipes!

If someone said “There’s no easy recipe for a perfect website,” we’d have to argue with that statement. Even more so now that Drupal is bringing a new, exciting concept of Recipes on stage. Recipes are currently in the making, but they have already become the talk of the town as one of the most powerful additions to the CMS on the way from Drupal 10 to Drupal 11.

The Drop Times: Frederik Wouters: Predicting and Pioneering Drupal-AI Interplay

From losing the first Drupal account to integrating Drupal and AI, certifications to continuous learning, and the interplay of emerging technologies, this interview with Frederick Wouters offers insights and inspiration for both seasoned web developers and those venturing into the depths of technology. Get ready to explore the boundless horizons of Drupal, AI, and the tech community through Frederik's experiences and vision.

LN Webworks: Drupal Staff Augmentation: How Does it Help in Addressing the Talent Gap

Image removed.

Behind every successful project is a talented workforce. This calls for making conscientious decisions when it comes to recruiting your team. However, the bitter truth is that hiring proficient candidates is not an easy task, especially when it comes to Drupal development. As the content management system has a steep learning curve, there is a lack of Drupal talent worldwide. Does that mean you should abandon your project or compromise the quality of the workforce? Gladly, the answer is no! You can leverage Drupal staffing to mitigate the lack of talented Drupal developers

If you have never heard about Drupal staffing before, this blog will help you get acquainted with everything you need to know about it. In case you already know about it, this blog can help you delve deeper into it. So, are you ready for the enchanting journey? 

DrupalEasy: Debugging all the things with Xdebug, DDEV, PhpStorm, PhpUnit

Image removed.Over the past few years, we've published a couple of blog posts about setting up Xdebug for Drupal module development. But, like all things in tech, there's always more to learn as tools and technology evolve.

The setup

I was recently working with one of our Professional (Drupal) Module Development students trying to determine why she wasn't able to use Xdebug to debug a PhpUnit-based functional test. To be clear, the breakpoint wasn't set in the actual test class, the breakpoint was set in some custom module code that was called by the test class.

In functional tests, Guzzle is used by PhpUnit to make calls like:

$this->drupalGet('')

So, in a way, there isn't a direct PHP connection between test class and the code under test. It is in this circumstance that the breakpoint wasn't working.

Xdebug was working fine for this student to debug other aspects of the same project - it just wasn't hitting breakpoints during functional tests.

The solution

This was one of those instances that I had seen (and solved) previously, but to be honest, PhpStorm/Xdebug solutions have often involved numerous trips into the (extensive) PhpStorm settings area. By the time the problem is fixed, I was never 100% sure exactly which change I made had actually solved the problem. But, this time, I was more careful…

Image removed.

Obviously, Xdebug must be enabled in DDEV, and PhpStorm's almost-magical auto-configuration for Xdebug needs to have configured a new "Server" with proper path mappings (especially for the project root).

The PhpStorm configuration settings related to Xdebug that I now recommend are:

  • Set the "Max connections" value to 20 in the "PHP | Debug" configuration area (see image above).
  • Uncheck the “Force break at the first line when no path mapping is specified,” "Force break at first line when a script is outside the project" and "Ignore external connections through unregistered server configurations" checkboxes in the "PHP | Debug" configuration area (see image above.)
  • Set "Host" and "Name" in the "PHP | Servers" configuration are the same (and of the form name.ddev.site, where name is your site's DDEV machine name) (see image below.)
  • When running functional tests, PhpStorm may request to see up a new server connection in "PHP | Servers" with the name "localhost." Allow it and ensure the path mapping is correct.

With these settings, functional PhpUnit tests can be effectively debugged. 

Image removed.

DrupalEasy: DrupalCon Pittsburgh 2023 Superlatives

Unless you've been living underneath a Druplicon-shaped rock, you're probably aware that DrupalPalooza Pittsburgh took place June 5-8. If so, I'm guessing that your Drupal newsfeed is full of wrap-up articles and summaries that may feel a bit redundant (I know that mine is and that they do).

It is in the spirit of hopefully spicing up your Drupal news consumption that this will not be one of those blog posts. Rather, in my somewhat still high-school-aged mind, I'm rolling back the clock to present the DrupalCon Pittsburgh 2023 Superlatives 🎉

Best session (that I attended): Drupal Distributions & Recipes Initiative Update - but don't get too excited, Mr. Jim Birch (the presenter) 😜, as I really don't go to a whole lot of sessions normally. That being said, it is difficult not to get excited about Recipes and this session was exactly what I was hoping for.

Most "It's about time" thing: Randy Fay winning the Aaron Winborn Award.

Most fulfilling personal moment: The DrupalEasy Learning Community alumni and mentor lunch. Having so many of our graduates and mentors in one place was quite gratifying, even if they did turn teasing me into a competitive sport. 

Image removed.

Most of the alumni present were from our long-running 12-week, best practice and beginner focused Drupal Career Online http://drupaleasy.com/dco (next semester begins August 28.)

Best official/unofficial party: The Lullabot Party. There are a few things I really need at a party these days: a volume level where I don't have to scream to have a conversation, an outdoor area, activities, and good food and drink. This one was 4-for-4. The Pins x Pints Barcade Bash from Acquia came in a close second.

Favorite session that I didn't see in person but have since watched: Advanced Render Cache Debugging presented by Jody Hamilton and Janez Urevc. I'll watch pretty much anything having to do with Drupal caching, and this was one of the better presentations I've ever seen on the topic. Well worth your time.

Most useful thing that I really liked but probably not too many other people did: The distance between the expo hall and the session rooms.

Biggest question I left with: Which hosting companies are going to step up and fully support (and promote) hosting plans for Automatic Updates (and therefore Project Browser) for less technical Drupal site-builders?

Best new "thing": I am not a fan of draws (even though I do love soccer,) but in this case I really can't pick one. Both Pitch-burg and the Drupal Association Member Breakfast were fantastic additions this year. I love incentivizing folks to join the Drupal Association (especially with free food.) Also, I was a bit skeptical of Pitch-burg at first, but I really enjoyed how Dries weaved it into his keynote, and I am really looking forward to seeing how the funded projects turn out.

Best contributed module release that took place during DrupalCon: Smart Trim 2.1.0

Biggest complaint: Why was the Single Directory Components session in such a small room? Silly.

Worst accommodations: Mine (shared with Gwendolyn, Sara, John, and Ryan.) We were in an Airbnb that was located by itself in the middle of a mostly-abandoned, overgrown industrial park. We had difficulty getting ride-share drivers there after dark. Seriously. Perhaps we need to read the reviews more carefully next time.

Image removed.

Biggest personal takeaways: Single Directory Components and Recipes are the future of Drupal. Also, the average age of community members needs to get younger (no offense, REDACTED.)

Best completely unofficial social event: The Pirates/A's baseball game on Wednesday afternoon (that led into Wednesday evening.)

Image removed.

Most inconvenient alarm: Thursday, 5am, in the bedroom of our sketchy Airbnb so I could finish prep for the Intro to Module Development workshop I was teaching at 9am.

Favorite image from another DrupalCon Pittsburgh wrap-up blog post: Ted Bowman (T-Bone to his friends) shot-gunning a beer(?) on the keynote stage on Mike Herchel's blog

Tag1 Consulting: My First Drupal Migration

My first Drupal migration was onto a heavily patched version of Drupal 4.0, back in 2002. I previously ran a popular kernel development blog called KernelTrap, using PHPNuke . I conducted interviews with prominent kernel developers , and posted blog entries about other interesting kernel news, all of which were frequently linked to from the front page of Slashdot (the leading tech news aggregator at the time). This resulted in huge traffic spikes, which would frequently bring the website down , commonly known as " the Slashdot effect ”. In early March of 2002, I received a friendly email from a Belgian developer named Dries Buytaert about a relatively new CMS called Drupal. He told me the CMS would be gaining a near magical-sounding performance-feature called "the page cache," which allowed an entire page to be served out of the database with only a single query, theoretically making Drupal able to withstand even a Slashdotting. During his 2015 keynote at DrupalCon Los Angeles , Dries explained that before starting Drupal, he was following Linux kernel development, "I considered contributing to the Linux kernel and so I would follow a website called KernelTrap. KernelTrap was managed by Jeremy Andrews, and at... Read more Jeremy Tue, 10/10/2023 - 07:10

Tag1 Consulting: Gander: The Future of Drupal Performance and Scalability

In a digital era where website performance dictates user experience - directly influencing site success metrics like page views and time on site - the Drupal community has worked tirelessly to make Drupal’s performance best-in-class. Now, as a result of an ongoing collaboration between the Google Chrome team and Tag1 Consulting, Drupal’s performance and scalability are getting a major boost. We are excited to announce a new open source automated performance testing framework, designed and led by Drupal core release and framework manager Nathaniel Catchpole - catch. The system will greatly benefit the development of the Drupal platform itself and, as an open-source tool, enable end-users of Drupal to integrate performance testing into their DevOps toolchain, delivering a substantial competitive advantage to sites powered by Drupal. Want to learn more? Join us at DrupalCon Lille! Performance is a core part of our ethos at Tag1. Our senior team members led the creation of, and maintain most of Drupal's performance and scalability capabilities. We are often hired by our clients (such as Renesas, Sumitomo, US Department of Energy, …) to audit the performance of their websites and help...

Read more janez Mon, 10/09/2023 - 15:39