Development News

OpenSense Labs: Layout Builder vs Paragraphs

Main Drupal Feed - Sat, 09/26/2020 - 13:30
Layout Builder vs Paragraphs Gurpreet Kaur Sat, 09/26/2020 - 19:00

Websites have overpowered the world of businesses today. There aren’t many business people left who do not have or want an online presence for their business. And websites are just the way to accomplish that. Now, building a website is not complicated at all, with just one youtube tutorial, you can do that. The tricky part is ensuring that it meets all the standards that the end user will desire. Websites built using Drupal and all its accompaniments are often considered to be up to the user standards. 


From world renowned privately owned enterprises to governmental organisations, Drupal has successfully served everyone. Drupal’s success is primarily attributed to the versatility and functionality it can provide to the web designers and content creators throughout the process of website development.

Continuing on the same lines, today we will discuss two such features in great detail to make you understand their importance, use and workings. We are going to talk about Layout Builder module, one of the most sought after modules in recent times, and Paragraphs module. Let’s dive right in.

The Seasoned Paragraphs  This is how the paragraphs module will segregate your content into different paragraph types.

If you are reading this article, you must be familiar with the various modules of Drupal. You must also be familiar with the needs of websites and how complicated they can become. To satiate those needs, I will be telling you about one of the most convenient and user-friendly modules, which is Paragraphs.

Paragraphs module is a great tool that gives a high degree of editing power to the end users of a website. It does so by letting the end users choose predefined paragraph types that are independent from one another. This allows the web builder to avoid putting all the information in one WYSIWYG body type.

With this module, you can add a hero image that would be the banner of your webpage, you can add images and you can add grids as well. All of this can be done by simply selecting the types with the same name. Can website design become any more easy?

Although there are no default Paragraph types, you can easily create as many as you want. 

It is up to you to decide how many columns you want and where you want them. On top of that you also get to decide how much leeway you want to give to your end-users in terms of future edits.

The Modern Layout Builder With Layout builder, you can add sections with each having a set of regions for the content to be placed thereby resulting in more flexibility than Paragraphs

The other convenient and user-friendly module is Layout Builder. Layout builder is a multi-functional tool that allows the content creators the ability to make content appear on their website as they wish to. 

Layout Builder has multiple settings that can be used to build pages from the ground up. Its highlighting feature is the visual layouts. When a layout is selected, if the web builder wants, he can implement the same throughout his website for consistency and brand image. If that is not what is desired by the web builder, he can also create customised templates for individual pages. This kind of ease in design is unfound in other options. 

Layout builder has become increasingly popular amongst designers and writers, and the reason is the power of customisation it provides. The below video by Dries Buytaert will give you a glimpse of what that really looks like, all you have to do is drag and drop.

How Advantageous Can Paragraphs and Layout Builder Modules Be?

I have already mentioned that Paragraphs and Layout Builders are two most popular modules in Drupal. So, how can I say this? I have reasons, validations and explanations for my claim, and all of them can be characterised as their advantages. People only make things popular because they like, and likability and advantageousness go hand-in-hand. So, let us delve right into them.

Paragraphs  Layout Builder 
  • No limits for Paragraph types
  • Grouping and reusing of Paragraph types
  • Flexible content model 
  • Simple and clean structure
  • Multilingual support for content 
  • Build from scratch 
  • Control over the layouts you want
  • Use of block types
  • Better structures for content 
  • Minimal coding required 
  • Enhanced authoring experience 
Paragraphs and Its Merits 

Paragraphs come with an array of features that only enhance its beneficial aspects. This may seem like a simple tool, but it has the ability to make your website design as appealing as it can get. 

Forget limits 

Let us start with the most helpful merit and that is Paragraph’s limitlessness. There is no limit as to the number of configurations you can create using Paragraphs. You want 20 different paragraph types scattered throughout your webpage, go for it!

Group and reuse 

Not only can you group various fields of your content into new complex elements, you can also reuse the components you have already created.  Can you possibly tell me that this does not fascinate you?

Flexible to the core 

Moving on, a website is constantly under construction, there is always going to be something or the other that needs to be updated, corrected or added. Most of the time these changes are not necessarily huge, and you do not need to change the entire layout. The advantage of Paragraphs is that it provides a great deal of flexibility in the content model, so that minor changes can easily be made by the content authors with ease.

Simple, yet impactful 

Paragraphs are often considered to be too plain and bland. Many regard this as a disadvantage, however I tend to disagree here. Yes, paragraphs are simple, but that is a benefit because simplicity means few clicks. The result; you do not need to be an expert to use this module, a content editor with minimal experience in Drupal can also use it with the least amount of effort. 

Its intuitiveness helps the web authors and builders to add pop-ups and quotes and easily rearrange them. On top of this, the simplicity of Paragraphs also means that your design will not seem cluttered, resultantly, your site will not slow down in its performance. Now, you tell me how can simple be bad for you, when it is actually avoiding a mess? 

Multilingual Setup 

Websites are becoming more multilingual in the present, so the setup of multiple languages in the content becomes somewhat of a necessity. Here, the paragraph module comes quite handy as it works within a multilanguage setup. 

Layout Builder and Its Merits

So far, you must have been impressed with the advantages of paragraphs, now prepare to be dazzled by the umpteen merits of the layout builder.

Builds from scratch 

The best feature of a layout builder is that it gives the developer the potential and resources to build something from the ground up. All you have to do is make custom block types, arrange them as you want and fill them up with content, pictures or videos and you are done.

Lets you be in control

With a layout builder, you will always be in control. I say this because customisation is ingrained in its formula. You can use it to make configuration of your liking, and if you want, you can implement your created template and use it throughout your website. The layout builder also allows you to build customised landing pages that will have your creative stamp all over it.

Blocks all the way

Blocks can be termed as the foundation of the layout builder, without them, it would be hard to imagine. Blocks are what help you get an idea of how your content would be displayed on the actual page. From globally available blocks suitable for all pages to uniquely build custom inline blocks made for specific pages, layout builder has your needs covered.

Structures your information 

Have you ever been to a website that had no structure at all? The information was all over the place and you couldn't tell where it began and where it ended? If you have, then you know how important structure is for a website. Layout builder helps you build a particular structure for your website that would organise your content appropriately. If you want e-form, customer testimonials and other such content information on one page, layout builder will provide a template that will segregate the information in a way that it does not look haphazard. 

Less custom code 

Layout Builder is popular because it mandates less custom code. This means that the module is less time-consuming and less complicated, once you become familiar with it. The use, maintenance and creation of content becomes easy with less code involved.

Better authoring experience

A website’s content can easily make or break it, so it has to be pitch perfect and in accordance to the needs of the site’s target audience. With a layout builder, you can be at ease with this aspect. It has proven to enhance the authoring experience of content creators by providing an improved interface to effectively communicate data about everything the author wants to.

Are Any Limitations Holding Them Back?

With the number of benefits you have read above for both paragraphs and layout builder, you might be inclined to think that they could not possibly have any demerits. Unfortunately, they do lack in some aspects. 
 

Paragraphs Layout Builder 
  • Not a core module
  • Becomes messy with intricate layouts
  • Dependency on developers.
  • Cannot simply drag and drop sections
  • May not connect nodes
  • Template combinations may become problematic 
  • May be difficult to achieve consistency with the customised layouts
  • Needs time to learn and adapt 
  • Needs to be customised with the use of other modules 
