Newsfeeds

Amazee Labs: Amazeenar #1 - GraphQL & Twig

Planet Drupal - 13 May 2018 - 11:57pm
Amazeenar #1 - GraphQL & Twig

“Absolutely incredible!” - just one quote from our first Amazeenar in which we explore the power of GraphQL Twig. Decoupling Drupal is the future, however, it may be a big leap to learn a whole new development stack. With GraphQL Twig, we can take baby steps with a soft-decoupled approach by writing GraphQL inside our Twig templates.

Daniel Lemon Mon, 05/14/2018 - 08:57

On Friday 11th May, Amazee Labs hosted its first Amazeenar - a live video training session presented by Philipp Melab who demonstrated some of the capabilities of GraphQL with the Drupal module GraphQL Twig.

We started the webinar while a crowd joined live from over 13 countries around the world, including Belgium, Brazil, Canada, South Africa, and as far east as Thailand.

It felt exciting to have a community of enthusiastic people connecting from so many different locations across the globe. This once again reinforced that Drupal is really about coming for the code and staying for the community.

Philipp dove into the talk by giving us a quick introduction to GraphQL, with an example query for us to better understand the concept:

query { node:nodeById(id: "1") { title:entityLabel related:relatedNodes { title:entityLabel } } }

Running this example GraphQL query would give us the following JSON response:

{ “node”: { “title”: “Article A”, “related” { { “title”: “Article B” }, { “title”: “Article C” } } } }

Inversion of control

Philipp then explained the need for decoupling, providing us with a good overview of the fundamental differences between standard Drupal and Decoupled Drupal, in which the control moves from a push approach to a pull approach.

React is great, but the inversion of control is crucial.

Enable the template to define its data requirements, allow's us to achieve a clear data flow with significantly increased readability and maintainability. The GraphQL Twig module allows us to add GraphQL queries to any Twig template, which is then processed during rendering and used to populate the template with data.

Philipp entertained the audience with a live working demo in which, together, we learnt how to enhance the default “powered by Drupal” block to pull in the username of user 1. He then blew our minds with an additional surprise - pulling in the current number of open bug issues for Drupal Core via the GraphQL XML submodule.

Catchup

Did you miss the webinar? Don’t fret; we recorded everything!

Amazee Labs would like to thank everyone who attended the live session, we enjoyed being able to share this with you, and we look forward to hosting another Amazeenar shortly.

Categories: Drupal

Video Game Deep Cuts: One Hour, One Frostpunk

Social/Online Games - Gamasutra - 13 May 2018 - 7:31pm

This week's game writing, audio & video highlights include a podcast with Jason Rohrer on One Hour One Life, as well as analysis of the acclaimed Frostpunk and lots more besides. ...

Categories: Game Theory & Design

HTTP client error status

New Drupal Modules - 13 May 2018 - 1:03pm

Provides a Condition plugin, checking the status code for 401, 403 and 404 client errors. This can be used by any modules that use the Condition plugins, such as core Block system.

One simple use case would be to display a block on a 403 or 404 Page.

Categories: Drupal

Content Translation Redirect

New Drupal Modules - 13 May 2018 - 9:12am

This module will be useful if you need to redirect users from pages of non-existent translations of the content entity to a page with the original language.

It is important that the user will be redirected only if the entity translation URL is different from the entity URL in the original language. Also, do not forget that the entity must be translatable.

Categories: Drupal

Video Game Deep Cuts: One Hour, One Frostpunk - by Simon Carless

Gamasutra.com Blogs - 13 May 2018 - 7:23am
This week's game writing, audio & video highlights include a podcast with Jason Rohrer on One Hour One Life, as well as analysis of the acclaimed Frostpunk and lots more besides.
Categories: Game Theory & Design

ThinkShout: Preparing for the GDPR

Planet Drupal - 13 May 2018 - 5:00am
“We’ve recently updated our privacy policy.”

If you’ve ever given your email address to an online store, entity, social media platform or done just about anything online, then you’ve probably received the above notice in your inbox from those entities with increasing regularity over the last month or two.

Most of these notices are related to the European Union’s General Data Protection Regulations (GDPR) that are going into effect later this month on May 25, 2018.

To be clear, we at ThinkShout are not lawyers and we strongly encourage our clients and anyone collecting user information in some way, shape, or form to seek legal counsel for your own specific obligations related to the GDPR. Here’s how we’re viewing the regulations and what actions we are taking at ThinkShout.

