Drupal

Acquia Developer Center Blog: Building Usable Conversations: Effective Conversational Design

Planet Drupal - 31 January 2019 - 7:39am

In this third installment of our series on conversational usability, we look at conversational design, an already well-explored area that is still burgeoning with emerging best practices.

Tags: acquia drupal planet
Categories: Drupal

OpenSense Labs: Brace Yourself, OpenEuropa Initiative is Here!

Planet Drupal - 31 January 2019 - 6:14am
Brace Yourself, OpenEuropa Initiative is Here! Vasundhra Thu, 01/31/2019 - 23:32

In one of the episodes of Star Trek - “The Trouble With Tribbles” there is a graphical example of how small changes leads to monumental consequences over a short period of time.  

The episode depicted the effect of new “species” on the established society, somewhat similar to the rise of the open source software and its tools in today’s technology. 

Yet many of us aren’t cognizant of the reach and the influence that open source has on our personal and professional endurance.


Thus to solve this awareness issue, OpenEuropa initiative was introduced. This Directorate- General for information initiative aims at strengthing and adopting open source tools and its practices in consolidating the European institutes' web presence. 

What the initiative focuses on?

In order to achieve such goals, the OpenEuproa Initiative focuses on the following activities. 

  • Software components licensed under EUPL-1.2

The initiative focuses on building, maintaining and releasing loosely coupled, reusable software components that are licensed under EUPL-1.2 

The European Union Public License is a free software that has been created and approved by the European Commission. The goal of this license was to create open source license in 23 different languages for the European Union and also that it conforms the copyrights law of member states of the European Union.

  • Open Source Strategies 

The initiative also focused on building, maintaining and releasing full-fledged solutions and open source strategies for the European institutes. The special objectives of these strategies are:

Equal treatment in the procedure 

Under this, the open source solutions and a proprietary solution will be assessed on an equal basis, both being evaluated on the basis of total cost of ownership, including the prevailing cost. 

Contribution to communities 

The commission service would actively participate in open source software communities to build a strong open source building block which is used in the commission software.

Clarifying legal aspects

For easy collaborations with open source communities, commission developers benefit from the right legal coaching and the advice on how to deal with intellectual property issues related to open source software

Good Communication

The strategy emphasis strongly on improved governance, increasing use of open source in the domain of ITC security and the alignment of this strategy. 

 

  • Web Services Architecture Overview 

The initiative provides a high-level architecture overview of web related information systems. 

Web information system or web-based information system is an information system that uses internet web technologies to deliver information and services, to users or other information systems. 

A software system whose main purpose is to publish and maintain data by using hypertext-based principles. 
 

 

  • Open Source Projects 

The initiative contributed back to the upstream open source projects. Each project complies with PHP-FIG standards and adheres to best practices put forward by PHP the “right” way.

PHP and Drupal Projects released under the EUPL-1.2 license.are:

 


OpenEuropa Coding Standards

OpenEuropa and its components are built with a public contribution in mind. In order for all components and contributions to look and feel familiar, OpenEuropa has agreed to follow some coding standards 

Although OpenEuropa does not follow any coding standards guidelines as such, it does follow known standards such as PSR-1 and PSR-2.

The code review components have been created in order to make it easier for the contributors to create new components or to modify the existing ones. The coding standards have to be reviewed and validated under OpenEuropa code review across different OpenEuropa components. 

Development Environment

The projects that are developed under the Open Europa initiative does not follow any development environment, there are software packages that follow it. The software packages like:

Tools Required Purpose PHP YES  Needed by Drush, Compose,  and Tash Runner  Composer YES A package manager for PHP  GIT YES Version control system Drush YES CLI (command line interface) integration with Drupal  ROBO YES Required by Open Europa task runner  Node.js YES Required to develop OpenEuropa theme


PHP:  We have heard about this word once in our lifetimes. Here the use of PHP is required by various tools which include the composer, Drush, Robo and Drupal itself.

Composer:  Composer is used for managing dependencies of the PHP project. All the projects are required to use it and the plus point about this is that it has its natural integration with Drupal.org.

Git: Git is the distributed control version that is used as a foundation of OpenEuropa ecosystem. 

Drush: This is the command line shell and UNIX interface scripting for Drupal and is used to interact with the Drupal website through line command.

ROBO: This is a simple PHP task runner which is inspired by Gulp and Rake that aims to automate common tasks.

Node.js: It is required for the development of OpenEuropa themes. All the development dependencies are defined under package.json. 

Automated Testing for functionalities

OpenEuropa requires automated tests to be written for every new feature or bugfix to ensure that the functionality will keep working as expected in the future. There are two types of test 

User Stories

OpenEuropa practices Behaviour Driven Development to facilitate effective communication between business and development teams. User stories should be accompanied by test scenarios that have been written in non-technical language. After the user stories are accepted it can then be used to perform automated tests to ensure the business requirement work. 

Unit Test 