Challenges of Paragraphs module

Starting with paragraphs, its drawbacks are not necessarily drawbacks, they are more like functional mismatches to your needs as a web developer. Let us find out how.

Not part of Drupal core

Unlike Layout Builder, which was made a part of Drupal core ecosystem in Drupal 8.7, the paragraphs module is not part of the Drupal core. Although it does not come as default in Drupal, it is still quite popular. Being a contributed module, you would have to separately install it.

Can only handle simplicity 

Paragraphs were intended to make website design simpler for the non-technical folks. The problem with simplicity is that it cannot handle intricacy. So, when your content is anything but simple, paragraphs become messy and the output is just not upto the mark. With more nested paragraphs, the editing experience may slow down. Also, to ensure that the paragraphs are being displayed as preview, you have to always customise the Form display. If you do not do that, you will end up with a mega-form. 

Dependence on web developer  

Paragraphs also do not provide free reins to the content author. He would have to be heavily reliant on the developer for setting up even the tiniest of changes.

No drag and drop 

The ease of picking up a section from one part of the layout and dropping it in a different part is unfound here.

Challenges of Layout builder module

While the problem for paragraphs was its simplicity, the problems for layout builder stem out of its complexities. Let us understand how.

Challenges with nodes

Every blog, article, forum topic and even pages are stored as nodes in Drupal. Now, when a web builder makes new content, most often, he or she would relate it with an old piece of information. With layout builder, you may notice that block content is not entirely connected to nodes.

Challenges with combinations 

The templates in a layout builder can be used any way the designer wants to. He or she can make a number of combinations with the templates. However, when a custom-made layout is used with a template-based one, it becomes quite tricky to get right.

Challenges with consistency 

With layout builder, you can implement one layout throughout your website with ease. Although it is true, when customised layouts are the centre of attention for the entire website, it may be difficult to enforce sitewide consistency.

Challenges with control 

This is going to a little sound paradoxical, the layout builder provides more control to the content editors as opposed to paragraphs. When you do not trust your content creators’ judgement implicitly, this can become problematic.

Challenges with learning 

The switch to layout builder comes with a learning curve for the content writers, which can take some time. This module does not operate with form-filling like others, so a change in the way the work is done becomes mandatory and time consuming. 

Challenges with dependency on additional modules 

The layout builder may need customisation and that can be achieved through the help of other Drupal modules. Block Blacklist and Layout Builder Restrictions aid in limiting the block type and layouts, while Layout Builder Modal aids in enhancing the user experience.

Which Would Win the Race?

Before I answer this, it is important to know that the selection of a module depends on the developer’s needs. So, the winner in this module race would vary in accordance to the needs and wants of the site and its developers, both the designer and the content author. Let us have a look at these needs.

Paragraphs is suitable when Layout Builder is suitable when
  • You need to process content again;
  • You need to accommodate nodes;
  • You need nested paragraphs.
  • You need landing pages;
  • You need a customised web page;
  • You need to tweak the existing templates. 
Paragraphs and reuse 

The paragraphs module is ideal for situations that mandate simple solutions, with reuse being the primary answer. By reuse, I mean using the existing content again, while making changes in the website. With paragraphs you can use the earlier content in an entirely new webpage with ease. You can also use the same content in accordance to the nodes.

Apart from this, when nested paragraphs are of the essence for your content, paragraphs are bound to become your best friend. 

Layout Builder and customisation 

The suitability of layout builder varies a great deal from paragraphs primarily because reuse is not a term this module uses much. It is all about the new energy.

Whether you want to create new landing pages with a variety of blocks, views and fielded content structured like grids or you want to customise a page with a layout that you created yourself and is one of a kind, layout builder will help you. 

Apart from creating completely new pages from the ground up, layout builder is also perfect for tweaking the existing pages with templated layouts. 

You have to remember that both of these modules are configurations, they will not make the content for you, they would simply arrange it. So, when you make your choice ensure that you have a pre-formed vision and awareness of the layout you want for your pages. Once you have that the choice would become very easy for you. If the choice is still difficult for you, know that you can use the combination of both of these in your content configuration, so you do not really have to decide.

The Bottom Line 

Both these modules are quite amazing at the work they do for your websites, so choosing the better one out of the two is somewhat tricky. Of course, like I have told you that your need plays a pivotal role in this decision. However, ending this article without a clear winner would make it seem somewhat incomplete and I do not want that. 

So, for me layout builder is the better choice and I will tell you why. The kind of intricacy layout builder offers and the control I would get for layouts for each page, that too with consistency, makes the layout builder the one for me. 

Apart from these two, Gutenberg is also gaining some traction as a flexible module. However, it stores the content in a large body field and this often compromises the structure of the content.

I also want to mention one more fact and it is that flexibility often comes with a price. Having a really flexible content can often impede with the accessibility of  your website as your content may lose its semantic markup. Also make sure to add metadata to your content in addition to flexible content components..

All in all, Drupal allows you to create websites and their content in a well-structured manner and despite what module you choose, the end result is always going to be satisfactory. Contact us at hello@opensenselabs.com to get the best of both the worlds in your next Drupal project.

blog banner blog image Drupal module layout builder paragraphs Drupal Website Design Blog Type Articles Is it a good read ? On

OSTraining: OSTips - How to Create New Date & Time Formats in Drupal

Main Drupal Feed - Fri, 09/25/2020 - 15:10

I don't know about you, but as a site builder when I add a date field to a content type in Drupal, and I tell it I do NOT want the time just the date and then I go to a node, and I enter the date, and it shows me both the date AND the time... it kind of drives me crazy!

How do we fix it? In this video, I'm going to show you how to create new date & time formats in Drupal sites, so you don't have to worry about getting a time and a date when you only want the date.  And, as a bonus, you'll get it in the format that you want.

Let's get started!

OpenSense Labs: The unlikely Drupalists: An electrical engineer who became a frontend developer

Main Drupal Feed - Fri, 09/25/2020 - 11:39
The unlikely Drupalists: An electrical engineer who became a frontend developer Tuba Ayyubi Fri, 09/25/2020 - 17:09

Sometimes the Road of Life Takes an Unexpected Turn and You have No Choice but, to Follow it to End Up in the Place You are Supposed to Be.
- Anonymous

A thought that’s crossing my mind while I type this is I never expected myself to be here as a writer. For me, since childhood, I have always been told that I’d end up being a doctor. And I always thought I would. But as I grew up, I realized that it wasn’t what I actually wanted at all. Life did take an unexpected turn and I am where I should be today. Something like this hits each one of us at a point in life. 

At OpenSense Labs, we have Lakshay, who started off working as an Electrical engineer and went on to become an Acquia-certified front end developer. Let’s look at his experience with OSL and Drupal! 


Tuba: So Lakshay, I heard you pursued electrical engineering. Tell me about your education.

Lakshay: I switched to three different schools in the last 3 years of my school life. I wanted to start something of my own while I was in high school but my parents always told me I lacked experience. Although I studied electrical engineering, I have had a lot of interest in developing websites for a very long time.

Tuba: How the shift to web development finally happened and how did it all begin at OpenSense Labs?