The big picture

The regulations apply specifically to organizations that collect or process data associated with EU citizens. The overall intent is to give EU citizens control over how their own data is collected and used. The stick that’s being wielded to enforce the regulations is the possibility of fines of up to €20 million or 4% of an organization’s global annual revenue (whichever is greater). Charitable organizations are not exempted from these penalties, however it’s likely that the steep fines will be for recurring or significant privacy issues and that the focus will be on fixing any issues that are discovered. There are questions about enforceability (particularly in the USA) that will likely need to be settled in court, but many of the regulations reflect smart privacy practices regardless of the penalties. All the chatter and hand wringing about the GDPR has led to a fast growing industry of businesses offering compliance audits, consulting and technical solutions to the regulations. Some of the vendors offering these services are legitimate, while many are simply designed to sell products or services based on embellished fears.

The principles of the GDPR can be broadly summed up as protecting personal data by allowing individuals to choose what data they allow to be collected, how that data is used or processed, and gives them control over that data even after it’s been collected. The UK’s Information Commissioner’s Office provides an easy to read guide to the GDPR that goes into detail on the various provisions while the EU provides a more graphical explanation. That last link might be more palatable for the visual learners reading this.

Portion of the EU’s graphical explanation of GDPR - full explanation can be found here.

Does the GDPR apply to you and your users?

In short, probably. While compliance is technically only needed when handling data for EU citizens, discerning who is and isn’t a EU citizen can be difficult, and compliance in many cases isn’t all that cumbersome.

Documentation and communication are two of the key areas of responsibility.

Start with an audit of the data you collect from users, the data you collect from other sources and what is done with that data. Note that this isn’t just about new data but also any data already in your various systems (website, Salesforce, spreadsheets, etc.). Once you know what user information you have and why you have it, communicate that information to both your staff and your users by updating your privacy notices, and emailing constituents with that now famous subject line, “We’ve recently updated our privacy policy.”

Document how your data handling processes are shared with new staff. It’s also a good idea to revise privacy policies written by lawyers to be “concise, transparent, intelligible and easily accessible” and should further be “written in clear plain language.”

Here’s an example of good privacy notices and requests for consent.

Basically, ensure that the general population (who did not attend law school) can easily understand the language.

Processing must be allowed under a lawful basis.

Any processing of personal data must be supported by both the need to process that data as well as a lawful basis. Out of the eight lawful bases that the GDPR defines, consent, legal obligation and legitimate interest appear to be the most likely to be cited in the work of our clients. For consent to apply, it must be active (opt-in), current, specific and revocable.

Legal obligation covers data needed for accounting or other legal audit trails. Legitimate interest is less defined, but addresses situations where the usage of the data can be reasonably expected, has minimal privacy impact and there is strong justification for the processing of the data. Using a user’s email address on an account they created to send them a link to reset their password might be an example of legitimate interest as a lawful basis.

Individuals have defined rights to the protection and usage of their data.
  1. The right to be informed: privacy notices, accurate opt-in information, etc.
  2. The right of access: ability to see any data you have on an individual.
  3. The right to rectification: ability to correct any errors in the data you have - allowing users to update their own profiles covers much of this right.
  4. The right to erasure: ability to request data be removed. This is not all encompassing, nor does it need to be automated. Data needed for legal or other legitimate needs can be retained.
  5. The right to restrict processing: ability to request that their data not be processed but also not deleted.
  6. The right to data portability: ability to request a machine readable export of their data.
  7. The right to object: ability to opt out of marketing, processing based on legitimate interest or processing for research or statistical purposes. The process for opting out must be clearly explained in the privacy notice and at the point of first communication.
  8. Rights in relation to automated decision making and profiling: If you collect data to profile individuals for behavior tracking or marketing purposes then additional regulations apply.
What about cookies?

Cookies aren’t specifically called out in the GDPR, however some of the provisions can apply to them. Some experts recommend altering the site behavior to prevent cookies from being created until after the user has provided and the site has recorded consent. Several services seek to provide paid services that support this approach, although altering the code on your site is generally necessary to use them correctly. A few Drupal modules and WordPress plugins also seek to provide this functionality. It is expected that in 2019 the revised e-Privacy Directive will shift some or all of the obligations for managing consent related to cookies to the browser application.

Recommendations