If there are any pull requests that do not result in from user stories can be covered by unit tests rather than BDD user stories. The user should use the appropriate unit testing framework that is available for the programming languages in which the components are developed. 

Can Drupal components be tested as well?

In addition to the testing framework that comes with the Drupal core, OpenEuropa also uses Behat to describe business requirements. 

Behat is a test framework for behavior-driven development written in the PHP programming language. 

When a PR is compelled to change the user behavior it is demanded to describe the expected end user behavior in the Behat scenario. 

  • Each of the user stories is accompanied by Behat scenario. The scenario provides to the project stakeholder for the acceptance testing. 
  • The target audience of these scenarios is stakeholders. 
  • Every Behat test scenario is written in domain-specific building language and should only be used to describe expected user behavior as it is specified by the stakeholders.
  • Any code is written that does not directly affect the expected end-user behavior should be covered by unit tests instead.

Drupal 8 has introduced the concept of experimental modules, that are not under privacy policies or fully supported but used for testing purposes. They offer a wide range of functionalities, starting from migration till the site building. 

Due to the experimental nature of these modules, OpenEuropa defined a set of policies under its components.

Minimum Stability Required

These modules follow different levels of stability by Drupal: alpha, beta, RC and stable.
In order for OpenEuropa to provide stability, the only experimental module in its beta and greater stage are allowed. 

This is done because the modules that are in beta and later stage are very stable in API. Whenever API is changed, great care is taken to provide a compatibility layer. 

Experimental modules in the alpha state

Although the rules state that the alpha modules are not allowed in the vanity, there is still a great potential value to the customers. 

If for a technical reason or business reason the alpha module does justification to the project, alpha modules are allowed to the experiment. However, in such cases, the components will use the same labels as in the experimental modules they are using. That means if you are using the alpha module you are required to use its label as well until the related module is changed. 

OpenEuropa Release Cycle

OpenEuropa releases its components following semantic versioning. There would be three types of releases planned:

MAJOR

Incompatible API changes, very rare and planned in

MINOR

Adds backward compatible manner functionalities and bug fixes
 
PATCH 

Adds backward compatibility bug/security fixes and can be deployed instantaneously. No new functionalities would be introduced. 

Release Preparation and testing in Drupal

OpenEuropa Drupal components are released with the follow of Drupal 8 components and will be always tested against. 

  • Current stability in Drupal 8 core minor release. (n)
  • Previous release Drupal 8 core minor release. (n-1)
  • Development range in Drupal 8 core minor.

This allows to follow same support cycle as Drupal core and be better prepared for next minor releases as they occur.

Release Support 

For Drupal components, OpenEuropa team will have a support policy inspired by Drupal core:
Components support current and previous Drupal Core minor versions. New minor versions for components are made compatible with these respective core versions.
When a new minor core version (n) is supported, the support for release n-2 is dropped.

Conclusion 

Open Source and its components have become really essential for building trust and safety around the software and web. It has been contributing to the projects, service-oriented architecture and technical governance that derive the design and development of the components.

The initiative has emerged as a lightning bolt in this dark world of “unawareness” It has not only aimed the strengths and powers of open source tools and practices but established a stronghold on the web presence. 

Contact us on hello@opensenselabs.com for any queries and questions to the related topic. The professionals would guide you with the same and provide you with adequate services.  

blog banner blog image Drupal Drupal 8 CMS OpenEuropa EUPL-1.2 Open Source OpenEuropa Coding Standards OpenEuropa Release Cycle Blog Type Articles Is it a good read ? On
Categories: Drupal

Dependency Visualizer

New Drupal Modules - 31 January 2019 - 5:42am

This module allows you to visualize drupal module dependencies in a hierarchy structure of all installed modules.

Requirements:

  • You need at least vis.js v4.21.0 you can install it via composer or manual for instructions see Reamde.md.

Features:
This module contains a JavaScript that controls vis.js and creates a graph with all modules.

Categories: Drupal

Consumers Token

New Drupal Modules - 31 January 2019 - 5:13am

Provides a token [consumers:current-name] for consumers name replacement depending on what consumer has requested the token.

Categories: Drupal

Inmail User

New Drupal Modules - 31 January 2019 - 4:42am

This module contains an Inmail plugin that generates users from the sender of the incoming emails.

Categories: Drupal

Specbee: Artificial Intelligence & Drupal - The Smart Impact On Your Business

Planet Drupal - 31 January 2019 - 4:31am
Over the years, AI has been instrumental in personalizing user experience and this is one of the prime reasons why brands are investing in Big Data as a key element of their customer offerings. However, organizations have failed to utilize the enormous potential of Artificial Intelligence by not embracing the technology completely in the field of website development.
Categories: Drupal

Commerce Remove Cart Vat Tax

New Drupal Modules - 31 January 2019 - 4:27am

The commerce remove cart vat tax module provide functionality to show original
product price and amount total from cart page.

* By default vat tax are included with price and total in cart page.
* Remove vat tax from cart page and show original price.

INSTALLATION
-------------------

* Install as you would normally install
a contributed Drupal module.

