Inhalt abgleichen
Drupal.org - aggregated feeds in category Planet Drupal
Aktualisiert: vor 2 Minuten 16 Sekunden

KatteKrab: DrupalCon Nashville

17. März 2018 - 13:01
Saturday, March 17, 2018 - 22:01

I'm going to Nashville!!

That is all. Carry on. Or... better yet - you should come too!

https://events.drupal.org/nashville2018

Matt Glaman: ContribKanbanNG: Drupal 8 as a progressively decoupled application

17. März 2018 - 10:00
ContribKanbanNG: Drupal 8 as a progressively decoupled application mglaman Sat, 03/17/2018 - 03:00 At the end of October 2017, I wrote about the new and upcoming changes to ContribKanban.com. I decided to migrate off of a MEAN stack and go to a more familiar (aka manageable) stack. I decided upon Drupal 8 to manage my backend. Drupal is what I do, and Drupal is amazing at modeling data. People can moan and whine - it handles data models like a boss. I decided to treat it as a "progressively" decoupled web application.

Community: Register Now for the Teamwork and Leadership Workshop at DrupalCon Nashville!

17. März 2018 - 2:22

The Drupal Community Working Group, in partnership with the Drupal Association, is very excited to offer a special workshop at DrupalCon Nashville designed to explore leadership, followership, and teamwork as it applies to various roles in our community.

One of the most remarkable things about open source projects like Drupal is that they enable people from all over to come together and collaborate with others toward shared goals. In order to be successful, open source projects need to continually work toward building positive, supportive communities that enable everyone to be at their best. If you are someone who has, or is ready for a position of responsibility within Drupal (e.g., camp and group organizers, initiative leads, sprint mentors, module maintainers, etc.), we encourage you to attend.

This free event will be facilitated by incoming Drupal Association board chair Adam Goodman, who is also the head of Northwestern University’s Center for Leadership, and works as an executive coach and advisor to senior executives and boards of directors at dozens of companies and organizations around the world. A number of other community members, including Donna Benjamin, Shyamala Rajaram, Gábor Hjotsky, Mike Anello, George DeMet, Tiffany Farriss, and Jordana Fung will also be helping to co-facilitate.

The Teamwork and Leadership Workshop will feature a large group exercise about common assumptions and myths regarding teamwork and leadership, discussion of some best practices for effective leadership and teamwork today, and small group sessions where people can link those concepts with their own experiences within the Drupal community.

The workshop will be held from 2-5pm on Tuesday, April 10, and you can register now at: https://goo.gl/forms/7SWzVS4qhHqbiRrW2. Space is limited, so don’t delay.

We hope to see you there!

Mediacurrent: The New Mediacurrent.com: Adventures in Decoupled Drupal

16. März 2018 - 22:20

In our first post that announced the new Mediacurrent redesign, we looked at the evolution of Mediacurrent.com over the years and talked through the over goals of the relaunch. Now let’s take a look under the hood to see some of the cool stuff we did and discuss what our development team learned along the way.Let's talk architecture

Now for the fun part, the technical architecture of the new website. First, the backend was upgraded from Drupal 7 to Drupal 8 - that will probably not be a huge shock to anyone. The more interesting aspect of this build is that we have now implemented a fully decoupled frontend. We accomplished this using a static generator called Jekyll which has been integrated with the Drupal backend. More on that in a bit. First let’s answer the question, “Why decoupled?”

Why decoupled?

A decoupled architecture provides flexibility for constant evolution, opening the door to a variety of potential programming languages and design philosophies to accomplish your website goals. There are any number of articles that discuss the benefits of moving to a decoupled approach. For this post, I want to focus specifically on the points that were deciding factors for our team.

Security

While we do have full confidence in the security features that Drupal offers, we have to acknowledge that a static public site does offer some advantages that make securing the application easier. First of all, we have the option to make the backend CMS completely walled off from the public site. It’s not a hard requirement that the Drupal admin is made publicly accessible. Second, there are simply fewer vulnerabilities that a static frontend will be susceptible to in comparison to a full PHP application. For example, it’s harder to DDOS a site serving only HTML/CSS/JS and there is no server side code running that could be hijacked by an SQL injection attack.