We’re recommending that all our clients take the following steps to ensure compliance:

  • Evaluate your organization’s legal needs related to the GDPR. Consulting with your own counsel is recommended.
  • Appoint an internal person to take responsibility for data protection in your organization. While the GDPR includes provisions for appointing a Data Protection Officer (DPO), it’s specifically for public authorities and organizations whose core business is tracking behavior or processing criminal data. Appointing a staff person will help avoid a diffusion of responsibility regarding data security.
  • Audit your data collection and processing (here’s a sample template):
    • What is being held already and what is being collected?
    • Is there data being collected or stored that isn’t needed?
    • How is the collected data is used within the organization?
    • Is there a legal basis for the different pieces of personal data being collected?
    • If consent is the legal basis, is the consent active (opt-in), granular and recent?
  • Review and revise privacy notices and cookie policies to be clearly written and comprehensive. Be sure to include information about third-party data collection (Google Analytics, AddThis, Facebook, etc). Here’s a privacy notice checklist to get you started.
  • Document processes for handling user requests as well as security breaches. Your organization has a month to respond to an individual’s request for export, access, or deletion of their data. In most cases this will currently be a manual process although there is working happening in both the Drupal and WordPress communities to make these request easier to accommodate. If there is a data breach, the GDPR states that the regulating agency must be notified within 72-hours. A good starting point is the Security Breach Response Plan Toolkit.
  • Evaluate if changes to your website (beyond the privacy/cookie notices) are necessary. Consider specifically:
    • Is Google Analytics configured properly? Ensure IP anonymization is enabled, data retention settings are correct and that no personal information is being tracked (check page urls, titles, etc.).
    • What third-party scripts or pixel trackers are included?
    • How is consent being collected in newsletter signup forms?
    • How is consent being collected in user registration forms?
    • Any other places that user data could be collected?
What’s next for us?

Like most agencies, we’re continuing to learn more about the GDPR and the implications for our clients. We are working in partnership with them to help them understand and implement changes that might be needed on their sites or their internal processes. Internally we’re providing additional training on the principles of privacy by design to our team. In terms of our open source work we’ll be incorporating MailChimp’s GDPR consent forms into the Drupal MailChimp modules as soon as the functionality is available in their API. We see opportunities for including functionality related to subject access requests (export, deletion, etc) and consent tracking in our RedHen CRM suite of modules as well.

Bottom line is: this is something we all need to be cognizant of; it’s not solely an EU issue. We’ll continue to keep a close eye on this as GDPR gets rolled out – and there are many resources out there at your disposal (and within this blog post). You can be sure to get the latest from us on this and other digital trends by signing up for our newsletter and following us on twitter. Good luck!

Categories: Drupal

CiviCRM User

New Drupal Modules - 13 May 2018 - 3:40am

Operations on Drupal User entities based on a CiviCRM data source. Useful when the process of creating users is not delegated to Drupal (existing CiviCRM Contacts, frontend User registration disabled, ...).

Creates, updates or blocks Drupal Users from CiviCRM Contacts.

These operations are optionally based on a condition that can be

  • a CiviCRM Tag applied to the Contact (e.g. "Has a Drupal user account")
  • a CiviCRM Group.
Categories: Drupal

Matt Glaman: Looking back at my first Drupal events and talks

Planet Drupal - 12 May 2018 - 11:00pm
Looking back at my first Drupal events and talks mglaman Sun, 05/13/2018 - 01:00

I have been spending the month of May cleaning out my basement office. I have found a treasure trove of old papers and random things bringing up memories and other thoughts. Just like my last blog post on an organization's values and the culture it creates. This time I found two legal pads which had my notes and planning for my first Drupal Meetup talk and first came session.

Categories: Drupal

Jeff Beeman: Setting up a new project using BLT, Dev Desktop, and Lightning

Planet Drupal - 12 May 2018 - 5:43pm
Setting up a new project using BLT, Dev Desktop, and Lightning

This is the first in a series of posts where I'll capture how I built a new Drupal 8 version of jeffbeeman.com using BLT, Dev Desktop, and Lightning. In later posts, I’ll talk about other local development solutions, dependency management, content migration, and how BLT helps me build and deploy artifacts to Acquia Cloud.

Jeff Beeman Sat, 05/12/2018 - 17:43
Categories: Drupal

Review Roundup

Tabletop Gaming News - 12 May 2018 - 11:00am
It’s Saturday! Woo! What cannot be accomplished on such a day as today!? I know what I’ll be doing. I’ll be here at CMON Expo, hobnobbing with gaming media. Some of them I will now feature here on today’s Review Roundup. Today we have: Hard City, Destiny Aurora: Renegades, Castle Von Loghan, Meeple Circus, Karuba: […]
Categories: Game Theory & Design

