backend development

Caching Large Navigation Menus in Drupal

While working on a project for Pega Systems, I had to deal with documentation organized into books, and some of the books had thousands of pages. Each page had a navigation menu listing every page in a large tree structure (nested HTML lists). The tree was collapsed, with just enough branches expanded to show the current page. That's a lot of markup: UL and LI and A, oh my! Did I mention thousands of pages? Generating that markup took a lot of work: database queries, PHP processing, theming ...

Handling HTML Markup with Drupal's Migrate API

Presenters
In Drupal 8, we use the core Migrate API for Upgrading Drupal 6 and Drupal 7 sites Migrating sites from other systems to Drupal Recurring imports from external systems (feeds) It is a robust, flexible tool. Drupal works best with structured data, and the Migrate API supports this: file attachments, related taxonomy terms, references to authors or other nodes, and so on. Along with the structured data, we also have to deal with blocks of text, and these blocks often contain HTML markup.

What’s New in JavaScript (ES 2019)

JavaScript is now 23 years old, and has had a resurgence of new features over the past few years. These are features that developers have come to expect from a modern programming language. Let’s take a look at the new JavaScript, and see why it has grown well beyond just being on the web… In this session, we will cover: True Classes Promises Await and Async Template Literals

How to make a BAD Drupal website

We always come across articles or blogs which tend to help us in doing things the right way. This session will address frequently common pitfalls which result in a BAD Drupal experience. Session Tracks: The solutionistic approach - Site Building, Module Development followed by theming. The contib-or-custom decision. Wrongly remodeling the architecture to meet evolving client requirements Choosing the best suited infrastructure

Level Up Your Development Experience with Lando

Asking members of your team to spin up local copies of your Drupal application can result in an assorted array of solutions to the same problem: Some may spin up virtual machines while others may cobble together their favorite combination of Docker Containers. Some may struggle with native solutions on their machines while others may be entirely uncertain on where to begin. Adding common services and development tools such as xdebug, mailhog, or Drush may pose additional problems to even the more savvy members of your team.

Outgrowing Content Types: Building Custom Entities

Drupal includes a powerful toolset for building and extending out-of-the box content types. Content architectures are typically designed around the features of nodes, taxonomy, media, and other core entities. But how do we know when our business-needs have grown beyond the common entity types? When are nodes too lightweight or too heavy handed to meet our site goals? And what are the trade-offs and support issues when creating a new entity type?

Did you clear the cache? A Contextual Tour of Rendering Efficiently

Drush cr… drush cr… drush cr!!! We all know the scenario where you’ve made a change to the site, but when you load the page it just doesn’t seem to show. Oftentimes the solution is to clear your cache and move on, but why is that? In this session we’ll explore how that cache is built and used. What determines when a page can be cached, and how does Drupal know when to rebuild it? How does Drupal know when to rebuild parts of a page without rebuilding everything?