Performance

Decoupled sites often have a performance boost over a fully Drupal-rendered site because the frontend is more custom and lightweight. This is certainly true in our case. The static frontend requires no processing at the time of request so the page is served up immediately with no server-side execution required.

Hosting

One of the things we liked about this particular solution was that it made the hosting architecture pretty simple and inexpensive. With only editors logging into the CMS and the static site being served by Gitlab, we were able to have a fast, reliable stack up and running relatively easily. Up-time is great in that you aren’t as vulnerable to a production error or traffic spike bringing the site down. That being said, all platforms are subject to downtime each year.

Eating our own dog food

As many other agencies will attest to, when you work on your own website it’s a good chance to try something different! We looked at what some competitors had done and we wanted to try an approach that would be a good fit for our needs without overcomplicating the end solution. This endeavor was a way to take some risks and learn along the way.

Dividing the work

The great thing about decoupling is that you break apart the work that needs to get done. The frontend team can focus on the frontend stuff without being tied too much to the backend work (although there will always be some overlap). Our agency spends a lot of our day delivering solutions to our clients so being able to break apart some of the work streams was an advantage. We like that in the future we don’t necessarily need to do a big redesign and Drupal upgrade at the same time. With a decoupled approach, we have the flexibility to tackle each separately.

Technical Overview

Now that you have seen the “Why” behind this approach, let’s look at the “How.” We have kept our Drupal CMS in Bitbucket, which gets deployed to a Pantheon server. That piece is still the same as its been for many years. The new wrinkle is that the public frontend is served on GitLab Pages. If you haven’t heard of Github Pages (which run on Jekyll), Github, GitLab and many other services allow you host Jekyll source files which they can auto-compile into HTML pages and host for you for free or cheap. Pretty neat huh? We ended up going with GitLab Pages because GitLab allows you to add more build customizations than Github. We have also looked at potentially using Netlify in the future as the host for our Jekyll files.

The question you might be asking is how does Drupal content make its way to GitLab? Put simply, we translate node content to markdown and push to the GitLab API on every node save. For user files, we actually still use Drupal uploads and reference the path within Markdown files. If you are familiar with Markdown files, these are the “content” files that Jekyll compiles into pages. The diagram below illustrates the basic flow.

The concept is pretty simple: have Drupal manage your content, write to Jekyll markdown files and deploy those files to a static host.

Why not [Insert favorite Node framework here]?

You might be saying, that's all well and good but why go with a static generator over a server-rendered JavaScript framework like Next.js or Nuxt.js?

The short answer is that we reviewed several options and concluded there wasn’t a framework we felt was a fit at the time we were planning development (around mid-late 2016). Going with a JavaScript-only framework was ruled out for SEO reasons and the options for Isomorphic (server + client side js) frameworks weren’t as stable as we would have liked. Jekyll was the most popular static framework (and still is) with a variety of plugins we could utilize. After doing some POC’s we opted for Jekyll in order to keep the page rendering lean, simple and speedy. The overall complexity of the integration was also a deciding factor in choosing Jekyll over other options.

Trade-offs

One of the fun challenges with a static only site is that you need to learn how to get around the lack of server side rendering. The files are of course static, thus if you want anything dynamic looking you are limited to mostly JavaScript-based solutions. A couple quick examples are forms and the site search. For forms, we were already using Pardot hosted forms for marketing automation, so that wasn’t a big tradeoff. For site search, we went with a pretty cool solution that leverages https://lunrjs.com/ to handle searching the site. Essentially we have Drupal push an index file that Lunr.js can search against using only Javascript in the browser. For RSS, we still generate the RSS feed from Drupal and push to GitLab.

Lessons learned and looking forward

Now that we have the shiny new website up and running, it’s time to look ahead. Would we recommend taking this exact approach in 2018? I would say not exactly. While we are still intrigued by the power of static generators serving as a front end we think something like Gatsby.js (Node/React-based) might have more upside than Jekyll. Further, we aren’t sold on this type of static-only being able to scale in comparison to Node-hosted solutions. The options for server-rendered JavaScript frameworks increase by the day and many have matured over the last few years. Mediacurrent.com will continue to be our place to try new approaches and share with you everything we’ve learned along the way. Thanks for joining us in this journey and enjoy the new site!