One Time Link

New Drupal Modules - 12 May 2018 - 2:19am
Categories: Drupal

erdfisch: Drupalcon mentored core sprint - part 2 - your experience as a sprinter

Planet Drupal - 12 May 2018 - 2:00am
Drupalcon mentored core sprint - part 2 - your experience as a sprinter 12.05.2018 Michael Lenahan Body:  Drupalcon mentored core sprint - part 2 - your experience as a sprinter

Hello! You've arrived at part 2 of a series of 3 blog posts about the Mentored Core Sprint, which traditionally takes place every Friday at Drupalcon.

If you haven't already, please go back and read part 1.

You may think sprinting is not for you ...

So, you may be the kind of person who usually stays away from the Sprint Room at Drupal events. We understand. You would like to find something to work on, but when you step in the room, you get the feeling you're interrupting something really important that you don't understand.

It's okay. We've all been there.

That's why the Drupal Community invented the Mentored Core Sprint. If you stay for this sprint day, you will be among friends. You can ask any question you like. The venue is packed with people who want to make it a useful experience for you.

Come as you are

All you need in order to take part in the first-time mentored sprint are two things:

  • Your self, a human who is interested in Drupal
  • Your laptop

To get productive, your laptop needs a local installation of Drupal. Don't have one yet? Well, it's your lucky day because you can your Windows or Mac laptop set up at the first-time setup workshop!

Need a local Drupal installation? Come to the first-time setup workshop

After about half an hour, your laptop is now ready, and you can go to the sprint room to work on Drupal Core issues ...

You do not need to be a coder ...

You do not need to be a coder to work on Drupal Core. Let's say, you're a project manager. You have skills in clarifying issues, deciding what needs to be done next, managing developers, and herding cats. You're great at taking large problems and breaking them down into smaller problems that designers or developers can solve. This is what you do all day when you're at work.

Well, that's also what happens here at the Major Issue Triage table!

But - you could just as easily join any other table, because your skills will be needed there, as well!

Never Drupal alone

At this sprint, no-one works on their own. You work collaboratively in a small group (maybe 3-4 people). So, if you don't have coding or design skills, you will have someone alongside you who does, just like at work.

Collaborating together, you will learn how the Drupal issue queue works. You will, most likely, not fix any large issues during the sprint.

Learn the process of contributing

Instead, you will learn the process of contributing to Drupal. You will learn how to use the issue queue so you can stay in touch with the friends you made today, so that you fix the issue over the coming weeks after Drupalcon.

It's never too late

Even if you've been in the Drupal community for over a decade, just come along. Jump in. You'll enjoy it.

A very welcoming place to start contributing is to work on Drupal documentation. This is how I made my first contribution, at Drupalcon London in 2011. In Vienna, this table was mentored by Amber Matz from Drupalize.Me.

This is one of the most experienced mentors, Valery Lourie (valthebald). We'll meet him again in part 3, when we come to the Drupalcon Vienna live commit.

Here's Dries. He comes along and walks around, no one takes any notice because they are too engaged and too busy. And so he gets to talk to people without being interrupted.

This is what Drupal is about. It's not about the code. It's about the people.

Next time. Just come. As a sprinter or a mentor. EVERYONE is welcome, we mean that.

This is a three-part blog post series:
Part one is here
You've just finished reading part two
Part three is coming soon

Credit to Amazee Labs and Roy Segall for use of photos from the Drupalcon Vienna flickr stream, made available under the CC BY-NC-SA 2.0 licence.

Schlagworte/Tags:  planet drupal-planet drupalcon mentoring code sprint Ihr Name Kommentar/Comment Kommentar hinzufügen/Add comment Leave this field blank
Categories: Drupal

Drupal Europe: Drupal Europe Launches its Industry Verticals — First Up: Media and Publishing

Planet Drupal - 12 May 2018 - 12:42am
Photo by janeb13 on pixabay

As you’ve probably read in one of our previous blogposts, industry verticals will be a new concept at Drupal Europe. Verticals replace the summits, which typically took place on Monday, before the conference. Sometimes these were in separate a location from the main conference venue, and often the conference ticket did not cover access to the summits. At Drupal Europe summits have become industry verticals and are integrated with the rest of the conference — same location, same ticket. Following is a summary of what to expect in the new verticals at Drupal Europe.