Categories: Drupal

Cludo

New Drupal Modules - 31 January 2019 - 2:17am
Categories: Drupal

Commerce product reservation

New Drupal Modules - 31 January 2019 - 1:28am

A module to provide the framework for building a reservation solution for Drupal Commerce.

A reservation in this context means that a user wants to pick up and pay for the product in a physical store. This way you can have different checkouts based on the type of order a user chooses, for example by requiring only a phone number for the reservation type of order.

Categories: Drupal

WeKnow: Improving Drupal and Gatsby Integration - The Drupal Boina Distribution

Planet Drupal - 31 January 2019 - 1:00am
Improving Drupal and Gatsby Integration - The Drupal Boina Distribution

Drupal 8 has plenty of contributed modules to help you building a headless/decoupled web application. However, getting all those set up correctly could be a daunting task. 

Understanding this is an issue that should be addressed and as mentioned previously in our blog posts of this “Improving Drupal and Gatsby Integration” series we wrote and contributed two modules Toast UI Editor and Build Hooks. But there are some other needed modules: JSON-API, JSON-API Extras, Site Settings to mention a few and also a minimum configuration you should take care of to have a pleasant experience with your Drupal-Gatsby integration. 

jmolivas Thu, 01/31/2019 - 09:00
Categories: Drupal

Tandem's Drupal Blog: Lando is ready for the masses with RC2 release

Planet Drupal - 31 January 2019 - 12:24am
February 01, 2019 We've waited, we've bided our time, we've gathered data and now we are ready to smite traditional local dev to ruin by unleashing the true power of Lando Holla!!! We are super pumped to announce the release of Lando 3.0.0-rc.2!. About midway through 2018 we reached a few of the milestones we were looking for: Over 5,000 monthl...
Categories: Drupal

Dries Buytaert: 2019 Australian Open 'aces' the digital experience with Acquia and Drupal

Planet Drupal - 30 January 2019 - 6:00pm

Since I was young, I've been an avid tennis player and fan. I still play to this day, though maybe not as much as I'd like to.

In my teens, Andre Agassi was my favorite player. I've even sported some of his infamous headbands. I also remember watching him win the Australian Open in 1995.

In 2012, I traveled to Melbourne for a Drupal event, the same week the Australian Open was going on. As a tennis fan, I was lucky enough to watch Belgium's Kim Clijsters play.

Last weekend, the Australian Open wrapped up. This year, their website, https://ausopen.com, ran on Acquia and Drupal, delivered by the team at Avanade.

In a two-week timeframe, the site successfully welcomed tens of millions of visitors and served hundreds of millions of page views.

I'm very proud of the fact that many of the world's largest sporting events and media organizations (such as NBC Sports who host the Super Bowl and Olympics in the US) trust Acquia and Drupal as their chosen digital platform.

When the world is watching an event, there is no room for error!

Team Tennis Australia, Acquia and Avanade after the men’s singles final.

Many thanks to the round-the-clock efforts from Acquia's team in Asia Pacific, as well as our partners at Avanade!

Categories: Drupal

Flag conditional confirm

New Drupal Modules - 30 January 2019 - 4:45pm

This module adds a "Conditional Confirm Form" link type for Flags. This
allows administrative users to set Flags to use the Confirm form only
under certain conditions.

For example, and administrator could set a Flag to require confirmation
when unflagging content but not when flagging.

The administrator will have this additional setting when configuring
the flag:

Categories: Drupal

OSTraining: How to Display Flickr Images on Your Drupal 8 Site

Planet Drupal - 30 January 2019 - 4:00pm

The Drupal 8 "Flickr" module allows you to insert Flickr images or photosets (albums) on your site, without the need of keeping the images on your server. This has a couple of advantages (we won’t discuss the disadvantages in this tutorial):

  • Less use of resources on your own server
  • Improvements on the performance of the site
  • You avoid copyright issues in your site, Flickr takes care of that
  • Make use of thousands of Flickr images available under CC License.
Categories: Drupal

Commerce Quantity Pricing

New Drupal Modules - 30 January 2019 - 2:39pm

// Todo: Expand this

Commerce Quantity Pricing allows you to directly couple the quantity of a product to the price a customer pays, based on Taxonomy term.

e.g If you sell 100 envelopes, you might want to have the customer pay $10, but if they buy 150, you want them to pay $8.

How to use during dev

Settings page will come later, core functionality is key currently.

Categories: Drupal

Webform Submission Import

New Drupal Modules - 30 January 2019 - 1:02pm

Allows admin to upload a CSV of form submission data for import into a forms existing submissions.

Install as normal. A new tab labeled "Import Submissions" will be added to your webform (i.e. /admin/structure/webform/manage/{my_form_id}).

From there, simply upload a CSV file with the first row containing headers that match the field names from your form. Any extra columns are ignored.

Form fields are validated on import, so any data from your CSV that does not pass validation will be skipped and logged.

Categories: Drupal

Pages

Subscribe to As If Productions aggregator - Drupal