Additional Resources
The 3 C’s and 1 D of Drupal: Why Decoupled Matters | Mediacurrent Blog
Relearning Accessibility for a Decoupled Front End | Mediacurrent Blog
4 Benefits of Decoupled Architecture for Enterprise Marketers | Mediacurrent Blog

Matt Glaman: Creating better Drupal module release notes

16. März 2018 - 17:00
Creating better Drupal module release notes mglaman Fri, 03/16/2018 - 10:00 Every software release needs to have release notes. End users need to be able to understand what it is that they are upgrading to and any associated risks, or risks mitigated by upgrading and receiving bug fixes. Across the board proprietary and open source software projects either hit or miss on delivering decent release notes. During MidCamp I decided to help fix that problem for Drupal.org projects.

Acquia Developer Center Blog: Experience Express in Chicago: Inclusion and Drupal 8 in the Spotlight at MidCamp

16. März 2018 - 14:59

Every time I leave the Windy City, I feel something pulling me back. This time, it wasn't the gusts that whip around the skyscrapers towering over Lake Shore Drive. Instead, it was the renewed excitement I could feel in the air on the heels of Wednesday's release of Drupal 8.5, and the mood at MidCamp, held at the Lincoln Park campus of DePaul University, was celebratory and animated.

Tags: acquia drupal planet

Agiledrop.com Blog: AGILEDROP: Delivering value not just the solution

16. März 2018 - 12:16
When you are in the business of selling services or expertise, you will face competition. Nowadays a global competition where (y)our competitors take on various shapes and sizes. So when an organisation goes on the market looking for certain services, this organisation probably has a predefined set of requirements for the provider. These can change over time, but some basics are set at the beginning.    What is the client actually buying? There are at least three factors that influence the buying process at the organisation which needs a new website. The first one is the organisation… READ MORE

Droptica: Droptica: Yoast Real Time SEO plugin

16. März 2018 - 9:30
Yoast SEO is a module that has everything you need to make your content visible to search engines. The plug-in that took the WordPress community by storm is slowly getting more and more traction in the Drupal community as well. What exactly is SEO? SEO is an acronym of Search Engine Optimisation, which basically means optimising websites for a search engine, which in reality translates into getting your website as high as possible in search results, and thus getting more and more people to visit the website.

Paul Johnson: Isn't it time your client created an organisation account on D.O?

15. März 2018 - 19:08

For organisations making a technology selection is rarely a trivial decision. Gone are the days where one stakeholder has this level of authority. More often than not a rigorous evaluation process is undertaken.

One early factor which can sway an organisation to evaluate Drupal as a candidate technology may be that respected organisations or industry peers have already achieved success with the platform. Whilst case studies are an excellent path to evidence this, they consume considerable time to author or may be impossible due to commercial sensitivity or privacy constraints.

Some time back I persuaded Greater London Authority (GLA) to create what is known as an Organisation Account on Drupal.org. In doing so GLA subtly signalled to peers that Drupal was of notable interest to government and public sector. In a small way they were contributing back, and that's how I persuaded them to do so. The more organisations we can convince to register on Drupal.org, the greater net benefit for us all.

In his recent blog post "My three mistakes in regards to the Contribute module and Drupal" Jacob Rockowitz expresses regret about not talking about supporting the Drupal community with his clients early enough. Indeed for him it was many years before it happened.

"We need to collectively start asking our clients to be contributing members of the community."

I wholeheartedly agree with this sentiment and encourage you to compel your clients to do so. There are 2 simple steps ideally your customers must take.

  1. Create an organisation account: Add an organisation (you need to already have a confirmed user account to do so)
  2. Support the Drupal Association: Join here. Starting at just $200 or €160 it is hard to justify why any organisation benefitting from the huge value Drupal presents wouldn't want to subscribe. Imagine how well funded the DA would be if we all got half our clients to do so.