Verticals bring together people from an industry to:

  • about outstanding projects being developed in their field
  • share their interests and ideas
  • listen and learn together in sessions
  • discuss challenges and develop solutions for their market

With all the topics under one roof, every session you are interested in is within easy reach. There will be a guide to specific sessions and people that are involved in your industry: Media and Publishing.

However, nothing will stop you from getting off the beaten track to mix & match your interests! One Drupal Europe ticket gives you access to everything we have on offer: sessions, workshops, panels, sprints, and BoFs. In this example you might start with a great session about a new top-notch publishing site, get dragged into details of the site’s complex workflow rules and later jump into a technical session, to understand a specific decoupled approach the site was built with.

Photo by Rachael Crowe on Unsplash

All attendees will enjoy a amazing program providing insights into industry-specific challenges and solutions. The Media and Publishing industry is a great example of an industry that faced huge challenges. It has had to almost reinvent itself to adapt to the digital age in order to be successful in the 21st century with our society’s media consumption shifting from paper to digital.

We want to provide the best possible lineup of speakers, panels and sessions for the publishing/media vertical. Drupal Europe will be open to allow you to submit your great session idea very soon. As a choice of different verticals will be available on the website, please tag your session as publishing/media to indicate that it is related to this industry. We welcome proposals for all topics related to publishing/media!

If you have something interesting to share (questions, thoughts, advice), that might help us before we officially open our call for papers, please reach out to hello@drupaleurope.org.

Photo by rawpixel on Unsplash

We can’t wait to see you at Drupal Europe, 10th — 14th September in Darmstadt Germany!

Categories: Drupal

The Board Game Book Coming To Kickstarter

Tabletop Gaming News - 11 May 2018 - 2:00pm
Honestly, I don’t read a lot of fiction. I’m much more interested in non-fiction. So the upcoming The Board Game Book looks to be right up my alley. It’s all about last year’s greatest hits in terms of games, including interviews with the designers and insight into what made those games such a hit. Expect […]
Categories: Game Theory & Design

Drinkuisition Available to Pre-Order Now

Tabletop Gaming News - 11 May 2018 - 1:00pm
DRNK Games has started taking pre-orders for Drinkuisition, their thinking-person’s drinking game. Raise your tankard and challenge yourself through various rounds of questions on all manner of topics while you continually get more and more sloshed. From the announcement: Drinkuisition, the drinking game for the thinking person, is finally available for pre-order through their website, […]
Categories: Game Theory & Design

Twitch files counter-complaint against banned CS:GO streamer

Social/Online Games - Gamasutra - 11 May 2018 - 12:46pm

Twitch has filed a counter-complaint against the lawsuit filed by former Counter-Strike: Global Offensive streamer James 'Phantoml0rd' Varga. ...

Categories: Game Theory & Design

govi_sdqs

New Drupal Modules - 11 May 2018 - 12:21pm

This is a SOAP client implementation that provides the ability to interoperate with the Platform of "Sistema Distrital de Quejas y Soluciones (Bogotá te escucha)" of the Mayor's Office of Bogotá City.

Categories: Drupal

Forgotten Paths Expansion for Dark Souls Card Game Available For Pre-Order

Tabletop Gaming News - 11 May 2018 - 12:00pm
Dark Souls isn’t a very forgiving game. Death awaits you around every corner. The same is true for the card game from Steamforged. But with every monster comes new opportunities. And the Forgotten Path expansion, coming this September, is certainly full of new monsters. It also has two new characters that you can play. Set […]
Categories: Game Theory & Design

Modiphius Releases City of Mist RPG

Tabletop Gaming News - 11 May 2018 - 11:00am
Modiphius has a new RPG series up and available now in their webshop. City of Mist puts players in a dark and gritty world as detectives in a city where magic and myth invade the real world on a regular basis. These mean streets are stalked by just your average gang members and junkies. Thankfully, […]
Categories: Game Theory & Design

TINT

New Drupal Modules - 11 May 2018 - 10:29am

The TINT module integrates the TINT social media feed service with Drupal.

TINT is a service that integrates all of your brand's social media posts in
one beautiful stream, perfect for embedding on your website.

Set up TINT
-------------

1) Visit the TINT website at https://www.tintup.com and create an account.

2) Add the TINT you would like to see in your feed.

3) Install & set up the TINT Drupal module, as described below.

Categories: Drupal

Pages

Subscribe to As If Productions aggregator