Lakshay: A very old friend of mine was already working with OpenSense Labs. He told me that he was working with a web development company and asked me to come and join them. So, I gave it a shot and joined OSL. When I reached there, I had no idea what I had to do, because everybody there was a professional developer. So I joined them as an intern and started watching tutorial videos and studying how to build a website and then tried coding it and showing my work to senior pros like Vinit and Pritam at the end of the day. After 3 months of the internship, I was hired as a full-time front end developer. A year later, I was an Acquia-certified front end specialist. I was promoted to the position of a senior frontend developer. Since then a lot of interns have worked under me and I’ve trained them sharing whatever I learned during my early days as an intern.

Tuba: That’s amazing! How is your experience with Drupal?

Lakshay: It’s been 3 years now and the experience so far has really been great. The Drupal community is really amazing. I’ve attended many camps where I got a chance to interact with people working across the globe.

I got to learn about different emerging technologies and how Drupal is rising with these technologies thereby embracing innovation always. I’ve presented sessions in DrupalCamp Delhi 2019 and DrupalCon Amsterdam 2019

Tuba: Do you think you made the right decision?

Lakshay: I definitely think I made the right decision. While I was working in the electrical industry for 6 months, it felt like a job, but working here felt like something that I willingly wanted to do. I’m following my passion, working with Drupal.

Tuba: That’s great! Thank you for your time Lakshay. It’s been great talking to you. I hope people are inspired to make decisions and accept the turns that life takes as you did. 

These turns can be the most challenging thing to experience, but it is the starting point of something great in your life. There is always light at the end of the tunnel, take your time to find it! The journey, I promise, will be way better than the destination. Good luck!

blog banner blog image Drupal Frontend developer Blog Type Articles Is it a good read ? On

Centarro: Latest Commerce API release adds support for on-site payments

Main Drupal Feed - Wed, 09/23/2020 - 18:45

Our Drupal contributions and client engagements this year have let us continue to expand JSON:API support in Drupal Commerce. We released the first alpha version of the Commerce API module earlier this year and have been constantly working on it since then, resulting in the module's 1.0-beta4 release last week.

What's new in the latest release?

One feature that has been heavily requested is the ability to use on-site payment gateways like Braintree or Stripe in a decoupled context, and guess what? This is now possible since the latest release! Furthermore, "manual" payment gateways (i.e "offline" payments such as cash on delivery...) are now also fully supported.

Great! But... how does this work?