Boosting the number of organisations registered on Drupal.org that are end user brings many benefits. I do hope that, consistent with the spirit of open source and Drupal that you consider encouraging your customers to start on this contribution path. Perhaps creating an account will start them on a journey to greater engagement with the project too?

OSTraining: How to Change the Default Text Strings in Drupal 8

15. März 2018 - 16:55

Drupal 8.5 is available now, and we covered some of the key new features.

However, some smaller, but very useful features arrived with 8.5. For example, it's now much easier to translate the default text.

A few years ago, we explained how to translate the default text in Drupal 7. The process was painful! Let me show you how much easier it is in Drupal 8.5.

Matt Glaman: Another AWESOME MidCamp!

15. März 2018 - 11:00
Another AWESOME MidCamp! mglaman Thu, 03/15/2018 - 04:00

 MidCamp 2018 has come and gone. This was the regional Drupal camp's fifth year, and my fourth time attending (missed year one ????). The amazing group of organizers behind the conference makes it one of my favorites. MidCamp is a human first event -- everything is about accessibility.

PreviousNext: Bare Templates: Removing Unnecessary Markup in Twig files

15. März 2018 - 10:48

In most of the projects we build, the HTML markup provided by core just gets in the way. There is way too many wrapper divs. This can cause issues when trying to create lean markup that matches what is produced in a generated styleguide.

In this post, I'll introduce you to the concept of bare templates, and how you can remove unnecessary markup from your Twig templates.

by Pasan Gamage / 15 March 2018

In Drupal 8, a couple of themes are shipped by default to serve a common set of end user needs.

Among them are:

  • Bartik: A flexible, recolourable theme with many regions and a responsive, mobile-first layout.
  • Seven: The default administration theme for Drupal 8 was designed with clean lines, simple blocks, and sans-serif font to emphasise the tools and tasks at hand.
  • Stark: An intentionally plain theme with almost no styling to demonstrate default Drupal’s HTML and CSS.
  • Stable: A base theme. Stable theme aggregates all of the CSS from Drupal core into a single theme. Theme markup and CSS will not change so any sub-theme of Stable will know that updates will not cause it to break.
  • Classy: A sub-theme of Stable. Theme designed with lot of markups for beginner themers.

But in an actual business scenario the requirements and expectations of a client towards the look and feel of the website is far more distinct than the themes that are provided in Drupal core.

When building your site based upon one of these themes it is common to face issues with templating during the frontend implementation phase. Quite often the default suggested templates for blocks, nodes, fields etc. contain HTML wrapper divs that your style guide doesn’t require.

Usually the most effective way is to build themes using the Stable theme. In Stable, the theme markup and CSS are fixed between any new Drupal core releases making any sub-theme to less likely to break on a Drupal core update. It also uses the verbose field template support for debugging.

Which leads us to use bare templates.

What is a bare template?

A bare template is a twig file that has the minimum number of HTML wrappers around actual content. It could be simple as a file with a single content output like {{content.name}}

Compared to th traditional approach, bare templates provide benefits such as:

  • Ease of maintenance: With minimum markup the complexity of the template is much lesser making it easy to maintain.
  • Cleaner Markup: The markup will only have the essential or relevant elements where as in traditional approach there are a lot of wrappers leading to a complex output.
  • Smaller page size: Less markup means less page size.
  • Avoids the need for markup removal modules: With bare markup method we do not need to use modules like fences or display suite. Which means less modules to maintain and less configuration to worry about.
Our Example

We need to create a bare template for type field and suggest it to render only field name and field_image of my_vocabulary taxonomy entity. This will avoid Drupal from suggesting this bare template for other fields belonging to different entities.

Field template

Let's have a look at field template which resides at app/core/themes/stable/templates/field/field.html.twig

{% if label_hidden %} {% if multiple %} {% for item in items %} {{ item.content }} {% endfor %} {% else %} {% for item in items %} {{ item.content }} {% endfor %} {% endif %} {% else %} {{ label }} {% if multiple %} {% endif %} {% for item in items %} {{ item.content }} {% endfor %} {% if multiple %} {% endif %} {% endif %}

As you see there is quite a lot of div wrappers used in the default template which makes it difficult to style components. If you are looking for simple output, this code is overkill. There is however, a lot of valuable information is provided in the comments of field.html.twig which we can use.

{# /** * @file * Theme override for a field. * * To override output, copy the "field.html.twig" from the templates directory * to your theme's directory and customize it, just like customizing other * Drupal templates such as page.html.twig or node.html.twig. * * Instead of overriding the theming for all fields, you can also just override * theming for a subset of fields using * @link themeable Theme hook suggestions. @endlink For example, * here are some theme hook suggestions that can be used for a field_foo field * on an article node type: * - field--node--field-foo--article.html.twig * - field--node--field-foo.html.twig * - field--node--article.html.twig * - field--field-foo.html.twig * - field--text-with-summary.html.twig * - field.html.twig * * Available variables: * - attributes: HTML attributes for the containing element. * - label_hidden: Whether to show the field label or not. * - title_attributes: HTML attributes for the title. * - label: The label for the field. * - multiple: TRUE if a field can contain multiple items. * - items: List of all the field items. Each item contains: * - attributes: List of HTML attributes for each item. * - content: The field item's content. * - entity_type: The entity type to which the field belongs. * - field_name: The name of the field. * - field_type: The type of the field. * - label_display: The display settings for the label. * * @see template_preprocess_field() */ #} The code Building the hook.

We will be using hook_theme_suggestions_HOOK_alter() to suggest the two fields to use our bare template when rendering.

It is important to note that only these two fields will be using the bare template and the other fields (if any) in that entity will use the default field.html.twig template to render.

my_custom_theme_theme_suggestions_field_alter (&$hooks, $vars){     // Get the element names passed on when a page is rendered.     $name = $vars['element']['#field_name'];     // Build the string layout for the fields.     // :::     $bare_hooks = [         'taxonomy_term:my_vocabulary:teaser:name',         'taxonomy_term:my_vocabulary:teaser:field_logo',     ];     // Build the actual var structure from second parameter     $hook = implode(':', [         $vars['element']['#entity_type'],         $vars['element']['#bundle'],         $vars['element']['#view_mode'],         $vars['element']['#field_name'],     ]);     // Check if the strings match and assign the bare template.     if (in_array($hook, $bare_hooks, TRUE)) {         $hooks[] = 'field__no_markup';     } }

The hook key field__no_markup mentioned in the code corresponds to a twig file which must reside under app/themes/custom/my_theme/templates/field/field--no-markup.html.twig

Debugging Output

In order to see how this is working, we can fire up PHPStorm and walk the code in the debugger.

As you can see in the output below, the implode() creates the actual var structure from the second parameter. We will use this to compare with the $bare_hooks array we created  fields specific to content entity types that we need to assign the bare template.

Note: As best practise make sure you pass a third argument TRUE to in_array(). Which will validate the data type as well.

 

Bare Template Markup

The following is the contents of our bare template file. Notice the lack of any HTML?

{# /** * @file * Theme override to remove all field markup. */ #} {% spaceless %} {% for item in items %} {{ item.content }} {% endfor %} {% endspaceless %}

Bare templating can be used for other commonly used templates as well. To make it render a minimal amount of elements.

Conclusion

We can always use custom templating to avoid getting into complicated markups. And have the flexibility to maintain the templates to render for specific entities.

Resources Tagged Style Guides, Twig

Amazee Labs: Launching Kinderregion

15. März 2018 - 10:04
Launching Kinderregion

We’re super excited! The new Kinderregion website has finally launched and brings their motto of Great parents need great tips for trips to life. 

It showcases a wide variety of exciting activities for kids. Families living in Switzerland can now plan a fun day for the whole family by browsing the site. Built on the same framework as Zurich Tourism, Kinderregion showcases highly engaging content that is structured, helpful and of interest to the user. 

Nicole Blum Thu, 03/15/2018 - 09:04 The idea

By building Kinderregion on the same framework as Zurich Tourismus, the new site would have to to offer highly valuable content in a structured and appealing manner. The events section should benefit from the main site’s interactive features such as instant filters and an interactive map based on React. As Kinderregion is a content heavy website, we would need to allow content editors to easily change the front page and the menu. Similarly, we would need the ability to deploy code and configuration changes without losing the customisations done by the client. Just as with zuerich.com, our idea to solve this was using the Panels ecosystem.

The most challenging part of the project

Creating something complex on a tight budget can be tricky. We were, however, able to solve this by re-applying certain existing elements throughout the entire site. Along the way, our team learned a bunch of new things and strengthened their skill sets even more. One highlight being how to override existing styling when working with the sub-template.

The Result

We implemented Kinderregion as a subsite of the main Zurich Tourism website, based on the Domain module. This allows us to share mission content across both websites and most importantly, benefit from the infrastructure that the Zurich Tourism Website already provides. We also added to the permission system and the reactive events filter section on the Landing pages.

The same layout used for zuerich.com is applied to Kinderregion, and is based on the "Panels suite". It is built using "Panels everywhere", which enables us to export the site layout and it’s domain-specific variants to features. Following the same logic, the home page is based on a panel page with different variants for each domain. The mega menu is composed of mini panels, loading into specific menu items through the use of the menu mini panel module. The consistent use of panels for all of these different areas allows the content editors to easily update the front page and makes it possible for us to deploy code and configuration changes, without losing the customisations done by the client. Hence, the sites heavy content is displayed in a coherent and captivating manner.

We loved collaborating with Zurich Tourism again on this new project and also really enjoyed working alongside the creative agency Rosarot Ideennetz throughout the process. All input and guidance has been super valuable and highly appreciated.   

Agiledrop.com Blog: AGILEDROP: Our blog posts from February

15. März 2018 - 3:09
You have already seen what Drupal blogs were trending in the previous month, and now it is time to look at all our blog post from February.    The first blog post in February was What can Drupal agencies expect in 2018 by our Commercial director Iztok. He looked at the technology trends and how they are changing, how can those changes influence on Drupal agencies and what can we expect in the future. What are the conclusions from Drupal Business Survey, including responses from 200 different Drupal agencies? Iztok did a SWOT analysis based on digital agency reports from 2017 and outlooks… READ MORE

MTech, LLC: Drupal 8 Contrib Upgrade Status

14. März 2018 - 22:13
Drupal 8 Contrib Upgrade Status

One of the things I constantly get asked about in the Drupal 8 migrate space is when will migrate be ready for use. With the API being marked stable in 8.5.0, now is a good time to consider upgrading. Upgrading a D6 or D7 site should be ready, especially if you have mainly core modules in use. However, what about when your site used a contrib module or two or ten?

Lucas Hedding Wed, 03/14/2018 - 14:13

roomify.us: Tutorial: equipment library reservations with Drupal 8 & BEE

14. März 2018 - 17:51
BEE makes it easy to quickly implement all kinds of booking & reservation use cases. We've created a new video that walks through setting up BEE to take reservations for an equipment library.

Fuse Interactive: Drupal 8 and iMIS - A SAML Story

14. März 2018 - 17:19
Drupal 8 and iMIS - A SAML Story In the summer of 2017, Fuse started work on a new website for the BC Pharmacy Association (BCPhA). This new website was to be built in Drupal 8 and was part of BCPhA’s overhaul of their digital strategy. Among the various requirements of the build, was an integration with an existing third-party system BCPhA used to manage their members. This system had been in use by BCPhA for a while and their existing website integrated into this system. John Wiebe Wed, 03/14/2018 - 08:19

Mediacurrent: How to Make the Most of Your DrupalCon BOF Experience

14. März 2018 - 16:56

DrupalCon Nashville is coming up and that means another chance to create deeper connections with the Drupal community by attending or facilitating Birds of a Feather sessions (BOFs). The DrupalCon team has summarized what a BOF is on the DrupalCon website:

Birds of a Feather sessions (or BOFs) are informal gatherings of like-minded individuals who wish to discuss a certain topic without a pre-planned agenda. BOFs allow groups to meet and discuss issues and talk out ways to move the project forward. Have fun and learn! BOFs exist to provide attendees with an inclusive, informal environment in which to share ideas freely. BOFs can be serious, and a great way to gather the people you’ve been working remotely with on a project in a space to deep dive on a topic, but they can also be fun as well. Knitting BOF? Why not?!

At this point, you might think BOFs sound interesting, but why would you consider attending a BOF at DrupalCon?

Since regular DrupalCon sessions are recorded and BOFs are not, consider attending BOFs you find interesting in preference to a session - you can always watch the recording later! BOFs are great subjects for blog posts, so take notes and write about them.

  1. BOFs are not presented lecture style and allow for a high-level of interactivity between the facilitators and other participants. The facilitator generally kicks off the topic and framework for the discussion, allowing everyone to discuss the ideas.
     
  2. Due to the interactivity, there is a chance to meet and get to know others in a way that you might not be able to do in a DrupalCon session.
     
  3. Some BOFs are focused on discussions around and determining best practices. These are great ways to look into your processes and know what you are doing well and what you can do to improve. Organizations looking for the value in sending you to DrupalCon can’t ask for more than the opportunity for immediate process improvements post-DrupalCon.
     

Let’s shift gears to BOF planning and facilitation. Why would you want to host a BOF? One reason is that you may have been one of the 900+ session proposal submitters that were not selected - turn your lecture style idea into a BOF discussion! Another reason to host is that you can ensure that a topic you have a passion about has DrupalCon representation, drawing in participants with similar interests. A BOF is also a great way to practice public speaking and prepare for a future DrupalCon session opportunity!

If you are interested in facilitating a BOF, here are some tips to make sure you get the most out of it and ensure that participants have the opportunity for a positive experience.

  1. As a first step, check out the DrupalCon suggestions: How to Run a Successful BOF
     
  2. Plan your BOF with a clear and concise abstract on what you want to discuss. You are marketing your session against others sessions happening at the same time so make sure to attract participants.
     
  3. Submit your idea as soon as possible! The BOF schedule fills up quickly! There is nothing wrong with pulling together an informal BOF in a hallway or lunch table if spaces fill up.
     
  4. When the BOF begins, introduce yourself and clearly state the topic and format for the BOF so participants know how it will work.
     
  5. Have a brief topic discussion to kick off the BOF. This can be an example of your personal experience around the topic, including successes and challenges. This helps make participants comfortable and gives them time to think about questions and ideas to contribute. Keep it brief so you have time for others to participate.
     
  6. After the short introduction discussion, start by asking an icebreaker question to get participant involvement going. It is a good idea to have a list of related questions and discussion items ready in case you need to keep the conversation moving. Many times, the BOF will take off organically and there will be no need to rely on those techniques.
     
  7. Remember, you are the facilitator. It is your job to help give everyone a chance to be involved and to guide the BOF back to the topic if it gets off track a bit.
     
  8. End the BOF by thanking everyone for coming and consider offering some resources or related research to continue the conversation.
     

If you are interested in submitting a BOF idea at DrupalCon Nashville, BOF scheduling opens on March 14th, 2018. Visit https://events.drupal.org/nashville2018/birds-feather for submission details. Remember that the Code of Conduct is in effect at BOFs and throughout DrupalCon events. We hope to see you at a BOF at DrupalCon Nashville!

Additional Resources
Mediacurrent to Present 7 Sessions at Drupalcon Nashville | Mediacurrent Blog
Drupalcon: Not Just for Developers | Mediacurrent Blog 

Lucius Digital: Login without password most secure | Wait.. what?

14. März 2018 - 16:36
Never having to remember your Drupal passwords again, how great would that be? It appears the working without passwords even is the most secure option. But how is that possible?

ComputerMinds.co.uk: Class naming for Javascript development in Drupal

14. März 2018 - 16:33
Class naming for Javascript development in Drupal Steven Jones 14th Mar 2018

We've settled on what we think is a best practice for class naming for Javascript in Drupal – let me explain what I mean and then talk you through our reasoning.

Read more