The frontend application is responsible for collecting (usually through a gateway's JS library) and submitting a "payment_instrument" to the backend. The payment instrument instructs the Drupal Commerce backend how to process a customer's payment through the specified payment gateway.

This payload for Braintree demonstrates the payment instrument format:

{ "payment_instrument":{ "payment_gateway_id":"braintree", "payment_method_type":"credit_card", "payment_details":{ "card_type":"Visa", "payment_method_nonce":"xxxxxxxxxx", "last2" => 18, } }

Note that the expected "payment_details" differs for each payment gateway.

The "payment_instrument" is submitted by performing a "PATCH" request to the /jsonapi/checkout/{commerce_order} resource.

Read more

Centarro: Latest Commerce API release adds support for on-site payments

Main Drupal Feed - Wed, 09/23/2020 - 18:45

Our Drupal contributions and client engagements this year have let us continue to expand JSON:API support in Drupal Commerce. We released the first alpha version of the Commerce API module earlier this year and have been constantly working on it since then, resulting in the module's 1.0-beta4 release last week.

What's new in the latest release?

One feature that has been heavily requested is the ability to use on-site payment gateways like Braintree or Stripe in a decoupled context, and guess what? This is now possible since the latest release! Furthermore, "manual" payment gateways (i.e "offline" payments such as cash on delivery...) are now also fully supported.

Great! But... how does this work?

The frontend application is responsible for collecting (usually through a gateway's JS library) and submitting a "payment_instrument" to the backend. The payment instrument instructs the Drupal Commerce backend how to process a customer's payment through the specified payment gateway.

This payload for Braintree demonstrates the payment instrument format:

{ "payment_instrument":{ "payment_gateway_id":"braintree", "payment_method_type":"credit_card", "payment_details":{ "card_type":"Visa", "payment_method_nonce":"xxxxxxxxxx", "last2" => 18, } }

Note that the expected "payment_details" differs for each payment gateway.

The "payment_instrument" is submitted by performing a "PATCH" request to the /jsonapi/checkout/{commerce_order} resource.

Read more

Four Kitchens: Drupal 10 Is Coming, and Much Sooner Than Expected—But That’s Not a Bad Thing

Main Drupal Feed - Wed, 09/23/2020 - 17:09

Working in digital design and development, you grow accustomed to the rapid pace of technology. For example: After much anticipation, the latest version of Drupal was released this summer. Just months later, the next major version is in progress.

At July’s all-virtual DrupalCon Global, the open-source digital experience conference, platform founder Dries Buytaert announced Drupal 10 is aiming for a June 2022 release. Assuming those plans hold, Drupal 9 would have the shortest release lifetime of any recent major version.

For IT managers, platform changes generate stress and uncertainty. Considering the time-intensive migration process from Drupal 7 to 8, updating your organization’s website can be costly and complicated. Consequently, despite a longtime absence of new features, Drupal 7 still powers more websites than Drupal 8 and 9 combined. And, as technology marches on, the end of its life as a supported platform is approaching.

Fortunately, whatever version your website is running, Drupal is not running away from you. Drupal’s users and site builders may be accustomed to expending significant resources to update their website platform, but the plan for more frequent major releases alleviates the stress of the typical upgrade. And, for those whose websites are still on Drupal 7, Drupal 10 will continue offering a way forward.

The news that Drupal 10 is coming sooner rather than later might have been unexpected, but you still have no reason to panic just yet. However, your organization shouldn’t stand still, either.

Image via Dri.es The End for Drupal 7 Is Still Coming, but Future Upgrades Will Be Easier

Considering upgrading to Drupal 8 involves the investment of building a new site and migrating its content, it’s no wonder so many organizations have been slow to update their platform. Drupal 7 is solid and has existed for nearly 10 years. And, fortunately, it’s not reaching its end of life just yet.

At the time of Drupal 9’s release, Drupal 7’s planned end of life was set to arrive late next year. This meant the community would no longer release security advisories or bug fixes for that version of the platform. Affected organizations would need to contact third-party vendors for their support needs. With the COVID-19 pandemic upending businesses and their budgets, the platform’s lifespan has been extended to November 28, 2022.

Drupal’s development team has retained its internal migration system through versions 8 and 9, and it remains part of the plan for the upcoming Drupal 10 as well. And the community continues to maintain and improve the system in an effort to make the transition easier. If your organization is still on Drupal 7 now, you can use the migration system to jump directly to version 9, or version 10 upon its release. Drupal has no plans to eliminate that system until Drupal 7 usage numbers drop significantly.

Once Drupal 10 is ready for release, Drupal 7 will finally reach its end of life. However, paid vendors will still offer support options that will allow your organization to maintain a secure website until you’re ready for an upgrade. But make a plan for that migration sooner rather than later. The longer you wait for this migration, the more new platform features you’ll have to integrate into your rebuilt website.

Initiatives for Drupal 10 Focus on Faster Updates, Third-Party Software

In delivering his opening keynote for DrupalCon Global, Dries Buytaert outlined five strategic goals for the next iteration of the platform. Like the work for Drupal 9 that began within the Drupal 8 platform, development of Drupal 10 has begun under the hood of version 9.

A Drupal 10 Readiness initiative focuses on upgrading third-party components that count as technological dependencies. One crucial component is Symfony, which is the PHP framework Drupal is based upon. Symfony operates on a major release schedule every two years, which requires that Drupal is also updated to stay current. The transition from Symfony 2 to Symfony 3 created challenges for core developers in creating the 8.4 release, which introduced changes that impacted many parts of Drupal’s software.

To avoid a repeat of those difficulties, it was determined that the breaking changes involved in a new Symfony major release warranted a new Drupal major release as well. While Drupal 9 is on Symfony 4, the Drupal team hopes to launch 10 on Symfony 6, which is a considerable technical challenge for the platform’s team of contributors. However, once complete, this initiative will extend the lifespan of Drupal 10 to as long as three or four years.

Other announced initiatives included greater ease of use through more out-of-the-box features, a new front-end theme, creating a decoupled menu component written in JavaScript, and, in accordance with its most requested feature, automated security updates that will make it as easy as possible to upgrade from 9 to 10 when the time comes. For those already on Drupal 9, these are some of the new features to anticipate in versions 9.1 through 9.4.

Less Time Between Drupal Versions Means an Easier Upgrade Path

The shift from Drupal 8 to this summer’s release of Drupal 9 was close to five years in the making. Fortunately for website managers, that update was a far cry from the full migration required from version 7. While there are challenges such as ensuring your custom code is updated to use the most recent APIs, the transition was doable with a good tech team at your side.

Still, the work that update required could generate a little anxiety given how comparatively fast another upgrade will arrive. But the shorter time frame will make the move to Drupal 10 easier for everybody. Less time between updates also translates to less deprecated code, especially if you’re already using version 9. But if you’re not there yet, the time to make a plan is now.

The post Drupal 10 Is Coming, and Much Sooner Than Expected—But That’s Not a Bad Thing appeared first on Four Kitchens.

Four Kitchens: Drupal 10 Is Coming, and Much Sooner Than Expected—But That’s Not a Bad Thing

Main Drupal Feed - Wed, 09/23/2020 - 17:09

Working in digital design and development, you grow accustomed to the rapid pace of technology. For example: After much anticipation, the latest version of Drupal was released this summer. Just months later, the next major version is in progress.

At July’s all-virtual DrupalCon Global, the open-source digital experience conference, platform founder Dries Buytaert announced Drupal 10 is aiming for a June 2022 release. Assuming those plans hold, Drupal 9 would have the shortest release lifetime of any recent major version.

For IT managers, platform changes generate stress and uncertainty. Considering the time-intensive migration process from Drupal 7 to 8, updating your organization’s website can be costly and complicated. Consequently, despite a longtime absence of new features, Drupal 7 still powers more websites than Drupal 8 and 9 combined. And, as technology marches on, the end of its life as a supported platform is approaching.

Fortunately, whatever version your website is running, Drupal is not running away from you. Drupal’s users and site builders may be accustomed to expending significant resources to update their website platform, but the plan for more frequent major releases alleviates the stress of the typical upgrade. And, for those whose websites are still on Drupal 7, Drupal 10 will continue offering a way forward.

The news that Drupal 10 is coming sooner rather than later might have been unexpected, but you still have no reason to panic just yet. However, your organization shouldn’t stand still, either.

Image via Dri.es The End for Drupal 7 Is Still Coming, but Future Upgrades Will Be Easier

Considering upgrading to Drupal 8 involves the investment of building a new site and migrating its content, it’s no wonder so many organizations have been slow to update their platform. Drupal 7 is solid and has existed for nearly 10 years. And, fortunately, it’s not reaching its end of life just yet.

At the time of Drupal 9’s release, Drupal 7’s planned end of life was set to arrive late next year. This meant the community would no longer release security advisories or bug fixes for that version of the platform. Affected organizations would need to contact third-party vendors for their support needs. With the COVID-19 pandemic upending businesses and their budgets, the platform’s lifespan has been extended to November 28, 2022.

Drupal’s development team has retained its internal migration system through versions 8 and 9, and it remains part of the plan for the upcoming Drupal 10 as well. And the community continues to maintain and improve the system in an effort to make the transition easier. If your organization is still on Drupal 7 now, you can use the migration system to jump directly to version 9, or version 10 upon its release. Drupal has no plans to eliminate that system until Drupal 7 usage numbers drop significantly.

Once Drupal 10 is ready for release, Drupal 7 will finally reach its end of life. However, paid vendors will still offer support options that will allow your organization to maintain a secure website until you’re ready for an upgrade. But make a plan for that migration sooner rather than later. The longer you wait for this migration, the more new platform features you’ll have to integrate into your rebuilt website.

Initiatives for Drupal 10 Focus on Faster Updates, Third-Party Software

In delivering his opening keynote for DrupalCon Global, Dries Buytaert outlined five strategic goals for the next iteration of the platform. Like the work for Drupal 9 that began within the Drupal 8 platform, development of Drupal 10 has begun under the hood of version 9.

A Drupal 10 Readiness initiative focuses on upgrading third-party components that count as technological dependencies. One crucial component is Symfony, which is the PHP framework Drupal is based upon. Symfony operates on a major release schedule every two years, which requires that Drupal is also updated to stay current. The transition from Symfony 2 to Symfony 3 created challenges for core developers in creating the 8.4 release, which introduced changes that impacted many parts of Drupal’s software.

To avoid a repeat of those difficulties, it was determined that the breaking changes involved in a new Symfony major release warranted a new Drupal major release as well. While Drupal 9 is on Symfony 4, the Drupal team hopes to launch 10 on Symfony 6, which is a considerable technical challenge for the platform’s team of contributors. However, once complete, this initiative will extend the lifespan of Drupal 10 to as long as three or four years.

Other announced initiatives included greater ease of use through more out-of-the-box features, a new front-end theme, creating a decoupled menu component written in JavaScript, and, in accordance with its most requested feature, automated security updates that will make it as easy as possible to upgrade from 9 to 10 when the time comes. For those already on Drupal 9, these are some of the new features to anticipate in versions 9.1 through 9.4.

Less Time Between Drupal Versions Means an Easier Upgrade Path

The shift from Drupal 8 to this summer’s release of Drupal 9 was close to five years in the making. Fortunately for website managers, that update was a far cry from the full migration required from version 7. While there are challenges such as ensuring your custom code is updated to use the most recent APIs, the transition was doable with a good tech team at your side.

Still, the work that update required could generate a little anxiety given how comparatively fast another upgrade will arrive. But the shorter time frame will make the move to Drupal 10 easier for everybody. Less time between updates also translates to less deprecated code, especially if you’re already using version 9. But if you’re not there yet, the time to make a plan is now.

The post Drupal 10 Is Coming, and Much Sooner Than Expected—But That’s Not a Bad Thing appeared first on Four Kitchens.

Drupal blog: A successful Google Summer of Code – thanks to our student, mentors and Drupal community!

Main Drupal Feed - Wed, 09/23/2020 - 15:10

Google Summer of Code (GSoC) is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school or college. In the 16th year of the program, 1106 students from 65 countries have successfully completed Google Summer of Code in 2020, including Drupal!

The Drupal Association’s Community Liaison, Rachel Lawson, caught up with those taking part in GSoC on Drupal related projects this year, to find out how things went, what they learned along the way, and what their future may hold.

You are invited to watch our “Community Chat”, with Vishal Chaudhary, Shawn McCabe, and Ryan Szrama.

Drupal blog: A successful Google Summer of Code – thanks to our student, mentors and Drupal community!

Main Drupal Feed - Wed, 09/23/2020 - 15:10

Google Summer of Code (GSoC) is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school or college. In the 16th year of the program, 1106 students from 65 countries have successfully completed Google Summer of Code in 2020, including Drupal!

The Drupal Association’s Community Liaison, Rachel Lawson, caught up with those taking part in GSoC on Drupal related projects this year, to find out how things went, what they learned along the way, and what their future may hold.

You are invited to watch our “Community Chat”, with Vishal Chaudhary, Shawn McCabe, and Ryan Szrama.

The Savvy Few: Accessing the current node ID in Drupal

Main Drupal Feed - Wed, 09/23/2020 - 14:03

From time to time you just need the node ID of the current node to get things done. In Drupal 7 you simply used the arg() function to do this, this approach no longer works for Drupal 8 and onwards because arg() is deprecated.

The Savvy Few: Accessing the current node ID in Drupal

Main Drupal Feed - Wed, 09/23/2020 - 14:03

From time to time you just need the node ID of the current node to get things done. In Drupal 7 you simply used the arg() function to do this, this approach no longer works for Drupal 8 and onwards because arg() is deprecated.

Drudesk: Drupal 10 release is planned: what does it mean for website owners?

Main Drupal Feed - Wed, 09/23/2020 - 12:00

Drupal keeps evolving in order to give you even more advanced digital capabilities.

We love to share useful content about upgrades with you — like the blog post about Drupal 7 to Drupal 8/9 Module Upgrader.

Time flies fast, and there is already a Drupal 10 release planned. What does all this mean for your website? Let’s take a closer look.

Drudesk: Drupal 10 release is planned: what does it mean for website owners?

Main Drupal Feed - Wed, 09/23/2020 - 12:00

Drupal keeps evolving in order to give you even more advanced digital capabilities.

We love to share useful content about upgrades with you — like the blog post about Drupal 7 to Drupal 8/9 Module Upgrader.

Time flies fast, and there is already a Drupal 10 release planned. What does all this mean for your website? Let’s take a closer look.

Ny Media: How to trigger an order state transition event subscriber programmatically

Main Drupal Feed - Wed, 09/23/2020 - 08:44
How to trigger an order state transition event subscriber programmatically eirik September 23, 2020

Here at Ny Media we are specialists in developing highly customized Drupal Commerce solutions. One of the recurring themes of a tailor-made e-commerce solution is to integrate some sort of order export towards the ERP solution that the client in question uses. And a very common way for us to do that is to hook into commerce order state transitions.

Typically a subscriber would make sure the actual export is queued through Drupal's queue system (or through Advanced Queue). This makes it possible to have exports that can retry, delay execution and generally be reliable and fault-tolerant.

However, this also involves integration towards third parties. No matter how fault-tolerant your integration is, you can not guard against all kinds of error in a third party application. Which is why from time to time I find myself needing to trigger these transitions again, for example to re-queue the order export. So here is an annotated code example with how one can achieve this:

<?php // Replace this with the order id in question. $order_id = 123456; // If you want to do this within a class, probably use dependency injection // instead of the Order class directly. The same goes for the services we are // about to load statically from the service container. /** @var \Drupal\commerce_order\Entity\OrderInterface $order */ $order = Order::load($order_id); // This service is the event subscriber. We want to trigger the event // subscriber only, and not dispatch the event from the event emitter so all // subscribers can react to it. /** @var \Drupal\nymedia_order_export\EventSubscriber\NymediaOrderExportSubscriber $order_export_event_subscriber */ $order_export_event_subscriber = \Drupal::service('nymedia_order_export.event_subscriber'); /** @var \Drupal\state_machine\WorkflowManager $workflow_plugin_manager */ $workflow_plugin_manager = \Drupal::service('plugin.manager.workflow'); // The type of order workflow you are using might vary from your site. See // below for a note on how to find out. /** @var \Drupal\state_machine\Plugin\Workflow\WorkflowInterface $workflow */ $workflow = $workflow_plugin_manager->createInstance('order_fulfillment'); // The transition in question will also vary based on your site. For a note on // how to find out, read below. $transition = $workflow->findTransition('draft', 'fulfillment'); $event = new WorkflowTransitionEvent($transition, $workflow, $order, 'state'); // Now trigger the event. The method here will be the one you have indicated // will respond to the event. For example, if your event subscriber service // has this in its public static function getSubscribedEvents: // 'commerce_order.place.post_transition' => ['onPlace'], // (the example is taken from this class itself), then you probably want to // invoke the method ::onPlace, like we are doing here. If you are looking for // another transition, or your class has a different method as a responder for // the place transition event, then you probably want to adjust this // accordingly. $order_export_event_subscriber->onPlace($event);

As stated in the code above, there are some things that might not be obvious how you find out. Let's start with the order workflow ID.

How to find the workflow ID of an order type

To find out what kind of workflow you are using, you take a look at the order type for the order in question. On this particular site, there are 2 order types. The one that I had to re-queue is of the type "default". So I edit that order type, which can be found at mysite.com/admin/commerce/config/order-types/default/edit.

In there we can see that you can select the workflow for the order. And in the select dropdown, I can see that the ID for the chosen one is "order_fulfillment":

Fulfillment

Another way to see this is to look at the configuration YML file for the default order type. It will look something like this, and in my case is called "commerce_order.commerce_order_type.default.yml":

uuid: 2a999511-7dbb-4a44-9599-6bad702ff032 # ... Content edited out for clarity. label: Standard id: default # Here is the id of the workflow again: workflow: order_fulfillment # ... rest of the file. How to find state IDs for the workflow transition

In my example, I wanted to get the transition where an order goes from "draft" to "placed". How did I know these IDs, and how did I know which ones to use?

To answer that, we should look up the definition of the workflow we have chosen. A workflow will most often be defined in a file called modulename.workflows.yml. In our case, we are actually using one of the workflows provided out of the box with Drupal Commerce, so the file to look at is commerce_order.workflows.yml. In here our workflow is defined as follows:

order_fulfillment: id: order_fulfillment group: commerce_order label: 'Fulfillment' states: draft: label: Draft fulfillment: label: Fulfillment completed: label: Completed canceled: label: Canceled transitions: place: label: 'Place order' from: [draft] to: fulfillment fulfill: label: 'Fulfill order' from: [fulfillment] to: completed cancel: label: 'Cancel order' from: [draft, fulfillment] to: canceled

We can see it has 4 states, and 3 transitions. The one we want is the one that is triggered when the user completes their purchase, and this is the transition with the ID "place". To find it, I used the state it was supposed to transition from and the state is was supposed to transition to, which you can see is "draft" and "fulfillment".

As you can see, the framework of Drupal Commerce makes it possible for us to create advanced types of integrations, which are fault-tolerant, flexible and scalable. If you are looking for a partner to develop a Drupal Commerce site with customized integrations, contact our team of experts, ready to create solutions for you, regardless of integration types, order types or workflow types.

Ny Media: How to trigger an order state transition event subscriber programmatically

Main Drupal Feed - Wed, 09/23/2020 - 08:44
How to trigger an order state transition event subscriber programmatically eirik September 23, 2020

Here at Ny Media we are specialists in developing highly customized Drupal Commerce solutions. One of the recurring themes of a tailor-made e-commerce solution is to integrate some sort of order export towards the ERP solution that the client in question uses. And a very common way for us to do that is to hook into commerce order state transitions.

Typically a subscriber would make sure the actual export is queued through Drupal's queue system (or through Advanced Queue). This makes it possible to have exports that can retry, delay execution and generally be reliable and fault-tolerant.

However, this also involves integration towards third parties. No matter how fault-tolerant your integration is, you can not guard against all kinds of error in a third party application. Which is why from time to time I find myself needing to trigger these transitions again, for example to re-queue the order export. So here is an annotated code example with how one can achieve this:

<?php // Replace this with the order id in question. $order_id = 123456; // If you want to do this within a class, probably use dependency injection // instead of the Order class directly. The same goes for the services we are // about to load statically from the service container. /** @var \Drupal\commerce_order\Entity\OrderInterface $order */ $order = Order::load($order_id); // This service is the event subscriber. We want to trigger the event // subscriber only, and not dispatch the event from the event emitter so all // subscribers can react to it. /** @var \Drupal\nymedia_order_export\EventSubscriber\NymediaOrderExportSubscriber $order_export_event_subscriber */ $order_export_event_subscriber = \Drupal::service('nymedia_order_export.event_subscriber'); /** @var \Drupal\state_machine\WorkflowManager $workflow_plugin_manager */ $workflow_plugin_manager = \Drupal::service('plugin.manager.workflow'); // The type of order workflow you are using might vary from your site. See // below for a note on how to find out. /** @var \Drupal\state_machine\Plugin\Workflow\WorkflowInterface $workflow */ $workflow = $workflow_plugin_manager->createInstance('order_fulfillment'); // The transition in question will also vary based on your site. For a note on // how to find out, read below. $transition = $workflow->findTransition('draft', 'fulfillment'); $event = new WorkflowTransitionEvent($transition, $workflow, $order, 'state'); // Now trigger the event. The method here will be the one you have indicated // will respond to the event. For example, if your event subscriber service // has this in its public static function getSubscribedEvents: // 'commerce_order.place.post_transition' => ['onPlace'], // (the example is taken from this class itself), then you probably want to // invoke the method ::onPlace, like we are doing here. If you are looking for // another transition, or your class has a different method as a responder for // the place transition event, then you probably want to adjust this // accordingly. $order_export_event_subscriber->onPlace($event);

As stated in the code above, there are some things that might not be obvious how you find out. Let's start with the order workflow ID.

How to find the workflow ID of an order type

To find out what kind of workflow you are using, you take a look at the order type for the order in question. On this particular site, there are 2 order types. The one that I had to re-queue is of the type "default". So I edit that order type, which can be found at mysite.com/admin/commerce/config/order-types/default/edit.

In there we can see that you can select the workflow for the order. And in the select dropdown, I can see that the ID for the chosen one is "order_fulfillment":

Fulfillment

Another way to see this is to look at the configuration YML file for the default order type. It will look something like this, and in my case is called "commerce_order.commerce_order_type.default.yml":

uuid: 2a999511-7dbb-4a44-9599-6bad702ff032 # ... Content edited out for clarity. label: Standard id: default # Here is the id of the workflow again: workflow: order_fulfillment # ... rest of the file. How to find state IDs for the workflow transition

In my example, I wanted to get the transition where an order goes from "draft" to "placed". How did I know these IDs, and how did I know which ones to use?

To answer that, we should look up the definition of the workflow we have chosen. A workflow will most often be defined in a file called modulename.workflows.yml. In our case, we are actually using one of the workflows provided out of the box with Drupal Commerce, so the file to look at is commerce_order.workflows.yml. In here our workflow is defined as follows:

order_fulfillment: id: order_fulfillment group: commerce_order label: 'Fulfillment' states: draft: label: Draft fulfillment: label: Fulfillment completed: label: Completed canceled: label: Canceled transitions: place: label: 'Place order' from: [draft] to: fulfillment fulfill: label: 'Fulfill order' from: [fulfillment] to: completed cancel: label: 'Cancel order' from: [draft, fulfillment] to: canceled

We can see it has 4 states, and 3 transitions. The one we want is the one that is triggered when the user completes their purchase, and this is the transition with the ID "place". To find it, I used the state it was supposed to transition from and the state is was supposed to transition to, which you can see is "draft" and "fulfillment".

As you can see, the framework of Drupal Commerce makes it possible for us to create advanced types of integrations, which are fault-tolerant, flexible and scalable. If you are looking for a partner to develop a Drupal Commerce site with customized integrations, contact our team of experts, ready to create solutions for you, regardless of integration types, order types or workflow types.

OpenSense Labs: Success stories on decoupled Drupal

Main Drupal Feed - Wed, 09/23/2020 - 06:15
Success stories on decoupled Drupal Tuba Ayyubi Wed, 09/23/2020 - 11:45

'History is important, but what we do today matters the most, and we realize that.'

At OpenSense Labs, we make sure you move on from the old glitches you've faced with your website and its performance and give it better and smoother user experience. We use decoupled Drupal to give your website versatile and structured content that the web experiences need. 

Brands these days communicate with their customers, not only through the websites but also through multiple touchpoints. Decoupled Drupal serves content through an API to be consumed by other mediums like mobile applications, kiosk displays, IoT, wearables, etc. Headless Drupal is not a new phenomenon, but with the rising digital era, it is getting more and more important. You can either go for a progressively decoupled approach or fully decoupled approach based on your project requirements and we have successfully launched websites using both the approaches.

Let me take you through the websites created and revamped by us using decoupled Drupal. 

Paramount software solution


Paramount software solutions, being one of the leading IT Service providers in infrastructure management, application, blockchain, architecture, etc, protects your investments and enhances your productivity. It provides dependable and integrated business solutions for small and large enterprises. 

Paramount Software Solutions wanted to build a portfolio website that would act as the gateway to its impeccable services. We built the site using Drupal’s powerful capabilities keeping in mind, rich user experience, and streamlined content management.

The need for a headless web application for Paramount software solutions was why Drupal was chosen in the first place.

Simplified content workflow, high web performance, high-level security, and SEO were taken into consideration for building the website. After doing a detailed analysis and taking a lot of feedback from the clients, OpenSense Labs decided to develop this website as a fully decoupled application.

With Drupal, we made sure that the security of the website remains top-notch.
JSON:API and JSON:API Extras modules were used to gain a full rest API for the Drupal application and it was ensured that the resource properties like alias fields, API path, etc could be altered easily. 

The RESTful Web services module was used to provide customizable and extensible RESTful API of data governed by Drupal. 

HTTP basic authentication was used to offer the functionality of authenticating username and password.

The full case study of Paramount Software Solutions is available on Drupal.org

AgWeb


AgWeb is the most influential web-property of Farm journal, which is one of the leading business information and media companies. AgWeb is an online platform for farmers to stay informed about the news of crop and livestock farming, live future trading data, market assessment, ag policy, weather forecast, and more.

AgWeb wanted to enhance its website and needed a solution to keep up with the changing landscape of web technologies. This required a complete migration of their old .NET based legacy website into the state-of-the-art CMS of Drupal and then retain the wonderful search engine rankings gathered by it over the years.

The main objective here was to enhance user engagement and brand identity. In this process, a lot of feature upgrades had to be done to make it simpler for future development.

By choosing Drupal 8, AgWeb could tailor its media solutions. It became easy to create a listing with the assistance of views and enhance speed, scale, and stability. 

We planned the project in sprint-based development cycles and for the successful migration of content from the old .NET website to Drupal 8, the Scrum process was applied. 

Progressively decoupled blocks were used to build features like search and crop comments. We were able to improve the on-site search with the help of React and Elasticsearch

Drupal 8 gave the website a modernized look which resulted in higher user management. Drupal's support assured that the page load time of the website is much lesser than the old one. The website's Google rankings accelerated with the help of SEO enhancements.

The full case study of AgWeb is available on Drupal.org

Produce Market Guide


The PMG is also a product of Farm Journal. It is a resource that produces commodity information, data analysis, and trends. This platform shared information on fresh fruits and vegetables and is also the industry's leading source of information and news.

There were not many features required in the architecture, as the PMG website was already based on Drupal. So, the joint client-vendor system decided to progressively decouple the search functionality. This new search feature was built using React and elastic.

Drupal was chosen because of its flexibility. The customer already had prior experience with Drupal. And the built-in API-first support and easy third-party integration added to the many reasons why Drupal should be used again.

They wanted us to build search applications with facets and track user activities for personalized and smooth user experience.

Elastic backend architecture was developed using the ElasticSearch Connector module. Then, the biggest challenge was to add the SearchKit and React in the same search. SearchKit was used to design and develop the front end, the logic, and the project structure.

The new PMG website now takes less time to load than before. The project did not even take a month to complete. We followed the principles of Scrum and Agile by arranging themselves according to their needs.

The full case study of Produce Market guide is available on Drupal.org

Conclusion

Decoupled Drupal has helped websites in many ways and we love creating and revamping websites using it. It gives a content-rich experience, with a great presentation layer. 

If you love what we have done to these websites, and wish to have the same experience for yours, contact us at hello@opensenselabs.com

blog banner blog image Drupal Decoupled Drupal Blog Type Tech Is it a good read ? On

OpenSense Labs: Success stories on decoupled Drupal

Main Drupal Feed - Wed, 09/23/2020 - 06:15
Success stories on decoupled Drupal Tuba Ayyubi Wed, 09/23/2020 - 11:45

'History is important, but what we do today matters the most, and we realize that.'

At OpenSense Labs, we make sure you move on from the old glitches you've faced with your website and its performance and give it better and smoother user experience. We use decoupled Drupal to give your website versatile and structured content that the web experiences need. 

Brands these days communicate with their customers, not only through the websites but also through multiple touchpoints. Decoupled Drupal serves content through an API to be consumed by other mediums like mobile applications, kiosk displays, IoT, wearables, etc. Headless Drupal is not a new phenomenon, but with the rising digital era, it is getting more and more important. You can either go for a progressively decoupled approach or fully decoupled approach based on your project requirements and we have successfully launched websites using both the approaches.

Let me take you through the websites created and revamped by us using decoupled Drupal. 

Paramount software solution


Paramount software solutions, being one of the leading IT Service providers in infrastructure management, application, blockchain, architecture, etc, protects your investments and enhances your productivity. It provides dependable and integrated business solutions for small and large enterprises. 

Paramount Software Solutions wanted to build a portfolio website that would act as the gateway to its impeccable services. We built the site using Drupal’s powerful capabilities keeping in mind, rich user experience, and streamlined content management.

The need for a headless web application for Paramount software solutions was why Drupal was chosen in the first place.

Simplified content workflow, high web performance, high-level security, and SEO were taken into consideration for building the website. After doing a detailed analysis and taking a lot of feedback from the clients, OpenSense Labs decided to develop this website as a fully decoupled application.

With Drupal, we made sure that the security of the website remains top-notch.
JSON:API and JSON:API Extras modules were used to gain a full rest API for the Drupal application and it was ensured that the resource properties like alias fields, API path, etc could be altered easily. 

The RESTful Web services module was used to provide customizable and extensible RESTful API of data governed by Drupal. 

HTTP basic authentication was used to offer the functionality of authenticating username and password.

The full case study of Paramount Software Solutions is available on Drupal.org

AgWeb


AgWeb is the most influential web-property of Farm journal, which is one of the leading business information and media companies. AgWeb is an online platform for farmers to stay informed about the news of crop and livestock farming, live future trading data, market assessment, ag policy, weather forecast, and more.

AgWeb wanted to enhance its website and needed a solution to keep up with the changing landscape of web technologies. This required a complete migration of their old .NET based legacy website into the state-of-the-art CMS of Drupal and then retain the wonderful search engine rankings gathered by it over the years.

The main objective here was to enhance user engagement and brand identity. In this process, a lot of feature upgrades had to be done to make it simpler for future development.

By choosing Drupal 8, AgWeb could tailor its media solutions. It became easy to create a listing with the assistance of views and enhance speed, scale, and stability. 

We planned the project in sprint-based development cycles and for the successful migration of content from the old .NET website to Drupal 8, the Scrum process was applied. 

Progressively decoupled blocks were used to build features like search and crop comments. We were able to improve the on-site search with the help of React and Elasticsearch

Drupal 8 gave the website a modernized look which resulted in higher user management. Drupal's support assured that the page load time of the website is much lesser than the old one. The website's Google rankings accelerated with the help of SEO enhancements.

The full case study of AgWeb is available on Drupal.org

Produce Market Guide


The PMG is also a product of Farm Journal. It is a resource that produces commodity information, data analysis, and trends. This platform shared information on fresh fruits and vegetables and is also the industry's leading source of information and news.

There were not many features required in the architecture, as the PMG website was already based on Drupal. So, the joint client-vendor system decided to progressively decouple the search functionality. This new search feature was built using React and elastic.

Drupal was chosen because of its flexibility. The customer already had prior experience with Drupal. And the built-in API-first support and easy third-party integration added to the many reasons why Drupal should be used again.

They wanted us to build search applications with facets and track user activities for personalized and smooth user experience.

Elastic backend architecture was developed using the ElasticSearch Connector module. Then, the biggest challenge was to add the SearchKit and React in the same search. SearchKit was used to design and develop the front end, the logic, and the project structure.

The new PMG website now takes less time to load than before. The project did not even take a month to complete. We followed the principles of Scrum and Agile by arranging themselves according to their needs.

The full case study of Produce Market guide is available on Drupal.org

Conclusion

Decoupled Drupal has helped websites in many ways and we love creating and revamping websites using it. It gives a content-rich experience, with a great presentation layer. 

If you love what we have done to these websites, and wish to have the same experience for yours, contact us at hello@opensenselabs.com

blog banner blog image Drupal Decoupled Drupal Blog Type Tech Is it a good read ? On

MidCamp - Midwest Drupal Camp: “Who in the world am I? Ah, that's the great puzzle.”

Main Drupal Feed - Wed, 09/23/2020 - 01:21
“Who in the world am I? Ah, that's the great puzzle.” Help us out!

What do you want to see at MidCamp 2021?

Share your thoughts!

Last week, 12 folks (including one brand new face) joined our first MidCamp 2021 planning meeting. The intent of our meeting was to begin discussions for a format for 2021, but almost like clockwork, our discussion quickly came back to the classic existential question: “What are we doing here?”

You might be thinking: “Uh, what? Why is a reliably delivered event now in its seventh year and with a sizable incumbent organizing team questioning their existence?” 

Well, we’d pose to you: “Why not?”

I’ve played various roles on the MidCamp team since our inception at Drupal Camp Fox Valley 2013 and from the beginning our team has been dissatisfied with the status quo. From early efforts—like blind session selection and walking lanes, to early iterations of the Drupal Recording Initiative, to live captions as a service—the MidCamp team is always trying to be one step ahead… “trailblazing” if you will, which was my old Boy Scout troop’s motto.

So after we, hand-in-hand with NERD Summit, set the early standard for virtual Drupal events in March of 2020, of course our team wouldn’t be satisfied with “just another Zoom conference.”

There are lots of interesting ideas floating around in this space now: all new sessions, all BoFs, un-conferences, substituting monthly meetups for a yearly event, virtual sightseeing. This all leads back to: Why should MidCamp exist in 2021? What do we add to the conversation?

Here’s what we know:

  • We will not be hosting a physical event in March of 2021.
  • We are known for the care we take in crafting Drupal events for humans.
  • We are not satisfied with the status quo and seek to continue being pioneers in the events space.
  • Contribution beyond the Drupal space is essential for Drupal’s vitality, now more than ever.
  • While we welcome all, MidCamp’s goal is to serve Chicago-area Drupalists first.

Here’s what we don’t know:

  • Does the world need another virtual conference?
  • What does being a “regional camp” mean when events are globally available?
  • Is it better to have more speaking opportunities or more focused content?
  • How can we (or can we at all) recreate the human-centric experience that we all look forward to each year without being together IRL. 

If you’ve got this far, we’d love for you to share your answers and help shape MidCamp 2021.

Many thanks,

Avi Schwab
MidCamp 2021-2022 Lead

MidCamp - Midwest Drupal Camp: “Who in the world am I? Ah, that's the great puzzle.”

Main Drupal Feed - Wed, 09/23/2020 - 01:21
“Who in the world am I? Ah, that's the great puzzle.” Help us out!

What do you want to see at MidCamp 2021?

Share your thoughts!

Last week, 12 folks (including one brand new face) joined our first MidCamp 2021 planning meeting. The intent of our meeting was to begin discussions for a format for 2021, but almost like clockwork, our discussion quickly came back to the classic existential question: “What are we doing here?”

You might be thinking: “Uh, what? Why is a reliably delivered event now in its seventh year and with a sizable incumbent organizing team questioning their existence?” 

Well, we’d pose to you: “Why not?”

I’ve played various roles on the MidCamp team since our inception at Drupal Camp Fox Valley 2013 and from the beginning our team has been dissatisfied with the status quo. From early efforts—like blind session selection and walking lanes, to early iterations of the Drupal Recording Initiative, to live captions as a service—the MidCamp team is always trying to be one step ahead… “trailblazing” if you will, which was my old Boy Scout troop’s motto.

So after we, hand-in-hand with NERD Summit, set the early standard for virtual Drupal events in March of 2020, of course our team wouldn’t be satisfied with “just another Zoom conference.”

There are lots of interesting ideas floating around in this space now: all new sessions, all BoFs, un-conferences, substituting monthly meetups for a yearly event, virtual sightseeing. This all leads back to: Why should MidCamp exist in 2021? What do we add to the conversation?

Here’s what we know:

  • We will not be hosting a physical event in March of 2021.
  • We are known for the care we take in crafting Drupal events for humans.
  • We are not satisfied with the status quo and seek to continue being pioneers in the events space.
  • Contribution beyond the Drupal space is essential for Drupal’s vitality, now more than ever.
  • While we welcome all, MidCamp’s goal is to serve Chicago-area Drupalists first.

Here’s what we don’t know:

  • Does the world need another virtual conference?
  • What does being a “regional camp” mean when events are globally available?
  • Is it better to have more speaking opportunities or more focused content?
  • How can we (or can we at all) recreate the human-centric experience that we all look forward to each year without being together IRL. 

If you’ve got this far, we’d love for you to share your answers and help shape MidCamp 2021.

Many thanks,

Avi Schwab
MidCamp 2021-2022 Lead

Aten Design Group: BADCamp 2020

Main Drupal Feed - Tue, 09/22/2020 - 18:00
BADCamp 2020 Mckenna Andreas Tue, 09/22/2020 - 12:00 Events Drupal

Bay Area Drupal Camp has gone — wait for it — 100% virtual! BADCamp is a community run celebration of open-source software with a keen focus on learning and inclusivity. Every year this event brings Drupal users, developers, marketers, and content specialists together from all over the country for high value talks, summits and trainings.

While you’ll have to forego the trip to beautiful Berkeley, California this year, the good news is that registration is free and the 2020 session lineup is as packed as ever. Mark your calendar for this October 14th - 17th, and get ready to join Aten, the Bay Area Community, and your colleagues and peers from across the country in three major session tracks: Drupal for Beginners, Advanced Drupal, and Marketing & Communications.

Aten is excited to sponsor this year’s Higher Education Summit, and for our team to contribute a few sessions of their own, detailed below. Register for BADCamp 2020 today!

Friday, October 16th Managing People: The Art & The Science, 1 PM PST

Project Managers are tasked with organizing client schedules, timelines, meetings, internal resources and much, much more. Every one of a PM’s tasks overlap in a central — and often complex — practice: managing people. Join Janice Camacho, Project Manager, as she explores the art of meeting each individual where they’re most comfortable, and the science of why they’re comfortable there. In this session you’ll learn how to get out of your own way and build the healthy, confident project teams that support strong, long-term client relationships.

True Life: I’m an introvert in an extrovert’s world, 2 PM PST

Do you shy away from speaking up in a crowded room? Do you prefer to maintain a carefully guarded bubble of personal space? Does the prospect of addressing an audience make you perspire and/or shake? Introverts exist in the world of Digital Project Management, too. Gasp! And — perhaps contrary to intuition — they bring a unique set of strengths and abilities to the table, much like their extraverted counterparts. Join Kacie Miner, Digital Project Manager, as she shares her experience of being an introvert in the DPM space. In this session you’ll learn:

  • Strengths, abilities, and positive attributes that introverts bring to the table
  • Ways to adapt your personality to the job at hand without changing who you are
  • Strategies that will set you up for success instead of causing you to overthink
  • Tips and tools to know where you lie on the extrovert scale, and knowing how to recover
  • How to develop your own toolkit for being fully prepared when put on the spot
Layout Building in Drupal, 3 PM PST

The Layout Discovery API has dramatically changed the way Drupal 8 websites are designed, built and maintained. Solutions like Layout Builder, Entity Reference with Layout, and Layout Paragraphs have added a new dimension of content presentation on top of traditional content management. With these tools content editors have more control over their online presence than ever before — but this newfound flexibility isn’t without its own challenges. Join James Nettik, Front-end Developer, as he covers the essentials of layout building in Drupal 8. This session will cover:

  • An overview of the tools available today and their pros and cons
  • How to begin working with the new Layout Discovery API
  • Tips to keep the authoring experience as intuitive as possible
  • Solutions to common questions and pitfalls while designing and building

Don’t miss your opportunity to learn the latest in Drupal, network with fellow professionals, and attend in-depth technical and management training. Register for BADCamp 2020 today. We’ll see you there!

Pages