Upgrade Your Drupal Skills

We trained 1,000+ Drupal Developers over the last decade.

See Advanced Courses NAH, I know Enough
Dec 16 2018
Dec 16

As the world gets more connected, web technologies too, need to get connected. RESTful web services can be used as an application program interface to connect various service.

This can be made possible by using HTTP requests to GET, PUT, POST and DELETE data. It is based on representational state transfer (REST) technology, an architectural style, and approach to communications often used in web services development. 

With decoupled development getting the ground, it has become important for the developers to understand teh REST technology better. Drupal provides its developers an in-house build method to use this REST technology. RESTful Web Services module, which is now a part of Drupal core, provides REST services to its developers. 

It allows users to read or update data on the site. 

Different verbs or request methods that are used for the approach are:

GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT and PATCH

The GET method allows the user to access various entities like Node, User, Taxonomy, Comments and even watchdog database log entries. GET method is a SAFE method as there is no database manipulation operation, it is a read-only request.

Unlike GET, in the POST method, database manipulation takes place. The user can update the database and create a node if need be. 

Creating REST Resource Plugins

REST resource plugins are important to expose additional resources over REST. In the steps below we will create a basic example for understanding the fundamental functionality of developing REST resource endpoint which takes a content type as argument and returns title and node ids of all nodes of that particular content-type.

  • Create the staging code for REST resource with the following Drupal console command:
drupal generate:plugin:rest:resource

You can also generate the staging code manually by creating a plugin file under src in the custom module > Plugin > Rest > Resource > {ResourceClassName}.php

Next, define the namespace, dependencies, and the plugin class as given in the example below.

  • Next, you need to create the @RestResource annotation. It helps you indicate the dependencies, and status of the class. Another important point to consider is that the URL mapping is case-sensitive.

    We must also be careful with the  @RestResource  annotation's urli_paths  which take link relation types as keys, and partial URIs as values. If you don't specify any, Drupal will automatically generate URI paths (and hence URLs) based on the plugin ID. 

    If your plugin ID is rest_example, you'll end up with/rest_example/{id}  for GET|PATCH|DELETE and /rest_example for POST . But, often, you'll want to specify your own paths: a canonical URI path (for example /todo/{todo_id}). For example:

* uri_paths = {
 *     "canonical" = "/rest_example/{id}",
 *   }

Here’s how to get the complete REST resource GET request

<?php

namespace Drupal\rest_example\Plugin\rest\resource;

use Drupal\rest\ModifiedResourceResponse;
use Drupal\rest\Plugin\ResourceBase;
use Drupal\rest\ResourceResponse;
use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;

/**
 * Provides a resource to get view modes by entity and bundle.
 *
 * @RestResource(
 *   id = "rest_example",
 *   label = @Translation("Rest example"),
 *   uri_paths = {
 *     "canonical" = "/rest/api/get/node/{type}"
 *   }
 * )
 */
class RestExample extends ResourceBase {

  /**
   * Responds to GET requests.
   *
   * @return \Drupal\rest\ResourceResponse
   *   The HTTP response object.
   *
   * @throws \Symfony\Component\HttpKernel\Exception\HttpException
   *   Throws exception expected.
   */
  public function get($type = NULL) {

    // You must to implement the logic of your REST Resource here.
    // Use current user after pass authentication to validate access.
    if (!(\Drupal::currentUser)->hasPermission('access content')) {
       throw new AccessDeniedHttpException();
     }
    if($type) {
      $nids = \Drupal::entityQuery('node')->condition('type',$type)->execute();
      if($nids){
        $nodes =  \Drupal\node\Entity\Node::loadMultiple($nids);
        foreach ($nodes as $key => $value) {
          $data[] = ['id' => $value->id(),'title' => $value->getTitle()];
        }
      }
    }
    $response = new ResourceResponse($data);
    // In order to generate fresh result every time (without clearing 
    // the cache), you need to invalidate the cache.
    $response->addCacheableDependency($data);
    return $response;
  }

}

Output 

[
  {
    "id": "67",
    "title": "Consectetuer Sits"
  },
  {
    "id": "69",
    "title": "Eum Paulatim"
  },
  {
    "id": "70",
    "title": "Tation"
  }
]


Configuring the REST Resources

In the config file, we define which HTTP method, serialization format, and an authentication mechanism is supported by the plugin. 

This config file is necessary to use the REST resource plugin. There are two ways to configure the REST resource @RestResource plugin:

  1. REST UI Module
     
    • The REST UI module is not part of the core. So you have to download it and install it like any other module in your Drupal site.admin interface of rest UI
    • Once installed, go to  /admin/config/services/rest and enable your REST Resource.enabling the rest module
    • Select your desired settings. To have hal_json format, you can enable Drupal Core’s HAL module.admin interface to restrict HTTP
  2. Manually
    • Go to the config directory and create a config file with name as rest.resource.{resource id}.yml.
    • Add the following content.
langcode: en
status: true
dependencies:
  module:
    - rest_example
    - serialization
    - user
id: rest_example
plugin_id: rest_example
granularity: resource
configuration:
  methods:
    - GET
  formats:
    - json
  authentication:
    - cookie
  • Save this file as rest.resource.plugin_id.yml (rest.resource.rest_example.yml in this case) in your config directory and run config sync.

Defining your resource config:

Status: true/false ( enable or disable)
Id: unique id
Plugin_id: unique id
configuration=>methods: Name all request method you want to use in this plugin
configuration=>formats: Define all supported serialized format
configuration=>authentication: Name all supported authentication method.
By default, the REST module supports json and xml

Key Point: Each REST resource must be annotated with  @RestResource  annotation so they can be discovered by RESTful Web Services module.

Custom REST API is useful in sending data to third-party applications and for headless architecture. As of today, there is hardly any project or application that doesn't have a REST API. Connect with us at [email protected] to help you create

Dec 14 2018
Dec 14

Referred to as the de facto standard of e-learning, Shareable Content Object Reference Model aka SCORM was sponsored by US Department of Defense to bring uniformity in the standards of procuring both training content and Learning Management Systems. 

Long gone but not forgotten are those days when learning was only limited to books and classrooms. With the development of technology, virtual learning has transformed into an approachable and convenient method.

Can Drupal, which is a widely popular CMS for education websites, conform to SCORM standards? How does it ensure that it remains SCORM compliant? 

Items entering from left in a grey and blue machine coming out in brown packets on right in a yellow background.


In Details - What is SCORM?

SCORM is a set of standard guidelines and specifications for the programmers on how to create LMS and training content to be shared across systems. 

The agenda to bring SCORM was to create standard units of training and educational material to be shared and reused across systems. 
                           
A white background with SCORM full form written in blue color


Shareable Content Object refers to creating units of online training material that can be shared and reused across systems and contexts.

Reference Model refers to the existing standards in the education industry while informing developers on how to properly use them together.

Working with the authoring tools to design and produce the content, e-learning professionals, training managers, and instructional designers are the ones who typically use SCORM packages.

Content (used in courses and LMS) is exported to a SCORM package (.zip folder) to deliver the learners a seamless and smooth upload of the content.

The Evolution of SCORM

Since SCORM wasn’t built as a standard from the ground up and was primarily a reference to the existing ones, the goal was to create an interoperable system that will work well with other systems. 

Till date, there are three released versions of SCORM, each built on top of the previous one solving the problem of its predecessor.

SCORM 1.0 was merely a draft outline of the framework. It did not include any fully implementable specifications but rather contained a preview of work which was yet to come. 

SCORM 1.0 included the core elements that would become the foundation of SCORM.  

In other words, this version specified how the content should be packaged. How content should communicate to systems and how the content should be described.

SCORM 1.1 was the first implementable version of SCORM. It marked the end of the trial implementation phase and the beginning of the application phase for ADL. 

SCORM 1.2 solved the many problems that came along version 1.1. It provided with robust and implementable specifications, this version presented its end users with drastic cost savings. 

It was and still remains one of the most widely used version.

  • SCORM 2004 (1st - 4th edition)

The 2004 1st edition allowed content vendors to create navigation rules between SCOs. The 2nd edition covered the various shortcomings of the 1st. It brought with it Advanced Distributed Learning which focused on developing and assessing the distributed learning prototypes, enabling more effective, efficient, & affordable learner-centric solutions.

The 3rd edition removed any ambiguity, improving the sequencing specifications for greater interoperability.

The final and 4th edition was focused on disambiguation and addition of new sequencing specifications. These specifications widened the options available to the content authors which made the creation of sequenced content even more simple.
 

 Infographic on the evolution of SCORM


Why Should You Use SCORM?

Now that we have an idea about SCORM and its attempt of reducing chaos in the entire industry, let’s know what benefits it brings along. 

Here are some of the reasons that can contribute to a huge factor in terms of using SCORM.

  • It is a pro-consumer initiative. The online courses are eligible to be used on any compliant LMS vendor. You can alternatively upload the courses to LMS as long as you have a zip folder.
  • All the high-quality LMSs and the authoring tools are SCORM compliant so that they can build and be part of a great ecosystem of interoperability and reliability.
  • The introduction and evolution in SCORM have brought about a great reduction in overall cost of delivering training. The reason is that it has no additional cost for integrating any type of content. 
  • SCORM helps in standardizing eLearning specifications. SCORM provides a set of technical specifications that gives the developers a standard blueprint to work with.

How does SCORM Work?

Other than guiding the programmers, SCORM administers two main things, i.e packaging content and exchanging data at runtime to ensure workability. 

  • Packaging content or content aggregation model (CAM) defines how a piece of content should be presented in a physical sense. It is required by the LMS to export and import a launch content without the use of any human interventions
  • Runtime communication or data exchange helps in defining how the content is supposed to work with the LMS while it is actually being played. This is the part which describes the delivery and tracking of the content. Eventually, these are the things that include “request the learner’s name” or “tell the LMS that the learner scored 95% in a test”. 
“SCORM recommends contents to be delivered in a self-contained directory or a ZIP file.”
One black block with two grey blocks and text written on them, and another grey block connected to two pentagons


Working of SCORM Packages

SCORM recommends contents to be delivered in a self-contained directory or a ZIP file. These files contain content, defined by the SCORM standards and is called Package Interface File (PIF) or in other words SCORM packages. 

It contains all the files that are needed to be delivered in the content packages via SCORM runtime environment. 

Course manifest files are considered as the heart of the SCORM content packaging system. The manifest is considered as the XML file that describes the content. 

Some of the pieces involved in the packaging are:

  • Resources 

Resources are the list of parts that bundle up to be a single course. There are two types of resources that contribute to the course.

The first is the collection of one or more files that make up a logical unit presented to the users. The other is SCO or Sharable Content Object which is the unit of instructions that are composed of one or more files, to communicate with LMS. It mostly contains the instructional or static part of a content that is presented to the users via course. 

Resources should contain a complete list of all the files that are required for proper functionality of the resources. 

This is done to port the list to a new environment and function it the similar way. 

A GIF on how SCORM and web content are added together

 

  • Organizations

Organizations are considered as the logical grouping of the parts of resources into a hierarchical arrangement. This is what is delivered to a particular learner when the item has been selected. 

  • Metadata 

Metadata are used to describe elements of a content package in its manifest file. They are important because they facilitate the discovery of learning resources across content package or in a repository. 

When a learning resource is intended to be reusable, it is a best practice to describe it with metadata. 

For describing learning content, Learning Object Metadata contains many predefined fields.   
  • Sequencing

Sequencing is responsible for determining what happens next when a learner exits an SCO. With navigational control, it orchestrates the flow and status of the course as a whole. 

However, it doesn’t affect how SCOs operate and navigate internally, that is defined by the content developer.

Drupal With SCORM 

Drupal is best at managing the digital content, but the task of planning, implementing, and assessing a specific learning process can be best done by an LMS.

How can Drupal become a platform for an organization that delivers effective training, manage learners, individual progress and record results?

Since Drupal is not an LMS, its distributions and modules help it become more effective. When it comes to SCORM compliance, Drupal has Opigno LMS as its core distribution.  

blue opigno logo Opigno LMS is a Drupal distribution that integrates H5P technology (an open-source content collaboration framework based on javascript), which enable you to create rich interactive training content. It allows you to maintain the training paths that are organized in courses and lessons. 

This distribution includes the latest version of Opigno core that offers you effective and innovative online training tools.

Opigno LMS is fully compliant with SCORM (1.2 and 2004 v3) which offers a powerful editor for content management, in particular, to create course material. These courses can eventually be grouped into classes to provide easy and manageable training paths. It should also be noted that this distribution is the quickest way to present a functional e-learning platform out of the box, with the users, courses, certificates, etc. 

Based on this distribution, Opigno SCORM implements the SCORM feature in Opigno which allows you to load and play SCORM packages within Opigno training and is also responsible to handle and manage training paths that are organized in courses and lessons. 

Opigno LMS comprises an app store that also enables you to install latest features easily, without asking you to upgrade the current install. 

According to the requirements and expectations of the learners, Opigno LMS can be summarized by the following specification:

  1. Scalable to manage the hardships of a dynamic and modifying environment
  2. Safe and easy to update
  3. Support further development of customized functionalities with proper integration with the core solution in a modular way
  4. Open to letting each client be free and independent
  5. And most importantly, easy integration with other enterprise systems 

H5P javascript framework makes it easy to create, share and reuse HTML5 content and applications, allowing users to built richer content. With the use of H5P, the authors can edit and construct videos, presentation games, advertisement etc. To create an e-learning platform, the integration of HP5 framework and SCORM is essential.  

Blue background where SCORM xAPI is written in white color


H5P SCORM/xAPI module allows to upload and view SCROM and xAPI packages. It uses two HP5 libraries namely (HP5 libraries are used to create and share rich content and applications)

  1. H5P SCORM/xAPI library to view SCORM package.
  2. H5PEditor SCORM library to upload and validate SCORM package.

You can create a new content type by uploading it in the preceding step of a process using the H5P editor.

In the nutshell

Different people adopt SCORM for different reasons. You and your team are the only ones that can decide whether sticking to SCORM is worthwhile or not. 

Depending upon the nature of your requirement and the course of action, it can be decided which platform is best for you. At OpenSense labs, we have been giving adequate solutions to our customers. Contact us on [email protected] to make the right decision on the correct choice of a platform. 

Dec 12 2018
Dec 12

Healthcare. When you listen to this word, you get a feeling of ‘care’ and ‘improvement’ because that’s what the healthcare industry does. This industry cares for the people and works on the improvement of their health. And today’s growing number of healthcare providers, payers, and IT professionals need a HIPAA-compliant website that also ‘cares’ about processing, storing and transmitting protected health information.

A doctor pointing his finger on his laptop screen as another man looks at it.


Open source software align tremendously well with the requirements of the healthcare sector. Drupal, being an open source content management framework itself, aligns very well with Health IT interoperability and is great for commercial applications at the enterprise level.

What is HIPAA compliance?

The Health Insurance Portability and Accountability Act of 1996 (HIPPA) is a legislation that was implemented for the easy retention of healthcare insurance coverage that can be of huge significance whenever the US workers change or lose their jobs.

The Health Insurance Portability and Accountability Act of 1996 is a legislation that sets the standard for the protection of sensitive patient data

It sets the standard for the protection of sensitive patient data and any organisation that confronts with protected health information (PHI) has to make sure that all the required physical, network and process security measures are being adhered to. According to Amazon Web Services, PHI includes a very wide set of personally identifiable health and health-related data, including insurance and billing information, diagnosis data, clinical care data, and lab results such as images and test results.

It also encourages to use electronic health records (EHR) for the betterment of efficiency and quality of the US healthcare system via improved information sharing.

It encompasses covered entities (CE), anyone who offers treatment, payment and operations in healthcare and business associates, and people who can access patient information and offer support in treatment, payment or operations. Moreover, subcontractors or business associates of business associates should also be in compliance.

How to make your website HIPAA compliant?

In order to make sure that your website is HIPAA-compliant, you must start by establishing new processes. Make sure that the PHI is only accessible to authorised personnel in addition to establishing processes for deleting, backing up and restoring PHI as needed. Emails consisting of PHI should be sent in an encrypted and secure manner.

Moreover, it is of great significance that you partner with web hosting companies that are HIPAA compliant and have processes for protecting PHI. Also, sign a business associate contract with third parties who have access to your patient’s PHI.

It is of paramount importance to buy and implement an SSL certificate for your website and ensuring that all web forms on your site are encrypted and safe.

Use Case: Drupal ensures HIPAA compliance

Drupal, being one of the most security-focussed CMS, comes with stupendous database encryption mechanisms. For high-security applications, Drupal can be configured for a firm database encryption. When the whole database encryption is not desirable, top-notch granularity is available for safeguarding more specific information like user accounts, particular forms, and also the values of particular fields can be encrypted in an otherwise plaintext database.

Drupal’s encryption system is configurable to adhere to the norms of PCI, HIPAA and state privacy laws constituting offsite encryption key management

Drupal’s encryption system is configurable to adhere to the norms of Payment Card Industry (PCI), HIPAA and state privacy laws constituting offsite encryption key management. Drupal is also a spectacular solution as an enterprise-grade healthcare system because it can be extended. It is possible to leverage Drupal as a content dissemination network, intranet, or even to incorporate several systems within a single platform.

By integrating Drupal data layer and an electronic medical record (EMR) via a RESTful API connection could dramatically enhance interoperability. It can unlock the important data from the proprietary systems and their data silos.

Flowchart with semicircles, full circle and boxes in blue colours to explain HIPAA compliant websiteSource: Acquia

Proprietary EMR systems are astronomical with their top-of-the-line standardised approaches and the ability to organise and store enormous amounts of data. But they are not great for customisation or interoperability. The dearth of interoperability of high-priced, single-vendor solutions and the hurdles while functioning in an integrated healthcare delivery setting results in HIPAA non-compliance. Even if the files are electronic, the difficulty in moving the files boundlessly leads to frequent violations like the shortage of legal authorisation or unencrypted emails.

Drupal and EMR integration is an excellent example of a Drupal-powered healthcare technology that empowers the staff to leverage critical and potentially life-saving data. Healthcare delivery systems, with the division of data silos, can witness the evolution from being a reactive diagnostic model to a proactive preventative model.

Drupal can be layered on top of multiple EMR systems within a medical group and the information can be compiled into one physician portal. The integration of Drupal and EMR systems can be made through numerous feeds from API calls, XML or JSON feeds and RESTful APIs.

Drupal offers granular user access control, that is, it can offers site administrators complete authority over who can see and who can modify different parts of a site. It operates on the basis of a system of extensible user roles and access permissions. Thus, with the help of role-based provisioning, Drupal can emphasise on critical data that dwells behind a firewall in a HIPAA secure environment.

Drupal can also be configured to look into the database via web services integration on the basis of specific EHR authorisation requirements. And it does so by adhering to the user access permission controls. Therefore, the data remains safe and secure all the time.

Conclusion

Drupal is a magnificent solution for enterprises in the healthcare sector to help them process, store and transmit protected health information.

We have been steadfast in our goals to deliver a great digital experience with our expertise in Drupal development.

Contact us at [email protected] to build HIPAA-compliant Drupal website.
 

Dec 11 2018
Dec 11

If you are looking to build your website on Drupal in 2019 but don’t know where to start from, you need to know more about the Distributions. 

Here’s a list of top Drupal 8 distributions you could use in 2019. 

eight logos on a white background


The Basics. What are Drupal Distributions? 

Distributions are full copies of Drupal that include core, in addition to themes, modules, libraries, and installation profiles. For a layman’s understanding distributions are a website (dummy) copy for an industry with an explicit requirement for that niche. 

“A Drupal distribution packages a set of contributed and custom modules together with Drupal core to optimize Drupal for a specific use case or industry”

Accordingly, there are Distributions for Media and Publishing, Government,  E-commerce, Education, Travel among others. 

There are two types of Drupal distributions:

  1. Full-featured distributions: complete solutions for specialized use cases (as discussed above).
  2. Other distributions as the starting points for developers and site builders.

Why Bother Yourself with Distributions?

  1. Out-of-the-box Additional Features: Remember “...Distributions are a package of the core, modules, themes”? Well, this means zero time searching for the Drupal modules and other required features, you don’t need to work extra to set up your website. You get all the required features according to your requirement in your distribution. 
     
  2. Easy set up of the website: Since you don’t need to look for additional features, it saves your time to set up your website. Launching your website now means setting up the distribution and getting a preconfigured site in a single download!
     
  3. Less Maintenance: Downloading a host of modules and features means more maintenance and more security. With distributions, you get the whole website ecosystem into one, maintenance is not an issue since everything will be updated in a single update. 

Drupal Distributions for your Website

Drupal Starter Kit

  1. Varbase 

    Varbase is an enhanced Drupal distribution packed with adaptive functionalities and essential modules, that can speed up your development process, and provides you with standardized configurations, making your life easier.

    The essence of Varbase lies within the basic concept of DRY (Don’t Repeat Yourself). It is probably the best starter distribution because it can help relieve you from repeating all the modules, features, configurations that are included in a Drupal project.

  2. Panopoly

    six white boxes arranged in a square in black background Panopoly is another powerful base distribution. At its roots lies the power of Chaos Tools and Panels magic. Designed to be both a general foundation for site building and a base framework upon which one can build other distributions, Panopoly provides search, widgets, responsiveness at its core. 

  3. Presto! - Drupal 8 Starter Kit

    Claiming to save the development time by up to 20%, Presto! is a Drupal 8 Starter Kit with more than a few tricks up its sleeve!

    With intelligent content editing functionality, configuration defaults, and optional eCommerce integration, Presto is ready to use right out-of-the-box. Other functionalities include - 

    • An Article content type with some pre-configured fields

    • A couple of pre-configured user roles: Administrator & Editor

    • The ability to share nodes on social media

    • Pathauto for automatical URL aliasing

    • A Basic Page content type with a Paragraphs-based body field

    • Some pre-configured Paragraph types:

      1. Textbox

      2. Image

      3. Promo bar

      4. Divider

      5. Carousel

      6. Block (allows the embedding of Drupal block

Media and Publishing

  1. Thunder 

    The distribution for professional publishing, Thunder functionalities are publisher-centric. At its core, it has the Paragraphs module, media entity module, and various SEO features to keep it working. As a free and open-source technology, it is cost-effective, knocks down developmental efforts and isn't time-consuming.
     

    top 3 reason why thunder is popular

    Easy to install, deploy and add new functionality, Thunder is SEO friendly, responsive, Google AMP friendly, and allowing editors to publish their content easily as instant articles on Facebook as well. 

  2. Lightning

    Lightning enables the developers to create a great authoring experience. It delivers a powerful set of tools to your editorial team and site builders right out of the box and is best suited for the media and publishing websites. The distribution provides a lightweight framework, documentation and best practice examples for building working solutions in Drupal.

    Built using the top 4 modules to enhance the editing experience - Workflow, Media, Layout, and Preview - it has taken the advantage of D8 functionalities and is tightly coupled to make up the new standard for enterprise authoring. 

Government

  1. aGov

    aGov is a Drupal distribution built for government websites and was developed for the Australian Government. It incorporates the Digital Transformation Agency's UI Kit, helping you adhere to the Digital Service Standard.

    australian govenment website with blue banner and text written in blocks


    aGov is ideal for any federal, state or local government agency wanting to move their websites quickly and easily to Drupal whilst retaining full control of their codebase and choice of hosting provider.

    • WCAG 2.0 Level AA compliance, independently audited by Media Access Australia

    • Editor Workflows (Workbench Moderation)

    • Responsive design 

    • Example content - to get you started quickly

    • Common content types: News, Events, Publications, Blogs

    • WYSIWYG editor with media library
       

  2. deGov 

    After aGov, Drupal’s deGov is another Drupal 8 distribution focussing on the needs of (German) governmental organisations. One can build all levels of government websites (federal, regional, local) to publish information. With the base of Acquia Lightning, it extends the valuable functions to meet the use cases for different scenarios.
     

    six columns with text written on it


    It provides a service-oriented E-Government portal to close the gap between citizens and your administration with various citizen engagement portals to discuss. 

    Following are the features of deGov distributions:

    • Open311 portals for civic issue tracking

    • Open data portals to publish and create communities around data

    • Intranet/Extranet for government employees

Community

  1. OpenSocial

    OpenSocial is an online community and intranet solution for nonprofits and innovative companies. It is currently employed by customers like the United Nations, Greenpeace and hundreds of smaller organizations to connect with their employees, volunteers and other stakeholders.

    It is an out-of-the-box solution to build online community platforms. Providing with features such as notifications, timeline, events, follow, groups it can help personalise your news feed with the people you want to connect with.

Learning Management System

  1. Opigno LMS

    A full-fledged Learning Management System based on Drupal, Opigno is the quickest way to get started with the e-learning framework.

    It allows to:

    • Manage training paths organized in courses and lessons

    • Assess students with quizzes

    • Award certificates

    • Facilitate interactions with live meetings, forums, and chats

      SCORM (1.2 and 2004 v3) compliant, it integrates the innovative H5P technology, making possible to create rich interactive training contents.

  2. OpenLMS

    OpenLMS is an interactive LMS to make learning a fun and easier process. It provides various kinds of the content type such as written content, video lectures, quiz, calendar, and documents to be used as course material for students/users.

    Modules such as webform are part of its core. It also provides interactive content powered by H5P which can be added to a course.

    Read about the top Drupal e-learning modules.

Headless Architecture

  1. Contenta

    Contenta helps you make the headless transition smooth.  Contenta (and Drupal in the backend) has the capacity to control behind-the-scenes systems for languages like Python, PHP, Java React, Vue and Ember. 

    Powerful and complex, Contenta is API-First.

    It optionally installs all the content types and dummy content necessary to build an application.  

OpenSense Labs has sound experience in building new pillars for organizations. We would love to hear your requirements, drop a mail at [email protected].

Dec 11 2018
Dec 11

If you are looking to build your website on Drupal in 2019 but don’t know where to start from, you need to know more about the Distributions. 

Here’s a list of top Drupal 8 distributions you could use in 2019. 

eight logos on a white background


The Basics. What are Drupal Distributions? 

Distributions are full copies of Drupal that include core, in addition to themes, modules, libraries, and installation profiles. For a layman’s understanding distributions are a website (dummy) copy for an industry with an explicit requirement for that niche. 

“A Drupal distribution packages a set of contributed and custom modules together with Drupal core to optimize Drupal for a specific use case or industry”

Accordingly, there are Distributions for Media and Publishing, Government,  E-commerce, Education, Travel among others. 

There are two types of Drupal distributions:

  1. Full-featured distributions: complete solutions for specialized use cases (as discussed above).
  2. Other distributions as the starting points for developers and site builders.

Why Bother Yourself with Distributions?

  1. Out-of-the-box Additional Features: Remember “...Distributions are a package of the core, modules, themes”? Well, this means zero time searching for the Drupal modules and other required features, you don’t need to work extra to set up your website. You get all the required features according to your requirement in your distribution. 
     
  2. Easy set up of the website: Since you don’t need to look for additional features, it saves your time to set up your website. Launching your website now means setting up the distribution and getting a preconfigured site in a single download!
     
  3. Less Maintenance: Downloading a host of modules and features means more maintenance and more security. With distributions, you get the whole website ecosystem into one, maintenance is not an issue since everything will be updated in a single update. 

Drupal Distributions for your Website

Drupal Starter Kit

  1. Varbase 

    Varbase is an enhanced Drupal distribution packed with adaptive functionalities and essential modules, that can speed up your development process, and provides you with standardized configurations, making your life easier.

    The essence of Varbase lies within the basic concept of DRY (Don’t Repeat Yourself). It is probably the best starter distribution because it can help relieve you from repeating all the modules, features, configurations that are included in a Drupal project.

  2. Panopoly

    six white boxes arranged in a square in black background Panopoly is another powerful base distribution. At its roots lies the power of Chaos Tools and Panels magic. Designed to be both a general foundation for site building and a base framework upon which one can build other distributions, Panopoly provides search, widgets, responsiveness at its core. 

  3. Presto! - Drupal 8 Starter Kit

    Claiming to save the development time by up to 20%, Presto! is a Drupal 8 Starter Kit with more than a few tricks up its sleeve!

    With intelligent content editing functionality, configuration defaults, and optional eCommerce integration, Presto is ready to use right out-of-the-box. Other functionalities include - 

    • An Article content type with some pre-configured fields

    • A couple of pre-configured user roles: Administrator & Editor

    • The ability to share nodes on social media

    • Pathauto for automatical URL aliasing

    • A Basic Page content type with a Paragraphs-based body field

    • Some pre-configured Paragraph types:

      1. Textbox

      2. Image

      3. Promo bar

      4. Divider

      5. Carousel

      6. Block (allows the embedding of Drupal block

Media and Publishing

  1. Thunder 

    The distribution for professional publishing, Thunder functionalities are publisher-centric. At its core, it has the Paragraphs module, media entity module, and various SEO features to keep it working. As a free and open-source technology, it is cost-effective, knocks down developmental efforts and isn't time-consuming.
     

    top 3 reason why thunder is popular

    Easy to install, deploy and add new functionality, Thunder is SEO friendly, responsive, Google AMP friendly, and allowing editors to publish their content easily as instant articles on Facebook as well. 

  2. Lightning

    Lightning enables the developers to create a great authoring experience. It delivers a powerful set of tools to your editorial team and site builders right out of the box and is best suited for the media and publishing websites. The distribution provides a lightweight framework, documentation and best practice examples for building working solutions in Drupal.

    Built using the top 4 modules to enhance the editing experience - Workflow, Media, Layout, and Preview - it has taken the advantage of D8 functionalities and is tightly coupled to make up the new standard for enterprise authoring. 

Government

  1. aGov

    aGov is a Drupal distribution built for government websites and was developed for the Australian Government. It incorporates the Digital Transformation Agency's UI Kit, helping you adhere to the Digital Service Standard.

    australian govenment website with blue banner and text written in blocks


    aGov is ideal for any federal, state or local government agency wanting to move their websites quickly and easily to Drupal whilst retaining full control of their codebase and choice of hosting provider.

    • WCAG 2.0 Level AA compliance, independently audited by Media Access Australia

    • Editor Workflows (Workbench Moderation)

    • Responsive design 

    • Example content - to get you started quickly

    • Common content types: News, Events, Publications, Blogs

    • WYSIWYG editor with media library
       

  2. deGov 

    After aGov, Drupal’s deGov is another Drupal 8 distribution focussing on the needs of (German) governmental organisations. One can build all levels of government websites (federal, regional, local) to publish information. With the base of Acquia Lightning, it extends the valuable functions to meet the use cases for different scenarios.
     

    six columns with text written on it


    It provides a service-oriented E-Government portal to close the gap between citizens and your administration with various citizen engagement portals to discuss. 

    Following are the features of deGov distributions:

    • Open311 portals for civic issue tracking

    • Open data portals to publish and create communities around data

    • Intranet/Extranet for government employees

Community

  1. OpenSocial

    OpenSocial is an online community and intranet solution for nonprofits and innovative companies. It is currently employed by customers like the United Nations, Greenpeace and hundreds of smaller organizations to connect with their employees, volunteers and other stakeholders.

    It is an out-of-the-box solution to build online community platforms. Providing with features such as notifications, timeline, events, follow, groups it can help personalise your news feed with the people you want to connect with.

Learning Management System

  1. Opigno LMS

    A full-fledged Learning Management System based on Drupal, Opigno is the quickest way to get started with the e-learning framework.

    It allows to:

    • Manage training paths organized in courses and lessons

    • Assess students with quizzes

    • Award certificates

    • Facilitate interactions with live meetings, forums, and chats

      SCORM (1.2 and 2004 v3) compliant, it integrates the innovative H5P technology, making possible to create rich interactive training contents.

  2. OpenLMS

    OpenLMS is an interactive LMS to make learning a fun and easier process. It provides various kinds of the content type such as written content, video lectures, quiz, calendar, and documents to be used as course material for students/users.

    Modules such as webform are part of its core. It also provides interactive content powered by H5P which can be added to a course.

    Read about the top Drupal e-learning modules.

Headless Architecture

  1. Contenta

    Contenta helps you make the headless transition smooth.  Contenta (and Drupal in the backend) has the capacity to control behind-the-scenes systems for languages like Python, PHP, Java React, Vue and Ember. 

    Powerful and complex, Contenta is API-First.

    It optionally installs all the content types and dummy content necessary to build an application.  

OpenSense Labs has sound experience in building new pillars for organizations. We would love to hear your requirements, drop a mail at [email protected].

Dec 10 2018
Dec 10

Global leading enterprises, brands, governments, and universities are experiencing the power of Drupal to engage with their audience through their websites and beyond. In a quest to lead the digital transformation experience, Drupal helps them manage and deliver a host of content across channels and devices. 

Worldwide, the organizations are looking for a solution that will support their active community, growing businesses, and user experience. With technological innovations speeding up, be careful when you are choosing the CMS for your enterprise. 

Enterprises’ demands, stakeholders’ demands, future requirements - choosing the right technology is a tough call. However, more and more organizations are leveraging Drupal for enterprise website development. 

Fulfilling the business requirements as well as meeting the technical aspects, Drupal is used 7 times the number of top sites as its next two competitors combined (BuiltWith.com)

a man holding the rely for the race on ground ready to run


What is the Market Demand Like?

In one of its reports, Statista predicts the size of the enterprise content management (ECM) market worldwide to reach $67 billion by 2022.

a bargraph with blue bars

The possible spike in the graph is likely due to digital transformation which has become a key strategy for every organization. In order to make the most of the data and information the focus is moving from managing content to using content to support process productivity with simple intuitive backend technology. 

In this scenario, the information control and governance features of Enterprise Content Management move to the background, and content presentation comes to the fore. 

Reliable, scalable, secure, flexible, presentation-friendly, future-proof to sustain the content without hampering the performance of your website. Can Drupal manage the unending list of demands? 

Drupal is Fostering Billion Dollar Businesses…

Drupal can manage, in fact, it is very well doing in that matter. Fostering billion dollar businesses under the aegis of its brand. The list includes names like Tesla Motors, The Economist, Puma, Pfizer, Timex, LO’real, Honda, Johnson and Johnson, and a million others. 

Drupal 8 rightly taps into the concentrated innovation from its open source community. 

Taking advantage from its open source community, Drupal derives the most value by being flexible while keeping its core robust without compromising on security providing with new capabilities for successful digital experiences.

Acknowledging that enterprise solutions often demand complex requirements, Drupal has it sorted for you.

5 Unconventional Reasons to Choose Drupal For Your Enterprise

With Drupal, you can build a powerful website that’s optimized for every device, personalized for every visitor, and integrates with all your marketing tools.

Here are some of the solid reasons which make Drupal an excellent candidate for the enterprise of any scale or vertical.

With the new technological developments, Drupal meets these unconventional market demands just right. 

  1. Content Presentation with a Headless Architecture
    Customer experience is the new standard to measure the success of your online business, so much so that even the commerce is going headless. Supporting a headless architecture, Drupal can integrate frontend technologies like React and Angular to give a new dimension to the digital experience. Today, headless is destined to take user experience to a whole new level where the experience itself can be merchandised.
     
  2. Balancing the Hardware-Software Relationship
    With changing demands, enterprises are entering new ways to distribute the content. The dramatic increase in smartphone usage and portable devices have triggered the emergence of stand-alone software apps. This requires an easy integration matrix between hardware devices (say an Apple Watch) and a data management system (software) to present the content in the desired format. This is especially important as a medical device CMS
     
  3. Personalization with Machine Learning and Predictive UX
    Bringing together advanced analytic capabilities, data mining, real-time scoring, and machine learning enterprises are trying to discover patterns in data and forecast events to offer the best digital user experience. In fact, 65% of customers are more likely to shop at a store or online business that sent relevant and personalized promotions.

    For enterprises, machine learning has the ability to scale across a broad range of businesses. 

    Acquia Lift Connector, a Drupal module, offers integration with the Acquia Lift service and an improved user experience for web personalisation, testing and targeting directly on the front end of your website.

    It leverages machine learning to automatically recommend content based on what a user is currently looking at or has looked in the past. It has the feature of real-time adaptive targeting that refines segments while A/B helps in keeping the users engrossed with the content that resonates.

  4. Chatbots to Drive the Business Value
    Providing a conversational UI that communicate with the users and is vital for an organization, you can't afford to miss Chatbots in your website. Understanding what users want to know, pass on the information to the backend, and provide them with quick and better responses. Chatbot API, in Drupal helps integrate chatbots with your website. 

  5. Exploring Markets with AR and VR
    Drupal leads by an example when it comes to innovating with technologies outside of its periphery. By the year 2022, the market size of Virtual Reality and Augmented Reality is forecasted to increase by humungous levels as can be seen in the graph below.

    a bargraph with grey graphsSource: Statista


    Several examples of VR applications built on top of Drupal 8 have been presented in the community. One of the famous examples of VR built on Drupal is the 'The Drupal site of Massachusetts State University' (a fictional university).

    [embedded content]


    Augmented Reality has a lot to offer to different industries, with transportation, sports, education, and healthcare reaping the most benefits out of it. More recently with Google adding AR to its maps for a street view mode.

    [embedded content]

The Conventional Reasons to Opt for Drupal 

  1. It is Easy To Build

    With Drupal 8.6 “quick-start” command, launching a Drupal site is easy in one command using only one dependency, PHP. Setting up a demo website no longer requires you to have setup a web server, a database, containers, or anything else.

    A fully functional Drupal demo application can be downloaded and installed in less than two minutes. 

    Providing easy-to-set-up solutions with distribution, the development time is cut by half. 

    Enabling companies to deploy core features and functionality rapidly, it allows easier customization as per their business requirements. It is easier to choose the layout and themes for your Drupal website, as themes and appearances are just a click away. With features simplified to make non-developers comfortable around Drupal, the editorial capabilities have been made fluent and easy.

  2. Drupal is Secure

    Used by hundreds and thousands of websites, Drupal’s core, codes, and passwords are repeatedly encrypted and hashed to strengthen the life of your website.

    Drupal security animation Supported by experts, and a large and continuously growing community, it has a dedicated security team to patch any probable security violation.

    Frequent Updates

    In case of any security update, the community ensures that you get notified the day patches are released. Security release windows are released every Wednesday for contributed projects, and the third Wednesday of every month for core, usually, for a fixed period of time.

    Even though the release window does not necessarily mean that a release will actually be rolled out on that date, it exists for the site administrators to know in advance the days they should look out for a possible security release.

    Security Modules

    In addition to the proven security of core, numerous contributed modules can strengthen the security of your website. These modules extend the security by adding password complexity, login, and session controls, increasing cryptographic strength, and improving Drupal' logging and auditing functions. Additional security modules like security kit, captcha, paranoia, Drupal Security Review can be used as a checklist to test and check for many of the easy-to-make mistakes making your site vulnerable.  

    Security Team and Working Group

    The security team works closely with the Drupal Security Working Group (SecWG), comprising dozens of experts from around the world to validate and respond to security issues, aim being - to ensure that core and contributed project system provides world-class security and provide security practices to community developers.

    Its core is designed to prevent any possible security breach. Vulnerabilities in the core are coordinated with branch maintainers and individual project maintainers respectively.

    Drupal has proven to be a secure solution for enterprise needs and is used by top-tier enterprises.

  3. Drupal is Scalable and Flexible

    Another salient feature that makes it popular among businesses. When concerning web technology, enterprises require the ability to handle considerable traffic throughout - especially if it is a media and entertainment site.

    Drupal has stood both the test of time and traffic spike.

    Its ability to make the framework extensible via its modules and distributions is at the heart of much of its success. While it has enabled the core to sustain the bulk of the content, its way to streamline the demands of new industries by allowing them to address their needs in the form of custom modules and distributions has given it more satisfactory customer reviews. 

    One matter that addresses the worries of enterprises is the cost of maintenance. Many government and non-government organizations have migrated to Drupal to avoid the licensing and maintenance cost of the proprietary systems.  

  4. Excels at Faster and Responsive Development

    According to Google’s official statement, more than 50% of search queries globally now come from mobile devices. People want to be able to find answers as fast as possible and various studies have proved that people really do care about the loading speed.

    And that is why a recent Google release says that page speed will be a ranking factor for mobile searches from July 2018. It’s high time that you take the combination of performance and mobile responsiveness as a serious factor for improving visibility and revenue from the web. It is very important to have an AMP friendly website. 

    Drupal 8 is built for a mobile-first world. Everything in version 8 supports mobile responsive design. Its admin and default designs are responsive for both developers and content authors providing a responsive front-end theming framework.

    Increasing the loading speed of your web page opens numerous doors for business. And when users can view your Drupal website the same way on a desktop and mobile devices you cannot be having second thoughts.

    Mobile responsiveness helps you deliver the optimal mobile visitor experience. It supports the best responsive design practices and ensures that your users get a coherent experience anytime and every time.  

  5. Supports Multi-site Functionalities

    Given that your organization is running more than one site, the maintenance and management would require big bucks and time. But with the multi-site feature you can share one single Drupal installation (which includes core code, contributed modules, and themes) among other several sites.

    Enterprises, this way, can handle complex requirements from a single Drupal installation which implies that less time and resources are required to build your network of websites.

    One can manage any number of sites across their organization or brand, crossing geographies and campaigns from a single platform that allows swift and uncomplicated site creation and deployment.

    This is particularly useful for managing the core code since each upgrade only needs to be done once. While each site will have its own database and configuration settings to manage their own content, the sites would be sharing one code base and web document root.

    The multisite feature can be used for sites with the same features and functionalities. But if you have different functionalities it is better to test each site independently.

Drupal For Every Enterprise

Realizing the needs of every industry is different, Drupal has something for everyone.

Media and entertainment

Editing and Scalability

The Warner Brothers logoMedia and entertainment websites worldwide use Drupal for their online platforms for seamless editing and scalability. The list of over one million organizations includes The Economist, ET Online, MTV(UK), The Grammy, The Emmy, The Weather.com, The Beatles, and Warner Bros Music.

Scalability is all about quantity - how many requests and amount of information you can handle at any given time without breaking or bending. Supporting some of the world’s most visited sites, Drupal is the other name of scalability.

Allowing easy content editing and management, which media and entertainment websites look for, it provides it all with WYSIWYG and CKEditor without another weighty feature.

SaaS

Community solutions:

SaaS enterprises are using Drupal to build the platform for their product as well as a community to engage with the clients and followers. It is easy to develop the platforms and then keep on adding the features in the later phase.

Given that community platforms are one of the key needs of SaaS organizations which allow the domain for the prospects and help the product and community to grow alike, distributions like OpenSocial offer great help.

Zoho is one of the SaaS products using Drupal for its community platforms.

E-commerce

E-commerce functionalities

Providing easy payment gateway to conduct online transactions, Drupal ensures the customer information passes seamlessly and remains safe.

Its core commerce payment module and distributions (Drupal commerce and Commerce KickStart) support the payment API, for a smooth payment collection procedure, through the check out form.

Supporting Paypal Express Checkout and Paypal Credit along with Amazon Pay, it lets you reach a wider audience by letting your shoppers complete the payment and shipping information stored on their Amazon accounts.

Lush is a Drupal patron. 

Tour and travel

For a potential traveler, your site shouldn’t look like just-another-information-brochure on the web. The need for an end-to-end solution to integrate all the minute details (from hotel booking to landing back) has never been greater.  

Booking Engine:

Providing two of the best booking solutions for your website:

  • EasyBooking - Distribution
  • BAT - Module

A complete solution for your vacation portal, BAT allows you to build an exclusive booking engine for a better customer relationship management. And EasyBooking gives a set of options to your visitors to make room reservations, contact hotel administration, or just sign-up for the hotel’s newsletter to be aware of the special offers and discounts.

FMCG

Theming

A design which resonates with your brand, interests and engages with your visitors is what you should indulge your resources in developing.

It’s the psychological effect which drives the visitor to make a transaction or to explore provided possibilities throughout the interface. Every landing page matters.

Regardless of your showcased products, Drupal themes provide sound navigation throughout the categories and sections with in-built hero banners’ section and pop-ups which are definitely customizable.

Additional modules can be further used to build an industry-specific theme. In order to cope up with varied demands, it provides more than two thousand easy and free to use themes on the go.

WholeFoods is built on Drupal.

Government and Non-Government

Cost and Security:

In 2012 when the Georgian government shifted to Drupal, the first reason to dump its previous CMS (Vignette) was its rising maintenance costs. 

Running a total of 65 state websites on two different versions of this proprietary system proved to be costly in the long run

Another decisive factor for government websites, uncompromised security is why government organizations are opting for Drupal. Around 150 governments are already powered by it. Just like the Georgian government, costs have been a significant factor affecting the choice of government and non-government agencies.  

Higher Education

Distributions:

To quickly build your higher education website, distributions provide an easy opportunity to build the website halving the development time and providing quick features. Opigno and OpenEDU are two of the distributions used widely by the higher-ed websites.

Drupal is most widely used CMS in the education sector no wonder why top international universities like the Harvard, Brown, Yale, Pennsylvania, and Columbia rely on it.

Harvard and Oxford are built on Drupal. 

HealthCare and Life Sciences

Content and User access control:

It can conform to any workflow that can be programmed with just a few configurations available. You can identify different types of content such as text, images, comments, file attachments, and any other information on your website for easy content integration and management.

Pfizer, a leading pharma organization is built on Drupal. 

Drupal As an Enterprise Management System

The need for an intranet system cannot be emphasized enough. For your business to grow by leaps and bounds, it is necessary to establish clear communication within your organization.

As your business expands, the need for an intranet system which can help in storage and sharing of data increases. ECMS is different from the web content management system in the way that the former is specifically designed for enterprise websites and is more dynamic.

Drupal allows building ECMS in two ways, either by using its modules and features or with the third party configuration. Its integration capabilities help the website to serve as a central content management system integrated with other necessary advancements.

Drupal Is Easier To Manage

Drupal isn’t hard to use, but it can be hard to learn how to use. Even though it requires more technical experience it is capable of producing exceptionally advanced sites. There is a WYSIWYG editor and drag-and-drop functionality to ease out the process and help you start straight away.

The release of version 8 has made the platform easier to use even for non-developers(and it includes content authors). Managing your website is easy as the community platform provides you with necessary documentation and answers in case you get stuck.

Summary

Being one of the leading technologies in the market, Drupal gives your enterprise the features and flexibility to innovate as per your visitor behavior and preferences.

We’d love to hear your thoughts. To get in touch, drop a mail at [email protected] and let us know how we can enhance your statistics with Drupal.

Dec 09 2018
Dec 09

Customer experience was elevated to a new high when storefronts and shopping carts first burst onto the scene. Then, e-commerce created a different dimension in the world of shopping. In this age of shoppable everything, brands and retailers need to seize the moment of truth as consumers look for shiny objects of inspiration. Today, headless commerce is destined to take shopping experiences to a whole new level where the experience itself can be merchandised.

A black and white image of a man wearing a shirt with flower designs and his face blurred by smoke


Headless commerce is here to get the consumer’s attention and get the deal done. Drupal Commerce allows you to implement headless commerce and helps in monetising the moment of heightened emotion as most of the time, the inspiration, which is potent at the moment, diminishes to a fleeting whim.

Headless Commerce: Explained

When the frontend of your shopping experience is decoupled from the backend, that is, the presentation is segregated from the commerce stack, it is referred to as headless commerce architecture.

In headless commerce, the frontend of your shopping experience is decoupled from the backend.

Such an architecture supports an e-commerce platform without ‘head’ - front-end presentation layer - permitting additional flexibility, customisation, enhanced shopping experiences and creative freedom.

In a headless commerce, you do not have to worry about interfering with the back-end commerce setup. Marketers and merchants can experiment and make alterations to the front-end with agility.

Flowchart with a box, desktop icon, and smartphone icon showing the workflow of headless commerceSource: Snipcart

Headless commerce vs Traditional commerce

Following are the two key differences:

Source: Snipcart


Presentation layer

In a traditional commerce, design constraints are observed as alterations would require you to invest an awful lot of time in editing the database, code, and the frontend platform.

In contrast, frontend developers do not have to be concerned about modifying databases in the backend and can create a unique user experience that adheres to their business requirements with just a simple API call. With no presentation layer, everything from product pages to the landing pages has to be built from the scratch in headless commerce.

More room for customisation

In traditional commerce, developers have to edit several layers of coding even for a single customisation starting from front-end to the database layer that is dwelling in the back-end.

Headless commerce offers more room for customisation and personalisation.

Headless commerce offers more room for customisation and personalisation. It gives you complete authority over the look and feel of your digital commerce platform.

Benefits of headless commerce

Following are some of the major benefits from different perspectives:

Magnificent shopping experience

It gives a magnificent shopping experience to developers, merchants, and consumers. For instance, adding a new field to a customer account, implementing a custom checkout flow, adding ratings and reviews to the shopping experience and many others can be performed without redeploying the digital commerce platform.

With less duplication of functionality, it offers a better experience to the merchants while administering the shop. At the same time, end-users or consumers get content-rich experiences.

Leveraging portable backends

There is no dependency on large, restricting infrastructures which lets you stay competitive with your front-end without getting bogged down by coupled solutions.

Choosing best front-end tools

Whether it is a web application, mobile application or Internet of Things, headless commerce lets you select the best front-end tools for every platform or device.

Utilising JAMstack

Headless commerce allows you to build using JAMstack which faster, safer and cost-effective thereby providing a creative and strategic development experience

Headless commerce with Drupal

Drupal Community, with its commitment towards making Drupal more better, is continuously working on decoupling Drupal Commerce and the result is incredible.

Drupal Camp Ashville 2018

A session held at Drupal Camp Ashville 2018 delineated the development of the Commerce Demo project. It talked about the out-of-the-box capabilities of the demo store and an ecosystem update constituting the roadmap for decoupled Drupal Commerce. The demo store is available online

[embedded content]


The Commerce Demo project was built to create a product catalogue that can be easily removed without hampering the configuration of the site. The design involved modern shopping cart interaction paradigms. It required simple Views and Form API based solutions.

As a result, the design resulted in building a standalone Commerce Cart API module. This can be leveraged by anyone to develop a custom shopping cart widget and Commerce Cart Flyout which is the reference implementation for demonstrating how decoupling Drupal Commerce would look like. 

The design resulted in the development of a standalone Commerce Cart API module that anyone can use to develop a custom shopping cart widget and Commerce Cart Flyout. It showed a reference implementation that demonstrates what decoupling Drupal Commerce can look like.

Drupal Europe 2018

Another session held at Drupal Europe 2018 showed a Cart API for progressively decoupled cart experiences. It talked about how to decouple Drupal Commerce to enhance scalability and flexibility for the organisations. It demonstrated the works that were done for developing a standard Cart API to support progressively decoupled shopping carts in Drupal Commerce for Drupal 8. It was not without hurdles as the core RESTful Web Services were reviewed and involved contributions in JSON API projects.

[embedded content]


The new Commerce Cart API project and the reference implementation in Commerce Cart Flyout demonstrated the end result showing a potential of creating a unique user experience. With this, Drupal Commerce can offer great shopping experiences that are on par with leading e-commerce software platforms. This would, in turn, make it simpler for Drupal agencies to sell Drupal Commerce to the customers.

Conclusion

Enterprises encounter increasing pressure to offer innovative customer experiences, An API-based headless architecture provides increased flexibility with its decoupled user interface (UI) approach. Technical professionals responsible for digital commerce can utilise Drupal Commerce for delivering fantastic shopping experiences.

We have been committed to providing a great digital experience with our expertise in Drupal Development.

Contact us at [email protected] to implement headless commerce for your enterprise.

Dec 09 2018
Dec 09

As Leicester City fans continued to rejoice at their team’s unlikely triumph in the 2016 edition of English Premier League to become the champions for the very first time, some people were contemplating how the underdogs managed to beat such high odds. The way a team envisages itself performing is just as important as the physical strength of the players. And in this age of digitisation, imagining themselves performing well in the digital space is immensely significant. This is where Drupal comes in.

Three Leicester City players wearing blue coloured outfit running on the football ground


Be it a football club, a tennis open or a cricket world cup, any popular sports team and the tournament would want to be an instant hit among the sports lovers around the globe and build on it to create a unique brand identity. As one of the leading content management systems, Drupal can help a sports brand establish themselves as an important entity in the digital arena with a unique and powerful website.

Benefits of Drupal

Drupal powers websites of biggest of the sports brands like National Basketball Association, PGA Tour, Major League Soccer, Sevilla Fútbol Club, Kentucky Derby, New England Patriots among others.

Drupal powers websites of biggest of the sports brands

Why do such great names choose Drupal? You have the reasons stated below:

Phenomenal Features

Drupal offers a large number of open source modules, themes and distributions to help build a sports-centric website with robust features.

For instance, Sports League module helps govern content that is typically used for a sports club. It can help manage multi-competition editions and their standings. It can handle rosters, automatic statistics on players and teams and the match moments.

If you need a lightweight Drupal theme for a sports-related website, Drupal 8 Premier League Theme is a great fit. It has features like slider functionality, colour switcher functionality, social media integration among others.

For a complete starter pack, there is a Drupal distribution called Sportsleague that comes with superb features to help build a sports-related website with its robust features for managing content, user accounts, image uploading, and search.

Security

Among the leading open source CMSs, Drupal has made great inroads for being one of the most secure frameworks and has reported least vulnerabilities among the leading players in the industry. Drupal Security Team actively validates and responds to security issues to it the best security-focussed CMS.

Scalability

Drupal can scale with your needs and help you handle busiest of the days by effectively coping with an enormous amount of traffic.

Drupal can scale with your needs

Multilingual

Drupal 8 has in-built support for language handling in the form of core modules and lets you deliver localised digital experiences.

Mobile-responsive

In this age of mobile devices, Drupal enables the development of responsive sites and web applications that would let you interact with your consumers on-the-go.

Speed

Drupal’s flexible platform ensure the continuous delivery of the web development project and run an agile team. Moreover, Drupal is awesome for implementing performance optimisation techniques and build a high performing website.

Third-party integration

To get the best out of the tools that are outside the periphery of Drupal, you can integrate a variety of marketing technologies and business applications.

Content Workflow

Drupal has terrific tools for making it a loveable CMS for the content authors while creating and publishing content on the site. Its preview feature delineates how your content will look across various devices. Also, the authentication and permissions bring in improvement in the editorial workflow.

A box containing text with a heading and a paragraph describing Drupal's capability in building a great sports website


 

Homepage of NBA with an image of three players wearing blue-yellow, blue-orange, and red-white coloured outfits


Content architecture

You can create the right content architecture and exhibit appropriate content for each context with the help of stupendous display mode tools, Views and a wide range of media types.

Content-as-a-service

Drupal’s content as a service approach allows the front-end developers to build engaging customer experiences with Drupal’s presentation neutral content and RESTful API by utilising tools like Angular, Ember, Backbone and so on.

Multisite

It helps you in governing multisite setup across your enterprise brands, geographies and promotional campaigns on a centralised platform.

Drupal helps you build a solution that adheres to your business requirements

Business-driven

Drupal helps you build a solution that adheres to your business requirements. It does things as your business demands.

Perfect tech stack

Drupal dwells on a modern LAMP technology stack that constitutes Linux, Apache, MySQL, and PHP. This allows Drupal to fulfill the needs of fast-moving, flexible and agile organisations who are in pursuit of creating ambitious digital experiences and help them build next-generation digital platforms.

Large community

One of the most beautiful things about Drupal is its huge community presence as thousands of organisations create solutions with Drupal and in the process build Drupal itself.

Case studies

Travelling along the process of building an actual sports website with Drupal would throw the light on how it powers a sports brand. To do so, let us look at the development of two of the massive names in the sports viz. Major League Soccer and Sevilla FC.

Development of Major League Soccer

Homepage of Major League Soccer with 6 different images showing players playing football and jam-packed football stadium


Major League Soccer (MLS) is a professional soccer league that primarily represents top-notch talent from both United States and Canada. It took help from a digital agency to migrate each team’s site to the Drupal platform.

Drupal proved a remarkable solution to improve the fan experience which was the top-of-the-line requirement. While the site maintainers of the each of the sites could easily configure their team’s instance, custom, rich multimedia platform allowed viewers to enjoy games in real-time from any device. Moreover, switching to a multisite setup cut their deployed footprint.

The Drupal platform integrated with the majority of MLS properties comprising of the league’s videos and stats. Furthermore, the integration of Doubleclick for Publishers Drupal module optimised the placement of ads and attract visitors with vibrant advertising media. Also, Drupal allowed faster editorial capabilities and strong customisations.

Thus, Drupal helped build a stable infrastructure for MLS and reduced severity of alerts.

Development of Sevilla FC

Homepage of Sevilla Football Club with two images of a man speaking before the press and some people posing for a photo in front of a statue


Sevilla FC was established in 1890 and is one of the oldest football teams in the history of Spain’s football history. A digital agency used Drupal 8 to help them improve their online brand spectacularly.

Drupal 8 helped in incorporating multisite architecture to build the main website and several satellite sites. The Club was also able to edit and publish most of the app content from a sole entry point.

Most importantly, the multilingual capability was enabled easily with Drupal 8. Drupal’s open source security was also an important reason for considering Drupal for the redressal of the website. Drupal has also resulted in a better website performance, enriching user experience, lower maintenance costs, and improved hardware consumption.

Hence, Drupal helped in increasing monthly user acquisition and the global audience in addition to stability and high availability of the website.

Conclusion

The mantra of Go Play And Get Fit is something we hear from our peers all our life. And we also hear that mental strength and physical strength go hand-in-hand. That is absolutely true. It also applies to a sports-based website albeit in a different manner so that it can be ‘fit’ enough to provide great digital experiences and grow as a brand. Drupal powers innovation and can be a marvellous CMS for building a sports-related website.

We can assist you in growing as a sports brand with our suite of services.

Contact us at [email protected] to power your sports brand with Drupal.

Dec 07 2018
Dec 07

In this blog, we will talk about the best practices which will help you enhance your user experience from good to better and how Drupal 8 can be a game changer in this quest. 

Often we have heard how Drupal is not for beginners. While setting up a Drupal website has become a lot easier with Drupal 8.6, a good website is not just about setting up some web pages under a single domain name. 

Google processes over 3.5 billion searches per day. A stale site, which is not usable or loads very slow and you risk leaving your potential customers frustrated and reflects poorly on your business. While maintenance should never be out of the plan, investing in some good practices can result in the longevity of your website and business alike.  

a man pointing finger on the screen in english clothes


Here are some of the best Drupal web development practices to ensure your website is as much providing a great user experience as it helps you rank your content on Google page 1. 

8 Best Drupal Practices

Creativity isn’t alone when it comes to considering, there are many other factors which can influence your reputation in the online market. 

Drupal’s Architecture

A healthy architecture will not only ensure the demands of different stakeholders is met, but also that the site remains robust for future initiatives as well. 

Make your architecture robust. 

On a basic level, your content structures must include all the fields and content types. A clean content architecture not only helps ensure good performance but a great user experience, and easier maintenance too. 

Although a well-maintained website is critical, you can’t do much if the base is full of errors. 

Less is always more. 

In your development plan choose limited content types and fields so as not to confuse your content creators. Drupal is a powerful tool for displaying content in different formats, languages, and screens. 

Configuration plays an important role in architecture. 

In simple words, configuration is the collection of settings of how the default site functions for the admin as against the popular notion of the placement of content on the website. It includes site name, the content types and fields, taxonomy vocabularies, views and so on.

You can also check out this video by Pantheon on Drupal 8 architectural practices.

[embedded content]

Site configuration data in Drupal is consistent, everything from the list of enabled modules, content types, taxonomy vocabularies, fields, and views can be done easily. 

Your approach must be flexible. 

In the basic level, you must use a new entity type for different types of data. In case of similar data types, use bundles for a single entity type. However, for modules, they are designed to work with Nodes, and not other entity types. 

Using nodes is easy, as it allows to create a new content type through the admin interface without much coding against the case of creating entities which require coding. As a developer, your approach should be flexible. 

Bonus tip: Don’t make configuration changes on a live site without testing them locally.

Check the Codes

We all know how good coding helps improve quality and get better results. Basics should be to start with simple codes. Remember, it is always difficult to modify complicated codes in the future. Thus, you should keep your coding simple for the longer run.

Drupal coding standards are version-independent and "always-current". All new codes follow the current standards, regardless of (core) version. In case you want to update existing code for the current standards, always create separate and dedicated issues and patches instead of squeezing into unrelated patches.

Remember to use US English standards for spellings in your code, which means it will be "color" not "colour".

Here are the top 6 coding practices by Drupal.org:

  1. Use an indent of 2 spaces, with no tabs and the lines, should have no trailing whitespace at the end.
     
  2. All binary operators (operators that come between two values), such as +, -, =, !=, ==, >, etc. should have space before and after the operator, for readability.
     
  3. Control statements should have one space between the control keyword and opening parenthesis, to distinguish them from function calls. Control structures include - if, for, while, switch, etc.
     
  4. All lines of code should not be longer than 80 characters. Lines containing longer function names, function/class definitions, variable declarations, etc are allowed to exceed 80 characters. Conditions should not be wrapped into multiple lines.
     
  5. Arrays should be formatted using short array syntax with a space separating each element (after the comma).
     
  6. When unconditionally including a class file, use require_once(). When conditionally including a class file, use include_once(). In either case, it will ensure that class files are included only once.

You can use Coder for coding standards validation without loading Drupal. 

Infrastructure

Infrastructure covers the stack your website lives on, including the server, the database, and any software layers, such as Varnish or Memcached, which ensure your visitors have a snappy experience. Planning the infrastructure from the start and developing in the same environment can greatly reduce variables and risk at launch time.

Having reliable multiple environment configurations and a solid disaster recovery plan shouldn’t be left to last-minute decisions. When it is, mistakes start arising. Here are a few tips to avoid the most common errors.

Best Practice:

  • Size your stack correctly, not too large, not too small. This can ensure you’re economically prepared for anything.
     
  • Bottlenecks can arise from the hardware or from processes hogging memory.
     
  • Check logs for errors and prepare for growth and spikes. Your stack is only as fast as the slowest component. Focus your efforts there; you’ll probably find low hanging fruit.
     
  • In terms of security, it’s crucial to configure to protect from internal attacks as well as external attacks

Optimize the Frontend

The frontend is more than just theming. 

While the features and their functioning depends on the backend, the usability and aesthetics depend on how well the frontend is taken care of. 

Performance of the website is shouldered equally between both.

“..powerful, adaptable, accessible, clear, concise, natural.”

Quickly brushing up the basics, here’re the best Drupal frontend practices: 

  1. Define component elements (sub-objects) using their own classes. This is to avoid relying on markup structure and overly-generic class names, prefixing them with the component’s name followed by two underscores. 
     
  2. Thoroughly exercise and test your site and resolve any PHP errors that are displayed during theming development.
     
  3. Use a stable administrative theme during development.
     
  4. Use DRY CSS and group reusable CSS properties together. Name these groups logically. 
     
  5. Name components using design semantics. HTML elements already impart semantics on the content and machines cannot derive content-level semantics from class names.
     
  6. In order to reduce the load on the frontend performance of your website:
     
    • Minify JavaScript, CSS, and HTML
    • Aggregate JavaScript and CSS
    • Enable gzip compression
    • Use lazy loading for site assets
    • Keep Inline background images under ~4KB in size
    • Remove unused CSS
    • Use efficient CSS selectors
    • Download 3rd party scripts asynchronously
       
  7. Use SASS to keep your responsive design more organized

Test, Error. Repeat. QA is Important

It is very important to keep the quality of your website an utmost priority before you move on to other technical stuff. While this might feel like a lot of work for your lot to do, it can make an actual difference. A review by your peers (is a must) will help you get an additional idea of how things look and should work.

Successful regression testing gives you the much-needed confidence.

It is also very important that you keep an eye on previous things while adding new stuff. The testing framework PHP unit is inbuilt in Drupal 8. By setting up the testing environment, websites can be tested easily (as samples of test cases which have been written by the community are already available).

Drupal has a very active community support. With almost 1,00,000 active developers who write test cases (which are later merged into Drupal) and submit solutions. With this, you can say that Drupal is quick in providing you with solutions to your problems.

Aim for Google Page 1. Don’t Forget the SEO 

75% of users don’t even click past the first page! 

Starting with the search, it is very important that the user gets the best results in her first search. Now, as a user, you must have tried different keywords in an attempt to connect to the content of your website. Here comes the art (and science) of SEO. 
Drupal offers a suite of SEO modules. However merely deploying the modules isn’t enough, it is important to configure and enable them as well. 

The SEO best practices include: 

  1. Using Robots.txt, so the right pages and information is indexed. 
     
  2. Ability to customize page titles and metadata. Also, it should be capable of automatically populating these respective fields as per SEO norms and best practices. 
     
  3. Navigational drop-down menus are crucial internal link structures, silently contributing to search engine optimization. They establish relevancy and hierarchy across your website to help search engines index them in from the beginning of time. It should also provide easy customization of navigation menus.
     
  4. URL aliasing must be enabled with Pathauto as it ensures the search engine understands what the webpage implies. 

Security Practices

Security is a vast area of expertise and it is quickly changing with time. While the list of do’s and don'ts is extensive and exhaustive to keep up with the threats, vulnerabilities and mitigation strategies, here are the best Drupal security practices to follow in order to keep up the health and security of your website. 

  1. Keep your core updated: A key practice, keeping the core updated will always be the first when listing healthy security practices. Always look out for core updates (include the minor releases as well). In all of its advisories, the Drupal Security Team asks for updating the core version of the system. 
     
  2. Use additional security module: When covering security, there is nothing as better than equipping yourself with more and more. To keep the walls up high, you can use the additional security modules like security kit, captcha, and paranoia. Drupal Security Review can be used as a checklist to test and check for many of the easy-to-make mistakes making your site vulnerable.  
  3. But use only security team approved modules: Your site probably uses a number of contributed modules, although that’s not an issue. Using the stable and approved modules is where the key lies. This is especially worth noting for contrib modules which are more susceptible to vulnerability. 

    Always look out for the green batch when downloading a contrib module. Rest, as the advisory reads, Use it at your own risk! 

  4. Keep Up your Backup:  As an administrator, you have to be prepared for all uninvited events.

Drupal’s open-source basics give it a possibility that it is updated frequently with more and better security modules. 

Maintenance Practices

The life cycle of a website begins from initial plans and extends to the end of the site. The site exists in three different phases: development, deployment, and maintenance. After the site is launched, your website lifecycle practices become critical to the success of changing and maintaining your site.

  • Keep your code under version control.
  • Maintain separate environments for the different stages of the site, and keep them up to date.
  • Restrict access to the production site for all but the most trusted users.
  • Review all logs periodically, including Apache, Drupal, and MySQL.
  • Review and assess your architecture periodically, and plan for the future.

At OpenSense Labs, we understand how important your website is to you. Reach out to us at [email protected] to get a holistic view on how to enhance your user experience.

Dec 06 2018
Dec 06

If I say that in today’s booming social era, having a Facebook or Twitter account is not enough in terms of web presence for your music, you would agree, right?

We all know that having a website for the same purpose, not only delivers a professional impact on the audience but also eliminates the restrictions that these external sites would have. 

White background with Drupal logo wearing headphones.


For instance, you desire to put banners on your site to increase the song sales or wish to provide details about your latest concert to your fans - How do you do it?

Of course, it is only possible if you have your own music website. And there is no better option than Drupal for this task. 

If you are thinking that why specifically I am talking about Drupal then you need to know that Drupal is one of those CMSs which is flexible and consists of an excellent API framework that can accommodate almost all conceivable functionalities. 

Choosing Drupal for Your Music Website 

Yes, it is important to unite music composers i.e musicians and bands, with their fans and loved. The sole reason to trust Drupal for this task is only because:

It has responsive web designs 

There would be a variety of audience for your music website, using different devices. While switching from big screen to small screen, things change. Size of the image is modified, menu items become drop down, columns are pushed around the webpage that makes sense with content being the supreme leader. All of this is easily handled by Drupal.

Drupal 8 consist of responsive web designs that makes it “100% good to go” with all the devices.

Responsive Design is a strategy for optimizing the display of a website using CSS and javascript to respond to different device capabilities. 

Every musician wants that his work leads to more word of mouth referrals and that new fans are added to the list every day. A responsive website leads to a better user experience with them spending more time on your site. Moreover, responsive web designs would help the end users to access menu, links, buttons and fill out forms easily.  More users mean more traffic. According to statista, 52% of the web traffic is generated from mobile devices. 

52% means half of the internet traffic, making responsive websites an important aspect of the whole scenario.
Short description on Grammy Awards Website


Multisite Setup 

There are chances that you might be building a music website for a band. Which means that each member of the band would require an individual site. This is where Drupal is the best option for you. It provides you with the ability to run multiple sites from one single Drupal codebase. Each site has a separate database, however, the projects that are stored in modules, profiles and themes can be installed by all the sites. 

Warner Music Group (built on Drupal )is a great example of this. The website manages and creates the web and mobile sites for more than 300 artists and bands. It serves millions of yearly visitors, promotes news, music releases etc. 
 

Screenshot of the homepage of Warner Music Group with a mobile phone placed beside it.


ABC ( Aliases, Block and Content type)

Your fans need details to keep up with your band’s performance or music concerts. This can be done with the help of multiple addresses or aliases. Aliases provide an option to the end users to find a particular website easily. With modules like pathauto, metatag, redirect you can make your music website search engine friendly. 

  • Pathauto modules help in automatic generation of URL/path aliases for various kind of content without requiring the end user to manually describe the path alias. 
  • The Meta tags modules allow you to automatically provide structured metadata for a website. These meta tags help in improving the ranking and display of the site in search engine results.
  • Once your website has a lot of content, you may need to audit it. This would include merging and deleting of pages that are no longer in use, and for that, you need to create URLs redirects. The Redirect module lets you create and manage these URLs using a simple user interface. 

A block would essentially act like a container that would hold all the content, lists of content, images and can be placed anywhere on the page. For example: if you want the visitors to contact you regarding any collaboration or get information about the latest concerts then the additional field can be constructed with the help of block. 

A content type is the collection of data fields grouped together in a logical set to facilitate content entry and display. Drupal core is preconfigured with two content types which allow you to create and save multiple posts. For example: In your music website you might have a content type “concert” that would include individual fields to collect the data about dates, place, price etc. The concert content type could be used to create hundreds of individual concert records.   

Performance and Scalability

Loading time serves as a major role when it comes to the performance of the website. According to Google developers, 40% of the users abandon a website if it takes more than 3 seconds to load. Thus, making speed a huge factor for the strength of the website. 

When it comes to a music website, the factor contributes even more. The visitors of your website definitely need a fast and a swift platform that loads the website quickly, and Drupal by default is the best CMS for this task.  Drupal 8 can scale well to millions of users if it is optimized well. A poorly optimized website not only slows down a website but affects the performance as well. Thus to improve and keep up the site performance modules like Blazy and Google analytics are used. 

  • Blazy module is used to provide its end users with faster load time and helps in saving data usage when they are not browsing the whole page.
  • Google Analytics module is a type of web statistics that are used to track and monitor the traffic of a particular website. It comprehends on the links which are being tracked (downloads, outgoing and mailto) by the visitors which are there on your page.

Content Editing /Customizing and Managing 

The site has to be easy for you to manage. It is important that formatting of content and adding of images ( without seeing any spooky HTML codes) on your music website is simple and accessible. Drupal provides with modules that would allow you to edit your content the way you want. With drag and drop and WYSIWYG tool content authors/non-developers can create and design pages easily. With the evolution of the Drupal platform, new upcoming layout builder seems even more promising. 

Drupal upcoming layout builder which would be stabilized in Drupal 8.7, is unique in offering a single, powerful visual design tool with three use case:

  • Use case 1: Layouts for template contents 

For the sites that have a significant amount of content, it is important that similar content have the same type of appearance. For instance, you are selling songs from the same album. For your fans, it would provide a consistent experience when browsing the song list, making them easier to differentiate. For content authors, the templated approach means that they don’t have to think about the layout of each song. 

Drupal 8's new Layout Builder lets you to visually construct a layout template that will be utilized for each item of the same content type (e.g. a "songs layout" for the "song" content type). This is achievable only because the Layout Builder serves from Drupal's powerful "structured content" abilities.

  • Use case 2: Customizing the layouts  

Suppose you desire to put a video of your jam sessions on your website and later think of updating a band picture with the video, it may not make sense to add an optional “highlighted video” field with the band picture.

Drupal 8 Layout Builder offers the ability to customize templates layouts on a case per case basis. In the above example, Layout Builder would let a content creator rearrange the layout for just that one band picture and put the video directly below the image. 

  • Use case 3: Custom Pages 

It should be noted that not everything is templated and content authors often need to create a one-off page on “About us”. Drupal 8 Layout Builder can be used to create dynamic one-off custom pages. A content author can begin with a blank page, design a layout with the addition of blocks. 

Hosting

The Drupal-based website which is specially designed for Lady Gaga witnesses heavy traffic spike every day. The burst in the traffic has to be handled periodically. 
Web Hosting provides space that you can buy on a web server to store your website files. When you tend to buy website hosting you basically rent server space on a server where all your files are placed. 
Drupal provides you with many websites hosting options. Which are not only safe to use, but it handles your site traffic also.  Some of the most popular Drupal based web hostings are:

  • SiteGround
  • A2 Hosting
  • GreenGeeks
  • Pantheon

Strong Roadmap

With a variety of modules in Drupal 8, from enhanced media management to out-of-the-box experience, Drupal 8 is getting stronger with each update. It makes sure that the visitors on your website have a good user experience with no backward compatibility breaks.

With the release of Drupal 8.6, a large number of improvement has been foreseen for content authors, evaluators, site builders, and developers. 

For content authors, Drupal has added a support for “remote media type”. In other words, you can easily embed Youtube and other videos in your content. 

For evaluators, Drupal 8.6 brought about “out-of-the-box experience” that let them install and test drive Drupal in minutes. They can install with the help of a demo profile that showcases all the capabilities by presenting a beautiful website filled with content right out of the box. This makes it easy for an end user to download and install a fully functional Drupal demo application within minutes. 

For the developers, Drupal 8.6 has brought about an API first platform that involves an overview of REST improvements. 

Drupal 8.7 has promised to bring even more sophistication the Drupal family. It ensures its end users with:

  • Stabilized features that target content author.
  • Adding of JSON API (that did not make it to the release of Drupal 8.6) that would allow users to rapidly create and decouple the applications.
  • It would present with stable multilingual migrations
  • Would continually improve the evaluators' experience.
  • Iterate towards an entirely new and unique decoupled administrative experience. 

Variety of Modules for a Music Website

The best part about Drupal is that it provides its end users with a variety of modules that help them to build their website. Some of the modules which you can use for your music website might include:

  • AudioField 

AudioField module enables you to upload or link audio files and play them on your site using one or many audio players. It has the power to support many audio formats. Currently, the module supports the following audio formats:

  1. Default HTML5 audio player (which is built-in)
  2. Audio.js 
  3. jPlayer
  4. MediaElement 
  5. Projekktor
  6. SoundManager 
  7. wavesurfer.js 
  8. WordPress Audio 

AudioField also supports player libraries and comes with the basic HTML5 audio player.

HTML5 is a built-in HTML audio player and requires no additional libraries to be installed 

It also supports additional audio player libraries which requires installation before use. 

  • Audio Embedded Field

Audio Embedded Field module creates a simple field type that enables you to embed audio from SoundCloud and other custom URLs to a field with the integration of media entity module for Drupal 8. You only need to provide URL to the audio and the module creates an embedded audio player. 

(It should be noted that this module is not covered by the security advisor)

Go Beatles (Case study)

No doubt on the fact that the music of Beatles have created history and has been marked as “evergreen”. With such a wide fan base audience, the website was expected to be more engaging. It needed to promote new albums, merchandise, and events in a way that engaged fans.  

Drupal was chosen because of its flexibility and excellent API framework.  

Goals of the Project

  • It was a need for the site to be easy for content editors to manage.
  • It was expected that the new articles could be pushed to Facebook.
  • The existing users could easily migrate to the new site, along with their prior profile and comments.
  • The user experience must be truly responsive and engaging on all devices.
  • It was required that the content pages must be built from existing collections of text, quote, image, and audio.
  • With millions of fans, it was evident that the site experiences heavy traffic every day.
  • Thus it was important that the site was eligible to handle large surges of visitors and traffic spikes.

How Drupal Was Used?

In terms of presenting an engaging story, one of the creative inspirations of the whole project was “The Beatles Anthology Book”. The key idea was to provide story snippets, images audio clips, videos of the band that allowed an arrangement in a different order. Different content types with the field to accommodate image, audio, video, the text was created. All the snippet of information was tagged using taxonomies and tile width. The story node used Entity Reference, Entity Reference View Widget that allowed the editor to sort vast content and filter it as well. 

As regards to theme layer, Drupal highly contributed to the website. The whole website was responsive and demonstrated the actions that had to be done by the editors. The site also depicted that Drupal can cope up with heavy loads and traffic spikes with the help of CDN module that contributed highly to deliver image and file assets via Amazon CloudFront (which was the main concern). Optimized and bandwidth efficient images were also required to deliver a responsive website. Thus, usage of modules like pictures and breakpoint along with some heavyweight template.phpcustomization was done to achieve a perfect theme layer.

Another vital requirement of the site was to tie the site with Facebook for the whole purpose of logging in, registering, and commenting. This was done to promote visibility of the site. Drupal provided with several packages that allowed the website to integrate with Facebook at various levels. With modules like Facebook auto post, Facebook OAuth and Drupal for Facebook the integration was possible. Not only this but feeds and SQL parser module were also used to query the old database.

Thus, without the help of Drupal and its modules, it would have taken an incredible amount of time and money.
 

An image of the beatles band with Unites States Of Amercia's flag in the background


Conclusion 

Yes, it is important for an artist to have a website that is specifically dedicated to them. Without it, there are chances of you losing out on gigs, promos, press etc. Thus, contributing to your music career and talent, the need for a website is clear.

Drupal here emerges as a helping hand. The CMS would provide you with a collection of modules that contributes to the construction of your website. 

At OpenSense Labs we present you with services that not only enhance the performance of your website but we also help you in getting close to your dreams by embracing innovative technologies that can be implemented on Drupal framework. Contact us at [email protected] to know how you can build a Drupal-based music website. 

Dec 01 2018
Dec 01

Having a routine of reading newspaper early in the morning is an intricate tapestry. We need something more to continue with our engagement with a newspaper day after day as we aren’t vessels of information. And that elusive thing is not just the pleasure of words but an engrossing design. So, when the editors make the prose readable, graphic designers work on creating templates that help in sustaining our interest in the act of reading.

Three task sheets are drawn on a white surface with blue, indigo and green colours


Similarly, site builders and content authors require intuitive tools as well for developing pages, alter layouts and add or arrange blocks with live preview. Hence, when it comes to new and refreshing easy-to-use page builders, An ambitious visual design tool called Layout Builder is on its way to change things completely.

Layout Initiative: The inception

Layout Builder took its birth through Layout Initiative which was started with the objectives of:

  • Underlying APIs for supporting layout management to be utilised by core and contributed projects alike.
  • Offering a drag and drop interface for building layouts that can apply both to overall site sections and overridden on separate landing pages.
  • Allowing the layout application to data entry forms and content

Layouts have been a significant tool in component-based theming as they can be utilised to map data to component templates. In Drupal 8.3, the Layout API and the Layout Discovery module were included as an experimental subsystem. They were stabilised in Drupal 8.4.

Layout Builder is being planned to be stabilised in Drupal 8.7

The Layout API and the Layout Discovery module were added in Drupal 8.3 as an experimental subsystem, and they were stabilized in Drupal 8.4. An experimental Layout Builder module was included in Drupal 8.5 and is being planned to be stabilised in Drupal 8.7.

Layout Builder: A guile approach to site building

Layout Builder offers the ability to customise the layout of your content where you start by choosing predefined layouts for different sections of the page and then populate those layouts with one or more blocks. That is, it gives you a UI with a visual preview and supports using multiple layouts together. It lets you place blocks in layout regions and create layouts for separate pieces of content.

Layout Builder gives you a UI with a visual preview and supports using multiple layouts together.

[embedded content]


At present, there are some Drupal modules that can enable the functionality of Layout Builder. The combination of Panels and Panelizer can help in developing templated layouts and landing pages. Also, the Paragraphs module can be used for the creation of custom landing pages.

The greatness of the Layout Builder

Following are some of the reasons that show how great the Layout Builder is:

Drupal’s layout builder module in action with the images of a bunch of flowers on top and two puppies in a basket at the bottomSource: Dries Buytaert’s blog
  • To lay out all the instances of a specific content type, Layout Builder helps in creating layout templates.
  • Layout Builder allows you to customise these layout templates. You can override these layout templates on a case-by-case basis.
  • It can be utilised to create custom pages. You can create custom, one-off landing pages that are not linked to a content type or structured content.
  • The key to stabilise Layout Builder is to make sure that it passes Drupal’s accessibility gate (Level AA conformance with WCAG and ATAG). So, it will ensure web accessibility standards once stabilised in Drupal 8.7.
  • The Menu Item Extras module is used in Drupal 8 for implementing mega menus through additional fields. In Drupal 8.6, all you need to do for creating a mega menu is to enable Layout Builder for the default menu item view display mode.

How to work around with Layout Builder?

Follow the following steps to use the Layout Builder for configuring content types and nodes:

1. In the first step, you start by enabling the Layout Builder module.

Layout Builder drupal module interface with a checkboxSource: OSTraining

2. This is followed by content creation. This requires the installation of Devel module where you enable Devel and Devel generate parts of the plugin. This, then, helps in generating articles.

List of options with checkboxes and scrollable list boxes creating content while enabling layout builder drupal moduleSource: OSTraining

3. Then, the layout of the article content type is configured.

Edit layout option while enabling layout builder drupal module with a box containing instructions and save and cancel options above it.Source: OSTraining

4. Finally, the layout of a single node is configured.

Check box for layout option while configuring layout builder drupal moduleSource: OSTraining

Conclusion

There is no doubt that Drupal’s current site building and content authoring capabilities are great. But Layout Builder will transform the whole experience of creating pages with its simple and intuitive tools.

Opensense Labs has been offering a suite of services to help organisations lead their ambitious plans of digital transformation.

Contact us at [email protected] to dive into the world of Layout Builder and get the best out of it.

Nov 30 2018
Nov 30

Perhaps it is not very surprising that in an age of austerity and a climate of fear about child abuse, new technology is being sought by social workers for help. The Guardian, news media, revealed that local authorities in the UK have been using machine learning and predictive modelling to intervene before children were referred to social services. For instance, local councils are building ‘predictive analytics’ systems for leveraging cornucopia of data on hundreds of people for constructing computer models in an effort to predict child abuse and intervene before it can happen.

Sticky notes on a wall with one hand sticky note in focus reading “Run a usability test”


Power of predictive analytics can be extracted not only for social issues like child abuse but for a superabundance of areas in different industries. One such area is the web user experience where implementation of predictive analytics can be very essential. Predictive user experience (UX) can help usher in a plenitude of betterment. But how did predictive analytics came into being?

Destination 1689

Contemporary Analysis states that the history of predictive analytics takes us back to 1689. While the rise of predictive analytics has been attributed to technological advances like Hadoop and MapReduce, it has been in use for centuries.

One of the first applications of predictive analytics can be witnessed in the times when shipping and trade were prominent.

One of the first applications of predictive analytics can be witnessed in the times when shipping and trade were prominent. Lloyd’s of London, one of the first insurance and reinsurance markets, was a catalyst for the distribution of important information required for underwriting. And the name underwriting itself took birth from London insurance market. In exchange for a premium, bankers would accept the risk on a given sea voyage and write their names underneath the risk information that is written on one Lloyd’s slip developed for this purpose.

Lloyd’s coffee house was established in 1689 by Edward Lloyd. He was well-known among the sailors, merchants and ship owners as he shared reliable shipping news which helped in discussing deals including insurance.

Technological advancements in the 20th century and 21st century have given impetus to predictive analytics as can be seen through the following compilation by FICO.

Infographic showing a table with each column showing discoveries in the area of predictive analytics.Source: FICO

Predictive Analytics and User Experience: A Detailed Look

IBM states that predictive analytics brings together advanced analytics capabilities comprising of ad-hoc analysis, predictive modelling, data mining, text analytics, optimisation, real-time scoring and machine learning. Enterprises can utilise these tools in order to discover patterns in data and forecast events.

Predictive Analytics is a form of advanced analytics which examines data or content to answer the question “What is going to happen?” or more precisely, “What is likely to happen?”, and is characterized by techniques such as regression analysis, forecasting, multivariate statistics, pattern matching, predictive modelling, and forecasting. - Gartner

A statistical representation of data compiled by Statista delineates that predictive analytics is only going to grow and its market share will keep expanding in the coming years.

A Bar graph with blue-coloured vertical bars depicting statistics on market share of predictive analyticsPredictive analytics revenues/market size worldwide, from 2016 to 2022 (in billion U.S. dollars) | Statista

A Personalisation Pulse Check report from Accenture found that 65% of customers were more likely to shop at a store or online business that sent relevant and personalized promotions. So, instead of resulting in alterations to the user interface, applying a predictive analytics algorithm to UX design presents the users with relevant information. For instance, a user who has recently bought a costly mobile phone from an e-commerce site might be willing to buy a cover to protect it from dust and scratches. Hence, that user would receive a recommendation to purchase a cover. The e-commerce site might also recommend other accessories like headphones, memory cards or antivirus software.

How does Predictive Analytics Work?

Following are the capabilities of predictive analytics according to a compilation by IBM:

  • Statistical analysis and visualisation: It addresses the overall analytical process including planning, data collection, analysis, reporting and deployment.
  • Predictive modelling: It leverages the power of model-building, evaluation and automation capabilities.
  • Linear regression: Linear regression analysis helps in predicting the value of a variable on the basis of the value of another variable.
  • Logistic regression: It is also known as the logit model which is used for predictive analytics and modelling and is also utilised for application in machine learning.

Leveraging Predictive Models in UX Design

Data will drive the UX in the future. Patterns that derive data make for a terrific predictive engine. This helps in forecasting a user’s intent by compiling numerous predictors that together influence conversions.

Data will drive the UX in the future

With the help of predictive analytics in UX design, conversation rates can be improved. For instance, recommendation systems leverage data such as consumer interest and purchasing behaviour which is then applied via a predictive model for generating a listicle of recommended items. 

Amazon, e-commerce giant, utilises an item-item collaborative filtering algorithm for suggesting products. This helps in displaying the books to a bookworm and baby toys to a new mother. Quantum Interface, which is a startup in Austin Texas, has built a predictive user interface with the help of natural user interface (NUI) principles. This utilises the directional vectors - speed, time and angle change - for forecasting user’s intent.

Implementing Predictive UX with Drupal

Predictive UX adapts content based on a user’s previous choices just like web personalisation does. But predictive UX extracts the power of machine learning and statistical techniques for making informed decisions on the user’s behalf.

While modern technology is oscillating from mobile-first to AI-first, predictive UX is the next huge thing which is going to be a trend-setter. It is meritorious as it helps users reduce the cognitive load because coercing users to make too many decisions will propel them to take the easy way out.

Drupal provides different ways of implementing predictive UX:

Acquia Lift

A drop shaped icon and a rocket passing through it representing Acquia lift logo

Acquia Lift Connector, a Drupal module, offers integration with the Acquia Lift service and an improved user experience for web personalisation, testing and targeting directly on the front end of your website.

It leverages machine learning to automatically recommend content based on what a user is currently looking at or has looked in the past. It has a drag-and-drop feature for developing, previewing and launching personalisations and has a customer data repository for providing a single view of customers.

It has the feature of real-time adaptive targeting that refines segments while A/B helps in keeping the users engrossed with the content that resonates.

ApachePrediction IO

Bay Area Drupal Camp 2018 has a session where a demonstration showed how predictive UX helps users decide. It was geared towards both UX designers and developers. It talked about how machine learning powers predictive UX and the ways of implementing it using Drupal.
 

[embedded content]


It exhibited a Drupal 8 site which had a list of restaurants that could be sorted by proximity. That means you can check out the nearest restaurant and order food. When users log in to this site, they see top recommendations customised to them.

There are some interesting things happening behind-the-scenes to show the recommendations. An API query is being sent to the machine learning server which, in return, shows a ranked list of recommendations. So, when users go to a restaurant and order food, all that data is sent to the event server through the API which is how data is being collected. Here, the Apache PredictionIO server, which is an open source machine learning stack, offers simple commands to train and deploy engine.

Gazing into the future of UX

UX Collective says that the future of UX is effulgent in the coming years. Demand for pixel perfect, usable and delightful UX is sky-high especially when digital transformation endeavours underway globally. Following graphical representation shows the top design-driven organisations against all of Standard and Poor’s (S&P) index.

Graphical representation showing a yellow line and a red line to depict Standard and Poor’s indexSource: Job Trends Report: The Job Market for UX/UI Designers

It further states that UX design will consist of more formal studies:

  • Study of cognitive neuroscience and human behaviour
  • Study of ethics
  • Artificial Intelligence advances, generated and unsupervised machine learning-based system interactions, predictive UX, personalised robotic services and so on

Conclusion

User experience will always be an integral component of any sector in any industry. While web personalisation is a sure-shot way of improving digital web experience, disrupting technologies like machine learning take it to another level. Leveraging machine learning algorithms, predictive UX can forecast user choices and help them decide. Implementing predictive UX is a praiseworthy solution to offer users an unprecedented digital experience.

When it comes to Drupal development, OpenSense Labs has been making steadfast in its objectives of embracing innovative technologies that can be implemented with Drupal’s robust framework.

Contact us at [email protected] to implement predictive UX with Drupal.

Nov 28 2018
Nov 28

More than five centuries ago, Johannes Gutenberg introduced the mechanical movable type printing and set the stage for the Renaissance and Age of Enlightenment. Years later, digitisation has brought a volte-face in the thinking and has carved out new ways of sharing and governing the content. Gutenberg editor, which is named after Johannes Gutenberg, is one of a kind and is destined to streamline website creation and editing even for the average non-technical users with its cutting-edge features.

Black and white image of Johannes Gutenberg and written text in the background


Other platforms like Medium, Squarespace or Ghost provide a really unique and refreshing experience for writers. This led to the development of Gutenberg editor. It was introduced to the world by Matt Mullenweg, founder of WordPress, at WordCamp Europe in 2017. The idea behind this is to make the process of adding rich content to the site simple and enjoyable. So, how can Drupal and Gutenberg be combined?

What is Gutenberg?

Gutenberg editor allows you to govern website content in customisable chunks or blocks where you do not have to be adept with HTML or need to write shortcodes. The complete layout of the website can be controlled including both the front end and the back end from a single console.

Black and white image with the word ‘Gutenberg’ written in bold


By looking at the editor as more than a content field, Gutenberg allows you to revisit a layout that has not been touched for over a decade thereby enabling you to design a modern editing experience. Now, the question arises. Why does Gutenberg lets you look at the whole editing experience and not just the content field?

As the block unifies several interfaces, adding that on top of the existing interface would add intricacy as opposed to removing it. Revisiting the interface allows us to create a rich and modern experience while writing, editing and publishing and all the while keeping factors like usability and simplicity in mind. Singular block interface offers a clear path for the developers for the creation of blocks. By considering the whole interface puts the emphasis on full site customisation. Full editor screen not only entirely modernises the foundation but paves way for more fluid and JavaScript-powered future.

Gutenberg for Drupal

What’s the situation like in Drupal? Like Wordpress, Drupal is an open source content management system (CMS) and there is a never-ending debate on which one’s better (we have done our part as well). But providing a modern UI for rich content creation is a priceless feature which is what Wordpress has done by introducing Gutenberg editor. This decoupled React-based editing experience can work wonders for Drupal as well.

Difference between CKEditor and Gutenberg

Merging Drupal and Gutenberg is a killer combination as it allows us to empower content authors to develop rich landing pages inside a rock solid CMS framework. Before we jump into that, let’s see what the current mode of editing looks like in Drupal.

Admin interface of Drupal’s CKEditor module in action with an illustration showing a dumbbell, gym rope, pair of shoes, water bottle and a smartwatch kept on a smartphoneAdmin Interface of CKEditor module

The picture shown above is an example of the current text editor of Drupal which is CKEditor - WYSIWYG HTML editor. It is part of the Drupal 8 core modules and is magnificent to work around. It brings the stupendous WYSIWYG editing functions of known desktop editors like Microsoft Word to the web. It is super fast and does need any sort of installation on the client computer.

On the contrary, Gutenberg editor can make your words, pictures, and layout look as good on screen as they do in your visualisation. By leveraging blocks for the creation of all types of content, it removes inconsistent ways of customisation of Drupal and adheres to modern coding standards thereby aligning with open web initiatives. You can try it out yourself!

Table showing three columns and five rows for comparing Gutenberg editor and CKEditor


How does Gutenberg work?

In a session, held at Drupal Europe 2018, a demonstration showed how Gutenberg content editor would work with Drupal. Gutenberg module needs to be installed and enabled.

[embedded content]


Like the Drupal paradigm, all elements on a page are Gutenberg blocks. Blocks are basically the unifying evolution of what is now encompassed by shortcodes, embeds, meta-boxes, theme options, custom post types, post formats, and other formatting elements.

While Gutenberg comes with its own set of blocks, Drupal core has its own as well. That is, all the existing Drupal blocks are available in the Gutenberg UI and can be inserted into a page along with core blocks. In addition to this you can, of course, extend them or build your own. You can also access to Gutenberg Cloud library for more contributed blocks.

Gif showing the demo of Drupal Gutenberg with text on left-hand side and the settings on the right-hand sideA demo of Gutenberg

The block types that are working in the first release are:

  • Content positioning: Performing the positioning of content can be flexibly done as there is no separation between what’s inside the editor and what is before or after.
  • Font: It has an awesome font colour and size adjustment mechanism. The UI for altering fonts and colours is eye-catching.
  • Searchable blocks: In addition to having a search box at the top left, page blocks are accessible inline with the help of “/”.
  • Embedding: Whether you need to embed social posts or videos, just paste the URL. You will see it expanding by itself.
  • Layout: As the blocks can have child blocks, handling layout is simple. You can split your blocks into columns on a grid.

Conclusion

It is so wonderful to think that Drupal is the best way to get your ideas on the web (Of course it is!). But if you know how to write code, then you can unlock a world of beautiful features that Drupal can offer. Not everyone is adept with code. With Gutenberg editor, you don’t need to.

Gutenberg’s content blocks would metamorphose how users, developers, and hosts communicate with Drupal to make developing rich web content simpler and more intuitive. Thus, it democratises publishing and can work for everyone no matter what their technical proficiency is.

With our expertise in Drupal Development, we can help make your digital transformations dreams come true.

Ping us at [email protected] to know more on how Gutenberg can change the editing process on your Drupal site forever.

Nov 24 2018
Nov 24

"The digital voice assistant market is projected to experience continued expansion in the coming years, with number of voice assistants in use increasing from 3.25 billion in 2019 to around 8 billion by 2023" - Statistia

“Read out the headlines on the front page of today’s edition of The New York Times newspaper”. Say something like this to Google Home or Amazon Echo and you will get to listen to a voice reading out the news. Forget swiping, scrolling and typing, just talk to a voice assistant and hear what you want. Voice interfaces are all the rage in recent times.

A pile of books, a voice interface device, a pen and an apple kept close to each other


Not only is it helpful for your personal use, but organisations from different industries can find it meritorious. When it comes to new publishing opportunities, voice interfaces are right up there alongside artificial intelligence, augmented reality and blockchain. This world is not a part of a fairy tale and voice interface do pose a few challenges. Before we see how publishing companies make a great use of voice assistants, let’s explore voice interfaces a bit.

What exactly are voice interfaces?

Voice user interfaces (VUIs) enable the user to communicate with a system through voice or speech commands. Amazon Alexa, Echo dot, Google Home, Google Mini, Siri, Cortana and the Google Assistant some of the great examples of VUI.  The primary advantage of a VUI is that it enables you to interact with a product hands-free, eyes-free.

The primary advantage of a VUI is that it enables you to interact with a product hands-free, eyes-free.

Applying the same design guidelines to VUIs as to Graphical User Interfaces (GUI) is impossible. There are no visual affordances in a VUI. That means when you are looking at a GUI, you have no apparent indications of what the interface can do or what are the options available. When designing VUI actions, it is of paramount significance that the system clearly lays down possible interaction options, lets the user know what functionality is he/she is using and limit the amount of information to an amount that the user can remember.

Now, why are they important? It’s growing at an alarming pace and Gartner, a research firm, says that it is a trend, no discussion. You can see ‘Virtual Assistant’ in the graphical representation of emerging technologies below.

raphical representation showing parabolic line and blue dots and yellow triangles on it to show the Gartner's hype cycle for emerging technologiesSource: Gartner

VUI is getting better and better. In just an year, the betterment is apparently visible. Whether it is Google Home or Siri, advancements are impeccable as can be seen in the following graph.

Bar graph showing a light and dark green vertical bars to depict the improvement in voice assistants

Things that publishers need to know

There is a land grab to own skills and in the arena of VUI, skills can be split into two categories.

First is the branded skills that are connected to your brand and could not be owned by any other organisation. Skills like TED’s ‘play the latest TED Talk’ action and the Wall Street Journal’s ‘What’s News?’ come into this category.

Another category is the one that encompasses more generic skills like “Alexa, give me the headlines on sports” or “Okay Google, give me the stock market news”. Ownership of such generic skills would give you the sole authority over all the categories from the creation of first-mover advantage in the market as brands race to the capturing skills before they are gone.

This can make things tougher for brands who are looking to extract market-specific skills in both the generic and branded categories. And like most things, it is all about finding the right target.

Consumer Intelligence Research Partners stated in a study that Amazon Echo customer spend 66% more than average Amazon customers. This goes to say that Amazon can now afford to sell Echo devices at a lesser price than originally planned. They can even occasionally take a loss on devices for gaining a greater share of consumer spending. The inference that we get from this for the publishers is that optimising for voice search could result in a revenue boost.

Benefits of voice assistants for publishers

Emphasising on Customer Experience

Fabrice Rousseau, Amazon’s general manager of Alexa skills, emphasised on reinventing customer experience with the help of voice technology in his keynote address at the CMO Digital Insight Summit. He said, “When we moved from desktop to mobile we didn’t bring the desktop experience to mobile, we invented a very specific mobile experience”. He further stated, “When you move from mobile to voice don’t bring your mobile experience. Just invent an experience that is unique to voice.”

Fabrice Rousseau, Amazon’s general manager of Alexa skills, standing on the stage and several people sitting and listening to him.

One of the greatest examples of the importance of customer experience through voice technology can be seen through Amazon Audible. If you are a fan of audiobooks, the odds are that Amazon is your preferred place to shop. Of all the ways Amazon has been able to prove its hegemony in the book market, its share of audiobook sales probably represents its most formidable dominance.

Branding with skills

It is of utmost importance to note that, as far as most of the publishers are concerned, although the VUIs have been storming the market, there’s still plenitude of advancements in the pipeline. In spite of early triumphs with branded skills and flash briefings, VUIs still operate at a fairly low level such as following the commands to play music or read out your appointment dates. With that being said, many publishers are already working on plans for expansion. With the land grab to own skills still underway, the ones who make the first move will taste the success in the future.

What are the major challenges?

Dearth of personality

Voice assistants’ dearth of personality is one of the foremost concerns of publishers. Chris Gathercole, the head of FTLabs at the Financial Times, and his team used Amazon Polly for converting existing text articles into audio that is then delivered by ‘Artificial Amy’. What they observed was that ‘Amy’ was quick to learn and was also cost-effective but her lack of human-like characteristics was irksome and killed the humour or nuance of a piece.

Banal and disturbing

Automated voices are often either of banal nature or straight up disturbing which can put users off. An amalgamation of artificial and human voices could temper the issue with a voice actor reading parts of the text and a computerised voice contributing further snippets.

Automated voices are often either of banal nature or straight up disturbing

Privacy concerns

There are privacy concerns hovering around the ownership of devices that are essentially perpetually eavesdropping on your home. Consumer Watchdog, a customer advocacy group, stated in a study. “These patents show that smart devices target moments in between screen time to monitor sleep habits, listen in on dinner conversations, and track when users shower. Access to this data can flesh out Google and Amazon’s profiles of their users in order to help them more accurately server targeted ads”.

Conclusion

Conversations will evolve into an integral element of digital experiences. Interfaces that enable people to use natural language - from chatbots based on typing and reading to voice interfaces that are based on speaking and listening - are highly popular but also very immature.

However, with more devices without screens being connected, more consumers will look to voice for controlling their efforts and to perform more intricate tasks. Enterprises including publishing companies need guidance from Customer Experience (CX) pros so that their efforts at building conversational interfaces help customers instead of driving them away.

Looking for CX pro? Look no further than OpenSense Labs as we strongly believe in offering a wonderful digital experience through a suite of services.

Contact us at [email protected] to know more about the benefits of voice interface for a publishing company.

This block is broken or missing. You may be missing content or you might need to enable the original module.

Nov 23 2018
Nov 23

While constructing a hospital building what is the most important factor which provides safe access to all the people? My whole attention is diverted upon the very first priority of virtual planning, and that is building of ramps. If you ask "why?”, the answer would wind up to one conclusion - Ease of accessibility disabled individuals. 

Imagine if the design of the building can secure modular equality, how important is it to ensure equality through web standards?

According to the World Health Organization, about 15% of the world’s population lives with some form of disability. 

A hospital ramp with a woman is sitting in a wheelchair

 

With the mere principles of Web Content Accessibility Guidelines (WCAG) 2.0, the web has harmonized the requirements for equal web access.

Accessibility summarizes to be even more vital if you are a part of the healthcare industry. Serving the patients and employees via web accessibility becomes the duty of the healthcare organizations.

The Role Of Web Accessibility In Healthcare

Patients with disabilities are entitled to receive quality healthcare the way others do, and hospitals may be unintentionally shutting their doors for the audience with disabilities by not implementing accessibility on their websites. 

Healthcare activities like booking appointments, checking reports, paying bills, searching for physicians and other medical roles have rapidly moved online. While online operations have resulted in patients convenience and avoided them with the hustle of extended queues, what kind of treatment are disabled people imparted with? 

a rectangle with four circles placed in vertical position with red, green, blue and grey color respectively in a blue background with an ear, eye, wheelchair and man in circles respectively


A patient who is visually impaired visits your healthcare website to look for better treatment options but fails to decipher what’s on the page, and then immediately leaves the website. 

An example of failed engagement, this was a frustrating experience for her. Similarly, patients with disability and limited dexterity also need assistive technology to mesh with any website. 

Assistive technologies like screen readers help the visually impaired individual read text and data on the screen. 

Hence the need for quality healthcare website is a must in situations like these. Healthcare websites should be smartly designed for the common good of every individual.

Because:

  1. Web accessibility provides everyone with equal standards. Every person regardless of their physical ability is able to access information.
     
  2. It comes hand in hand with the features ensuring universal usability of information making abbreviations and unfamiliar medical terminology easy to define.  
     
  3. It ensures that people with visual disability can understand motion or static media with alt text that can be read out loud by screen readers and people with hearing disability are assisted with caption in videos. 
     
  4. Not limited to visuals and audio, web accessibility also ensures that people who have motor control restrictions, disabled arms, can use the website without a computer mouse or other pointing devices like touchpad or touchscreen.

It is important to synchronize it with the visual content to contextualize them.

Web Accessibility for healthcare organizations is not only an option but a major requirement.

Why Web Accessibility is a Major Requirement?

Section 508 of Web Content Accessibility Guidelines (WCAG) 2.0, Level AA states that all the websites (majorly the healthcare organizations) need to provide equal standards to all the individuals. If the healthcare providers fail to meet the accessibility guidelines, as demanded by ADA, they become open to legal actions.    

According to the guidelines:

The accessibility standards of the website should aim to meet the AA standards. The standards are organized under four principles: perceivable, operable, understandable and robust.

  1. It should list the accessibility features of the website which includes, alt text, skip links and ARIA attributes.
  2. Ensures that the page can be used without a mouse (with the help of keyboard)
  3. Ensures sufficient color contrast for the text. 
  4. It should involve the advice of the common tasks such as increasing text size and viewing PDF files.
  5. It should grant with the contact information if the user has difficulty accessing parts of the website. 
"web accessibility initiative" written against a white background

 

Can I get away without implementing these accessibility standards?

If the question “can I get away without implementing accessibility standards” is knocking your head right now then, you must read what happened to Tenet Healthcare in 2016. 

In 2016, Tenet Healthcare, (which operates several Florida hospital) was named under class action complaint on the behalf of visually impaired individuals. The complaint alleged that the hospital’s website was not accessible to blind individuals with screen reader technology, and violated the rule of ADA title III. Thus imposing legal actions against them, with the addition of a huge penalty. 

According to ADA Title III, 4965 federal cases were filed in starting six months of 2018. If the filing continued at the same rate there would be close to 10,000 cases at the end of the year. (30% increase over 2017) 

two green bar graphs on a white backgroundsix bar graphs against white background

Over the past several years, healthcare industries have increasingly become the target of government plaintiffs, complaining about disability discrimination. If you think you can get away with it then think again.

Not complying with web accessibility in healthcare can not only mean that you will suffer lawsuits but will be penalized and public shaming might turn into financial losses soon. 

How does Healthcare Organizations Ensure Web Accessibility?

Apart from serving the guidelines of ADA title III, the evolution of technology has fundamentally altered and powered the healthcare industries. For sustaining the health and the fitness of the people, innovation plays a crucial role in medical science. This is how it contributes to the healthcare industry.

  1. Screen enlargement and screen reading software 

    Screen enlargement software allows the magnification of the computer screen so that the screen can easily be read, and allows the audience to see whatever is there on the screen. For those who have a poor eyesight, talking software is available that can read the text on the page. In short screen readers. Screen reading software like JAWS, NVDA, talk button etc helps the user attain this task.
     

  2. Text-to-speech

    Text-to-speech has helped the patients understand the digital content by providing a simpler audio version. This is potentially helpful for those who might have literacy issues, a neurodevelopmental disorder, low vision, elderly population, and anyone else searching for a simpler way to access the digital content on the go. 

    Text to speech loudly reads the important medical information to the patients which might include descriptions of the diseases, medical prescriptions, and drug data leaflets. This type of information needs to be well understood to avoid any type of misuse. Thus, by providing this option to the patients, the digital revolution in healthcare marks equal standards for the diverse audience out there.
     a mobile phone where a text is written and an ear is hearing the text which is being spoken

  3. Medication Tools

    People with disability have several medications to follow, and missed doses might end up in an exacerbation of the medical circumstances. In severe cases, it can even lead to a series of consequences that result in hospitalization.

    The patients who are visually impaired or suffering from other reading disorders can easily use these medication tools. These tools help the patients remember the accurate time for their medication by altering them with their medicine. Not only this, but these tools also keep an adequate check of their heart rate and reminds them about their scheduled appointments. There are products that help the audience with this task, products like AdhereTech, Amiko.IO, MyUBox, MedMinder and Vitality GlowCaps.

How Is Drupal the Best Option For Healthcare Websites?

If the healthcare organizations are looking for a platform which is cost-effective when it comes to growing need of the healthcare system for the patients, Drupal tends to shine in that part. 

There is no doubt that Drupal powered healthcare technologies bestow a better living.  It is not only simple to use and work upon but it also makes it easier for healthcare organizations to handle data and documentation. 

The major role which Drupal plays in all these healthcare websites is providing them with quality accessibility for the diverse audience. How? Well, here are some of the changes which Drupal 8 made around accessibility to ensure that your website starts with a strong foundation`

  • Automatic Alternative Text

    Automatic Alternative Text generates descriptive information of an image.  To help the visually impaired individuals understand the all sort of medical images alt text is used. 

    Screen Readers and other text read software read these images or pages out loud with the help of automatic alternative text.

    The module helps in generating an adequate description of an image or a webpage in a human-readable language with complete sentences. The description is based on a collection of content tags and description provided by the editor. 
     

  • WAI-ARIA

    Another W3 published set of standards, WAI-ARIA deals with making certain content type available for the users. Drag and Drop functionality is a great example of this. Drupal 8 follows all the guidelines of WAI-ARIA to make users more understandable to the assistive technologies.
     

  • Aural Alerts

    Users with visual impairment cannot see visual updates on the page such as color changes, animations or texts appended to the content. In this case, Drupal presents a JavaScript method Drupal.announce() which constructs an “aria-live” element on the page. Drupal.announce accepts a string to be read by an audio UA. 
     

  • Block ARIA Landmark Role

    Block ARIA Landmark Roles module is used to provide programmatic access to a certain section of pages, in other words, they provide an easy way for users using assistive technology to skip over blocks of content that are repeated on multiple pages and notify them of the programmatic structure of the page. 

    The module adds to the additional elements of the configuration form that permits the user to assign ARIA landmarks (which can be used to navigate from section to section). All the attributes are added to the elements on the page to define the areas like the main content or maybe the navigation region.

    A visually impaired person can easily find a navigation menu with the help of this module and simply jump to the navigation landmark. Landmarks also help people with disability by providing them with keyboard only navigation to a certain section of pages
     

  • CKEditor Abbreviation

    CKEditor Abbreviation modules help to add a button to CKEditor for inserting and editing abbreviations. If any type of abbreviation tags is selected, the context menu would also contain a link to edit the abbreviations.
     

  • CKEditor Accessibility Checker

    CKEditor Accessibility Checker module is an innovative solution that allows you to inspect the accessibility level of the content created on CKEditor, and immediately solves any issue that is found. 

Conclusion

Healthcare technologies are evolving at a very rapid pace, and meeting the accessibility standards also reap the benefit from the technical standpoint. Every organization is committed and focused on serving its patients whether it is a healthcare organization or a website development organization, the audience is the very first key to every accessibility standards. Drupal has been contributing to each one, granting user and digital experience in every sector. 

At OpenSense Labs the objective of such apprehensions has always been the number one priority. Contact us at [email protected] to build an accessibility solution by integration Drupal with healthcare technologies.

Nov 23 2018
Nov 23

Medical devices save countless lives each year and can dramatically improve the quality of life of millions of people. However, the development and manufacturing of advanced medical devices is a complex, time-consuming and investment-intensive process. 

In a bid to scale up their services, life sciences and healthcare service providers need well-curated technology to market their products and services. 

track band on the left wrist and right arm pressing a button on it with a blue foreground on right


More than the device, the technology used in the backend to curate the information and compile it is important than ever. 

Here’s a beginner's guide to the medical device CMS. 

What is a Medical Device CMS?

Healthcare professionals who are responsible for technology management require a balanced and effective content management system with possible medical device integration.

A medical device CMS is the one that provides an easy integration matrix between a medical device (hardware) and a data management system (software). 
 
The main purpose of it is to provide a better monitoring of the data collected by the hardware devices while storing it for the future. 

Some of the best examples of medical devices would include insulin monitor, fitness tracker bands, heart rate monitoring devices - to detect stroke, sleep tracking devices, among others.

A medical device CMS balances the hardware-software relationship  

An ideal medical device CMS address the following: 

  1. Ability to store and forward the acquired data from a hardware device
  2. Manage and format the data in the required standards

Here's how Drupal is faring in the Healthcare technology trends

From Pulse to the Report

The dramatic increase in smartphone usage and portable devices have triggered the emergence of stand-alone health and medical devices and software apps. 

Wearable sensor-devices play a critical role in monitoring the health of a person. These devices can record real-time information about one's physiological condition and motion activities. 

These devices can be identified on the basis of their sensors and accordingly fall in the predefined categories. They are capable of measuring physiological signs such as heart rate, body temperature, blood pressure, respiration rate, electromyogram, electrodermal activity, and in most cases even insulin. 

Wearable sensor-devices play a critical role in monitoring the health of a person. 

Micro-electro-mechanical system (MEMS) based miniature motion sensors are used to measure activity related to signals from the body movement. 

The measured and processed data is then transmitted to the remote healthcare facility (or to the smartphones) over the internet. Security, here, is the major concern since a secured communication channel would safeguard the privacy of (sensitive) personal medical data of an individual. 

a man on right with points over his body, three text box on right and a building on bottom left


Tips for Medical Device Developers and Organizations

When planning to build a healthcare device, it is important to choose a CMS that gives an accurate representation of data and disseminates the data (in different forms of content) to different platform while adapting to the various screens and sizes too. 

The CMS must provide the following features:

  1. Security: Under the HIPAA Privacy rules, healthcare services providers must ensure automatic log off, encryption and decryption of data, tracking logs that record activity on hardware and software. 

    The technology at the backend must ensure that the health data can be accessed by limited people and secured under definitive measures. SSL certificate is one of the implementations. 
     

  2. Remote Access: The information procured from the medical device should be easily accessible to the individual and healthcare provider, who can then monitor the changes. Easy tracking of data is on screen with various elements present while providing the necessary training material in itself.  
     
  3. User-friendly: Usability is an important aspect of medical device designing. A balance between aesthetics and usability is important for small devices like track bands. Use of flat design, icons, enabling scrolling, 3D look, small text to reduce visual density can give a cleaner look with a minimalistic look. 
     
  4. Responsive presentation of the data: While medical devices can be of different shapes and screen sizes, the CMS must ensure that the content is presentable in various mobile devices to keep the user interface intact. The flow (dissemination) of content must be consistent flowing on to the screens regardless of the device. 

Exploring the Medical Device CMS. Here’s What Healthcare Professionals Need. 

As against the common misapprehension, a CMS is responsible not just for the written content but for every piece of information that can be used to create and manage digital documents. 

In the above section, the process of the gathering information has been discussed in details and it should come as no surprise how important a CMS is in the process.

Not any CMS can be the choice for a medical device. This list will help you filter out the features of a CMS required from an ideal choice. 

  • An Effective Document and Content Management

Establishing a system for mapping and managing the documentation of various users and their records can be a heftier task.  

When selecting a CMS for medical devices, healthcare organizations recognize the need to have easy document management solutions. 

The CMS must ease the process of generating and maintaining records resulting from the micro-electro-mechanical system while presenting them in different types as per the requirement. As the service provider, it should be able to track, manage, and store information and documents related to the patient’s health.

A medical device CMS needs to be an effective document management system.

Supporting a wide variety of document types, an effective solution would seamlessly integrate all procured health information (scanned charts and data, clinical paperwork, referrals, and more) into the patient’s profile.

Additionally it should provide enough storage to hold all the patients’ data without letting your application or website bend or break. 

Before narrowing down to one, ensure that the CMS supports the following content types:

  1. Text documents
  2. Graphics
  3. Web pages
  4. All image types
  5. Reports
  6. Multimedia
  • Multiple Device Support

Assuming that the user must be using one particular device type would mean a major blunder on the user interface. When developing a sophisticated web application compatible with different devices, it is important to ensure the CMS provides provision to elements like HTML5 to build a responsive application. 

Adding a rich user experience using various capabilities will ensure various stakeholders (such as physicians and patient) accessing the desired information easily. It should act as a centralised content dissemination platform for serving digital content on screens.

Text format, SMS, e-mail and other alerts on mobile phones can cover the rapidly growing smaller screens generation. 

  • A Secure and Privacy of Data

While electronic methods provide increased efficiency and mobility, HIPAA ensures that appropriate steps are taken by the organization to safeguard the information and maintain the integrity and privacy of ePHI. 

Medical devices share patient information with other technologies which could compromise patients’ privacy and security if hacked. Holding personal information like name, contact information, patient’s medical information, security can’t be compromised when considering a CMS for medical devices. 

Without proper security protocols in place, personal and confidential information could be misused by any person or organization interested in exploiting the data for personal gain.

Under HIPAA, a series of regulatory standards are outlined to ensure the protected health information (PHI) is not disclosed and remain safe under the law.

The CMS must ensure a secure access to the system with data encryption repeatedly happening in the backend. Salting and hashing of the database, strong password policy, session limits, and single sign-on systems are enforced. 

Proper data validation can be done to prevents XSS, CSRF, DDOS, and other malicious data entry.

  • Easy integration with Third-Party Application 

A perfect product doesn’t exist. 

A CMS that would offer you all the features without external support doesn’t exist. Since medical healthcare providing organizations are repeatedly moving towards electronic health records (EHR) to store the medical history and offer a splendid digital experience to the patients. 

An ideal CMS here would provide easy integration and smooth workflow after integration without compromising on the security. 

Working with a lot of devices and data, there are chances of inconsistency and content duplicacy, in order to avoid these issues in real time, a possible synergy needs to be created between the CMS and the third party tools.  CMS compatibility with the third party tools is important. 

[embedded content]

  • Web Accessibility 

To ensure universal healthcare in today's times, governments penalize healthcare facilities not complying with web accessibility guidelines. 

People with disability face inequality, violation of dignity, and face injustices in walks of life. As their support system, how can the healthcare organizations which are supposed to act as the pillar of support not enforce web accessibility guidelines on their own website?

From the legal perspective, penalties can risk reputational loss, financial loss, or a class-action lawsuit.

Failing to meet the web accessibility standards, healthcare service providers can leave the disabled patients frustrated and discriminated against. 

Everything has shifted online and patients are seeking information online more than they are consulting doctors for real. Web accessibility is more crucial than ever for the healthcare industry as differently abled people jump to receive information online. 

Poor contrast, no resize feature, no aural alerts, no keyboard navigation access can leave many visitors with bitterness and confusion. Therefore, it is important for an ideal CMS to provide web accessibility features at its core. If not user experience then under section 508, organizations are compelled to make all web technologies fully usable by people with various disabilities. 

The role of the CMS doesn’t end with integrating various devices and process, the more complied with the web accessibility law, the better can healthcare service provider serve quality healthcare. Not only do healthcare organization reach out with an improved brand message but consumer experience as well. 

  • A Centralized Content Management System

“A content repository is a database of (digital) content with an associated set of data management, search and access methods allowing various application-independent access to the content with the ability to store and modify content.”

The proliferation of content from a variety of sources can create an enormous challenge. As the unstructured content grows, data loss becomes a hard reality. Healthcare organizations need to look for a flexible approach that supports interoperability with a wide array of popular systems and products. 

A CMS that is robust and can be worked as a central content management repository storing a variety of content formats, facilitating read/write capabilities, control access. Information shared through one platform (say a fitband) to be updated in real-time across all the connected systems (EHR System).

As a content repository, it must provide efficient storage to integrate content, easy versioning, import/ export of content, content manager accessibility for all the documents and the content, records retention management system providing the capability of document-imaging.

  • Community-based CMS

Communities help you evolve. Promoting direct communication between service provider and end user, communities can actually boost the product development cycle. Handling a diverse set of stakeholders as a means of increasing quality management and regulatory compliance while reducing risk, the provision of building communities can ease one thing for marketers.

Covering general FAQs, or major technical problems, communities provide the user with a platform to connect with. 

Software as a Medical Device

In an August 2016, the Food and Drug Administration (FDA) released a draft guidance document which details it as one of the fastest growing trends in medical devices: Software as a Medical Device, or SaMD.

With “one week workout” and “six-minute cardio” going crazy for the now health conscious millennials medical devices are a big success. To ensure the safety of these devices and the people using them, they need to pass the quality check by the FDA. 

Software as a Medical device is a software intended to be used for one or more medical purposes that perform the objective without being part of a hardware medical device, 2014, IMDRF report.

It is a concept proposed by FDA. Prepared with precise guidelines and regulations, FDA assesses the safety and efficacy of new devices that go to the market.

Software intended to be used for one or more medical purposes that perform the objective without being part of a hardware medical device.

SaMD may interface with other physical devices, but it must run on general computing platforms (or mobile devices), and may be used in combination with other medical devices.

Some examples of SaMD devices are:

  • Software that allows MRI and other types of medical imaging to be viewed on regular mobile devices
  • Software that performs image processing in to detect cancer
  • Treatment planning applications that supply information
  • Software that regulates an installed medical device, like a pacemaker
  • BMI and body fat calculators, and heart rate monitors

An important distinction here is that the software doesn’t meet the definition of SaMD if its intended purpose is to power a hardware medical device. 

Accordingly, the categories for software medical devices distinguish software applications across two key dimensions:

  1. The significance of Information – Devices that are used directly in the treatment or diagnosis of patient illnesses are expected to obtain higher standards of clinical evidence, including obtaining both scientific and analytical validity, as well as assessing clinical performance.
     
  2. State of Disease – When a SaMD is used as an intervention for a critical disease, it must be tested more rigorously than if its intended use is in detecting non-serious illnesses.

Conclusion

Being fit is the new fad. Because of which healthcare-medical devices are increasingly becoming popular. At the same time, the importance of the software behind the curtain cannot be denied.  

With the rapid development in technologies such as wireless, embedded, nanotechnology and so on it has become possible to develop handy systems and devices.

At OpenSense Labs, we understand that with technology advancing, healthcare software needs to be an all-rounder. They need to be secure, robust and easy to integrate with other technologies and platforms. 

Drop a mail at [email protected] or give a shout out on Twitter @OpenSenseLabs to talk about possible synergies. 

Nov 23 2018
Nov 23

There is a moment of realisation when we see how much we have actually evolved while reading a novel where the story takes us into the 20th century. When we see characters in that novel, who go to the office and have to keep an account of all the company documents that just keeps mounting up, we sense the burned-out feeling of all those office-goers. And then there is this internet era where all the documents are digitally managed, searched, shared and archived. Such is the effect of digitisation that something like a Document Management System helps an organisation to go paperless and govern complex files in an organised way.

Rolled printer papers on the table with a lady sitting in the background


Instead of searching for files and consuming a lot of time and effort, the Document Management System (DMS) is a one-stop destination for streamlining business workflow and improving team collaboration in the process. It helps in letting go of papers and having a positive change in the environment. Drupal, as one of the leading open source content management framework, has the provision for handling document management with a suite of modules. Let’s look at what DMS is exactly before we plunge into Drupal’s efficacy.

What is a Document Management System?

Document management system refers to the system that is developed specifically for authoring and governing electronic documents. Creating, sharing, organising, and archiving the documents are managed by DMS. It simplifies these processes for enhancing productivity while managing the documents digitally. Its central electronic location streamlines the process of finding documents, saves your time in the process, and helps you manage more of your organisation’s core operations.

Document management system refers to the system that is developed specifically for authoring and governing electronic documents.
Infographics with statistical information written below the logos of IDC, M-files, Harris interactive, and Ombud

DMS is quintessential. A compilation of statistics by Business.com delineates that document management is right up there and is very essential for efficacious business workflow. In a survey, IDC stated that 21.3% of productivity is lost because of convolutions in handling the document. Another report by M-Files states that poor document storage amounts to 50% of the loss of time due to difficulty while searching. Harris interactive says in a study that 83% of knowledge workers lose time in versioning and e-signatures reduce timearound times by 80% according to Ombud Inc.

Categories of Document Management System

The two common types of DMS include cloud-based and self-hosted.

Cloud-based DMS

In this case, the software is hosted by your provider which is accessible online. As long as you are connected to the internet, it is possible logging into the system. You won’t require an IT team for installation to keep it running properly. You can tap into the system from anywhere and anytime while files are automatically saved in the cloud thereby reducing the need for regular backups.

Self-hosted DMS

Unlike Cloud-based DMS, it is stored on your company’s servers. It is possible to store as many files as your server allows. The challenge lies in regularly backing up files manually. It is great for users who value being in control of their own system and do not have to rely on others to keep it running.

Features of Document Management System

  • Storage: DMS lets you archive your files in a single location so that they can be retrieved, stored and shared easily for future use.
  • Security: DMS helps you in avoiding unauthorised access by implementing role-based permissions for file entry. Some systems also restrict IP addresses.
  • Version control: You do not have to handle numerous copies of a single document thereby staying in control of your document’s versions. You can see all the versions made and sends alerts to all the members about the most up-to-date version.
  • Indexing: You can index files systematically for a swift, simple retrieval later on given its file key.
  • Uploading: You can upload documents in bulk efficiently.
  • Editing: It is easier to apply adjustments and modifications to a PDF file.
  • Branding: It is possible to define your organisation’s branding by setting up its colour, theme and logo to convey your brand’s look and feel.
  • On-the-go: You can access your files using mobile devices. This helps in easily capturing images of documents and uploading them swiftly.
  • Synchronising files: Online files with the copies of documents stored in your system can be synced which helps in updating the team members with the latest documents.
  • Audit trail: Referring to a document’s path in its lifecycle, audit trail feature of DMS helps in fetching detailed reports on the path that the file has followed.

Merits of a Document Management System

  • Centralisation: DMS lets you organise your file easily using tags and labels thereby centralising the document management.
  • Team collaboration: DMS allows team members to view and edit a document at the same time.
  • Data security: Many Document Management Systems implement a role-based access control for permitting entry only to specific users to the document.
  • File retrieval: Simple by using a keyword or keyphrase, you can look for a specific file. You can also use a document remotely.
  • Regulatory compliance: DMS leverages features like audit trails, security and backups to ensure regulatory compliance like the 21 CFR Part 11 and Annex 11.
  • Carbon footprint: Choosing DMS ensures that you are reducing carbon footprint by going paperless.

Examples of Document Management System

Alfresco, an open source Enterprise Content Management (ECM), offers document management, collaboration, knowledge and web content management, record and image management, content repository and workflow.

Seed DMS, an open source DMS, is user-friendly. It serves as a fully developed enterprise-ready platform for tracing, accessing, storing and sharing documents.

M-Files is another useful and easy-to-implement DMS. It helps in governing your information securely with its Check-out feature.

LogicalDOC is an open-source Java-based system which improves productivity and collaboration of document management system.

Ademero supports centralised control mechanism for storing documents at a single vault and allows scanned documents to be converted into PDFs using Optical Character Recognition feature.

How can Drupal be integrated with Document Management Systems?

Drupal offers an amazing set of modules and distributions that can help in incorporating the features of DMS.

Vardoc: Knowledge base system and documentation site

Logo of vardoc with an icon representing documents on left and vardoc written on right

Vardoc, which is a knowledge base system, a wiki system and a DMS, is Drupal distribution built for hosting an enormous amount of content in a structured and easy to find format. It lets you develop a connected organisation, product or knowledge area.

This is built on top of Varbase, which is an open source Drupal 8 distribution, and offers some useful functionalities like editorial features, search function, taxonomy, user management and customisable themes.

Moreover, it delivers top-of-the-line non-functional requirements like enterprise security, high performance, Search Engine Optimisation (SEO), accessibility compliance and so on.

Document Module

Document module provides complete integration with Drupal node system and acts as a DMS for Drupal. This module adds a custom node type - document. Every document that you will create will be a Drupal node and therefore will reap the benefits available to a node.

It has the support for document revisions/versioning. The custom fields added by the module to the Document node type are accessible in Views. It also has the support for theming.

Moreover, the documents, being nodes, are entirely indexable by the Drupal search system. This module also provides its own custom search for documents. This module is available only for Drupal 7 version.

CMIS API

CMIS API is a suite of modules primarily offering an API for connecting to Content Management Interoperability Services (CMIS) compliant systems to bi-directionally syncing content between the CMIS ECM system and Drupal.

It also comes with features like creating, updating, browsing and searching content in the CMIS ECM system through the Drupal interface.

The objective of CMIS API is to offer an easy-to-use, web content management front-end in Drupal for ECM systems that are, most often than not, unfamiliar to web content managers.

Filedepot

Filedepot module gives you a Google Docs like feel. It is an integrated file management module that supports role and user-based security. You can save the documents outside the Drupal public directory for safe access.

Files of all type can be stored in filedepot and its flexible permission model lets you delegate folder administration to other users.

You can simply drag and drop files from local desktop and upload them in bulk. Also, users can receive notification of new files being added or altered. You can flag the document as ‘locked’ in order to alert users that it is being updated. This module is available only for Drupal 7 version.

Alfresco Module

Different coloured droplet-shaped icons forming a circle on left and alfresco written on right

Alfresco module provides integration between Drupal and Alfresco Enterprise CMS. It helps you in developing Drupal sites using the Alfresco’s document management repository for storing and sharing documents.

It governs Alfresco content items as Drupal nodes with the help of custom content type (Alfresco item). It also offers a Content Construction Kit (CCK) field type for Alfresco content items.

Bundled with AJAX-based repository browser, it lets you visualise, upload, search and retrieve nodes from the Alfresco repository. Please note that this module is not covered by Drupal’s security advisory policy.

Web File Manager

WebFM module is based on a hierarchical directory structure and leverages AJAX for letting the administrators arrange files on the server in a similar way as done with file managers on the personal systems. This improves the manageability of huge collections of documents.

It lets you define permissions by role and file user ID. You can also attach files to numerous nodes and/or comments. This module is not covered by Drupal’s security advisory policy.

Conclusion

Document Management Systems are essential for product documentation sites, agencies who want to document software, documentation for open source products/projects, organisations who want to document their process and online user manuals. Integrating DMS with Drupal is a praiseworthy option as you get the best of Drupal’s robust content management functionalities and the power of specialised DMS.

Drupal experts at OpenSense Labs are committed to delivering an incredible digital experience with its suite of services.

Contact us at [email protected] to leverage the power of Drupal and the DMS.

Nov 22 2018
Nov 22

How Drupal is helping to construct better paths in the journey of content management?

As a content strategist, we know that “Content is the King”. We hustle every day to create splendid content that’s deserving of even getting close to that royal title - because let's face it, we all want our content to be unique and surprising. 

A finger on the black surface with a drawing of a switch connected to a box and a bulb. Some text written on the box


The content can vary from blogs to forms to contact address. The question, however, is - which CMS can help you manage the content that directly impacts the reader's mind, letting the audience engage with your brand the way you want them to? 

The resounding answer has to be - Drupal! 

Drupal provides its users with many types and varieties of content that helps them to manage the website in terms of ranking and traffic.

Drupal provides the users with intuitive modules which allow them to build their own content types that have their own set of fields.

But What is a Content-Type?

In order to catch the attention of the user, content is produced in various ways such as in the form of an article, newsletter, polls, listings, landing page, among others. 

Content types provide the website with a list of content that allows the content editors to add new content to the site. In other words, it enables the user to manage the settings for a category of information in a centralized and reusable manner. 

A diagram of a cloud with “diversify content types” written on it and twenty four rectangles with content connected to it with arrows


Types of Content Needed  

Drupal is one such CMS which has been providing the content editors with modules to handle all the types of content in a website. These modules provide the website with features and capabilities that can be customized. 

  1. Homepage 

    How many times have you judged a website by its homepage? Well, maybe almost every time. 

    According to the CEO of Klout Fire, to impress and engage the audience on a website, it needs to orchestrate everything, in other words, the first 15 seconds of the website is the most crucial seconds that engage and delight a customer. Homepage, therefore, becomes important. 

    Drupal modules like Panels and Ctool help you bring out a homepage with a customized layout that engages with its audience well.  
     

  2. Blogs

    From students to businessmen, blogging has grown out to be a platform used by millions. One of the popular mediums to promote business, blogging must be part of every business. 

    Part of the core now (as a content type), Drupal’s blog module allows authorized users to build and maintain any type of blog. It provides the content editors with standard blogging functionality to the site, where users with defined permissions can create, edit, and update blogs. 
     

  3. E-newsletters

    Another popular marketing initiative, newsletters are frequently used to keep the audience informed and offer promotional content. Many businesses and marketers use newsletters to promote their products and services. 

    An effective way of maintaining and providing the audience with topics that are current and trending, newsletters offer organizations a unique opportunity to nurture and educate the target audience.  

    There are essentially two ways to build a newsletter in Drupal. 
     

    1. Newsletter module strictly aims at the frequency or number of contents. It is especially recommended for people that need more than one newsletter list for their site. Newsletter module aims to be a full blown newsletter solution for Drupal 7. 
    2. Simplenews module brings the new content type that can be sent via email to all the subscribers of the associated newsletter. 

      Other options in Drupal include MailUp Newsletter Module, mailman, and MailChimp. 
       

  4. Landing Pages 

    A crucial part of the inbound marketing strategy, building, and testing landing pages is one of the top five challenges faced by B2B marketers

    Drupal has paragraph module to create templates for landing page and stacks module to allow content editors to create complex pages without the need of developers.

    Companies see a 55% increase in leads when they increase their number of landing pages from 10 to 15. 
     

  5. And much more

    Other content types involve guides, book pages, tutorials, case studies, and infographics. 

    Drupal consists of modules like book helper, book module that help to build interesting and interactive guides. Apart from this, the charts module provide a good way for the user to visualize a lot of information.

Content, Marketing, and Drupal: What is There for Marketers?

Websites using Drupal 8 has grown up to 51 percent in 2018 in comparison to the previous year.  

Line graph on a blue background

Easy content management can easily be one of the reasons for its popularity.  But there is more to it. More as to why you must opt for Drupal.  

  • Reducing the Cost

Drupal does not induce any licensing cost. Old news, but it is free. 

Other than the software cost, the visual designs of your Drupal website can be completely rebuilt without investing in the backend architecture. Drupal is also completely customizable from the get-go even with respect to the editor tools, workflows, and roles. This involves the money that would go towards the customization of the projects. Thus, benefiting the marketers in terms of budget and funds. 

  • Content and Personalization

According to the Content Marketing Institute, 71% of the content editors customize their content on the basis of audience interest. Content types like blogs, landing pages, newsletter, infographics are important factors that contribute to the ideal way of reaching and interacting with the customers. These content types deliver relevant information to the audience based on their interests and motivations. 

Drupal lets you deliver personalized content

Drupal’s Acquia Lift, a data-driven personalization module that brings content and customer data together from multiple sources, providing customized experiences across any channel or device. 

Most importantly, it allows businesses to construct a consistent personalized experience across digital platforms.

Providing easy integration with third-party tools Drupal further facilitates the personalization process. 

  • Building Custom Content Types with Drupal

As a marketer, if your needs vary from the ones mentioned above or if you are looking to build some new type of content type for your audience to devour, Drupal helps you with that too. 

Build news sections, postcards, manuals with Drupal without coding. 

Without any coding, with the use of content construction kit (CCK) and views modules, you can build new content types and produce advanced custom views for those types. 

  • Ease of Adding  Multimedia Content 

Since we know that people are more likely to remember images and videos, how can we afford to not add them in our blogs? 

Drupal’s Media Library provides a views-based browser for previously uploaded media. You can also add media to content via media field, either by selecting from existing media or by uploading new media. 

Not just this, with oEmbed support now, it allows the embedding of external media, such as YouTube and Vimeo videos.

Using Drupal features and functionalities along with digital media solution enhances the ensured reusability and real-time tracking of media assets. 

Drupal, is the whole framework for administering content on the website.
  • Adding Themes to the Content Types

The one-size-fits-all theory doesn’t work in the internet era. 

While themes ensure that your website looks great your one theme won’t be compatible with the different types of content on your website. 

Drupal has replaced the PHP Template with the all-new Twig Template in its latest update, which not only makes it easy to edit themes but customize the ones according to your needs very easily. 

With the addition of new template engine, Drupal gives you responsive and mobile-friendly themes. 

The main goal is to deliver the audience with the power of overriding all the templates and change the front end for modifications. Therefore the visual design of a website can be entirely rebuilt with the help of Drupal, without actually spending on any back-end architecture differences. 

All the Drupal Themes for 2018

  • SEO Friendly

People trust search engines. In fact, 50% of visitors are more likely to click a result if the brand appears multiple times in search engine results. 

Writing great content will not suffice, your CMS have to have SEO capabilities in order to make your business visible. 

According to a survey by Neil Patel Digital, SEO is the 2nd most used practices of all time that affects the traffic of a website. 

A brown bar graph on a white background

When it comes to Drupal, there are a variety of SEO friendly modules that help the website reach a better rank. The extensive list of SEO modules includes Page Title, SEO Checklist, Meta tags, Taxonomy Title, HTML Purifier, Real-time SEO. 

Drupal’s out-of-the-box schema tags help search engines identify what the page is about, its relevant and how useful will it be for a specific query. 

Drupal presents the users with a comprehensive control over the URL structure with the help of modules like  Pathauto, and maintain a clean understandable URL structure with the help of Global Redirect. 

  • Content  Monitoring

For a content marketing strategy to be successful, it needs to be underpinned by data. After all, how do you decide if some information is tangible or not? Or how else would you know how your content is performing?

Since data never lies, you need to have actual audience insights for your next marketing strategy. 
 
Google Analytics is one of the best tools for monitoring the traffic on a website while providing real-time updates about the number of visitors, how much time they are spending,  popular pages visited by them among other information. 
 
Drupal’s Google Analytics module lets you add the Google Analytics web statistics tracking system to your website, so you can:

  1. Selectively track and exclude certain users, roles and pages.
  2. Monitor different types of links 
  3. Monitor the type of files that are being downloaded from your pages
  • Community and Engagement 

Among all the marketing strategies, fostering customer loyalty brings results. Businesses seeking to build more engagement and repo among its users can’t miss out on community outreach. 

Content, community, and business go hand in hand.  

Community brings engagement. And engagement returning users. 

In order to ensure a splendid digital experience, the ideal CMS must provide value to integrate with community building technologies. 

With a community of more than 200,000 people, Drupal is the best example of what it can do for the community platforms.

You can serve your audience better if you know what they are looking for. Integrating with almost all the acknowledged ERP systems which are available like Alfresco, Salesforce, Bynder, and SugarCRM.

Additionally,

  • Drupal grants marketers with modules like Disqus and HybridAuth Social Login to connect with the audience. It allows them to connect more strongly with customers and transform more prospects into buyers.
     
  • Drupal helps power up the websites with chatbot for an interactive and a guiding experience to the user. It can incorporate the Chatbots and connect with the people giving them a better user experience. 

Conclusion

Increasing traffic, retention and conversion is mostly the main agenda of every website holder, and Drupal contributes vividly in this part as a content manager. It offers a dozen powerful modules for maintaining and creating content. 

Create personalized content with OpenSense Labs, drop a mail at [email protected] and experience the best content management services and solutions.  

Nov 20 2018
Nov 20

As a part of the audience, we unanimously measure the quality of experience by one simple factor - how long does it take to get what we want.

Right?

In today’s customer experience economy, organizations are no longer compared on the basis of their direct competition, but they are compared on the basis of the services they provide to their end users.

And according to the National Retail Federation, the e-commerce growth for the US grew from 3.7% to 4.2% in 2017, which included tech giants like Amazon, E-bay etc. These techies were successful in reaching the customer funnel ecosystem. 

'How' you may ask?

Well, they acknowledged that the key of constructing successful and best in class digital experience was through website users and their experience. 

Three white human figures and a hand drawing a smile face on the second image in a blue background


Why Digital Customer Experience is Important?

Satisfied Customer usually returns and buy more, they tell other people about their experience. Thus, it is important for organizations to understand that end-to-end experience is essential for future growth as well as customer loyalty of a company. 

A customer satisfaction survey conducted by B2B International conveys the importance of the customer's expectations. The study reveals that it is crucial for businesses to improve their ability to deliver great digital customer experiences. 

Thereby, reaching the customers or the audience through digital channels is something which every organization must do to survive and grow in this digital era. 

Enhanced digital customer experience not only becomes a salient strategy for the organizations but helps them evolve beyond conventional web development.

Depending on the audience’s situations, aim, and expectations a poor customer experience can make or break a business emblem.

Obstacles Faced by Organizations in Digital Customer Experience 

Forbes states that only 16% of the organizations were successful in the journey of digital transformation, which of course is a very low percentage. 

84% of companies fail at Digital Transformation

Digital transformation, here, implies the integration of digital technologies into the areas of business, fundamentally changing the way they operate and deliver values to the customers.

But why do companies fail to walk along digital transformation?

Because adapting to changes is tough! 

Echoing the same sentiment, a survey by Mckinsey reads that some 70% of change programs fail to achieve their goals mostly due to employees’ resistance or lack of management support. 

Digital transformation includes a significant change and the type of work the organization does. Making changes is kind of difficult. It becomes important for the organizations to have someone on board who is aware of the people’s mind and how they adapt to business models.

Major barriers faced by organizations in digital customer experience include:

  1. Limited Budget 
  2. Lack of (overall) digital strategy 
  3. Organizational structure
  4. Employee pushback/ resistance

How to Offer the Best Digital Customer Experience?

Here are the ways by which an organization can eliminate the obstacles and cuddle a digital native process of working out that allows them to deliver a class intuitive customer experience.

  • Know your Customers

There is no point in designing and constructing a digital platform if you are not aware of your audience. If you really want to understand customers needs and wants, then you have to connect and empathize with customers situations.  

You can begin with customer-facing teams and CRM software followed by social media monitoring to gain deeper and diverse understanding. This would provide a foundation to construct data-driven and customer-centric decisions. 

“The best way to connect with the customer is to empathize with their situation and needs.” 

The happier the customer is with you, the longer they stay connected. If the customers are being treated poorly and the feedbacks are being ignored, then there are chances that they would be less sustainable and engaging to the products you sell. This is the reason why organizations that deliver a superior customer service outperforms the ones which do not.

A headless man in suit holding a frown, smiling and poker emoticon in his palm

 

  • Being Data Driven 

A report by Aberdeen states that there are organizations which have implemented data-driven culture, and they have witnessed a seven percent annual increase in terms of revenues which they make in a year. 

“By implementing a data-driven culture, organizations can witness a 7% annual increase in revenue.”

The increase in the revenue has been conquered through the increase in the efficiency of the operational activities. 
 
83% of the organizations and businesses that have made the shift in data-driven culture have experienced an improvement in the time taken for one operational cycle to complete. 

“83% of businesses which switched to data-driven culture have experienced shorter operational cycles.”

Moreover, the shift in the time taken per cycle was coupled with the fact that organizations have implemented the data-driven model witnessed a reduction of 12% in the organizational costs.
 
Thus, by harnessing the power of data analysis, the organization can create a detailed plan for customer-focused marketing messages. Using data to make customer communication more personalized can lead to a mass-marketing campaign. 

“By implementing data driven culture, organizations have witnessed a 12% decrease in operational cost”

Dynamically tailoring the experience and needs of the customer or the audience can result in an increase in the online relating. Delivering a delightful personalized experience is now what every retailer must aim for. 

A flow chart with five blocks and four arrows connecting them
  • Integrating the data stack 

Doesn’t it sound exciting when I say that disparate data sources can be rolled up into one single tool? Simply put it there are tools that marketers can use to efficiently execute initiatives, across a number of channels at the same time. 

The list includes:

  • Social Media scheduling tools like Buffer and Hootsuite
  • Analytical tools like Kissmetrics and Google Analytics 
  • CRM software like Salesforce and HubSpot

Integrating these tools isn’t just pleasant when it comes to offering leading digital experiences, but it also constructs a consistency across the marketing stack. 

In the age of assistance, where the customers want brands to give them exactly what they desire for, leading marketers use integrated data and technologies to understand their audience. 

According to a recent study by the Association of National Advertisers, companies that spend the most on marketing technologies yield an average of 10 percent new revenue.  Integrating marketing and advertising stack provides the organizations with a better understanding of the customer. 

Intent signals for the shoppers that might be weak on their own become powerful when they are integrated. Things like search intent, videos viewed, and the content that is read across the web help the marketers engage and assist customers just at the moment they need.

  • Optimizing your digital assets 
Website is one of the most important assets in digital experience

This is the mantra which should be followed by every organization. Your website is literally a virtual storefront for the brand, and it has only a few seconds to mark a solid impression.

The digital marketing industry is rich with acronyms like SEO (search engine optimization), SEM (search engine marketing), SERPs  (search engine result page). Search engine marketing would have numerous changes. Those changes would include search engine algorithms, change in customer behavior, and evolvement of search channels.

With these changes come opportunities which are customer, market, and search driven. Optimization of digital assets would refer to the practice of taking inventory of the company’s marketable and digital assets and implementing a process of keywords for promoting relevant channels. 

The search done by end users tends to be more conversational in nature. Content creators and marketers are challenged to meet those demands through more robust asset optimization efforts without losing the essence of the organization. Each website has digital assets including web pages, images, videos, blog post etc. A digital asset optimization strategy identifies content in all these forms and formats and applies them to qualify what we call as “promotion”. 

Dedicating the time to design and understand the needs of the customer is the most effective way to win the race in digital transformation. 

  • Intuitive Graphical User Interface and the Web Property

Once you have identified your customer, it is important to recognize the barriers they face while engaging with your website or product.  
 
Users are becoming more experienced with the use of digital display and expect a splendid experience on the platform they choose. Providing the user with immediate visual feedback about each action, and allowing multiple programs to display simultaneously is the key for a better user experience
 
One of the major advantages of using minimalistic and easy graphics and icons is that it makes the system operation more intuitive, and easier to learn. 
 
Allowing the users to tweak elements on the screen using a mouse, stylus or even fingers, GUI lets them process words and web design program as an option for a better customer experience.
 

A screenshot of the home display of a laptop with various application icons on itSimpler GUI can make the process more intuitive and user-friendly


How does Drupal Help in Constructing Strong Digital Customer Experience?

Since the release of Drupal 8 (in 2015), the CMS has opened a large variation of digital experience possibilities for millions of websites and applications. 

Focussing on the customer experience was the part of the idea. It is a high-quality open source content management system which not only provides strong digital customer experience but understands the website users to move from website to different devices. 

How? 

Let's read.

  • CRM Integration

A CRM software records the customer's information (phone number, email address, social media profile) to create a user persona and give an understanding of user choices to the organization. 

Drupal 8 supports the website creators to keep using their favorite marketing tools to stimulate customer interest and actions. With easy third-party integration, merging a CRM with your Drupal website is a seamless process.  

Even if Drupal is a content management system at the core, it is evolving into a web experience management system delivering quality content across a range of device and third-party system. 

  • Mobile Responsive 

This is a technological constraint era and our world has gone all innovative. The number of mobile web users is increasing with each passing day. According to the new 2018 Global Digital suite of reports from “We Are Social” more than 3 billion people around the world now use social media each month, with 9 out of 10 users accessing their chosen platform as mobile. 

It is important to make sure that the website is accessible for mobile users, and set campaigns and content targeted for the mobile users. 

Drupal caters to this need as it is mobile responsive and offers out-of-the-box mobile theme, building a strong platform for the organizations to bring a quality audience. 

One of the most inevitable advantages of choosing Drupal is that it works well for almost all devices including iPhone, iPad, Android, and even blackberry. With each improved version of Drupal, the focus is centered around a “Mobile first architecture”. So it meets even the future needs of the mobile experience.

A laptop, desktop, tab, and phone showing a cycle and text in the screen

 

  • Personalization

Web personalization indicates that on the basis of attributes like profile, behavior and the location of the internet users, the website creator should construct a dynamic and personalized content to provide the users with the relevant website experience.

Website personalization is the key to the effective user experience.

It becomes important for the websites to implement personalization, allowing them to customize and display content. 
Personalization is one of the most conventional features of Drupal 8, letting the website holder determine what a user is interested in, and based on the data collected, Drupal allows the user to create a good user experience and uphold the demands of the audience. Its services initiatives have streamlined the process of sharing meaningful information with external systems.

There is no limit as to which marketing tool the user can apply, as Drupal managed content can be turned standardized data sharing formats. 

  • Multilingual 

Customer support is the backbone of the business, and offering multilingual support has become increasingly important for the business and the organizations. 52.4% of online customers prefer to buy products in their native language (according to a report by Common Sense Advisory), and the percentage was higher in certain countries like Japan and France. 

What Next to Expect in Drupal?

Drupalcon Seattle 2019 logo with a guitar and text on it

DrupalCon Seattle 2019 will also focus on improving and evolving the needs of customers with sessions on Content and Digital Marketing.

The track would cover the sessions on overall customer experience and ways to improve it. Discussions around the role of CMS (and Drupal specifically) in the world where personalization, automation and customer experience would be the prime focus.

Whether you are using a Drupal-specific tool or integrating third-party marketing platforms, there are many critical things that will be discussed.  

To Wind Up

Understanding and measuring customer experience is the biggest challenge faced by organizations. Customer’s expectations are higher than ever and word of the mouth travel fast. As the customer becomes even more powerful with digital innovation, the importance of customer experience becomes more vital. It includes the identification of consumer brand interaction and the perception of the audience.

At  OpenSense Labs, we aim at improving your customer's journey by nurturing and taking care of the methods that entirely focuses on the experience. Contact us at [email protected] to discuss your customer strategies for higher retention and increased revenues.

Nov 19 2018
Nov 19

Delicious. Sweet. Yummy. You may taste the jam and say these words or just the thought of jars containing jam stacked together may propel you to blurt out these words. Talking about the stack, in the technological space, we no longer talk about operating systems, specific web servers, backend programming languages or databases. In the web development arena, we think of different sorts of development stacks like the LAMP stack, the MEAN stack etc. And there is a new kid in the block called JAMstack which is not about specific technologies but a new way of building websites and apps.

Jars stacked together consisting an image of a tree on them and a red cloth over the lid.


What is the concept behind JAMstack?

To build a web development project with the JAMstack, three integral criteria should be met namely:

  • JavaScript: It governs the dynamic programming during the request/response cycle running completely on the client (e.g. Vue.js, React.js etc.)
  • APIs: Abstraction of all the server-side processes or database actions into reusable APIs is done which are accessed over HTTPS with JS (e.g. Twilio, Stripe)
  • Markup: By leveraging a site generator for content sites or a build tool for web apps, templated markup must be prebuilt at deploy time (e.g. Gatsby.js, Webpack).

Benefits of JAMstack

  • High performance: When it comes to reducing the time to first byte, pre-built files served over Content Delivery Network (CDN) enhances web performance. You do not have to wait for the pages to build on the fly as JAMstack allows you to generate them at deploy time.
Graphical representation showing uneven lines in purple and grey colours to explain time to first byteA high TTFB penalizes the Speed Index of a page
Source: DareBoost Blog
  • Robust Security: Abstraction of server-side processes into microservice APIs minimises the security threats. Also, the domain expertise of specialist third-party services can be utilised.
  • Better Scalability: CDNs are a great way of ensuring scalability when your deployment amounts to a stack of files that can be served anywhere.
  • Great developer experience: More targeted development and debugging can be done by the developers with loose coupling and separation of controls. Moreover, the need to administer a separate stack for content and marketing goes away with the expanding selection of CMS options for site generators.

Best practices

  • The entire site must be served on CDN. Rather than living on a single server, JAMstack projects can be distributed as they do not rely on server-side code.
  • Atomic deploys should be employed. This ensures that no alterations go live until all the changed files have been uploaded.
  • Governance of instant cache purges by CDN ensures that when a deploy goes live it really goes live.
  • Everything should dwell in Git. This minimises contributor friction and streamlines staging and testing workflows.
  • Utilise modern build tools like Babel, PostCSS, Webpack etc.
  • Automate markup builds. This is because JAMstack markup is prebuilt and content alterations won’t go live unless and until you run another build.

How is JAMstack different from other development stacks?

Three columns with headings LAMP, MEAN and JAM stack with icons below representing different technologiesSource: Memory Leak’s blog | Medium

Jamstack is an alternative to the LAMP (Linux, Apache, MySQL, PHP) and MEAN (MongoDB, Express.js, Angular and Node.js) stacks.

LAMP is used to build dynamic websites and web apps. In this, pages are reconstructed from a database on request instead of being held as flat documents ready for delivery. It is easy to add content and modify them. However, JAMstack delivers content at a much faster speed.

MEAN and LAMP are more similar to each other and are very different from JAMstack.

MEAN is also designed for building dynamic websites and apps. All the MEAN components are written in JavaScripts. The key difference is that MEAN still assembles pages from databases on request like LAMP. MEAN and LAMP are more similar to each other and are very different from JAMstack.

Two columns with the heading LAMP workflow and JAM workflow and bullet points below themSource: Memory Leak’s blog | Medium

Implementing JAMstack and Drupal together

Web development projects that rely on a tight coupling between client and server is not built with the JAMstack. This comprises of a site built with a server-side CMS like Drupal, a monolithic server-run web app relying on backend language and a single page app that is using isomorphic rendering for creating views on the server at runtime. So, how can Drupal and JAMstack work together?

[embedded content]


In a session held at Bay Area Drupal Camp 2018, a demonstration showed a method of integration of Gatsby with Drupal. Gatsby is one of the leading JAMstack based static page generators. The demo showed that Gatsby is not a replacement for Drupal and Drupal would still control the content, site structure and how content is created. Whereas Gatsby would be governing little things like the public facing site.

Gatsby is not a replacement for Drupal and Drupal would still control the content

It talked about ‘Gatsby Drupal Kit’ which is under development stages that can help jumpstart Gatsby-Drupal integrations. It is designed to work with a minimal Drupal install as a jumping off point and provide a structure that can be elongated to a larger and complex site.

The demonstration focused on a base Drupal 8 site connected with Gatsby and the best practices for making Gatsby work for real sites in production. The emphasis was also on the sane patterns for translating Drupal’s structure into Gatsby components, templates, and pages.

Conclusion

Once you have fully understood the specific risks and put in place appropriate workflows, the JAMstack exhibits its share of opportunities. Creating a static site takes time and needs an architecture involving orchestration of several solutions. Today, it may seem intricate but so was your first dynamic site involving choosing a host, master FTP, juggling the web server logs and so on. With experience, JAMstack users would be more and more adept in leveraging its full potential.

OpenSense Labs has been making the digital transformation dreams come true for its partners with a suite of services.

Contact us at [email protected] to leverage JAMstack for Drupal sites.

Nov 16 2018
Nov 16

From the vantage point of a school, some of the features that prove its greatness are a library with a superabundance of books, science laboratory with advanced scientific instruments, projection room with 3D technology and so on. Today, where almost everything is happening through the internet, the education sector is not left far behind. E-learning platforms have taken the world by storm with its unprecedented provisions of online learning. And E-learning platforms need great features as well to be able to disseminate knowledge across multiple channels efficaciously.

Written equations on brown wooden board


A lot of significant features can spring up in your mind that you think should be in an e-learning platform. It can be tons of courses on a plenitude of subjects for the learners. Or it can be digital certifications that can be provided for a successful completion of a course. Drupal comes with some amazing set of modules for enabling essential features of an e-learning platform. Let’s look at some of the important features and see how Drupal has the answer for that.

Courses

Modern learners are infatuated with the notion of getting a top-quality education and love to choose from an extensive list of courses on an e-learning platform. Some of the Drupal modules that can be helpful in creating courses include:

Course module lets you build e-learning courses with any number of tracked requirements for completion. It allows any content type to be used as an e-learning course comprising of graded or ungraded course subjects. It offers course object API for defining learning objects that can be added to a workflow.

For assigning and mapping credit types to learner profiles and courses, Course Credit module is useful. On successful completion of an activity, online learners will be able to receive or claim credit for which they are eligible. 

To expose Course module as a Course object, Course relationships module is effective which allows parent courses to include sub-courses. It can grant access to sub-courses by enrolling into or purchasing a parent course.

Quiz

Through online tests and quizzes, an instructor can track the progress of students and analyse the effectiveness of the curriculum. Simultaneously, it paves the way for the students to track their own progress and improve their skills accordingly.

Quiz module allows you to build graded analytics in Drupal where a quiz is given as a series of questions and the answers are, then, stored in the database. During or after the quiz, the scores and results are displayed. Administrators can also provide automatic or manual feedback. This module can be leveraged as an object in a larger Learning Management System (LMS) or a supplemental classroom activity.

Certification

Skills and certification tracking is one of the important features of an e-learning platform.

Certificate module helps in creating and awarding PDF certificates with the help of tokenised HTML templates. It provides the interface for governing custom certificate templates and mappings and allows integration with Wysiwig for rich certificates.

Open badges, which are digital images used to recognise an individual’s skills and achievements, can be created with Drupal. Open digital badging module helps in providing a Mozilla OBI compliant badge empowered by the learning system.

To create badges earned by students on their successful completion of a course or a class, Opigno Mozilla Open Badges App module lets you integrate Opigno LMS with Mozilla Open Badges. In this, badges will be exhibited in the user profile and can be automatically synchronised with Mozilla Backpack.

Social learning/ Message boards

E-learning platforms should allow students to learn from one another.

Modules like Opigno Messaging and Opigno Forum, which are related to Opigno LMS distribution, govern the private messaging feature to let users share messages between them. It allows you to select a list of recipients and start a discussion thread with the selected users. It is worth noting that these modules are not covered by Drupal’s security advisory policy.

Social Login and Social Share modules eliminate the need of creating a username and password by allowing you to log in using the social network sites and helps in sharing the content with your network.

Consistent instructor presence

The role of the instructor is significant in e-learning as he or she is instrumental in encouraging and inspiring the students.

Opigno instructor-led training module helps in implementing instructor-led training (ILT) entity. It can be added to learning paths in combination with online modules and virtual classrooms. ILT sessions let you register attendance of users and provide them with a grade. These sessions can be made mandatory in the learning path and are automatically added to the user’s calendar. Also, note that this module is not covered by Drupal’s security advisory policy.

A well-designed LMS

A streamlined and a well-designed LMS means that it should be easy to navigate, well-organised, and must contain high-quality content.

The LTI Tool Provider module allows a Drupal site to act as a Learning Tools Interoperability (LTI) Tool in any LMS that supports the LTI standard. LTI compliant LMSs include Angel, Blackboard Learn, Moodle, and Sakai. Please note that this module is not covered by Drupal’s security advisory policy.

Kaltura module helps in integrating the Kaltura video platform capabilities into Drupal thereby allowing you to instantly enrich your Drupal site with video, audio, and images.

Chamilo integration module allows integration of Drupal with Chamilo LMS by offering ways to see Chamilo resources into Drupal blocks.

Would love to have a starter kit for building the LMS? Open LMS distribution, which is developed and actively maintained by OpenSense Labs, is a learning management system based on Drupal 8 that comes with robust features.

Open LMS offers numerous kinds of content type like textual study material, video lectures, documents that can be utilised as a course material for students. Also, it lets you add H5P, HTML5 based interactive video content type, to the course.

Moreover, it provides a quiz and subjective test functionality, assignment functionality powered by Webforms, and calendar functionality to schedule courses. Please note that Open LMS is not covered by Drupal’s security advisory policy.

Conclusion

E-learning platforms have changed the landscape of education. And Drupal as an open source software and a robust content store helps in innovatively build an efficient e-learning platform.

Some of the significant features have been discussed in this blog post that is fulfilled by Drupal’s incredible set of modules. OpenSense Labs has been powering digital experience dreams of its partners with its expertise in Drupal development.

Contact us at [email protected] to build a great e-learning platform with Drupal.
 

Nov 16 2018
Nov 16

When the whole world works on the simple facet of fellowship how can the healthcare industry not constitute to the same concept? 

Development and marketing collaborations between the healthcare organizations and web development agencies can be mutually beneficial. Whether your healthcare organization is built on Drupal or if you are looking for redesign and new prospects with Drupal, there are a number of things that have to be kept in mind, and if the main agenda is to collaborate, a series of questions have to be answered.

a blue drupal logo with three pair of hands holding a notepad, syringe, bottle, and test tube


What is it about Drupal that makes leading healthcare organizations chose this platform? How has Drupal evolved to help healthcare organizations serve better to their patients? 

Reasons Why the Healthcare Industry Should Choose Drupal 

  • Web Accessibility 

Web Content Accessibility Guidelines (WCAG) 2.0 commands that all the websites should be accessible to everyone regardless of their age, ability, or a combination of technology and ability. With the release of Drupal 7, the Drupal community is committed to providing universal accessibility not just for the end users but for the developers too. 

Web accessibility is the comprehensive practice of guaranteeing interaction with, or access to the web, for all the people irrespective of their abilities.

Flexible and fully customizable theming, and features make it possible for Drupal sites to meet WCAG accessibility and section 508 requirement. Some of the web accessibility features may include:

  • The provision of HTML5, which provides new and better semantic components that tell the browser and assistive technologies about the type of content coming forward, and how the complementary information provided (HTML) is related to the content.
     
  • The provision of “Drupal.announce()”, a method which helps the pages update in a non-visual manner. 
     
  • Without breaking the tab order in local navigation flow, Drupal directs non-visual and non-mouse users to access prime element on the page in a logical order. With its tabbing manager, Drupal defines tab orders explicitly for keyboard users. 
     
  • Other Drupal web accessibility modules such as text resize, style switcher, alt text, CKEditor abbreviation, high contrast, it makes it easy to make a universal user-friendly website. 
     
  • Drupal also uses fieldsets which give a visual diagram around the field gathering. It breaks the form into subsections, making it easier to understand for visually impaired people.

The Drupal accessibility handbook and theming guidelines ensure that the Drupal themers are well aware of the best practices while they are building their website. themes

three blue keys with a man in wheelchair, ear, and a man walking with a stick on a white keyboard
  • Third-Party Integration

The ability of Drupal to integrate with third-party applications is the primary building block of generating a robust functional system. Making the task easy for developers, seamless third-party integration allows a bonus for marketing strategic stand too. 

Integrating Drupal with an EHR system 

The Electronic Health Record (EHR) system is steadily gaining its ground in the healthcare industry. Used for electronically storing up data of the patients in the digital format it offers a completely new level of playing field for both the patients and providers. 

Bestowing the physicians with faster access to the medical records, EHR avoids errors and minimizes the cost which is associated with paperwork. 

Drupal, when integrated with an EHR keeps the data protected at all times and prevents duplicacy of the content, while still permitting the user to interact with the view and input the information which is necessary for the role.

It securely shares the information with patients and other clinicians assisting providers more efficiently diagnose patients, reduce medical errors, and provide safer care

Some of the most adopted EHR systems in use that can be integrated with Drupal are NueMD e-MD, PHI etc.  

A desktop and tablet with text and images in the screen
  • Mobile first design 

Around 61.2% of the worldwide population is indulged in the use of a smartphone, and in such an innovative environment the manipulation of mobile compatible websites is hard to ignore upon. 

Incorporated with mobile friendly themes which is suitable for any screen size, Drupal works well for almost all devices which include iPhone, iPad, Android, and even blackberry. There is no doubt that having a medical based mobile website armed with all relevant information to target a diverse group of people and partners is a profitable mechanism for every medical organization. 

Drupal makes it easy for users to have a better mobile experience on healthcare websites. The mobile first designs let them set up online profiles, helps them in maintaining records, and other medical practices. 

  • Security 

According to HIPAA Journal, there have been about 2,181 healthcare data breaches (2009-2017) involving more than 500 records. 

A graph with blue graph lines


Healthcare industry is massively reliant on technology these days, not just the hardware to cure illnesses, but also when it narrows down to send, retrieve, and store data. 

Drupal’s lockdown security and publishing of detailed security reports have been a major shield to the organizations. With the evolution in the Drupal system, the platform has conquered a huge reputation for its security and robust performance. Hospital websites store an ample number of data, records, reports, digital assets in their database. 

The modules and extensions are provided with a layer of extra security to the website, marking Drupal a highly secure CMS.  

Not only this, but Drupal also contributes to resolving security issues that are supported by the security advisor. It also offers help for contributing module maintainers in fixing security issues. 

  • Multilingual feature 

With medical tourism getting popular and healthcare technology advancing sparingly forcing people to look for better medical assistance across various parts of the globe. It is not uncommon to encounter patients who speak a language other than English.

To expand the access to people across the globe in healthcare,  Drupal grants 4 easy modules to translate the website into more than 94 languages providing healthcare websites a better scope of communication with the patients. It is also easy to build a custom language not available in Drupal. 

  • Better user experience and engagement 

Medical healthcare websites are often used by people in distress. And if operations, like finding the right health care provider, or finding medical records, and paying bills, should be tough and unintuitive, it would leave people more frustrated. 

In fact, Google tells us that website speed has a great impact on how people perceive it. Therefore engagement through media features and at the same time uninterrupted communication online with faster loading is important. 

With an excellent array of modules, Drupal 8 has to be the right choice for creating an engaging user-friendly website in the healthcare sector. Over the past few years, Drupal has evolved to be more flexible and better for technical as well as non-technical users, presenting a customizable administration dashboard and responsive web designs. 

Drupal lets the user personalize the website in a way they desire. Acquia Lift Connector, Drupal module, offers integration with the Acquia Lift service with an improved user experience for personalisation

Important Factors to Look for in a Drupal Partner 

Now that organizations have started using Drupal as their CMS to revamp or build their organization’s website, the next step would involve choosing up of Drupal vendors. 

Every Drupal vendor is different and posses a unique set of skills, thus choosing the right partner makes it important. This can be done by checking some vital factors which can include:

Important factors

Points to remember

Skillset

Reputation

Monitoring and Processing

Verifying about the site performance

Maintenance and technical support

 

Things to Remember Before Choosing a Drupal Partner 

  1. Do they have the right amount of healthcare experience?

    Every healthcare marketing agency has creative resources available in their vanity, but only an experienced partner adds up to the plans, solutions and original thinking. 

    Thus, no matter if the firm has beaten up with high-quality challenges or low-key struggles, every potential partner should have capabilities of providing solutions, and it can only be done when that potential partner has knowledge and experience of solving the health-related travails.

    Patients expect a very specific functionality in the health website, from providing directories to patients reports, it becomes really important to find a partner that is able to build modules and timely update them. 

    Not only this but healthcare organization are apprehended to follow HIPAA compliance guidelines which protect individuals' medical records and other personal health information. The healthcare industries can’t afford to take risks when it comes to HIPAA and PCI compliance

    One wrong or missed encryption and the company's reputation is put under the radar. Which is not only bad for the branding but also violates the rules. Therefore, demanding experience to be an important factor. 
     

  2. Do they have an adequate content strategy?

    Content strategy is important to all the healthcare websites. It is important to team up with the partner that would help you to organize your site in a way that clearly reflects the main objectives of the visitors. 

    There is a need of a  partner with an agency that will help to organize the site content in a manner that is clearly reflected on the visitor’s objectives, and build out the information architecture in Drupal. 

    Drupal’s content model can be complicated if the user is not familiar with the platform. If you operate with an experienced strategist that would help you to see the long-term vision before you start adding content into Drupal, it will help in the long run. 
     

  3. Do the goals and services match?

    A true healthcare organization partners should deliver greater cerebral and inventive values. Which includes the delivery and projection of the agendas. How to conquer it? 

    Have a serious talk about money management.  

    Many firms work on a plan to meet or exceed the possible budget. However, a partner minded organization has a cost-effective way of meeting or exceeding goals. The aim is to construct a strong measure of results, outcomes, and high return-on-investment. 
     

  4. Do they have a plan for performance measurement?

    Every organization would have projects with a certain goal. Here, it becomes an important factor for you to know how does your potential partner measure the scale of performance towards that goal?

    Benchmarking is the term which is used to compare the current performance and the overall standard. Every Drupal based agency measures and quantifies the results based on the - manual page. It describes various methods to measure the performance of the web server, allowing you to witness the performance and even improve it for the future.

    Performance measurement can also be analyzed with the help of Performance Bucket model. This model helps in making the detect-triage-diagnose process more efficient.

    Applications insights is a service that lets the developers monitor the performance, availability, and usage of the entire applications. It becomes an essential part of the application lifecycle.

    As mentioned above, a user tends to abandon a website if it doesn’t load after 3 seconds, and when it comes to healthcare websites, loading time becomes an important factor. Having a predefined performance budget would allow you to enforce better results.

    Your long-term potential partner should be induced by a good design team and development cycles which would help in maintaining the value limits that takes care of the website performance. Performance Budget is one such design and development which would help the user to establish and maintain the culture of an organization, helping them to deliver a smooth.A blue cloud which shows a life cycle, the left and right side of the has a speed clock with a drupal sign
     

  5. Long-term partnership

    It is true that Drupal healthcare websites are quite amazing but on the other hand, they are big and complex. Thus, make sure that you pick an organization that would be there to support you even after the procedure of website-went-live is done. A long-term partner is needed if the custom modules built on the website requires regular updates and security patches. 
     

  6. What methodologies and tools do they use to manage their project?

    Drupal has several modules several distribution and modules developed to perform several project management functions. A clearer idea on which methodology is right for what project contributes to the desired goals in the end. There are several project management frameworks which should be used by an organization to build a successful project. Agile frameworks like:
     

    • JIRA
    • Scrum
    • Kanban
    • Scrumban

Case study for PMG

Produce Market Guide is a product of a Farm Journal which shares information on fresh fruits and vegetables. The advanced search feature on the website was slow, which resulted in a poor user experience. 

red and white homepage with text and two boxes

To fulfill the needs and the standards of loading time, the site was mapped and decoupled with the Elastic search. The new website now is a lot user-friendly with search application and better loading result. Because of the third party integration like Kibana and Logstash, the admin can now track the user behavior and personalize the user experience. The project was completed within a month which followed the principles of SCRUM and AGILE with team fluidly arranging the needs accordingly. 

Future of Healthcare Marketers using Drupal 

As an organization, the requirements are bound to change from time to time and using a single vendor or a specific partner can sometimes be the hindrance. This is a common scenario in healthcare industries. Fortunately Drupal makes a lot of things easy for healthcare marketers or organizations.

It prevents everyone from getting caught up with a single vendor

Drupal exponential growth in the healthcare industry has been rapidly increasing. With the healthcare industry in the third position of top 10 industries using Drupal, it continues to grow mature. 

A blue bar graph on white background

High profile hospitals like C.S Mott Children’s Hospital, Duke medicine, Memorial Sloan-Kettering Cancer Center, Northwest medicine etc has further elevated Drupal’s profile. It’s these types of reputed organizations with a progressive digital team which tells us that Drupal has a bright future in the healthcare sector. 

Conclusion

The Drupal platform is an open source CMS, there are many agencies around the country that have developers familiar with Drupal. Having developers who are familiar with Drupal isn’t the same as having a team that understands the inherent complexity of healthcare websites. 
 
OpenSense Labs believes in providing the best Drupal partnership for you. Contact us at [email protected] for a rich and conducive partnership.

Nov 14 2018
Nov 14

"Information is a source of learning. But unless it is organized, processed, and available to the right people in a format for decision making, it is a burden, not a benefit." - C. William Pollard, Chairman, Fairwyn Investment Company

Have you always secretly wanted to spend your evenings writing symphonies, learning about filmography or assessing climate change? Studying niche subjects have traditionally been for niche students. But e-learning platforms have changed all that with the provision for learning almost any subject online.

A student in the front and two behind him sitting on their chairs with a paper and a pen in their hands


Corporate e-learning has witnessed a stupendous 900% growth in the last decade or so. With more and more e-learning platforms flourishing, organisations are striving to be the best to stand apart from the rest. Drupal has been a great asset in powering education and e-learning with its powerful capabilities that can help enterprises offer a wonderful digital experience. Let’s trace the roots of e-learning before diving deep into the ocean of possibilities with Drupal for building an amazing e-learning platform.

Before the internet era

Infographic with ten rows, icons and text showing the timeline of e-learningSource: eFront

A brief history of e-learning can be traced through the compilation made by eFront. Even before the internet existed, distance education was being offered. In 1840, Isaac Pitman taught shorthand via correspondence where completed assignments were sent to him via mail and he would, then, send his students more work.

Fast forward to the 20th century, the first testing machine was invented in 1924 that enabled students to test themselves. The teaching machine was invented in 1954 by a Harvard professor for allowing schools to administer programmed instruction to students. In 1960, the first computer-based training program (CBT program) called Programmed Logic for Automated Teaching Operation (PLATO).

At a CBT systems seminar in 1999, the term ‘e-learning’ was first utilised. Eventually, with internet and computers becoming the core of businesses, the 2000s saw the adoption of e-learning by organisations to train employees. Today, a plenitude of e-learning solutions are available in the form of MOOCs (Massive Open Online Courses), Social platforms and Learning Management System among others.

E-learning: Learn anywhere, anytime

In essence, e-learning refers to the computer-based educational tool or system that allows you to learn anywhere and at any time. It is the online method of building skills and knowledge across the complete workforce and with customers and partners. It comes with numerous formats like the self-paced courses, virtual live classrooms or informal learning.

E-learning refers to the computer-based educational tool or system that allows you to learn anywhere and at any time

Technological advancements have diminished the geographical gap with the use of tools that can make you feel as if you are inside the classroom. E-learning provides the ability to share material in all sorts of formats such as videos, slideshows, and PDFs. It is possible to conduct webinars (live online classes) and communicate with professors via chat and message forums.

There is a superabundance of different e-learning systems (otherwise known as Learning Management Systems or LMS) and methods which enable the courses to be delivered. With the right kind of tools, several processes can be automated like the marking of tests or the creation of engrossing content. E-learning offers the learners with the ability to fit learning around their lifestyles thereby enabling even the busiest of persons to further a career and gain new qualifications.

Merits and Demerits

Some of the major benefits are outlined below:

  • No restrictions: E-learning facilitates learning without having to organise when and where everyone, who is interested in learning a course, can be present.
  • Interactive and fun: Designing a course to make it interactive and fun with the use of multimedia or gamification enhances engagement and the relative lifetime of the course.
  • Affordable: E-learning is cost-effective. For instance, while textbooks can become obsolete, the need to perpetually acquire new editions by paying exorbitant amounts of money is not present in e-learning.

Some of the concerns that are needed to be taken care of:

  • Practical skills: It is considered tougher to pick up skills like building a wooden table, pottery, and car engineering from online resources as these require hands-on experience.
  • Secludedness: Although e-learning enables a person to remotely access a classroom in his or her own time, learners may feel a sense of isolation. Tools such as video conferencing, social media and discussion forums can allow them to actively engage with professors or other students.
  • Health concerns: With the mandatory need of a computer or mobile devices, health-related issues like eyestrain, bad posture, and other physical problems may be troublesome. However, sending out proper guidelines beforehand to the learner like correct sitting posture, desk height, and recommendations for regular breaks can be done.

Building Yardstick LMS with Drupal

OpenSense Labs built Yardstick LMS, a learning management system, for Yardstick Educational Initiatives which caters to the students of various schools of Dubai.

Homepage of Yardstick LMS with logos of schools containing leaves, candle, open books, and firestickYardstick LMS Homepage

The architecture of the project involved a lot of custom development:

1. Yardstick Core

This is the core module of the Yardstick LMS where the process of creating, updating and deleting the nodes take place.

2. Yardstick Quiz

We built this custom module for the whole functionality of the quiz component. It generates a quiz, quiz palette and quiz report after quiz completion based upon the validation of the visibility of the report.

Quiz report of Yardstick LMS with table consisting of columns showing the list of schools, students and grades.


We could generate three kinds of reports: 

  • An individual-level quiz where one’s performance is evaluated
  • A sectional-level report where performance for each section is evaluated
  • Grade-level report where performance for all the sections is compared and evaluated.

For the quiz, we had different sub-components like questions, options, marks, the average time to answer, learning objective, skill level score, and concept. The same question could be used for different quiz thereby minimising the redundancy of the data. Also, image, video or text could be added for questions.

Subcomponents of yardstick LMS with a tabular column for assessing the learning objective and two of the metrics coloured yellow and red.


3. Yardstick Bulk User Import

This module was built to assist the administrators in creating users all at once by importing a CSV file. Also, there is an option to send invitation mail to all the users with login credentials.

Message box for importing users with a blank box and a submit button


4. Yardstick Custom Login

We provided a custom login feature where same login credentials could be used to log into the Yardstick system. That is, we provided an endpoint for verifying the login credentials and upon success, users were logged in.

5. Yardstick Validation

This module offers all the validation across the site whether it is related to access permission or some time validation.

6. Yardstick Challenge

It offers the user an option to submit a task which is assigned to them where they are provided with text area and file upload widget.

Yardstick LMS has an intricate structure

On the end user side, there is a seamless flow but as we go deeper, it becomes challenging. Yardstick LMS has an intricate structure.

We had two kinds of login:

  • Normal login using Yardstick credentials
  • And the other for school-specific login like the Delhi Public School (DPS) users.
Flowchart with rectangles and circles of different colours explaining Yardstick LMS custom loginYardstick LMS custom login for DPS users

For DPS users, we used the same login form but a different functionality for validating credentials. DPS school gave us an endpoint where we sent a POST request with username and password. If the username and password were correct, then that endpoint returned the user information.

If the username was received, we checked on our Yardstick system if the username exists. If it does not exist, then we programmatically created a new user with the information that we received from the endpoint and created a user session. And if does exist, then we updated the password on our system.

Yardstick LMS is designed to govern multiple schools at the same time

We designed Yardstick LMS in such a way that multiple schools can be governed at the same time. All the students of various schools will be learning the same content thereby building uniformity.

The core part of our system dwells in the modules. The module is a content type that can store numerous information like components, concept, description, objective, syllabus among others. 

Several different components can be added like Task, Quiz, Video task, Extension, Feedback, Inspiration, pdf lesson plan, Real life application, and Scientific principles.

Yardstick LMS real-life application component page with an image showing animated human figures and atomic theory written above themYardstick LMS Real life application component page

Schools could opt for different modules for different grades. When a module was subscribed by a school, a clone module of the master module was created and the school copy was visible only to the school. School version could be modified by the school admin as per their needs and preferences. Master module remained the same. While creating a subscription, administrator had to provide the date so that the components were accessible to the students. School admin could set different dates to different components and only the components with past date were accessible.

Flow chart showing rectangles, squares and elliptical circle of different colours to explain module subscription to school in yardstick LMSFlow Diagram of module subscription to school

Also, we provided an option to create a dynamic feedback form for the modules for analysis. Yardstick Admin had the option to design and create a feedback form as per their requirement and could assign it to a particular module. Different types of elements could be utilised for designing the form like rating, captcha, email, range slider, text field, checkboxes, radio buttons and so on.

Message box showing star icons, a blank box and a submit button


Students and teachers need to submit their feedback for each of the modules. On the basis of this, Yardstick team try to improve the content of the system.

Session evaluation page of yardstick LMS with a set of questions on the left and different options on the right and a blank box at the bottom


Also, various roles were defined for users such as Yardstick Administrator, School Administrator, Teacher, and Student.

1. Yardstick Admin

Yardstick Admin can perform all the operations. He or she can create new users, grant permissions and revoke them as well.

2. School Admin

It has the provision for handling all the operation which are only related to their school. School Admin handles the modules and their components and can import user for their school. All school reports and task submissions are visible to School Admins.

3. Teachers

Teachers can view modules and components assigned to their classes and provide remarks to the students for multiple components and they can view all kinds of reports.

4. Students

They can attempt quiz, submit tasks, view components and view their own reports.

What’s the future of e-learning?

According to a report on Research and Markets, the e-learning market is anticipated to generate revenue of $65.41 billion by 2023 with a growth rate of 7.07% during the forecast period.

The report goes on to state that with the advent of cloud infrastructure, peer-to-peer problem solving and open content creation, more business opportunities would pop up for service providers in the global e-learning market. The introduction of cloud-based learning and AR/VR mobile-based learning will be a major factor in driving the growth of e-learning.

The growth of the e-learning market is due to the learning process enhancements in the academic sector

According to Technavio, the growth of the market is due to the learning process enhancements in the academic sector.

Infographic showing statistics on e-learning market with icons representing bar graph, speedometer, horizontal lines, and a bulbGlobal self-paced e-learning market 2019-2023 | Source: Technavio

Following are major trends to look forward to:

  • Microlearning, which emphasises on the design of microlearning activities through micro-steps in digital media environments, will be on the rise.
  • Gamification, which is the use of game thinking and game mechanics in a non-game context to keep the users engrossed and help them solve more problems, will see increased adoption rates.
  • Personalised learning, which is the tailoring of pedagogy, curriculum and learning environments to meet the demands of learners, can be a driving force.
  • Automatic learning, like the one shown in the movie The Matrix where a person is strapped onto a high-tech chair and a series of martial arts training programs are downloaded into his brain, can be a possibility.

Conclusion

It’s a world which is replete with possibilities. As one of the most intelligent species to walk on this earth, we perpetually innovate with the way we want to lead a better lifestyle. We learn new things to gain more knowledge. And in the process, we find ways of improving our learning experience. E-learning is one such tech marvel that promises to be a force to reckon with. It is not a disrupting technology but something that is going to get bigger and bigger in the years to come.

As a content management framework, Drupal offers a magnificent platform to build a robust e-learning system. With years of experience in Drupal Development, OpenSense Labs can help in providing an amazing digital experience. 

Contact us at [email protected] to build an e-learning system using Drupal and transform the educational experience.

Nov 03 2018
Nov 03

A machine learning model, that could lead a driver directly to an empty parking spot, fetched the second prize in the Graduate level: MS category at the 2018 Science and Technology Open House Competition. It goes without saying that dreams of computer systems with godlike powers and the wisdom to use them is not just a theological construct but a technological possibility. And sci-fi éminence grise Arthur C. Clarke rightfully remarked that “any sufficiently advanced technology is indistinguishable from magic.”

A robot sitting on a brown chair, draped in a red blanket, working on a laptop with a glass of wine beside him and river water falling over a real human working on a laptop


Artificial Intelligence (AI) may be the buzzword of our times but Machine Learning (ML) is really the brass tacks. Machine learning has made great inroads into different areas. It has the capability of looking at the pictures of biopsies and picking out possible cancers. It can be taught to predict the outcome of legal cases, writing press releases and even composing music! However, the sci-fi future where a machine learning beats a human in all the conceivable department and is perpetually learning isn’t a reality yet. So, how does machine learning fit into the world of content management system like Drupal? Before finding that out, let’s go back to the times when computers did not even exist.

Machine learning predates computers! 

In this day and age, self-driving cars, voice-activated assistants and social media feed are some of the tools which are powered by machine learning. Compilations made by BBC and Forbes show that machine learning has a long timeline that relies on mathematics from hundreds of years ago and the elephantine developments in computing over the years.

Machine learning has a long timeline that relies on mathematics from hundreds of years ago and the elephantine developments in computing over the years

Mathematical innovations like Bayes’ Theorem (1812), Least Squares method for data fitting (1805) and Markov Chains (1913) laid the foundation for modern machine learning concept. 

In the late 1940s, stored-program computers like Manchester Small-Scale Experimental Machine (1948) came into the picture. Through the 1950s and 1960s, several influential discoveries were made like the ‘Turing Test’, first computer learning program, first neural network for computers and the ‘nearest neighbour’ algorithm. In the nineties, IBM’s Deep Blue beat the world chess champion.

Post-millennium, we have several technology giants like Google, Amazon, Microsoft, IBM and Facebook today actively working on more advanced machine learning models. Proof of this is the Alpha algorithm, developed by Google DeepMind, which beat a professional in the Go competition and it is considered more intricate than chess!

Discovering Machine Learning

A gif showing a flowchart of machine learning through icons like computers, bulb, magnifying glass, Rubik's cube and boxes.

Machine learning is a form of AI that allows a system to learn from data instead of doing that through explicit programming. It is not a simple process. As the algorithms ingest training data, producing more accurate models based on that data is possible.

Advanced machine learning algorithms are composed of many technologies (such as deep learning, neural networks and natural-language processing), used in unsupervised and supervised learning, that operate guided by lessons from existing information. - Gartner

When you train your machine learning algorithm with data, the output that is generated is the machine learning model. After training, when you provide an input to the model, an output will be given to you. For instance, a predictive algorithm will build a predictive model. Then, when the predictive model is provided with the data, you receive a prediction based on the data that trained the model.

Difference between AI and machine learning

Illustration showing small boxes inside and outside a bigger box to explain machine learning and artificial intelligenceSource: IBM

Machine learning may have relished a massive success of late but it is just one of the approaches for achieving artificial intelligence.
 
Forrester defines artificial intelligence as “the theory and capabilities that strive to mimic human intelligence through experience and learning”. AI systems generally demonstrate traits like planning, learning, reasoning, problem solving, knowledge solving, social intelligence and creativity among others.
 
Alongside machine learning, there are numerous other approaches used to build AI systems such as evolutionary computation, expert systems etc.

Categories of machine learning

Machine learning is generally divided into the following categories:

  • Supervised learning: It typically begins with an established set of data and with a certain understanding of the classification of that data is done and intends to find patterns in data for applying that to an analytics process.
  • Unsupervised learning: It is used when the problem needs a large amount of unlabeled data.
  • Reinforcement learning: It is a behavioural learning model. The algorithm receives feedback from the data analysis thereby guiding the user to the best outcome.
  • Deep learning: It incorporates neural networks in successive layers for learning the data in an iterative manner.

Why is machine learning accelerating?

A pyramid split into 4 parts of a different colour with each describing the Intelligence capability business modelSource: The Apttus Intelligence Capability Model

Today, the majority of enterprises require descriptive analytics, that is needed for efficient management, but not sufficient to enhance business performance. For the businesses to scale higher level of responsiveness, they need to move beyond descriptive analytics and move up the intelligence capability pyramid. This is where machine learning plays a key role.

For the businesses to scale higher level of responsiveness, they need to move beyond descriptive analytics and move up the intelligence capability pyramid.

Machine learning is not a new technique but the interest in the field has grown multifold in recent years. For enterprises, machine learning has the ability to scale across a broad range of businesses like manufacturing, financial services, healthcare, retail, travel and many others.

Three boxes on top and three boxes at the bottom with small icons over each of the boxes representing different industries of machine learningSource: Tata Consultancy Services

Business processes directly related to revenue-making are among the most-valued applications like sales, contract management, customer service, finance, legal, quality, pricing and order fulfilment.
 
Exponential data growth with unstructured data like social media posts, connected devices sensing data, competitor and partner pricing and supply chain tracking data among others is one of the reasons of why adoptions rates of machine learning have skyrocketed.
 
The Internet of Things (IoT) networks, connected devices and embedded systems are generating real-time data which is great for optimising supply chain networks and increasing demand forecast precision.
 
Another reason why machine learning is successful because of its ability to generate massive data sets through synthetic means like extrapolation and projection of existing historical data to develop realistic simulated data.
 
Moreover, the economics of safe and secure digital storage and cloud computing are merging to put infrastructure costs into free fall thereby making machine learning more cost effective for all the enterprises.

Machine Learning for Drupal

A session at DrupalCon Baltimore 2017 had a presentation which was useful for machine learning enthusiasts and it did not require any coding experience. It showed how to look at data from the eye view of a machine learning engineer. 

It also leveraged deep learning and site content to give Drupal superpowers by making use of same technology that is exploding at Facebook, Google and Amazon.

[embedded content]


The demonstration focused on mining Drupal content as the fuel for deep learning. It showed when to use existing ML models or services when to build your own, deployment of ML models and using them in production. It showed free pre-built models and paid services from Amazon, IBM, Microsoft, Google and others.

Drag and drop interface was used for creating, training and deploying a simple ML model to the cloud with the help of Microsoft Azure ML API. Google Speech API was used to turn spoken audio content into the text content to use them with chatbots and virtual assistants. Watson REST API was leveraged to perform sentiment analysis. Google Vision API module was used so that uploaded images can add Face, Logo, and Object Detection. And Microsoft’s ML API was leveraged to automatically build summaries from node content.

Another session at DrupalCon Baltimore 2017 showed how to personalise web content experiences on the basis of subtle elements of a person’s digital persona.

[embedded content]


Standard personalisation approaches recommend content on the basis of a person’s profile or the past activity. For instance, if a person is searching for a gym bag, something like this works - “Here are some more gym bags”. Or if he or she is reading about movie reviews, this would work - “Maybe you would like this review of the recently released movie”.

But the demonstration shown at this session had advanced motives. They exhibited Deep Feeling, a proof-of-concept project that utilises machine learning techniques doing better recommendations to the users. This proof-of-concept recommended travel experiences on the basis of kind of things a person shares with the help of Acquia Lift service and Drupal 8.

With the help of Instagram API to access a person’s stream-of-consciousness, the demo showed that their feeds were filtered via a computer-vision API and was used to detect and learn subtle themes about the person’s preferences. Once a notion on what sort of experiences, which the person thinks are worth sharing, is established, then the person’s characteristics were matched against their own databases.

Another presentation held at Bay Area Drupal Camp 2018 explored how the CMS and Drupal Community can put machine learning into practice by leveraging a Drupal module, taxonomy system and Google’s Natural Language Processing API.

[embedded content]


Natural language processing concepts like sentiment analysis, entity analysis, topic segmentation, language identification among others were discussed. Numerous natural language processing API alternatives were compared like Google’s natural language processing API, TextRazor, Amazon Comprehend and open source solutions like Datamuse.

It explored use cases by assessing and automatically categorising news articles using Drupal’s taxonomy system. Those categories were merged with the sentiment analysis in order to make a recommendation system for a hypothetical news audience.

Future of Machine learning

A report on Markets and Markets states that the machine learning market size will grow from USD 1.41 Billion in 2017 to USD 8.81 Billion by 2022 at a Compound Annual Growth Rate (CAGR) of 44.1%.

The report further states that the major driving factors for the global machine learning market are the technological advancement and proliferation in data generation. Moreover, increasing demand for intelligent business processes and the aggrandising adoption rates of modern applications are expected to offer opportunities for more growth.

Some of the near-term predictions are:

  • Most applications will include machine learning. In a few years, machine learning will become part of almost every other software applications with engineers embedding these capabilities directly into our devices.
  • Machine learning as a service (MLaaS) will be a commonplace. More businesses will start using the cloud to offer MLaaS and take advantage of machine learning without making huge hardware investments or training their own algorithms.
  • Computers will get good at talking like humans. As technology gets better and better, solutions such as IBM Watson Assistant will learn to communicate endlessly without using code.
  • Algorithms will perpetually retrain. In the near future, more ML systems will connect to the internet and constantly retrain on the most relevant information.
  • Specialised hardware will be delivering performance breakthroughs. GPUs (Graphics Processing Unit) is advantageous for running ML algorithms as they have a large number of simple cores. AI experts are also leveraging Field-Programmable Gate Arrays (FPGAs) which, at times, can even outclass GPUs.

Conclusion

Whether computers start ruling us someday by gaining superabundance of intelligence is not a likely outcome. Even though it is a possibility which is why it is widely debated whenever artificial intelligence and machine learning is discussed.
 
On the brighter side, machine learning has a plenitude of scope in making our lives better with its tremendous capabilities of providing unprecedented insights into different matters. And when Drupal and machine learning come together, it is even more exciting as it results in the provision of awesome web experience.

Opensense Labs always strives to fulfil digital transformation endeavours of our partners with a suite of services.

Contact us at [email protected] to know how machine learning can be put to great to use in your Drupal web application.

Nov 01 2018
Nov 01

"In a virtual community we can go directly to the place where our favourite subjects are being discussed, then get acquainted with people who share our passions or who use words in a way we find attractive. Your chances of making friends are magnified by orders of magnitude over the old methods of finding a peer group."
- Howard Rheingold, The Virtual Community, 1994

Communities are important for the success of any multimedia information systems, today. Gaming is no exception, especially when it has become a part of our new media culture, entertaining people of all ages. The satisfaction of gaming community members can influence the success of a game and it is no secret why highest selling games have the largest communities. 

pokemon gif with money falling over on meow


To keep up the community and the platform with the latest trends, features, and functionalities, it is important that you choose the right technology for your platform. Drupal is an easy choice. But why are gaming communities increasingly opting for Drupal as the platform of their choice? 

“The famous AR game, Pokemon, managed to give an unprecedented swiftness, leading to Nintendo’s stock value increasing dramatically and achieving $470 million in revenue in just 80 days.”

The Power Of Gaming: Why Gaming Industry Needs Community?

Not very often will we associate the word community with gaming. And yet, these community platforms are where the games really mature. In terms of engagement and shared values, a common cultural background plays an important role, which can be reflected by the spatiotemporal distribution of the gamers. 

The community of gamers can be identified either as a whole or part of video game culture. It comprises of people who play games and those are interested in watching and reading about it. 

Community support is important for both game development and community building. 

  • User Acquisition: A shared goal, interest provides the reason for being a part of the community. A community is what builds a game, and community is what drives the game beyond its niche success into the blockbuster — shaping the success of ROI for an engaged, excited community is off the charts.

    Intense interactions and strong ties are not only important for online multiplayer games, they enhance the intensity and user experience too.  

    Over 53% of US teenagers play online games with people they know in their offline lives (Pew Research, 2015). Community support allows integration of offline friend circles into online communities.  
     

  • User Retention: Gaming communities form a very crucial part in retaining the users as video games have grown into a subculture since their birth.

    Community services enhance competition within games, which builds up customer loyalty as a consequence. Games and gaming communities are strongly intertwined and experience permanent co-development. 

    Discussions on new features, the problems they encounter at playing, advice about gaming strategies via forums is where the retention starts at. 

    The modern games provide direct in-game communication, which is not restricted to a simple message exchange, but also involves further service functionality. 

  • Improves Quality: Gaming communities are a place of intense interaction after all games are about shared experiences, rendered with extraordinarily interaction and ownership.  All successful games have communities. tracer over the shoulder victory poserThe infamous butt pose - Tracer' over the shoulder victory poseAnd this where the changes come from. Remember the infamous Tracer butt controversy from 2016? Well, it was after the community chose to put their outrage did the gaming giant Blizzard Entertainment had to pull down the post to show the accurate representation of the values.


Why are Gaming Communities Opting for Drupal?

What does Drupal offer to the gaming communities that they are opting for it? Here is a list of why Drupal is the choice for the community platforms.

  • Decoupled Drupal for Intuitive Game Live UI Experiences

Much like physical sports, video games demand a certain standard of ability where the player can enjoy from the very moment the game is started. Regardless of whether there is an explicit tutorial, players must instantly intuit what to do, what the basic rules are, what is good, what is bad, and how to go about doing the various things that can be accomplished.

The more the realism your game offers to the gamer, the longer they would want to play. 

With the decoupled experience in Drupal, you can create an interactive experience for the gamers by utilizing your site to completely control the useful in-program applications. While the front end can easily be coupled with other technologies such as jQuery, JavaScript, Node.js, and React.js. The backend in turn shifts to become the system of record, but the interaction happens real-time in the browser, back-and-forth. 

The headless site advancement can possibly release the imaginative influence of the diversion with intense gaming experience which is faster, more natural, intuitive and responsive at the gamers’ end. The end result is smoother and faster games played live. 

  • Gameplay based customizations

Games allow players to perceive themselves in alternate ways in their imagined worlds. Player identification – with Avatar and Character – helps build the interest while also improving the gameplay experience and is important to maintain the identity in the possible communities as well. 
 

Garen Avatar from the leagues of legends highlightedAvatars in the Leagues of Legend

An example of this could be the website of League of Legends – built on Drupal – which is a team-oriented strategy game where the goal is to work together and bring down the enemy nexus located in the middle of the game. 

Roles of assasin, fighter, mage, and marksmen offered in the Leagues of LegendRoles offered in the Leagues of Legend

Drupal has tools and services for building user profiles, fostering the creation of virtual sessions, allowing communication with third party serious games, and storing and processing the game analytics. This is important since it helps the gamer take the game more seriously and relate to it on a virtual level.

  • Scalability

Zynga – a leading developer of the world's most popular social games – website is built on Drupal. It claims to have 100 million monthly unique visitors, making it the largest online gaming destination on the web.

Scalability is Drupal’s middle name
Farmville 2 description on Zynga

Handling high volumes of visitors, content, and users is a tough job. But Drupal does it easily. As it is said, “scalability is Drupal’s middle name”. Some of the busiest sites across the world are built on Drupal. 

It is apt in handling sites that burst with humongous traffic, which means your gaming website can perform spectacularly even on the busiest of the days without breaking or bending. 

  • Multimedia support

Visit the famous StarWars The Old Republic (SWOTR) website and the background has video snippets playing from the game. Multimedia support is not new to the gaming industry. To keep the engagement high, you need to support multimedia features like scorecards, videos, photos, audios among others. 

gif from star wars games

Drupal is a highly versatile and customizable CMS. It has various modules available to support this need. The photo gallery module, media entity module, and easy to use templates to customize appearance are just a few from the list.   

Not just this the photo gallery module helps you customize images with templates, build you scorecards

  • Mobile Responsiveness

Video games have once again found themselves more widely played and accepted, thanks to the increasing smartphone reach. Add to it one more feature, your game needs to be device responsive too with easy and intuitive controls. 

Drupal 8 is device responsive out-of-the-box. Which means your content adjusts well from the big screen of your desktop to the little screen. Image size changes, menu items shift to drop-downs, other items are pushed around to make sense of content and size of the device. 

But games are not just about the squeezing to a different size thing. They need to offer the same experience as in the native web application without taking away the intuitive design. This can be sorted with the Hammer.js module in Drupal. Hammer.js helps you enhance the user experience by providing cross-browser support and taking away a lot of complexity when implementing touch and pointer gestures. Leveraging it in Drupal is easier than ever due to the Library API of Drupal 8.

  • Adding complex categories and catalogs

Gaming communities are a lot different from what the gaming websites offer. Since each game will have different sub-communities, it becomes a need to build those categories with design and category apt to the theme. 

screenshot from leagues of legends with various categories and catalogs

Drupal provides a powerful taxonomy engine, allowing gaming companies to support intricate designs and complex categories and catalogs, without much ado. The flexibility of adding different types of products and content is ensured by content creation kit (CCK). CCK allows you to add custom fields to any of the content types using a web interface

  • Discussions, Reviews, and News

Communities are all about discussing what is happening or happened. Therefore one of the primary community needs is for a easy content creation with different content types. The more the types, higher the engagement, more the users will interact. Blogs, events, FAQs, news are all important.

screenshot of leagues of legend with news sectionScreengrab from League of Legends
  • Quick Search 

Communities are a busy place with a lot of activities happening at the same time. Content that might interest a user can get lost in the myriad of content. In Drupal, Solr is used to get more accuracy within less time. 

search for new games and its results

Drupal has Solr integrated for a quicker search. Solr is a highly reliable, scalable and fault tolerant search application which provides distributed indexing, replication, and load-balanced querying with a centralized configuration. 

  • E-commerce Solution

Integrating commerce with the website is an old practice and most gaming companies leverage this opportunity to boost their sales. Klei – an Independent game studio – chose Drupal to create a seamless shopping experience for both mobile and desktop users.

According to The Jibe, "Klei needed a site and store that was as easy for them to manage as it was for their customers to buy: easy sorting, featured items, promo-code inputs, simple searching, and clear calls-to-action."

shopping cart with Klei

After integrating the online store with Drupal the team can easily add new products and games on the fly while also managing the promotions and highlighting featured items easily.

DrupalCommerce and Commerce Kickstart are two of the most popular solution that Drupal offers. With easy payment gateway integration, your online transactions are secure with Drupal.

Drupal vs. Wordpress 2018

Building a Community website

Building an online community, a network of people with shared interests and goals with target niche audience to be part of it with easy usability and navigation. 

Example: Pinterest Community

Winner: Drupal 8 

Why? For an extensive user management in your community, it would require custom fields, different content types, scalability, varied user roles and permissions among the others - all of which are easy to build in Drupal 8. In case you need a simple to-do community with limited features and functionalities, then maybe Wordpress will work. But then that format would be closer to a blog, anyway.

Building a Gaming Website

These are the sites featuring direct online gaming with single or multiplayer and can include games of any type from the different genre. 

Example: Zynga

Winner: Drupal 8 (Clearly)

Why? While you might think of Drupal as a preconfigured PHP framework, it is vastly more suited to developing an online game than Wordpress is. Drupal is fast, mobile responsive and scalable. It can handle as content as much as you want, as many people as you can think of - without crashing. 

And as far as WordPress is concerned, why would you want to choose a software built from a blogging background to create a game?

Building a Basic Gaming related Website

These are the types devoted to the world and culture of computer gaming. Will includes gaming news, magazines, FAQs, and resources. 

Winner: WordPress

Why? Although Drupal 8 more suited to handle the content, WordPress has a slight edge here. All the types mentioned here are related to publishing. Being a blogging platform (niche) WP can suit the needs better since its out-of-the-box configuration comes closer to your goals. 

Although in case there are varied features added like user login, reviews, managing multimedia content, and discussions then, Drupal is clearly the hero. 

Building a Media-Streaming Website

These are the sites that offer audio/video streaming services, such as podcast, television and film, sports, music, among others.

Example: AXN 

Winner: Drupal 8

Why? Drupal 8 can handle multimedia content much more flexible than WordPress. While WordPress can excellently handle content that's primary text, Drupal 8 makes all types of a media a first-class citizen. 

With clear taxonomy and easier role management, coupled with faster-load time, it won’t bend or break when streaming content live. 

Summing Up

Community platforms have become an easy measure to the success of any game since they serve a combination of purposes varying from technical to human factors. Further community satisfaction measures need to be considered in order to improve the product model and quality in future. 

Drupal mostly serves the needs of the gaming industry, is should be a no-brainer when opting for it. Drop a mail at [email protected] to connect with us if you are building your gaming website or community platform.

Nov 01 2018
Nov 01

Visualise that you are working for an organisation that builds web applications for its clients. Every time you gain a new client for a web application, you visit AWS or any cloud provider for that matter. You wind up with 2 VMs for running the app and for the associated database. You will need at least two copies of this infrastructure for production and staging and then start deploying the code for that client. And this process starts all over again for a new client and so forth. Instead, by utilising Infrastructure as Code (IaC), you run a bit of code and that’s it, you are all set to go!

Foundation of a building under construction on left hand side and fully constructed building on right hand side


Infrastructure and Operations (I&O) teams must disrupt their traditional infrastructure architecture strategies with IaC. This comprises of investing in hybrid cloud, containers, composable infrastructure and the automation for supporting these workloads. As we hurtle through the wall-to-wall internet of things (IoT) and edge computing, a holistic strategy for IaC becomes more significant to enterprises than ever before. It will be interesting to witness the power of Infrastructure as Code for the deployment of Drupal-based web applications. Before we dive into that, let’s see how IaC helps in efficient software delivery.

Solving environment drift in the release pipeline

Illustration showing sheets of paper on the left-hand side and a lot of computers on the right-hand side


Infrastructure as Code refers to the governance of infrastructure (networks, virtual machines, load balancers, connection topology) in a descriptive model by leveraging the same versioning as DevOps team uses for source code. In a similar principle of the same source code generating the same binary, an IaC model generates the same environment whenever it is applied. It is an integral DevOps practice and is used in combination with Continuous Delivery.

Infrastructure as Code refers to the governance of infrastructure in a descriptive model by leveraging the same versioning as DevOps team uses for source code

IaC evolved to solve the environment drift in the release pipeline because:

  • The teams must maintain the settings of separate deployment environments without IaCs.
  • Over a period of time, each environment becomes a snowflake. In other words, it leads to a unique configuration that cannot be reproduced automatically.
  • Inconsistent environments incur deployment obstacles.
  • With snowflakes, management and maintenance of infrastructure constitute manual processes which were difficult to track and contributed to errors.

Idempotence, a principle of IaC, is the property in which no matter what the environment’s starting state is, deployment command always sets the target environment into the same configuration. It is attained by either automatically configuring an existing target or through the recreation of a fresh environment by discarding the existing environment.
 
With IaC, DevOps teams can test applications in production-like environments early in the development cycle. These teams expect to provision several test environments and on-demand. Infrastructure represented as code can also be validated and tested for avoiding common deployment challenges. Simultaneously, the cloud dynamically provisions and tears down environments based on IaC definitions.
 
Implementing Infrastructure as code helps in delivering stable environments faster and at scale. By representing the desired state of their environments via code, teams avoid manual configuration of environments and enforce consistency. Infrastructure deployments are repeatable and safeguard against runtime issues that are caused by configuration drift or missing dependencies. DevOps teams can work in combination with a unified set of practices and tools for delivering applications and their supporting infrastructure quickly, reliably and at scale.

Benefits of Infrastructure as Code

Graphical representation showing horizontal bars in light and dark blue colours to depict benefits of Infrastructure as Code

 

  • Minimising Shadow IT: Allowing a fast response to new IT requirements through IaC assisted deployment ensures higher security, compliance with corporate IT standards and helps with budgeting and cost allocation.
  • Satisfying Customers: Delivering a quality service component with a short time period leads to customer satisfaction and enhanced perception of IT within an organisation.
  • Reducing operational expenditures: An enterprise can configure and deploy a completely tested and compliant new IT infrastructure asset in just a matter of few minutes either with minimal or no human intervention at all This saves a superabundance amount of work time and security-related financial risk potential.
  • Reducing capital expenditure: A developer accomplishing the task of several team members on his own, particularly in the context of DevOps, highly benefits the project capital expenditure.
  • Standardisation: When the creation of new infrastructure is coded, there is consistency in the set of instructions and standardisation.
  • Safer change handling: Standardisation assurance allows safer alterations to take place with lower deviation rates.

Challenges of using Infrastructure as Code

  • Organisational resistance to change: Largest organisational challenges stem from budget limitations as it can deter an organisation’s ability to hire or retrain staff lead to an overall resistance to change.
  • The dearth of expertise in-house: Lack of in-house expertise can pose a technical hurdle.
  • Shortage of tools, skills and the fear of loss of control: As IaC languages are more code-like than script-like, so developers are more comfortable with them in general but this poses issues for Ops team. Ops is more concerned with configuration control conflicts as they have traditionally had all control over configurations.

'Key recommendations' written inside a box at the top and some bullet points follows after that to explain Infrastructure as Code


Infrastructure as Code tools

Infographics showing a quarter of a circle inside a square-shaped box with several small circles inside it denoting the market presence of Infrastructure as Code toolsSource: Forrester Wave™: Configuration Management Software For Infrastructure Automation, Q4 ’17
  • The Puppet open source engine emphasises on supporting configuration management on numerous platform such that if a system is reachable by IP then it must be configurable.
  • Puppet Enterprise augments the open source Puppet providing a web-based UI to enable visibility into configurations, dependencies and events.
  • The Chef open source engine leverages an imperative approach with support for several operating systems, containers and cloud services.
  • Chef Automate builds on the Chef open source automation engine which incorporates respective projects of Habitat and InSpec and offers a web-based GUI and dashboard for compliance visibility.
  • The Salt open source project provides the option to run the modular software with or without agents and using push or pull processes.
  • SaltStack Enterprise builds on the open source Salt offering that gives you an enterprise GUI and API for integration.
  • Normation Professional Services sells plug-ins for Window/AIX support, auditing and HTTP data sourcing integration
  • Rudder is an open source automation platform that emphasises on continuous reliability.
  • Ansible open source project emphasises on minimalism and easy usage. It does not require any agents and relies on SSH and WinRM to remotely control member nodes which limits the resource usage and potential network traffic.
  • Ansible Tower is an enterprise solution for Ansible that emphasises on improving the open source project’s analytics and compliance capabilities.
  • Microsoft Azure Automation is a SaaS-based suite for process automation.
  • Microsoft PowerShell DSC is a configuration management execution engine which is developed primarily for Windows with support for Linux and MacOS added recently.
  • CFEngine Community Edition is an open source automation engine which is considered the father of modern-day configuration management.
  • The Enterprise version of CFEngine offers GUI/dashboard to manage and monitor node health, user-based and role-based management, richer reporting, asset management capabilities, and modules to support AIX and Windows 

Infrastructure as Code for Drupal

A digital agency showed how to automate the whole deployment process from the start to finish by leveraging Ansible. Ansible, being agentless, has a great ecosystem, the YAML syntax is easy to read, understand and maintain. This could be automated using any other provisional tool like Chef or Puppet as well.

Black background with ‘Ansible + Drupal’ written in blue and ‘ A fortuitous DevOps Match’ written in white below it


Project involved making the Ansible playbooks a part of their codebase. It will live alongside the Drupal code. Also, it is considered an industry-wide good practice to have infrastructure and deployment as a part of the code. It is still not technically 100% Infrastructure-as-Code setup as they only had the provisioning scripts checked in and not the code to spin the actual servers. The playbooks assume that the servers are already present with Docker, Docker compose is installed and having SSH access.

This setup made the deployment process consistent and repeatable as any developer with necessary permissions in the team could run the script and get the same results all the time. Moreover, when the build fails, it fails loud and clear where exactly things went wrong.

Challenges in the project

They did not guarantee a rollback for this process. If for instance, you perform a deployment and it fails, you would have to manually perform the rollback to the previous state. But it does store DB backups. So, it would not be an arduous task to add a rollback mechanism with the tag rollback and some parameters like what commit to rollback to, which DB to reset to etc.

Steps to be performed

A significant precursor to automating is to document and have a script for each step. They split the tasks into two categories namely

  • Setting up the system like creating DB backup directories
  • Running the DB updates via Drush

Ansible has the concept of tags for which 2 tags were defined namely ‘setup’ and ‘deploy’.

The listicle of setup only tasks included:

  • Creation of a directory for DB files to persist
  • Creation of a directory for storing DB backups
  • Creation of a directory for storing file backups

The listicle of tasks for both setup and deployment included:

  • Creation of a backup  of files and DB
  • Cloning the correct code, that is, specified branch or bleeding edge.
  • Creating .env file
  • Building and booting the latest containers for all services
  • Running composer install and DB updates, importing config from files and clearing cache (Drupal specific)

It is important to secure your servers prior to the deployment of the application. Ansible helps in storing the sensitive information in an encrypted fashion like DB credentials, the SSH key pair and the server user credentials. This setup enables you to easily build production replicas or non-production environment. 

In the years to come

IaC has a bright future with its ability in provisioning and managing computing resources. While it does come its own set of implementation barriers, the benefits that it delivers far exceeds the challenges it currently faces.
 
As the tools the frameworks that are associated with Infrastructure as Code mature, it has the potential of becoming the default standard to deploy and govern infrastructure.

Infographics showing statistics on Infrastructure as Code (IaC) using bar graphs, pie charts and relevant icons.


Technavio analysts forecast the global DevOps platform market to post a CAGR of more than 20% during the period of 2018 to 2022.  One of the major trends that are being seen in the global DevOps platform market 2018-2022 is the increase in the adoption rates of Infrastructure as Code. DevOps tools are being implemented by the organisations to shift from manual configuration of IT infrastructure to programmable IT infrastructure.

Increase in the adoption rates of Infrastructure as Code is a major trend in the global DevOps platform market

The report goes on to state that one of most significant reasons contributing to the growth in the global DevOps platform market is the need for reducing the time to market. Asia-Pacific region is projected to see the maximum enhancement in the market share of global DevOps platform. The Americas region and Europe-the Middle East-Africa region, which holds a large market share currently, will witness a decline in the market share over the forecast period.

Conclusion

Customer-obsessed technology puts the broader charter of service design on the infrastructure and operations team. I&O leaders should own the design for the full system of interacting parts that are sourced from a rich and dynamic software-defined ecosystem. Infrastructure as Code holds a great potential in disruption of traditional infrastructure architecture strategy and can be efficacious for Drupal deployments.

With years of expertise in Drupal Development, Opensense Labs has been providing a wondrous digital experience to its partners.

Talk to our Drupal experts at [email protected] to know how can we implement Infrastructure as Code with Drupal to power your digital transformation endeavours.

Oct 28 2018
Oct 28

The American Disability Act (ADA), 1990 provides provisions to secure the rights of specially-abled people. Although, when first passed, it focussed primarily on physical properties, over time it has covered digital spaces too, which means people can take a complaint to the court for discriminating and violating the ADA act. 

Accessibility is a more accepted norm when it comes to physical infrastructure, however, when accessibility translates to the digital space, industries across the web are struggling to answer. Higher education is no exception.

Building entrance with people sitting on stairs and three Harvard flags tucked on four pillars

 

“The National Association of the Deaf in 2015 slapped Harvard University and Massachusetts Institute of Technology in Massachusetts federal court, accusing them of discriminating against deaf and hard-of-hearing people” 

An absence of hard and fast rules to adhere to in the higher education sector often lead institutes to ignore the web accessibility practices. 

Exploring Issues in Higher Ed & the ADA Compliance

Lawsuits can be avoided by following WCAG 2.0. Since web accessibility guidelines and best practices are already clear through WCAG 2.0. 

The ADA Compliance

The ADA not only covers the general non-discriminatory guidelines but also encourages organizations, institutions, and businesses to provide accommodations to people with disabilities so they can have the same level of access to services as everyone else. 

The law was amended later in 2008 to fit the conditions of modern society and include the digital space while broadening the term “disability”.

Since, ADA conforms to other state laws, including section 508 of the Rehabilitation Act and existing WCAG 2.0 guidelines, hence the term - ADA Website Compliance. In January 2017, the federal government adopted the Web Content Accessibility Guidelines, (popular as WCAG 2.0) setting the standards with A and AA level for all websites. 

The Guiding Principles to Web Accessibility - POUR

The WCAG 2.0 consists of 12 guidelines with four arching principles of POUR. These guidelines relate to one simple question: can the users with varying degree of ability ingest the content on your site?

“Just as no ramps would exclude people with a wheelchair, videos without caption exclude people who are hard of hearing.”

Accessibility in higher education should not be restricted only to lectures and videos. In the case of a flash-based campus tour, there should be alt-text for visually impaired people. Accessing content should be intuitive. Making navigation easier needs to be part of the plan. 

Perceivable
Operable
Understandable
Robust

  • Perceivable

The content needs to be presented in different ways, including assistive technologies, without losing its meaning. The easiest way to do so is by providing alt-text for non-text content. The content should be easier to see and hear. 

By no means should the multimedia content be unattainable.  In the case of Harvard and Massachusetts Institute of Technology, the content was not perceivable for the deaf and hard-of-hearing people.

Story of Harvard: Harvard and M.I.T. have extensive free materials online, distributed across platforms like [email protected], MIT OpenCourseWare, YouTube, and iTunesU, edX which offers extensive massive open online courses (MOOCs), free to students around the world. 

The videos either did not include captions or were inaccurately captioned (read unintelligibly) making it inaccessible for people with hearing ability.

"Accessible" means fully and equally accessible to, and independently usable by, differently abled students and faculty members in a way that they can acquire the same information, engage in the same interactions, and enjoy the same services as sighted students and faculty with substantially equivalent ease of use.

This principle ensures that the content is easy to operate upon. Web accessibility issues are not synonymous with visibility issues, as is the popular myth. They are as much a problem for people with hearing disability as for a person with a neurological or cognitive disorder. 

The content on the website needs to be accessible with a keyboard for people with limited motor functions, people with color blindness, and avoiding the use of content and types that cause seizure. 

“People living with reflex epilepsy have seizures that occur in response to a specific stimulus, like flashing lights or by noises.” 
  • Understandable

Is the text readable for people with difference in visual ability? This principle ensures that the content appears and operates in a predictable way. This specifically focuses on the issues related to color contrast. 

Two bad examples of contrast on left with black on yellow vs two good contrast example with yellow on black on right

Accessing content should be intuitive and easy. To disable the pop-up button or going back need not be a time-consuming exercise.  

Atlantic Cape Community College in 2007 was dragged to court by a visually challenged student after the campus and curriculum proved to be a challenge for him. 

Any content - written or multimedia - should be future proof. Efforts should be made to maximize compatibility with current and future user tools. Before the dawn of the 21st century, screen readers were not as popular as they are 18 years later. A decade back even mobile phones were not as ubiquitous. 

Assistive technologies are advancing by leaps and bounds, and your site needs to adapt and step up with upcoming trends in hardware and software tools. In order to keep the content robust, higher ed institutes need to adhere to best practices or lose it the way University of California, Berkeley did.

“In a similar scenario in 2017, The University of California, Berkeley, in response to a Justice Department accessibility order, had two options:

1. Update existing content to comply with accessibility standards.
2. Remove more than 20,000 video and audio files from public view.

They chose the latter, the digital equivalent of boarding up the entrance to a building instead of installing a wheelchair accessible ramp.”

Checklist: Making Higher Ed Institutes ADA Compliant

In its defense, the Harvard University asked the court to propose rules “to provide much-needed guidance in this area”. This is one of the most infuriating aspects of accessibility compliance in higher education – there has been an absence of hard and fast rules to adhere to. Something that echoes the statement of Harvard. 

Logo of Massachusetts Institute of Technology on the top left, Harvard University on the top right, and edX on center bottom


Now that we understand the guiding principles, we are in a better position to deliver a better user experience to all. One thing worth highlighting is - accessibility issues are easier to address before they manifest on your site, not after. 

“It costs significantly less to make a site accessible than it does to procure the lawyer to protect you in an accessibility claim.” 

Under WCAG 2.0 priority levels are assigned to each checkpoint based on its impact on accessibility. These levels were the following:

Priority 1: Conforming to this level will make it possible for one or more groups to access the web content. This is level A.
Priority 2: Conforming to this level will make it easy for one or more groups to access the web content. This is level AA. 
Priority 3: Conforming to this level will make it easier for most of the groups to access the web content. This is level AAA.

Drupal has been powering higher education websites. In fact, it is one of the most-sought-after CMS for higher education institutes. Read Why Drupal Is Your Best Bet For Your Educational Site

Level A Conformance 

  • Provide web pages with titles that describe the topic or purpose of the page.
     
  • Make sure it is navigated in a meaningful manner while providing the options to bypass repeating blocks of content on multiple pages.
     
  • Make sure that the purpose of each link can be determined by the link text alone unless the purpose is ambiguous to all users.
     
  • In case of an input error made by the user, provide text information specifying the item in error and the error itself.
     
  • Provide labels, guidance and instructions, and text alternatives for all non-text content. Controls or input fields must have a name describing their purpose. 
     
  • Information must be accessible to different users in multiple ways, including through assistive technologies (such as screen readers) without losing information. 
     
  • Using colors that convey visual information, distinguishing visual components, indicating actions or prompting for a response.
     
  • Users must have the ability to fully operate the website through a keyboard interface, including the ability to pause and stop any presentation, audio or adjust the volume. 
     
  • Content must not cause seizures. Avoid designing content in a way that is known to cause seizures.
     
  • Compatibility with other user software, like the ones in assistive technologies.

Level AA Conformance - other than those in level A

  • Provide captions for all live audio content. And provide audio descriptions for all pre-recorded video content.
     
  • Text content and images of text must have a contrast ratio of 4.5:1. Content that serves only design purposes have no contrast requirements.
     
  • Enable the user to resize the text up to 200 percent without any assistive technology.
     
  • Use of text over images, whenever possible.
     
  • Provide multiple ways to locate web pages.
     
  • Ensure the keyboard focus indicator visibility through all interfaces.
     
  • Components with the same functionality must be identified consistently.
     
  • Ensure the security of legal and financial data transactions by making them reversible, and giving the user an opportunity to recheck the input data and the confirmation mechanism before finalizing submission.

Level AAA Conformance - other than those in level A and AA

  • Support all pre-recorded audio content with sign language interpretation and provide extended audio descriptions for all prerecorded video content where there’s no opportunity to pause the foreground audio and provide audio descriptions.
     
  • The contrast ratio between text and images must be 7:1. However, text or images which serve only design purposes do not require contrast or alt text.
     
  • Any pre-recorded audio content must provide users with context-sensitive help. In case the audio-content is not a CAPTCHA it should either:
    • must not contain any background sounds
    • or the background sounds can be turned off, 
    • or the background sounds should be at least 20 dB lower than the pre-recorded speech content. 
       
  • Provide users with a mechanism to choose foreground and background colors. With the width of blocks of content must not exceed 80 characters or glyphs.
     
  • Line spacing must be at least 1.5 spaces within paragraphs and paragraph spacing must be at least 1.5 times larger than the line spacing.
     
  • Ensure the text can be adjusted up to 200 percent without the use of assistive technologies. The user does not have to scroll horizontally to read a line of text.
     
  • Allow users to postpone or suppress interruptions, except in the case of emergency.
     
  • Ensure the users can continue their activity without much interference or loss of data after re-authentication in case the authenticated session expires. 
     
  • Include information on the user’s location within a set of pages. Provide supplementary content for identifying definitions of unusual words or phrases, including idioms, abbreviations, and jargon.
     
  • Provide additional content when users require a more advanced education level than lower secondary education (to 9th grade) to understand the content.
     
  • Changes of web content may only be initiated by the user or the user must be provided with a mechanism to turn off such changes.

It is worth noting that web accessibility compliance may not be realistic for all websites depending on the type of content. Drop a mail at [email protected] and connect with us if you are planning to build a user-friendly education website. 

Oct 27 2018
Oct 27

The old adage “united we stand and divided we fall” doesn’t stand true for modern web application architecture. 

When developing an enterprise application, the architecture can reckon among its different features, a monolithic system is deployed with a hope to process the information unruffled without any possible breakups. 

A logical component for corresponding to different functional areas of the application does the monolithic architecture give a smoother ride when the complexity of technology is increasing?

a big fish after a group of small fishes and a group f small fishes in the shape of a fish after the big fish


Monolithic is Boring, while Microservices is Full of Possibilities

With digital transformation on a rise and implications on the entire business operations moving from monolithic to microservices is a paradigm shift on how businesses approach software development. 

Understanding the Monolithic System

A monolithic system is a single-tiered software application in which the user interface and data access code are combined into a single program on a single platform. The multiple components run in the same process, on the same system.

A monolithic architecture is where the multiple layers of the application are tightly coupled together.

Usually, there are three components in a system the user interface, the data access layer, and the data store.

The user interface acts as an entry point of the application varying from the website, web service, or various other entry points.

The second layer is the data access layer which is where the layer of the program will wrap a data store. It handles concerns like authenticating with a data store and sanitizing data before it’ is transmitted to the data store.

The third layer is the database or data store which is the most fundamental part of the system and is responsible for storing arbitrary information (data) and retrieving it. 

one big box on left with an arrow in the middle and 4 small boxes on left

Together these three components make up an application. In the case of a monolithic application, the multiple layers of the application tightly coupled together. 

Limitations of a Monolithic Drupal Architecture

The major problems which affect a monolithic architecture application both from a business and end users perspective are as follows:

  1. Performance Impairment: One of the biggest reasons why people are shifting to monolithic is the heavy lifting it does which eventually impairs the performance. Continuous heavy cron jobs and on-demand computation on page request by the end user affect the speed

    In monolithic, all the calculations & computations are handled by the PHP code. And it hurts the business.
     

    • It becomes hard to maintain with time as any new deployment affects the entire system rendering wider regression a must.
       
    • The performance of pages and content delivery to users suffer due to on-the-fly heavy computation.

      In most cases, if it is difficult to manage monolith, the system is already or may be sitting on an n-tier layered system, however, they are not independent and asynchronous of each other. This is the malady with large Drupal systems.
       

  2. Bad User Experience:  The poor implementation of the presentation layer of a monolithic Drupal website is another major reason for the bad user experience and the underperformance of applications.

    Some of the bad practices in Drupal theme layer which increase the rendering time of pages can be listed as: 
     

    • Database calls also present in the theme layer instead of being in controllers, adding to the page load time.
    • Use of traditional and non-optimized code in Javascript & CSS.
       
  3. Unscalable Drupal Implementation: Drupal is scalable. But the approach used for feature implementation in Drupal is not scalable with monolithic systems. 
     
    • Improper use of third-party applications in the backend coupled with heavy reliance cron jobs can slow down the system. An advanced approach would be to fetch and render the third party API via Drupal.
       
    • Extremely minimal use of multilayer cache mechanism provided by Drupal 8 is the biggest culprit. 
       
  4. Missing DevOps & Automation: Just like continuous integration, delivery, and deployment, DevOps is a newer phenomenon. With a monolithic application on run, the DevOps process won’t allow proper collaboration with bad codes creeping into the architecture resulting in a bad UX. 
     
    • There is no Continous Integration based build process which executes a set of automated quality checks.
    • Regression in the current site is very hectic and costly affair due to lack of automation in code and functional testing.
Boxes on left and right side arranged in a horizontal manner

What are Microservices?

A microservice is a software development technique where the application (monolithic) is broken into sub-services which are loosely coupled together. Each service is independent of the main system. Together they offer value at par with a monolithic system. 

Microservices-based architectures enable easy continuous delivery and continuous deployment

Providing the Benefits of Layered Architecture of Microservices

Here are the reasons “why” microservices needs to be adopted in lieu of the monolithic Drupal are given below: 

  1. Fault Isolation: Since the services run independently failure of one service wouldn’t affect the overall performance of the system as much as it affects in the monolithic. Other services will continue to work which will limit the scope of code to be refactored for resolution.
     
  2. Independent Deployment: Components built as microservices can be broken down into multiple component services so that each of these services can be deployed and redeployed independently with improvements without compromising the integrity of an application.
     
  3. Easy Maintenance: Microservices require more efforts comparatively to build, however, it is a lot less effort when maintaining in the long term and will ensure better performance of the overall system.
     
  4. Easy Modification: Easy to understand since they represent a small piece of functionality, and easy to modify for the developers. This will also increase the autonomy of individual development teams within an organization, as ideas can be implemented and deployed without having to coordinate with a wider IT delivery function.

Read how Microservices are powering Drupal development

Exploring the MicroServices Architecture

The following diagram explains the ideal layering in the application of a Drupal monolithic system:

a flow chart with four blue outlined boxes on left and parallel text on right

 

  • Presentation Layer: This should be a combination of Drupal, and decoupled React apps.
     
  • Aggregation Layer: This should be Drupal being the core of application engaging with microservices and data store layers.
     
  • Business Logic Layer: This should be Node.js based services executing specific tasks.
     
  • Persistence Layer: This should be the primary store of the most important company and produce data. This will engage with Drupal to handle CRUD operations in real time. The will also engage with decoupled React apps on Presentation layer to help them render the data on frontend without any expensive Drupal calls or backend PHP execution.

Steps: How to Plan the Transition and Execution to a Monolithic Architecture

The transition from a present monolithic architecture to the layered microservices architecture can be done in an incremental fashion. Here’s how the plan can be executed:

  1. Identifying the business logic for components like, endorsements, email triggers and all other computation and processes which block the delivery of pages to the end user.
     
  2. Create independent Node.js based services which handle all the logic for the above-identified processes who communicate within themselves via messaging queues and communicate with Drupal via a push-based cronless mechanism.
     
  3. Create a data store. Drupal will push any change in these entities to the cronless mechanism in real time.
     
  4. Use progressively decoupled Drupal for the following purpose limited in its scope.
    For the presentation layer
     
    • For user, role and subscription management system
    • To manage decoupled react based pages and blocks for search which will be powered by independent elastic service.
    • To manage decoupled react based pages/blocks which pull data in a scalable and fast way from the cronless datastore.

      For CMS features like SEO, schema, static pages, CCMS integration etc.
       

  5. Re-Develop the Drupal theme layer to remove all bad practices in current the code base.

Conclusion 

Web applications need to evolve along with the rapid pace of technology and their users. Digital users expect more in terms of better content recommendations, and better ways for accessing websites and data.

As easy as the idea sounds, building microservices is that complex. Streamlining the overall application development lifecycle to boost frequent releases and QA can lead to a far better product. 

This gives a boost when managing a large Drupal system. Contact us at [email protected] to know more about microservices architectures and its value to your organizational setup.

Oct 26 2018
Oct 26

The Guardian, one of the most trusted news media, took a different approach for their membership and subscriptions apps. Rather than emphasising on lengthy validation in staging environments, The Guardian’s Continuous Deployment pipeline places greater focus on ensuring that the new builds are really working in production. Their objective was to let the developers know that their code has run successfully in the real world instead of just observing green test cases in a sanitised and potentially unrepresentative environment.

Front view of lots of hollow cylindrical pipes stacked on top of each other with a man sitting inside one of the pipes


Thus, The Guardian reduced the amount of testing run pre-deployment and extended the deployment pipeline constituting feedback on tests run against the production site. Such is the significance of utilising a lightweight Continuous Deployment pipeline which has helped a large organisation like The Guardian to focus on production validation instead of a large suite of acceptance tests. Such benefits can be witnessed in the Drupal-based projects as well where Continuous Deployment can allow us to iterate on Drupal web applications at speed.

Read more on the implementation of Continuous Integration and Continuous Delivery with Drupal

A Brief Timeline of Continuous Deployment

Agile Aliiance has stated that the origins of Continuous Deployment can be traced in the early 2000s. In 2002, Kent Beck, creator of Extreme Programming, has mentioned Continuous Deployment in the early discussions (unpublished) of applying Lean ideas to software where undeployed features are seen as inventory. However, it took multiple years for it to be refined and codified.

Later, in the proceedings of Agile 2006 Conference, the first article describing the core of Continuous Deployment - The Deployment Production Line - came into the limelight. Published by Jez Humble, Chris Read and Dan North, it was a codification of the practices of numerous ThoughtWorks UK teams.

By 2009, the practice of Continuous Deployment became well established as can be seen through the article called Continuous Deployment at IMVU by Timothy Fitz. Not only it is beneficial in Agile processes, but its great features can be extracted for methodologies such as a Lean startup or DevOps.

Continuous Deployment in focus

Flowchart showing green and orange coloured boxes to illustrate workflow of Continuous Integration, Continuous Delivery and Continuous DeploymentSource: Atlassian

While Continuous Integration refers to the process of automatically building and testing your software on a regular basis, Continuous Delivery is the logical next step which ensures that your code is always in a release-ready state. The ultimate culmination of this process is the Continuous Deployment.

In Continuous Deployment, every alteration that passes all stages of your production pipeline is released to the customers

In Continuous Deployment, every alteration that passes all stages of your production pipeline is released to the customers with no human intervention and only a failed test will deter a new alteration to be deployed to production. It is a spectacular way to aggrandise the feedback loop with your customers and take pressure off the team as is takes away the so-called ‘release day’ from the equation. It allows the developers to emphasise on creating software and they can see their work going live minutes after they have put in all their efforts on it.

Why Should you Consider Continuous Deployment?

Continuous Deployment benefits both the internal team who are implementing it and the stakeholders in your company.

For internal team

  • Instead of performing a weekly or a monthly release, moving to feature-driven releases enables faster and finer-grained upgrades and helps in debugging and regression detection by only altering one thing at a time.
  • By automating every step of the process, you make it self-documenting and repeatable.
  • By making the deployment to the server fully automated, a repeatable deployment process can be created.
  • By automating the release and deployment process, you can constantly release the ongoing work to the staging and QA servers thereby giving visibility fo the state of development.
Moving to feature-driven releases enables faster and finer-grained upgrades

For stakeholders in the company

  • Instead of waiting for a fixed upgrade window, you can release features when they are ready thereby getting them to the customer faster. As you are constantly releasing to a staging server while developing them, internal customers can see the alterations and take part in the development process.
  • Managers will see the result of work faster and progress will be visible when you release more often
  • If a developer needs a few more hours to make sure that the feature is in perfect working condition, then the feature will go out a few hours later and not when the next release window opens.
  • Sysadmins will not have to perform the releases themselves. Small, discrete feature releases will enable easier detection of the alterations that have affected the system adversely. 

Continuous Deployment Tools

wrench and screwdriver icon


Unit tests and functional tests put the code into as many execution scenarios as possible for predicting its behaviour in production. Unit testing frameworks consist of NUnit, TestNG and RSpec among others.
 
IT automation and configuration management tools like Poppet and Ansible manage code deployment and hosting resource configuration. Tools like Cucumber and Calabash can help in setting up integration and acceptance tools.
 
Monitoring tools like AppDynamics and Splunk can help in tracking and reporting any alterations in application or infrastructure. Performance due to the new code. Management tools like PagerDuty can trigger IT incident response. Monitoring and incident response for Continuous Deployment setups should be to real-time for shortening time to recovery when there are hassles with the code.
 
Rollback capabilities are essential in the deployment toolset to detect any unexpected or undesired effects of new code in production and mitigate them faster. Moreover, canary deployment and sharding, blue/green deployment, feature flags or toggles and other deployment controls can be useful for organisations looking to safeguard against user disruption from Continuous Deployment.
 
Some applications can deploy in containers such as Docker and Kubernetes for isolating updates from the underlying infrastructure.

Continuous Deployment with Drupal

An arrow and a box icon representing settings icon


A digital agency worked with Drupal 8, Composer, Github, Pantheon and CircleCI around Continuous Integration and Deployment. The project involved moving from internal hosting to the cloud (in this case, Pantheon), moving the main sites from Drupal 7 to Drupal 8 and implementing a new design.

To the cloud

Pantheon was chosen as the cloud host for new Drupal sites. Initially, it was chosen for features like ‘Cutom Upstreams’, one-click core updates, simple deployments between development, Test, and Live environments, Multidevs, and the fact that each is a Git repo a heart. Terminus (Pantheon CLI tool) was heavily used and appreciated.

Migration to Drupal 8

It focussed on two main umbrella sites and one news site to serve both umbrella sites. It did a content refresh which showed that only content that needs to be migrated are the news articles. The configuration management of Drupal 8 was found to be nicer than the Drupal 7.

Custom Design

As the Drupal is not the only web platform they were using, instead of building a Drupal theme, they built a platform-agnostic project with a new look and feel. It was based on the Zurb foundation and was just HTML, CSS, and JavaScript.
 
Grunt was used as the build tool. So when they have a new release, they would just commit and push to Github. That triggers a CircleCI workflow which tags a new release and publishes the release artefact as an npm package to Artifactory. From there, npm package can be pulled into any project including Drupal.
 
It should be noted that the published package includes only the CSS, JS, libraries and other assets. After the publishing, a static site is created with the package and corresponding HTML templates on a cloud host as a reference implementation.

Deployment Process

They had an ‘upstream’ repo on Github named umbrella-upstream which is a composer-based Drupal 8 project with a custom install profile comprising of custom modules, package.json, and deploy scripts. Each of the sites (umbrella-site X, umbrella-site Y, etc.) was also in a Github repo as composer-based Drupal 8 project and had umbrella-upstream configured as a remote.
 
When they push an alteration to the upstream repo, a set of CircleCI workflows gets started that runs some Codeception acceptance tests and the alterations get merged from umbrella-upstream down to each umbrella-site X/Y repo.
 
Then, another CircleCI workflow builds, tests and pushes a full Drupal umbrella-site X/Y install to the corresponding Pantheon site X/Y all the way up right to the test environment. Quicksilver hooks were used to send any alterations Pantheon back to the site repos.

Entire Workflow involved:

  • Code alterations and Git commit in custom design repo
  • Npm update custom-design -save-dev, grunt and Git commit in umbrella-upstream repo

Finally, the alterations show up in the Test environment of each site on Pantheon.

Conclusion

It is of paramount importance that you keep iterating and deploy software at speed and with efficacy. Continuous Deployment is a great strategy for software releases wherein code commit that passes automated testing phase is automatically released into the production environment.
 
Drupal deployment can benefit to a great extent through the incorporation of Continuous Deployment in the project development process. The biggest advantage of doing so is that it makes the alterations visible to the application’s users.
 
Opensense Labs is committed towards the provision of wonderful digital experience to the organisations with its suite of services.
 
To make your next Drupal-based project supremely efficacious through the implementation of Continuous Deployment, ping us at [email protected]

Oct 25 2018
Oct 25

Audi’s implementation of Continuous Delivery into its marketing has had an astronomical impact on its competitive advantage. For instance, when Audi released its new A3 model along with all other new releases, it wanted to communicate the new features, convey the options, and assist people in understanding the differences among body types, engines and things like that. Continuous Delivery turned out to be the definitive solution. It helped in refining the messaging and optimising it on the fly to make sure that the people are understanding what the automaker is trying to communicate.

vehicles on a cargo ship with wake of the ship in the background


Continuous Delivery (CD) is a quintessential methodology which makes the management and delivery of projects in big enterprises like Audi more efficient. When it comes to Drupal-based projects, Continuous Delivery can bring efficacy to the governance of projects. It can lead to better team collaboration and on-demand software delivery.

Read more on Continous Integration with Drupal

Building and Deploying using Continuous Delivery

A graphical representation showing white parabolic curves on a blue graph and text on itSource: Atlassian

For many organisations, shipping takes a colossal amount of effort. If your team is still living with manual testing preparing for releases and manual or semi-scripted deploys for carrying out releases, it can be toilsome. No wonder software development is moving towards continuity. In the continuous paradigm, quality products are released in a frequent and predictable manner to the customers thereby reducing the risk factor.

In 2010, Jez Humble and David Farley released a book called Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation.

In this book, they argued that “software that’s been successfully integrated into a mainline code stream still isn’t a software that’s out in production doing its job”. That is, no matter how fast you assemble your product, it does not really matter if it is just going to be stored in a warehouse for months.

Continuous Delivery is the software development practice for building software in such a way that it can be released to production at any time.

Continuous Delivery refers to the software development practice for building software in such a way that it can be released to production at any time. So, if your software is deployable throughout its lifecycle, you are doing Continuous Delivery. In this, the team gives more priority to keeping the software deployable than working on new features. This ensures that anybody can get quick and automated feedback on the production readiness of their systems whenever alterations are done. 

Thus, Continuous Delivery enables push-button deployments of any software version to any environment on demand.

How does Continuously Delivery work?

Flowchart showing box and circles to illustrate the workflow of continuous delivery, continuous integration, and continuous deploymentSource: Amazon Web Services

For achieving Continuous Delivery, you need to continuously integrate the software built by the development team, build executables and run automated tests on those executables for detecting problems.

Then, the executables are required to be pushed into increasingly production-like environments to make sure that the software is in working condition when pushed to production. This is done by implementing a deployment pipeline that provides visibility into the production readiness of your applications. It gives feedback on every alteration to your system and allows team members to perform self-service deployments into their environments.

Continuous Delivery requires a close, collaborative working relationship between the team members which is often referred to as DevOps Culture. It also needs extensive automation of all possible parts of the delivery process using a deployment pipeline.

Continuous Delivery vs Continuous Integration vs Continuous Deployment

Continuous Delivery is often confused with Continuous Deployment.

In Continuous Deployment, every alteration goes through the pipeline and are automatically pushed into production which results in many production deployments every day.

In Continuous Delivery, you are able to do frequent deployment and if the certain businesses demand a slower rate of deployment, you may choose not to perform the frequent deployment. So, for performing Continuous Deployment, you must be doing Continuous Delivery.

Continuous Delivery builds on Continuous Integration and deals with the final stages that are required for production deployment.

So, where does Continuous Integration come into the picture? It allows you to integrate, build, and test code within the development environment. Continuous Delivery builds on this and deals with the final stages that are required for production deployment.

Benefits of Continuous Delivery

The major benefits of Continuous Delivery are:

  • Minimised Risk: As you are deploying smaller alterations, there’s reduced deployment risk and it is easier to fix whenever a problem occurs.
  • Trackable progress: By tracking work done, you can get a believable progress. If developers declaring a work to be “done”, it is less believable. But if it is deployed into a production environment, you actually see the progress right there.
  • Rapid feedback: One of the pivotal challenges of any software development is that you can wind up building something that is not useful. So, earlier you get the working software in front of real users with higher frequency, faster you get the feedback for finding out how valuable it really is.

Continuous Delivery with Drupal

Drupal Community has been a great catalyst for digital innovation. To make software development and deployment better with Drupal, the community has always leveraged technological innovations.

[embedded content]


A session held at DrupalCon Amsterdam had an objective of bringing enterprise Continuous Delivery practices to Drupal with a comprehensive walkthrough of open-sourced CD platform called ‘Go’. The ‘Go’ project started off as ‘Cruise Control’ in 2001 rooted in the first principle of the Agile Manifesto: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

It outlined principles of CD practice, exhibited how easy it is to get a Drupal build up and running in Go and illustrated the merits of delivering in a pipeline. It involved setting up of a delivery pipeline. Then, configuring of build materials, build stages, build artefacts, jobs and tasks were done. Furthermore, it drilled down to familiar Drush commands and implemented the basic principles of the CD.

Basically, the build configuration was shown that deploys Drupal sites using Phing, Drush and other tools with the possibility of calling out to Jenkins as another way for managing tasks. Multiple steps of testing and approval were shown with a separate path for content staging as separate from code thereby deploying a complex Drupal site.

Homepage of Go platform with a flowchart explaining Continuous Delivery practice and ‘Simplify Continuous Delivery’ written in bold letters on the top on a pink background

Later, it emphasised on testing and previewing on production before cutting over a release, zero downtime releases, secure and simple rollback options, and making the release a business decision rather than a technical decision.

Moreover, it showed that Go’s trusted artefacts can take the ambiguities out fo the build with spectacular support for administering dependencies between different projects.

This session is very useful for the developers who use Drush and have some understanding of DevOps and knows about all-in-code delivery. Even those who undertake less technical roles like QA(Quality Assurance), BA(Business Analyst) and product owner will find it beneficial as the CD practice is all about the interaction of the team as well as the tools and techniques. 

How the future of continuous delivery looks like?

A report on Markets and Markets stated that the Continuous Delivery Market was valued at USD 1.44 Billion in 2017 and would reach USD 3.85 Billion by 2023 at a Compound Annual Growth Rate (CAGR) of 18.5% during the forecast period of 2018-2023.

Open source Continuous Deliver projects and tools will dominate the commercial CD tools segment
Bar graphs in dark blue and light blue colours showing automation market size in USD Billion, by segment, global, 2016-2020


Another report on Mordor Intelligence states that the market for Continuous Delivery is seeing a tremendous rise. It is due to the adoption of Artificial Intelligence (AI) and Machine Learning, rapid deployment of connected infrastructure and the proliferation of automated digital devices. But open source CD projects and tools will dominate the commercial CD tools segment.

The North American region is projected to have the largest growth in demand during the forecast period (2028-2023) because of the early adoption of cloud computing and IoT by the United States. The continuous evolution of new technologies (as shown above) have been the prime factor behind large-scale investments in the CD segment. Retail, healthcare, communications and manufacturing application in North America are going to see a massive growth rate in the forecast period.

Conclusion

On-demand software delivery and enhanced team collaboration is a sort of combination that every major enterprise can benefit from. Continuous Delivery is one such mechanism that can help software development projects to be production-ready always. And this can work in favour of projects involving Drupal development and deployment.

Opensense Labs has been steadfast in its goals of offering marvellous digital experience with its suite of services.

Contact us at [email protected] to know how can continuous delivery be implemented for your business in Drupal-based projects.

Oct 25 2018
Oct 25

The Drupal community is relentlessly working towards achieving the goal of easy usability with each version. 

Not only has Drupal granted its users the ability to integrate futuristic technologies but also provided the marketers with compelling digital solutions. 

On September 5, 2018, Drupal 8.6 was released. And started the wave of enthusiasm and whispers among the stakeholders. 

A road in the background and a sign board with drupal 8.6 ahead signboard


Here's how much it has succeeded in living up to the expectations and what is to be expected from Drupal 8.7 release due in January 2019.

Drupal 8.6 is released. And this what you should be excited about! 

The Drupal core team releases new (minor) versions every six months. These contain bug fixes, security patches, or both.

  • Drupal Installation is Boring. Not Anymore. 

That’s true. My first experience was as blank as the fresh installed Drupal 8.3. “What am I supposed to do with this?”, I thought. 

WordPress, on the other hand, had something to fiddle with, at least. 

Version 8.6 brings with it Umami

A demo food magazine website to demonstrate features of Drupal core, Umami gives you dummy content to explore the CMS. Although released with 8.5, Umami is now part of the core under the out-of-the-box initiative. 

desktop version of a website with photos of food and cutlery

The goal is to add sample content presented in a well-designed theme, displayed as a food magazine. 

Using recipes and feature articles this will make Drupal look much better right from the start and help evaluators explore core Drupal concepts like content types, fields, blocks, views, taxonomy, quite easily. 

Upgrade to Drupal 8 with Complete Migration Guide

“This minor release provides new improvements and functionality without breaking backward compatibility (BC) for public APIs.”

  • Migrate With Ease

While not all Migration challenges are covered. Here are two of the important migration challenges addressed. 

  1. Backward compatibility
  2. ID Conflict with Node translation

You can read more about Drupal 8 migration challenges

When launched, Drupal 8 didn’t provide any sort of backward compatibility in modules and hence they were to be rebuilt in Drupal 8. 

However, this is solved with version 8.6. In fact, this is the first release of Drupal 8 to offer a fully supported migration path from Drupal 7. Several changes were needed to Migrate APIs to make this possible.

The most important migration module - Migrate - is not only, stable but adds up the ability to re-run migrations to pick up new content that was not available previously.

Another conflict with the multilingual website related to conflicting Node ids. Translations in Drupal 8 are stored in a completely different way than in Drupal 7 and Drupal 6. 

When migrating node data from Drupal 6/7 to Drupal 8, a lot of data would point to things that no longer existed.

The Drupal Release Cycle

Starting with Drupal 8.0.0, Drupal core releases moved to a new release cycle schedule, and begin using the semantic versioning numbering system. 

A release Window is decided for the site administrators (in advance) to look up for the days for a possible bug fix, security release, and minor feature releases. 

For any change in release date, a public service announcement is issued before the release.

First Wednesday of every month is fixed for    Bugfix release window for Drupal 8.5.x and 7.x
Third Wednesday of every month is fixed for security release window for Drupal 8.5.x and 7.x

  • Improved Editorial UI with Media Library

As an editor, you always want a seamless experience when editing. Be it with browsing blogs, or media that has been uploaded to the website.

The Media Library provides a views-based browser for previously uploaded media. 

With the new version, you can add media to content via a media field, either by selecting from existing media or by uploading new media (including basic bulk upload support).

  • Building a Custom Layout is a No-Brainer Anymore

Choosing a custom layout no more requires you to write down long lists of codes. But this is not the only thing that makes layout interesting. The layout feature applies to much more than just content types. 

seven blocks arranged


Which implies that it can be used for media, contact forms, taxonomy, users, and more. 

Layouts allow you to build one of the individual fieldable entities which are completely customizable.

As a marketer, it won’t take much time for you to implement new ideas into a landing page. No more do you require adding contrib modules like Display Suits or Stacks for the job. 

The Layout helps to create one or more page sections and to choose from predefined options within them.

Seeing all the different issues and contributors in the release notes is a good reminder that many small contributions add up to big results. 
-Dries

Drupal 8.7 - The Roadmap

  1. Streamlined bulk-upload form - An improved media bulk upload experience which exposes all fields on a single form.
     
  2. Media Metadata improvements - A simple and intuitive tool to configure the metadata-to-drupal-fields mappings on media entities.
     
  3. Faster Upload - Drupal 8 will officially support PHP 7 and drop support for PHP 5.5 and 5.6 with 8.7 release. PHP 7 is much lighter and faster than its previous versions, which means your site becomes quicker to load. 
     
  4. Bring migrate_source_csv to the core - The imported content remains in the CSV files and there is a code to read it and create the relevant entries. Having migrate_source_csv in core would allow the developers to remove that code and use migrate instead. This is important because the contenta CMS uses this for migrations.
     
  5. WYSIWYG integration - Ability to embed media into the content from the WYSIWYG editor. This will allow content creators to select from media library or create one by uploading an image without requiring any new APIs. 
     
  6. Editorial workflow config moving from content_moderation into a standard profile. This would help in smoother content staging. 

Drupal 8 to Drupal 9 Upgrade. What to Expect?

Over time, maintenance of backward compatibility would become more intricate. Thus, the point will be reached when too much of deprecated code is there in Drupal 8. At that time, deprecated systems will be removed and released as Drupal 9.

So, Drupal 9.0 should be almost similar to the last release of Drupal 8 excluding the deprecated code. Upgrading from Drupal’s latest version to Drupal 9.0.0 should be as streamlined as the upgrading of minor versions of Drupal 8 (eg. Drupal 8.5 to Drupal 8.6). Therefore, Drupal 9 offers a clean slate to innovate more swiftly.

Here’s What Content Editors Want...

Let me be a little selfish here. Yes, Drupal 8.6 looks really good to me and I look forward to working around that editor soon (because that is what concerns me, directly).  

As a content editor, I have numerous times faced issues which leave me frustrated. 

Improved media bulk upload, smart alt texts for code snippets, and meta information is something I actually look forward to. 

Uploading video (non-youtube content) can sometimes be a headache. 

There is still scope for major improvements to Drupal’s content workflow, preview and staging capabilities. It will be done by improving aspects of the Entity API in the core.

Future Important Dates

8.7.0 Feature Freeze: January 2019
8.7.0 Release: March 19, 2019

With all the mentioned features, I believe, the community is successful in making Drupal more intuitive and easy to use.  We provide upgrade assistance, connect with us, drop a mail at [email protected] for a faster upgrade. 

Oct 24 2018
Oct 24

The Research and Development team at BBC (British Broadcasting Corporation) have been working on IP production for a number of years building a model for end-to-end broadcasting that will allow a live studio to run entirely on IP networks. During this period, several software applications and libraries have been built in order to prototype techniques, develop their understanding further and implement emerging standards. To do all these, they leverage Continuous Integration along with a number of tools to aid with Continuous Delivery of their software. Why is Continuous Integration a preferred option for large organisations like BBC?

Illustration showing three pillars and several people exchanging things, working on a laptop, holding a chart while discussing and having a conversation


A software development methodology like Continuous Integration (CI) can be of paramount importance for an efficient software delivery. Drupal-based projects can gain a lot with the implementation of CI leading to better teamwork and effective software development processes.

Predates many of the Agile’s ancestors

CI is older than many of the ancestors of agile development methodology. Grady Booch, an American software engineer, gave birth to the term ‘Continuous Integration’ through the Booch Method (a method used in object-oriented analysis and design) in 1991.
 
Booch, in his book called Object-Oriented Analysis and Design with Applications, states that:
 
The needs of the micro process dictate that many more internal releases to the development team will be accomplished, with only a few executable releases turned over to external parties. These internal releases represent a sort of continuous integration of the system, and exist to force closure of the micro process.

Principles of Continuous Integration

Flowchart showing box, circles, and arrows to depict workflowSource: Amazon Web Services

A software development methodology like Continuous Integration allows members of the team integrate their work frequently. It involves each of the team members integrating at least daily thereby leading to multiple integrations every day. Each of the integrations is checked by an automated build (that includes the test) for detecting integration errors faster.

“Continuous Integration doesn’t get rid of bugs, but it does make them dramatically easier to find and remove.” — Martin Fowler, Chief Scientist, ThoughtWorks

Developers can frequently commit to a shared repository with the help of a version control system such as Git. They can choose to run local unit tests on their code before each commit as a mark of added verification layer before integrating. A CI service automatically builds and runs unit tests on the new code alterations for immediate identification of any errors.

With Continuous Delivery, code alterations are automatically built, tested and pushed to production. Continuous Delivery expands upon Continuous Integration by deploying all code alterations to a test environment and/or production environment after the build stage.

Key practices that form an effective Continuous Integration

  • Single source repository: A decent source code management system should be in place.
  • Build automation: Automated environments for builds are a common feature of systems that ensure that you can build and launch your system using a single command.
  • Self-testing: Automated tests in the build process can help in catching bugs swiftly and efficaciously.
  • Daily commits: By committing to the mainline every day, developers can correctly build their code including passing the build tests.
  • Integration machine: Regular builds should be happening on an integration machine and the commit should be considered done only if this integration build succeeds.
  • Immediate fix of broken builds: The integral part of doing a continuous build is that if the mainline build fails, it should be immediately fixed.
  • Rapid feedback: It is of consummate importance to keep the build fast and provide rapid feedbacks.
  • Test environment: Always test in a clone of the production environment.
  • Finding the latest executable: Anyone involved in a software project should get the latest executable easily and be able to run it for demos or exploratory testing.
  • See the state of the system: Everyone should be able to see what’s happening with the system and the alterations that have been made to it.
  • Deployment automation: You should have scripts that will let you deploy the application into any environment easily.

Continuous Integration Workflow

  • At first, developers check out code into their private workspaces
  • When performed, commit the alterations to the repository.
  • The CI server monitors the repository and checks out alterations when they occur.
  • The CI server builds the system, runs unit and integration tests, releases deployable artefacts for testing
  • The CI server assigns a build label to the version of the code which was just built by it and informs the team of the successful build
  • The CI server alerts the team members if the build or tests fail
  • The team members immediately fix the issue
  • The team continues to integrate and test throughout the project

Responsibilities of the team members

  • Check in frequently
  • Do not check in broken code, untested code or when the build is broken
  • Do no go home after checking in until the system builds

Continuous Integration tools

A development team uses CI software tools for automating parts of the application build and constructing a document trail. The following are examples of CI pipeline automation tools:

  • CircleCI is a continuous integration platform. When connected to a Drupal site, alterations made in version control in code repository such as GitHub alert CircleCI to start the build of the application and execute predefined testing suite.
  • Travis CI is similar to CircleCI which integrates with GitHub, Bitbucket, and other applications. It creates application builds and runs testing suites when code alterations are pushed.
  • Jenkins is an open source automation server installed and handled by the user unlike platform services like CircleCI and Travis CI. It is extendable with plugins and works well with Git. It lets you do a wide range of configurations and customisation.
  • The open source GitLab repository and platform can run unit and integration tests on several machines and can split builds to work over numerous machines for decreasing execution times.
  • JetBrains TeamCity is an integration and management server for enabling developers to test code before they commit alterations to a codebase. It features Build Grids which allow developers to run several tests and builds for different platforms and environments.

Merits of Continuous integration

Illustration showing a number of small circles over the circumference of a larger circle to explain Continuous IntegrationSource: Apiumhub

Eliminates the blind spot

Deferred integration is troublesome as it is an arduous task to predict how long it will take to do a project or even worse how far are you through the process. So much so that you are putting yourself in a blind spot at one of the critical parts of a project. One of the most significant merits of Continuous Integration is minimised risk. With CI, there is no long integration and it completely eliminates the blind spot. You will know where you are, what is working and what is not, and the outstanding bugs that you have in your system.

Easy bug detection

CI does not entirely remove bugs but makes it easier to detect it faster. Projects with CI tend to have dramatically fewer bugs both in production and in process. The degree of this merit is directly proportional to how good your test suite is.

Frequent deployment

CI promotes frequent deployment which lets your users get new features more rapidly, to provide more rapid feedback on those features and collaborate more in the development cycle.

Continuous Integration for Drupal

DrupalCon Dublin 2016 had a presentation which showed how you can leverage the Jenkins 2 pipelines for implementing Continuous Integration/Deployment/Delivery for the Drupal site while taking care of the principles like Infrastructure as Code, Configuration as Code, DRY (Don’t Repeat Yourself) and Open/Closed principle (from SOLID principles).

[embedded content]

 

The process that was followed in the presentation required pushing a commit into self-hosted (Gitlab) or private Github repo. It involved building the doc root from the various sources, deployment procedures, auto-tests on servers and everything was done in the same pipeline configured as separate stages.
 
It showed the auto-generation of deploy pipelines for each branch/state like development, staging or production configured. It utilised different approaches for governing code structure such as Composer-based workflow and ‘all-code-in-repo’ solution in the same doc root. Auto-checking that code was delivered to the server prior to the start of drush deploy procedures and testing.

The project team can have their own deploy scripts

Universal deploy script was used that will be useful for any project. Additional project-specific deploy scripts - DRY (or override) basic deploy script - was leveraged which could be useful when you delegate this part of the responsibility to the different team. You can control what drush commands or command options can be used for certain projects, that is, the project team can have their own deploy scripts.
 
Configuration as a code on both the Jenkins side and the Drupal side was performed. On the Jenkins side, all Jenkins jobs (pipelines) was stored as code in Git and regenerated in case of code alterations with the assistance of Job DSL. On the Drupal side, every configuration alteration was performed in code and then processed on Production servers during code deploys.
 
It showed auto-creation of URLs and databases on hosting platform based on multisite setup. It displayed automated backups before code deploys, copied whole sites inside doc root or between different doc roots with one click and added custom actions for offering additional functionality specific to the projects.

Market trends

The Forrester Wave™: Continuous Integration Tools, Q3 2017 delineated the 10 providers that matter most and how they stack up.

Infographic showing a quarter of a circle inside a box and several smaller circles inside it to depict Continuous Integration tools


A report on Markets and Markets stated that the CI tools market size is expected to grow from USD 483.7 million in 2018 to USD 1139.3 million by 2023 at a Compound Annual Growth Rate (CAGR) of 18.7% during the forecast period.

A study by Data Bridge Market Research states that major players operating in the global continuous integration (CI) tools market are Atlassian (Australia), IBM (US), Microsoft (US), Micro Focus (UK), CA Technologies (US), Cloudbees (US), AWS (US), Puppet (Oregon), Red Hat(US), CA Technologies (US), Oracle (US), Micro Focus (UK), SmartBear (US), Jetbrains (Czech Republic), CircleCI (US), Shippable (US), Electric Cloud (US), V-Soft Technologies (South Africa), BuildKite (Australia), TravisCI (Germany), AutoRABIT (US), AppVeyor (Canada), Drone.io (US), Rendered Text (Serbia), Bitrise (Hungary), Nevercode (UK), and PHPCI (Belgium) are among others.

Conclusion

Software development can be drastically improved with the incorporation of Continuous Integration resulting in better team collaboration, reduced risk, and faster delivery. Drupal-based projects can reap the merits of CI tools. With Drupal being a huge perpetrator of digital innovation, implementing Continuous Integration in Drupal projects is viable.

OpenSense Labs has a pool of Drupal experts who have been a force to reckon with when it comes to enabling digital transformation dreams of enterprises with its suite of services.

Contact us at [email protected] to know how can you leverage continuous integration for Drupal projects.

Oct 19 2018
Oct 19

Digitisation has altered the game for content providers. Customers - whether businesses or consumers - look for bite-sized pieces of content delivered to their chosen interface anywhere and anytime. Content creators continuously need to rethink and rewire how they disseminate content across channels due to the proliferation of digital platforms, the variety, and granularity of media, and the ever-shorter attention spans of customers. And so arises the need for a Content as a Service (CaaS) solution.

A hand holding a sticker resembling a fish with Be Content written on it and real fishes in the background


The democratisation of content and the entry of social media and the technology giants into the content business are erasing the divide between media and entertainment market segments. This is building a new ecosystem that will be driven by content-as-a-service delivery models. Drupal can offer a magnificent CaaS solution for the organisations looking to distribute content on screens, websites, mobile apps, IoT devices and beyond.

A Peek at CaaS

An illustration showing the Content as a Service workflow with icons like mobile, desktop, house lock, shopping cart, watch and loudspeaker.Source: Bloomreach

CaaS is an architectural pattern that completely decouples the content authoring process from how it is used. Traditional CMS offers a single software to separate the data layer from the presentation of said data. Even though the presentation of the data is separated, it is still attached to the technology, delivery channels, and the capabilities supported by the software. CaaS comprises of a backend CMS that provides content authoring capabilities with APIs for delivering content to external systems.

CaaS is an architectural pattern that completely decouples the content authoring process from how it is used.

An efficacious content-as-a-service model enables enterprises to store content in a form and with the sort of detail which makes it easier to discover, repurpose, transform, and transmit. Today, service providers can leverage their application programming interfaces (APIs) as platforms for disseminating content.

Simultaneously, organisations must consider the level of granularity that is needed to store and expose units of content in the most effective manner. They should track the business costs generated by individual units of content so that their content supply can be refined and new business models can be developed. Even though technology constraints must be duly assessed, content providers should understand their content’s ‘lowest common monetisation denominator’ (LCMD) and the returns on content assets.

Executing content as a service

CaaS is a paradigm for delivering the right amount of content to the right kind of customer at the right time via the right channel. That is:

  • Content is enough to meet the demands of the customers
  • Content is personalised
  • Content is delivered accurately when the customer needs it. Updates are done in real-time.
  • Content is delivered on the platform of choice at the right time and then swiftly and endlessly transferred from one platform/ device to another.

A perfect CaaS model is integrated with numerous services that connect to a customer-facing platform and expose units of content on demand. These can constitute music on Apple Music, books and magazines on Amazon Kindle, or shows on Netflix. The ubiquitous nature of the IoT is expected to make CaaS indispensable as all types of data are gathered by big data platforms and made available to application developers.

APIs are the drivers for most “X-as-a-service” ecosystems and content-as-a-service is no exception to this
A graphical representation showing the the growth in Web APIs with a blue-coloured regionSource: Bloomreach

With the increase in platforms, formats, devices, languages and locations for exposing content, the ease, speed, and efficacy of governing and delivering it must also increase. APIs can transmit data to and from any destination faster and with cost-effective ways. In the API economy, APIs are developed like products for supporting new business models. An API strategy is a collaborative effort among product and technology teams to keep a digital business strategy on track. APIs are the drivers for most “X-as-a-service” ecosystems and content-as-a-service is no exception to this.

The value of CaaS

A linear flowchart showing the content value chain with icons resembling plus symbol and a person to describe the value of CaaSSource: Cognizant

The ability to precisely identify the smallest unit of content that can be stored autonomously and delivered profitably is the foundation of any CaaS model. This can be referred to as the lowest common monetisable denominator (LCMD) of content which can be tracked, tagged and reused. Through taxonomy and semantics, enterprises can store content at the LCMD level and develop an aggregate or smaller levels of the data on demand.

So once the organisation identifies the LCMD of content the evaluation can be done on the returns from pieces of content created at that granularity, that is, returns on a content asset (RoCA).

When can you use CaaS?

Following are the scenarios where you can utilise the capabilities of CaaS:

  • Mobile applications: Alterations to mobile applications, most often than not, needs the application to be resubmitted to a digital distribution platform vendor like Google or Apple for the approval. CaaS system enables businesses to alter the content in these applications without having to change the application.
  • Multiple channels: CaaS enables business users to deploy the same content to several delivery channels via a singular system rather than having to maintain different systems for different channels.
  • UX flexibility: Being independent of the presentation layer, designers can freely use any technology to develop their UX and are not tied to technologies or components supported by the CMS. Javascript frameworks, that evolve at their own pace, provides developers with greater UX flexibility.
  • AI-based application: Leveraging chatbots and other AI-based applications, it is easier for robots to consume content via an API.

Drupal as Content as a Service

Flowchart showing circles and boxes illustrating workflow of Drupal as Content as a ServiceSource: Dries Buytaert’s blog

If you want to enable your frontend developers to create engrossing customer experiences, Drupal’s content-as-a-service approach allows you to think outside the page-based mentality. Drupal’s CaaS solution helps in delivering reusable, future-proof content seamlessly by decoupling the back and front ends where needed.

Moreover, frontend developers can develop better experiences with Drupal’s presentation-neutral content and RESTful API and leverage tools like Angular, Ember, Backbone and many more. Ingestion of content from third-party content, for example, from aggregators and syndicators, to bring content into your Drupal environment can be done which can be disseminated to any channel. With Drupal’s CaaS capability, content is easily consumed by other websites and application that you choose.

It has all been possible because of the amazing work that is going on in the Drupal Community’s API-first initiative. It is actively working to advance existing and new web services web services efforts thereby making Drupal an excellent CaaS and optimal for developers. Through web services like JSON API and GraphQL or the tooling that accelerates headless application development like the Waterwheel ecosystem, Drupal as a content-as-a-service is great for developers.

Drupal is stupendous for both editors and developers

Drupal is stupendous for both editors and developers. The biggest advantage that Drupal has over its headless competitors is that it can be an amazing CMS for content editors to give them control over the presentation of their content and a rich headless CMS for enabling developers in building huge content ecosystems in a single package.
 
With Drupal perpetually powering more and more websites, it is also being extracted to its full potential in order to serve content to other backend systems, native applications, single page applications, and even conversational interfaces simultaneously.

Conclusion

As digital transformation accelerates, content providers are altering the nuts and bolts of their content activities. As more content is delivered as a service through a myriad of APIs, more data will get generated thereby assisting content providers in creating more precise business models.
 
Content as a service is like a treat for the developers giving them maximum flexibility in their pursuits of digital innovation. Drupal as a CaaS has been offering a great digital experience to both content editors and developers alike.
 
Drupal experts at Opensense Labs have been powering digital transformation of businesses through Drupal development.
 
Contact us at [email protected] to build great digital experiences using Drupal as Content as a Service.
 

Oct 18 2018
Oct 18

You run, you fall and you rise again with your ambitious endeavours of attaining supreme fitness. With so much going around in your own life, when you have to take care of your grandmother and monitor whether her insulin intake is right on track or not, it can prove to be a formidable task. Healthcare technologies have advanced to a whole new level and something like a smart wearable equipped to perform automated monitoring of diabetes can be of immense help.

A man tying shoelaces at the side of the road


As the pace of change accelerates, how can the healthcare industry move ahead and stay relevant with the changing demands? No matter what their size is, healthcare organisations find it a strategic imperative to answer this question. The velocity and scope of technological advancements are blurring the lines between healthcare and technology thereby redefining traditional MedTech and fundamentally altering business models.

With more healthcare technologies offering a new perspective for the organisations, Drupal’s stupendous web content management and its flexibility in integrating with healthcare technologies make it a remarkably meritorious choice for your digital innovation plans. So, what are some of the healthcare technologies doing rounds in recent times?

Healthcare technology trends

Technological innovation is giving different dimensions to what healthcare organisations can achieve

Whether it is the business and administrative side of things or the direct patient care, technological innovation is giving different dimensions to what healthcare organisations can achieve. Here are some of the trends in the healthcare industry that are making a humungous impact:

IT security

Healthcare enterprises are often the targets of sophisticated, well-coordinated cyber attacks because of the depth of information stored by healthcare providers. A study by Beazley Group states that 45% of the ransomware attacks in 2017 targeted healthcare organisations.

A graphical representation showing the number of reported breaches in healthcare industry


This has created a pressing need for better IT security. Healthcare enterprises are responding by investing in advanced security technologies like advanced data encryption, better data backups, and real-time security platforms leveraging Artificial Intelligence (AI) to detect and curb threats before they start posing serious issues.

Advanced Training Tools

Advanced healthcare training supplies are fast spreading in the marketplace to prepare students, residents and other inexperienced healthcare professionals with safe and efficacious environments to learn. These comprise of things like ECG simulators, live AED units, and bleeding control training kits.

Telehealth

Telehealth and telemedicine are becoming a significant part of the digital health transformation. For instance, Digital health lets the elderly to age and live in their own homes using technology like fall-detection monitors. Tele-mental and Tele-behavioural health services are another healthcare technology innovations that are blooming.

Artificial Intelligence

AI has the ability to completely metamorphose the healthcare industry in the coming years. It can streamline tasks like scheduling, timesheet entry, paperwork, Electronic Health Records (EHR), accounting and the diagnosis of patients.
 
For instance, chatbots can prove to be a great application point. These AI-powered software mechanisms can assist healthcare providers to cut down on the time-intensive nature of patient communication and simplify any tasks that do not require direct human intervention. Advanced chatbots, which are also referred to as conversational chatbots, can discuss in-depth health issues with patients to offer the best possible treatments that are available. For example, IBM Watson is helping doctors in providing advanced treatments.

[embedded content]


Internet of things

A study by Rock Health states that a staggering amount of $3.5 billion was invested into 188 digital health enterprises in the first quarter of 2017 and the number of smart wearables is going to reach 34 million by 2022.

Medical wearable devices are one of the most promising IoT devices that have the potential of offering healthcare teams with valuable data around the clock no matter if the patient is at home or outside of the practitioner’s direct care. Some of the exciting application constitutes cardiac monitoring, infant monitoring, fitness tracking, and pain management.

Big data and EHR

One of the most vital things in recent times is an Electronic Health Record which leverages the merits of Big Data. EHR stores all the health information of the patients electronically in the digital format that can be used by other information systems. It provides an option to the customer and the physician to have a permanent access to client data like cardiac waveforms, chronic diseases, diagnostic and previous prescriptions.
 
An EHR can improve the interaction between doctor and patient for more productive delivery of care. EHR minimises the number of papers that would be needed when visiting physicians.

Augmented reality and Virtual reality

The arrival of virtual reality and augmented reality solutions have also benefitted the healthcare technologies. From educating new students to planning procedures, the field of AR and VR has a lot to offer.
 
For instance, AR can allow medical students to interact in a really intuitive way with a 3D representation of the body. Another example is the AR app which was developed by Pixelbug that gave a better understanding of medical devices and their mechanisms for the physicians.
 

[embedded content]

 

Also, Maplewood Senior Living in Connecticut has utilised VR headsets to work with individuals to address concerns ranging from dementia to cognitive impairments.

[embedded content]


Coming together of Drupal and Healthcare technologies

Drupal, being an open source CMS, powers healthcare organisations in controlling costs and provides deeper patient and consumer engagement with information thereby improving people’s lives.

Drupal helps in safeguarding patient data with its security-focused framework

Drupal gives the extensibility to healthcare organisations by enabling them to integrate platforms and also help in the addition of new functionality with third-party technology. It helps in safeguarding patient data with its security-focused framework. You can customise the user experience to deepen patient engagement and alleviate provider satisfaction.

Some of the applications that show the capabilities of Drupal integration with healthcare technologies are given below:

Smart Wearables

DrupalCon Nashville 2018: Driesnote had a conversational session between Rebecca Pilcher / RyeBurd (Director of Marketing at Drupal Association) and Dries Buytaert (Project lead of Drupal). Rebecca shared an interesting story that threw light on how a smart wearable powered by Drupal helped to control Diabetes and track the intake of insulin levels.

[embedded content]


When Rebecca was being diagnosed with Type 1 Diabetes, an Omnipod insulin pump and a CGM (Continuous Glucose Monitor) helped her handling diabetes. A CGM tracks blood sugar patterns and an Omnipod insulin pump gives more flexibility in her insulin intake routine.

So how does Drupal come into play here? Dexcom, which is the brand of CGM, has one of its platforms powered by Drupal and Omnipod’s website is built on Drupal as well.

Five arrows forming a circle to explain how Drupal platform powers Omnipod and DexcomSource: Rebecca Pilcher's Blog | Medium

Drupal and EHR Integration

Integration of Drupal with the EHR system can help in creating an excellent system with an astounding web content management capabilities coupled with the innate strength of EHR for patients’ documents management.

A digital agency showed that Drupal has the capabilities to layer on top of several EHR systems within a medical group and compile the data into one physician portal. Drupal’s extensibility enables it to take on sophisticated integrations through numerous feeds from API calls, XML or JSON feeds and RESTful APIs.

Most current EHRs output data in HL7 (Health Level 7) delimited text files. HL7 has upgraded to a new protocol Fast Healthcare Interoperability Resources (FHIR) which leverages RESTful APIs and can make clinical modelling and system integrations less intricate.

Through integration between Drupal data-layer and an EHR via RESTful API connection, interoperability can be improved thereby empowering your staff to make use of critical data. Breaking down the data silos lets the healthcare delivery systems to evolve from a reactive diagnostic model to a proactive preventative model.

With the help of secure access management, Drupal can be configured at granular levels to data security and simultaneously access can be provided to a user based on role. Leveraging role-based provisioning, Drupal can surface a focussed view of critical data that dwells behind a firewall in a HIPAA secure environment.

Using specific EHR authorisation requirement, Drupal can be configured to tap into the database through web services integration and at the same following strict user access permission controls. Thus, this helps in protecting the data at all the times.

Genetic Information Management

Flowchart showing icons representing physicians shows the working of Genetic Information Management SuiteSource: bio.logis

Bio.logis offers Genetic Information Management Suite (GIMS) which helps in managing human genetics information for making genetic code accessible and usable. It gives genetic data to allow decision making with a medical value. GIMS comprises of a web-based authoring and content management system based on Drupal which is globally connecting expert knowledge in addition to genetic reports engine.

GIMS is based on Drupal and is globally connecting expert knowledge in addition to genetic reports engine

A multilingual portal and mobile applications offer access to medial-ready knowledge for physicians, patients and healthy clients for supporting distribution and scaling of genetics advice. The ‘pharma.sensor’ online application offers notions about adjusting drug therapies to individual genetic makeup.

Conclusion

With technological advances, healthcare technologies have had a massive makeover. Digital health services are leveraging emerging technologies and this has benefitted healthcare industries. Drupal has been pioneering digital innovation strategies in the healthcare with its enormous capabilities to integrate with disrupting technologies.

Providing ambitious digital experiences to the partners has always been the objective of the Drupal experts at Opensense Labs and we have been doing that through a suite of services that we offer.

Ping us at [email protected] to build great digital solutions through the integration of Drupal and the healthcare technologies.

Oct 16 2018
Oct 16

"There are hundreds of startups with a lot of brains and money working on various alternatives to traditional banking" - Jamie Dimon, CEO, JPMorgan Chase

FinTech and the disruption it can cause to the traditional banking systems is now a hot topic of debate in the banking conferences. Global venture capital funds are super-bullish on this front and are accentuating investments in the FinTech companies. Thanks to the burgeoning demand of FinTech in recent times, more crowdsourcing platforms are letting artists or fledgling entrepreneurs to crowd-source capital from a large constituency of online donors or investors.

A sheet of paper with Finance written in bold letters alongside relevant icons and laptop, notebooks, pen, and plant pot placed around it


For instance, peer to peer (P2P) lending, the high-tech equivalent of borrowing money from friends, helps in raising a loan from an online community at a mutually negotiated interest rate. Also, digital wallet providers allow people to zip money across borders even without any bank accounts using handheld devices.

Amalgamation of these technologies, which goes under the umbrella term FinTech, is expected to metamorphose the way all of us use banking and financial services. And Drupal can act as the perfect content management framework for building a great FinTech platform.

A portmanteau of financial technology

[embedded content]


Financial technology, which is referred to as FinTech, illustrates the evolving intersection of financial services and technology. FinTech allows people to innovate while transacting business ranging from digital money to double-entry bookkeeping.

The lines between technology and the financial services are blurring

Since the advent of the internet revolution and later the mobile internet revolution, financial technology has grown multifold. Originally referred to   technology applied to the back office of banks or trading firms, FinTech now caters to a broad variety of technological interventions into personal and commercial finance.

According to EY’s FinTech Adoption Index, one-third of consumers leverage at least two or more FinTech services and more and more of these consumers are also aware of FinTech being a part of their daily lives.

FinTech encompasses the startups, technology companies or even legacy providers. Startups use technology to offer existing financial services at affordable costs and to provide new tech-driven solutions. Incumbent financial enterprises look to acquire or work with startups to drive digital innovation. Technology companies offer payment tools. All these can be seen as FinTech. Surely, the lines between technology and the financial services are blurring.

Origins of FinTech

infographics showing the history of FinTech with relevant icons against each yearSource: 16Best

In broad lines, the financial industry has seen a gargantuan shift over the years with the way it is leveraged in the times of rapid technological advancements. 16Best has compiled a brief history of FinTech which shows how the gap between financial services and the technology has got bridged over the years.

The gap between financial services and the technology has got bridged over the years.

In 1918, the Fedwire Funds service began offering electronic funds transfer. And while the Great Depression was ravaging the world’s economies, IBM provided some solace with its 801 Bank Proof Cach Machine that offered the means for faster cheque processing. Subsequently, credit cards and ATMs came into existence in the ‘50s and ‘60s.

In 1971, first all-electronic trading emerged in the form of NASDAQ. And in 1973, the SWIFT (Society for Worldwide Interbank Financial Telecommunications) built a unified messaging framework between banks for handling money movement.

1997 was the year which saw the emergence of mobile payment through Coca-Cola Vending Machine. Fast forward to 2000s and the present decade, a slew of innovations crashed into the finance sector with the introduction of digital wallets, contactless payments and cryptocurrencies.

FinTech is definitely re-inventing a quicker and more durable wheel as the world continues to witness a superabundance of new ventures refining financial services with technology.

Merits of FinTech

Bar graph showing statistics on different areas of FinTech


Financial technology has taken the financial services to a whole new level with a cluster of merits that it offers. Here are some of the major benefits of FinTech:

  • Robo Advisors: They are one of the biggest areas of FinTech. These online investment services put users through a slew of questions and then relies on algorithms to come up with an investment plan for them.
  • Online Lending: It encompasses all aspects of borrowing from personal loans to refinancing student loans which improves money lending.
  • Mobile payments: There is a growing demand for mobile payment options with the stupendous rise of mobile devices over the years.
Bar graph showing statistics on global mobile payment marketTotal revenue of global mobile payment market from 2015 to 2019 (in billion U.S. dollars) | Statista

Personal Finance and Savings: A plethora of FinTech organisations in the micro saving department have been helping people to save their change for rainy days and a whole lot of them rewarding customers for doing so. For instance, Digit allows you to automate the process of saving extra cash.

Bar graph showing statistics on personal financeSource: Statista

Online Banking and Budgeting: Online banks like Simple reward users for using their ‘automatic savings’ service and also offer a cost-effective option over a traditional bank. Leveraging online tools, they assist users to plan budgets and handle their money smartly from their mobile devices with minimal effort to meet their savings goals.

Insurance: New insurance models have been strengthening the FinTech space. Metromile, an insurance model, sells pay per mile car insurance.

Bar graph showing statistics on Insurtech industrySource: Statista

Regtech: Regulation Technology, which utilises IT to enhance regulatory processes, is one of the significant sectors where numerous FinTech app ideas have come into light around this domain. Regtech is useful for trading in financial markets, monitoring payment transactions and identification of clients among others. For instance, PassFort helps in standardising the online compliance processes.

How is Drupal powering FinTech?

Organisations offering FinTech solutions need to maintain a robust online presence. Drupal has been powering the landscape of FinTech with its enormous capabilities.

The launch of TPG Capital

Homepage of TPG Capital with a timelapse image of running cars on the road and trees in the background


TPG Capital is one of the major enterprise-level FinTech companies which has leveraged the power of Drupal 8.

One of the primary objectives for TPG’s marketing circuit was to harness the Drupal’s flexibility as a digital empowerment platform. They wanted the ability to make alterations to content on the fly and try out new messaging approaches. Simultaneously, the financial industry’s stringent legal and regulatory requirements called for a flexible TPG platform that would meet the specific needs of the sector thereby offering top-notch security.

Drupal came out as the right choice when it came to the CMS that would facilitate the TPG’s goal for mirroring their cutting-edge business practices and incorporate modern website design and branding.

A digital agency built a responsive, mobile-first site. It featured newer CSS features like Flexbox and CSS animations and minimised the site’s dependence on Compass by introducing auto prefixer. Moreover, Drupal 8 version of Swifttype was built for the search component and contributed back to the Drupal Community.

The launch of Tech Coast Angels

Homepage of Tech Coast Angels with two people working on their laptop


Tech Coast Angels are one of the biggest angel investment organisation in the US. 

Tech Coast Angels selected Drupal as their CMS of choice for its excellent features vis-à-vis user authentication, account management, roles and access control, custom dashboards, intricate web forms for membership and funding application, workflow management and email notifications.

Performance improvements were made by a digital agency to both the Drupal application and the server environments which brought down the costs to a huge extent by minimising the hardware requirements necessary to run the Drupal codebase in both staging and production environments.

With Drupal being one of the most security focussed CMSs, it helped a great deal in making amendments related to security of the site. Views caching were enabled and unnecessary modules were turned off on the production server.

Market trends

Bar graph showing global investments activity in FinTech companies


The Pulse of FinTech 2018 by KPMG shows that global investments activity in FinTech companies has been steadily rising with 2018 turning out as the most profitable year. It is only going to grow more in the coming years.

Infographics showing bubbles inside a box on the left and description on the right about the size of bubbles with respect to FinTech companies

In the coming years, the main trends in the asset and wealth management, banking, insurance and transactions and payments services industries can be seen in the illustration above.

Conclusion

FinTech is a great alternative to traditional banks. FinTech excels where traditional banks lag behind. In addition to offering robust financial services leveraging technological advancements, organisations offering FinTech solutions need to have a superb digital presence to offer a great digital experience. Drupal can be an awesome content store for an enterprise-level FinTech platform.

Drupal experts at Opensense Labs have been powering digital transformation pursuits of organisations offering a suite of services.

Contact us at [email protected] to build a FinTech web application for your business using Drupal.

Oct 14 2018
Oct 14

First came the physical servers which were followed by the virtual machines and now the developer ecosystem is rapidly adopting container and serverless computing. One of the biggest challenges that physical servers pose is their management which virtualisation resolves by emulating the real system thereby streamlining the governance of different functions. Now, container and serverless computing are extrapolating the benefits to a whole new level for the developers. And this is where Kubernetes comes into play.

black and white picture of cables over a machine


Google’s Cloud Next 2018 summit held in San Francisco emphasised upon the company’s active involvement in over thousands of open source projects including Kubernetes. By the time Kubernetes was introduced in Google Cloud, it had more than 20,000 contributors which made it one of the fastest moving projects in the open source history. Kubernetes can be a huge asset in the deployment of projects based on another open source framework - Drupal. But before we plunge into that, let’s traverse along the short timeline of Kubernetes’ formation.

Timeline of Kubernetes formation

Kubernetes was originally developed by a team at Google which has been open-sourced since its launch and is managed by a large community of contributors. RisingStack has compiled an interesting timeline which traces the history of Kubernetes with the birth of the Borg system. 

Around 2003-2004, Google introduced the Borg system, a large-scale internal cluster management system, which was followed by the introduction of Omega cluster management system in 2013.

In the mid-2014, Google introduced the open source version of Borg in the form of Kubernetes. In the mid-2015, Kubernetes v1.0 was officially released.

2016 was the year when Kubernetes went mainstream

2016 was the year when Kubernetes went mainstream with more advanced releases, case studies, conferences, and the support for Windows Server and OpenAPI.

In 2017, big enterprises started adopting and supporting Kubernetes with Microsoft, Oracle, Google, IBM, and Amazon coming up with more container orchestration methods using Kubernetes.

A Closer Look at Kubernetes

A blue septagon with a white sailor wheel inside it and kuberneter written


An open source system, Kubernetes is used for handling containerized application across numerous hosts offering basic mechanisms for deployment, maintenance, and scaling of applications. It is hosted by the Cloud Native Computing Foundation (CNCF). CNCF was formed through the partnership of Google and Linux Foundation. It aims to develop sustainable ecosystems CNCF helps in fostering a community of top-notch projects that orchestrate containers as part of a microservices architecture.

Kubernetes is a portable, extensible open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation - Kubernetes documentation

Kubernetes enables you to deploy containerised application swiftly and predictably and can scale containerised applications on the fly. It seamlessly rolls out new features to your containerised applications and optimises your hardware.

The significant features of Kubernetes include:

Deployment of containers and management of rollout control: With Kubernetes, you can describe your containers and define how many you want in a single deployment. It can govern the running of those containers (even across multiple hosts) and also manage changes like updating images, changing variables etc. to your containers.

  • Resource Bin packing: This lets you declare minimum and maximum computer resources (CPU and memory) for all the containers.
     
  • Service delivery: It has the provision of built-in service delivery for the automatic exposure of containers to the internet or other containers in the Kubernetes cluster.
     
  • Autoscaling: It automatically performs load balancing of traffic across matching containers.
     
  • Heterogenous clusters: It helps in developing a cluster with a mixture of virtual machines, on-premises servers, or bare metal in the company data centre.
     
  • Storage support: It has the provision for persistent storage support with support for Amazon Web Services EBS, Google Cloud Platform persistent disks, and many more. Vendors like Red Hat, Dell, NetApp and EMC offer persistent storage for Kubernetes.
     
  • High availability: It has very high availability such as multi-master and cluster federation enabling the linking of clusters together for load balancing.

Docker vs Kubernetes

Note that Kubernetes is not a replacement for Docker but it is for some of the top-of-the-line technologies that have emerged around Docker.
 
One of those technologies is Docker Swarm which is an orchestrator bundled with Docker. It is possible to leverage Swarm instead of Kubernetes but Docker Inc. has chosen to make Kubernetes a part of the Docker Community and Docker Enterprise editions moving forward.

Kubernetes is significantly more intricate than Docker Swarm

Kubernetes is not a drop-in replacement for Swarm. Kubernetes is significantly more intricate than Swarm and needs more work to deploy. But again, the work involved with the container orchestration using Kubernetes would provide a big payoff in the long run - a more governable, resilient application infrastructure. Docker Swarm is a good choice for the development work and smaller container clusters.

Deploying Drupal using Kubernetes

Bay Area Drupal Camp 2017 had a presentation that exhibited the deployment of Drupal leveraging Kubernetes. A digital agency built a Lagoon platform that builds cloud web hosting solutions for decoupled Drupal with Node.js features. It showed that for scaling Drupal to a plethora of annual page views, decoupled CMS architecture enables the deployment of Docker, Kubernetes and OpenStack solutions together in data centres.

[embedded content]


Lagoon platform was created for optimising hosting for Decoupled Drupal sites on the public cloud using OpenStack. With Lagoon, Drupal admins can build containers for PHP with NGINX, run the MYSQL or MariaDB installation in another container with Node.js configured on a third set.

Containers for Redis, Varnish Cache and Solr complete the install with the management of load balancing, page caching and auto-scaling web server nodes to match traffic rates. Lagoon relies upon Red Hat Enterprise Linux and the OpenShift platform in addition to the Original Community Kubernetes Distribution (OKD). System admins would have to use Jenkins, Ansible, Vagrant, TravisCI, Puppet, Docker, and CircleCI for configuration.

Programmers and developers would have to be adept with GraphQL, React, Apollo, Next.js and Prometheus. Lagoon leverages Alpine Linux for container installs from Docker images. Content Delivery Network (CDN) integration completes a different production route for anonymous traffic by geolocation thereby optimising datacentre hardware.

Workflow process with Lagoon involves reading the docker-compose.yml and creating disk images which set up the OS for web servers in containers. Then, disk images are pushed to an OS registry like GitHub or BitBicket. Using Ansible, the disk image is pushed to a git repository and commits are made to Node.js for testing. Lagoon deploys disk images from the git repository for Drupal web hosting requirement s in Kubernetes clusters.

Minishift can be leveraged to run OpenShift server administration on the desktop. Lagoon comprises of server-side rendering for Node.js and React on NGINX, running Drupal on NGINX in isolated containers individually. Then, Varnish Cache is used to handle HTML file transfers to users and CDNs.

Market trends

Two rectangular boxes divided by lines with each block showing percentages on the implementation of the Kubernetes solutionSource: 451 Research

A study conducted by technology research and advisory company 451 Research investigated containers adoptions by enterprises across the wide array of industries. It revealed that enterprises of all sizes are rapidly using containers and man are even deploying and governing their containerised workloads with orchestration software. 52% of the organisations gestured that they are running container management and orchestration software in production today and 71% of the respondents were using Kubernetes.
 
Another survey by Portworx Annual Container Adoption in 2017 included insights from 491 IT pros across a variety of industries and company sizes. It delineated that Kubernetes was the preferred option when it comes to container orchestration(shown in the graph below).

A bar graph with different coloured boxes to illustrate the adoption rate of different container orchestration toolsSource: Portworx

Moreover, a report on Transparency Market Research stated that “key drivers of the Kubernetes solutions market are the rapid growth of container orchestration, increase in investment by vendors, more focus on hybrid cloud and multi-cloud, an increase in adoption of Kubernetes by major players offering cloud computing”.

This report also stated that while North America accounts for the largest share of Kubernetes solutions market, Europe trails behind the second largest. Also, Amazon Web Services, Google Inc., Microsoft Corporation, Red Hat, Inc., Apprenda Inc., UnitedHealth Group, IBM Bluemix, Cisco Systems, Inc., Target, Oracle Corporation, Huawei Technologies Co., Ltd, CenturyLink, Inc. Kismatic, Inc., Heptio, Core OS, Datera, and NavOps are the major vendors.

Conclusion

Drupal as a great content store has grown exponentially due to the presence of its large and active community which is committed towards the perpetual improvement of Drupal to powering digital innovation. Kubernetes, also being an open source software, can of huge help in the Drupal deployment and has made rapid strides with colossal adoption rate among the big enterprises in recent times.

At Opensense Labs, we have been offering a suite of services to provide amazing digital experience to our partners.

Ping us at [email protected] to develop and deploy Drupal-based web applications leveraging the power of Kubernetes.

Oct 10 2018
Oct 10

Everyone has their own preference when it comes to different genres of music ranging from alternative rock and post-rock to trap rap and drone metal. Website traffic touches sky-high when a horde of music lovers remain glued to their screens to witness their favourite artists being awarded in this annual event of Grammy awards. Being a scalable and high performing space, the website of Grammy has coped with huge spikes in traffic with ease.

A speedometer in a peach coloured background


Website scalability is such a crucial aspect which has a huge say in the performance of digital firms. Drupal 8 and its capabilities lend better web performance. Being highly scalable, Drupal 8 helps in building a web application that is unfazed by the colossal spike in the internet traffic and scales tremendously. Grammy, powered by Drupal, has extracted the scalability features of Drupal to a great extent. Let's find out how.

The Significance of Website Scalability

58% of application/site owners overestimate their capacity levels: State of Web Readiness Report by Load Impact
Infographics with a heading, text, and four icons vertically lined up in a red background


A report from Load Impact has some interesting statistics on web performance.

  • 68% of respondents have encountered performance or stability issues with their website where the main reason was pointed towards the lack of resources.
  •  
  • 39% of e-retailers claimed that they incurred a financial loss due to performance or stability problems. In comparison to this, just 24% of the non-e-retailers claimed that they incurred money loss.
  •  
  • 98% of e-retailers believed that sub-two-second response time was essential. But the load time for e-commerce sites that were analysed in this report surpassed the desirable response threshold by a huge margin. The average was 7.9 seconds which is more than that for non-e-commerce sites.

Typically, 90% of your website’s response time is from frontend resources but this laters as your load and traffic enhances.

A graph with two curves illustrating frontend and backend load time


Questions that you can raise while determining ways of scaling:

  • Is your website or application performing acceptably with a minimum number of users on the system?
  • Is the website or application responding running faster with additional concurrent users? And if so, how many?
  • Are there hardware bottlenecks in the present system?
  • Is the website or application able to handle the increasing number of users/data?
  • What is the maximum amount of load the system is able to handle?

Is Drupal Scalable?

Drupal is a highly scalable CMS. If you want your site to grow and be amongst the busiest of online spaces, then Drupal can scale with your needs. Even if you are already popular and offer stupendous digital experience to the customers, Drupal is scalable to cope with the gargantuan amount of traffic to your site content.

Large enterprises love Drupal with the digital presence of big names like Grammy, Weather.com, Pfizer, Time Inc., Tesla, Puma, Princess Cruises, and many more powered by Drupal. Whether it is the extreme traffic spikes on certain occasions or the constant web traffic, Drupal handles all of that with utmost ease.

Drupal accommodates content growth and supports the most content-rich sites and experiences. It scales to govern more traffic, content, and users. So whether if you have one or over a thousand content contributors, Drupal can efficaciously cope with a monumental amount of visitors, content, and Drupal users.

Optimising Drupal Performance and Scalability

A superfast website significantly contributes towards the improvement of user experience, usability and engagement. Drupal 8 is one of the most efficient CMS for enabling blistering page speed.

A superfast website significantly contributes towards the improvement of user experience, usability and engagement.

Module management

Outdated modules can deter your efforts in speeding up your website. Updating every module enabled on your Drupal site can be beneficial.
 
It is also important to keep a record on used or no longer used modules. The number of Drupal modules installed on the site is directly proportional to the time taken for code execution thereby affecting page load time. Hence, uninstalling unwanted modules can improve execution time.
 
Furthermore, disabling the modules also add to the execution time of the code. So, a complete removal by uninstalling the unused modules would make the site faster.

Cache optimisation

Caching is an important feature that you can configure for enhancing your website speed. For advanced caching, Drupal comes with a great set of modules:

  • Internal Page Cache module assists in caching the web pages for anonymous users to enhance the speed for subsequent users.
  • Dynamic Page Cache module caches web pages for the anonymous and authenticated users.
  • BigPipe module lets users to swiftly see the unaltered, cacheable page elements while the personalised content is displayed next.
  • Redis module helps in integrating with the Redis key-value store thereby offering a tremendous cache system for static pages.
  • Varnish module allows you to integrate Drupal sites with an advanced and fast reverse-proxy system - Varnish cache- to serve static files and anonymous page views faster and at high volumes.
  • Memcache API and Integration module integrated Drupal sites with Memcached which helps in storing your data in active memory for a limited time period that makes the site faster to access.

Incorporation of Content Delivery Network (CDN)

CDN, Drupal module, assists in the integration of Content Delivery Network for the websites. It alters the file URLs thereby allowing the files like CSS, JavaScripts, images, videos, and fonts to be downloaded from the CDN instead of the web server. This helps in mitigating page load time and rapidly delivers web page components.

Usage of lazy loading

In traditional websites, all the images and content are preloaded into the web browser when someone accesses the site. Lazy loading loads these elements as soon as a user scrolls to view a content. Blazy, Drupal module, offers the functionalities of lazy loading and multi-serves the images to save bandwidth and server requests.

Image optimisation

Drupal 8 is loaded with image optimisation feature for setting the compression ratio of the images and fine-tune the page performance. Also, the size of the images for different screen sizes can be optimised in Drupal 8 which increases the page load speed.

Bandwidth optimisation

Optimising bandwidth refers to the aggregation of all CSS and JavaScript files to make them load together which ensures that all the page elements can be seen by the users almost immediately.

404 error management

When something on the site breaks to cause a 404 error, it can result in sluggishness. For instance, a failed image can hamper the performance of the site. Fast 404, Drupal module, utilises the resources better and whitelists files and checks pathways of problem.

Management of use of CSS and JavaScript

Avoiding overuse of CSS files and JS and adopting a minimalistic approach by keeping the code to a minimum can improve performance. Advanced CSS/JS Aggregation, Drupal module, can help in keeping a tab of your front-end performance by aggregating CSS and JavaScript files to improve speed.

Web hosting

It is of utmost significance that, while implementing every possible way of utilising the Drupal’s powerful capabilities, you select the best hosting provider that will decide your site’s ultimate speed, stability and security.

Scaling the server

In case, your server hardware is nearing its limits and you have optimised the site as much as possible, or you need a faster way of scaling than you can optimise, you can upgrade the server hardware in the following ways:

  • Scaling vertically: This is the simplest way of scaling the hardware. It refers to throwing more resources at the same server. In a cloud data centre, it may be as simple as upgrading the server size for more CPU cores, memory etc.
  • Scaling horizontally: This is a more intricate process than scaling vertically. It refers to adding more servers to separate the load. When done right, this can hugely minimise the load any single server receives.
  • Considering multiple servers: In case, you have multiple app servers for Drupal, you will require a method of deploying code to each server simultaneously. For instance, SaaS platforms like platform.sh and pantheon.io can handle the complete hosting setup for you but if you are doing it by yourself, you would need an rsync setup or git push to each of your servers etc. 

Up above the world so high: Drupal’s scalability for NASA

Flowchart showing the architecture of a website redesign with relevant iconsSource: Drupal.org

A digital agency migrated the website of NASA to the AWS cloud and onto Drupal to create a fully responsive and user-centric experience. Several AWS based Drupal CMS solutions for NASA were implemented for NASA for serving a plethora of needs ranging from nasa.gov to the Science Mission Directorate’s science.nasa.gov in both English and Spanish to a multisite platform and governance model for numerous Drupal applications serving groups across different NASA centres.
 
Nasa.gov and all of its subdomain components were migrated and relaunched which involved replacement of a closed source system. It comprised of more than 250000 pages and almost 3 TB of content.

Drupal in action

Drupal compressed the complete development timeline and also saved a lot of money in the process. Building with Drupal on the Amazon cloud ensured that NASA’s content is stored safely and scales with the content growth. With its user-driven APIs, dynamic host provisioning, infinite compute scalability and storage, and well-architected security architecture, Drupal and AWS together was the right fit.

Drupal compressed the complete development timeline and also saved a lot of money in the process.

Project highlights

  • Migration from proprietary, on-premise CMS system to an open source CMS in the Amazon cloud was performed without any service interruptions
  • Mobile-first approach was employed to the redesign of the site.
  • Headless Drupal in AWS cloud environment was built with security, performance and availability in mind.

Outcome 

Statistics shown on the right side in four blocks and a tab screen on the left with NASA homepage and a red paper bird on it.Source: Drupal.org

It is deployed in multiple AWS availability zones for redundancy handling approximately 500 content editors performing over 2000 content updates every day. On an average, it receives nearly one million page views a day and has handled peak loads of over 40,000,000 page views in a single day with a staggering and record-breaking 2,000,000+ concurrent users during NASA’s 2017 Total Solar Eclipse coverage.

Conclusion

Website scalability and performance is a significant aspect that ensures how well the digital business does during the busiest of times. Whether internet users throng at your website causing a sudden spike in traffic, or you are managing a popular service that witnesses a constant web traffic, Drupal scales with your needs.
 
We have been steadfast in our objective of offering an amazing digital experience through a suite of services.
 
Contact us at [email protected] to build a highly scalable Drupal site for your business.

Oct 08 2018
Oct 08

Big enterprises have been marching on towards the path of digital transformation. Disney, an entertainment giant, has advanced its digital transformation strategies by acquiring companies. By acquiring BAMTech, a media technology service provider, it can access the streaming technology instead of building it in-house. Spending billions of dollars on 21st Century Fox with the assets including famous characters from Marvel comics, it can connect directly with consumers instead of distributors and advertisers.

Illustration showing people sitting around a desk and working


Social media, cloud computing, data analytics, and mobility are dramatically altering the way companies operate. On the one hand, their synergy has led to easy-to-use products and services for customers, on the other hand, it has resulted in richer dividends for companies. Witnessing a positive correlation between business performance and the emerging technologies, organisations are fast-forwarding to digital transformation. 

Drupal, as one of the pioneering CMSs in powering digital innovation, can be highly fruitful for enterprises in their digital transformation endeavours. But before looking at Drupal’s prowess, how did the digital transformation of business models start coming into the picture?

Global connectivity shifts and empowerment of customers

A graph showing a straight line and a curve depicting the evolution of digital transformation


The emphasis and impact of the internet and global connectivity has shifted since the late 1990s to the 2010s. In the 1990s, only the enterprises in select industries like music, entertainment, and electronics were exploring digital products and services. Infrastructure providers led from the front in building out the information backbone for the efficaciousness and better productivity across finance, supply chain, and human resources.

In the late 1990s, the internet hype wounded up with a crash in 2000. But the evolution of consumer demand for digital products and services remained steadfast. As more customers were getting empowered with pervasive access to online information, along with a plethora of choices and channels, their expectations accentuated even more.

Now, the customers have become the primary force behind the digital transformation in all industries.

Digital Transformation in the driver’s seat

A flowchart showing boxes explaining building blocks of digital transformationSource: Hellosign

Digital transformation is the process of integrating digital technology into different aspects of the business that needs fundamental technological changes, different approach towards culture, operational upgrade, and value delivery.

Organisational change is the foundation of digital business transformation - Global Centre for Digital Business Transformation

For leveraging futuristic technologies and their increasing expansion into human activities, a reinvention of business is required by dramatically metamorphosing the entire business process and model.

Digital transformation demands a shift of focus to the edge of the enterprise and numerous agile data centres for supporting that edge. It also requires an enterprise to shed legacy technology that may be price-heavy to maintain thereby changing the company culture in order to support the push that acceleration that comes with the digital transformation.

Gartner’s IT Market Clocks for 2016: Digital Transformation Demands Rapid IT Modernisation states that 66% of the organisations doing digital transformation expect to generate more financial gains from their operations while 48% predict that more business will arrive through digital channels. Cited by 40%, it can empower employees with digital tools and 39% cited that it minimised business costs. To reap the rewards down the line, there is no better time to start upon your own digital transformation journey.
 
Major benefits of digital transformation for an organisation include:

  • Improvement of processes: Newer technologies permits businesses to automate simpler processes and remove the intermediaries in more intricate processes.
  • Finding newer revenue streams: Emerging technologies can open the doors for new profitable avenues that may not have been available for an organisation when they were first established.
  • Building personalised customer experience: Customers expect businesses to meet their individual needs and evolution of technology has deemed it fit enough to fulfil this very purpose.

Strategising digital transformation

Resolving the tension among the leaders

A piechart showing statistics on digital transformation leadership


The natural starting point in an effort to build executive alignment is to resolve tensions in the leadership group and distribute the ownership tasks in a planned manner.

Leveraging the intelligent edge

Infographic showing statistics on IoT with relevant piccharts and icons


The hottest thing in computing right now is ‘the edge’ also referred to as ‘the intelligent edge’. Think of it as a cluster of sensors deployed across industry and society. Vast amounts of sensor data have to be processed locally near the data source. The work must be done on-site if there is no time to send data to the cloud and wait for a response. That is why it is known as the intelligent edge. 
 
Getting the intelligent edge in businesses can make the process more efficient and effective and create a more pleasing environment.

Growing with the platform economy

Illustration showing logo of different companies to explain different types of platform economySource: Raconteur

Platform economy has transformed the way businesses think about innovation. Organisations can take advantage of this phenomenon where online marketplaces are storming market after market, connecting buyers and sellers and taking the friction out of commerce.

Signifying the security from the start

A bar graph showing statistics on top challenges impeding organisations from taking advantage of digital trends


When undergoing a digital transforming process in your organisation, it is always better to engage security people from the very beginning. It saves a lot of pain and backtracking later on

Reimagining your business right now

Four piecharts showing percentages on top drivers of digital transformation


In spite of the economic and political uncertainty, enterprises must seize the initiative and entirely reimagine themselves and the role technology plays for them. Such a need for constant change to be ahead of others in the business means the ‘digital transformation’ may give way to ‘digital evolution’.

Enabling digital tax transformation

An illustration in the shape of hexagon depicting digital tax strategy


Digital transformation can allow the tax professionals to rethink the way they work while offering exciting new opportunities. Digital technology in tax is quickly moving up the boardroom agenda as it affects enterprises both internally and externally. With more businesses going digital, governments and tax authorities can also adopt disruptive technology including advanced data-driven auditing techniques.

Transforming a whole economy

Horizontal bar graphs showing statistics on mobile and internet penetration


Digital technology is not only automating finance functions but the potential to grow business using artificial intelligence. For instance, the potential of a digital economy in India, world’s second most populous country behind China, is gargantuan with benefits for business and citizens alike.

How is Drupal 8 enabling digital transformation?

Drupal 8 has changed the web development landscape with its immense scope for enabling the digital transformation of an enterprise. Not only Drupal 8 does an astounding job to be a leading open source web content management system, but it is continuing to evolve with altering customer expectations.

Drupal 8 is continuously evolving with customer expectations

Some of the highlights are mentioned below:

Content creation

Drupal 8 authoring and theming systems are designed for ease-of-use and standards compliance. For instance, Drupal 8.6 adds support for remote media types thereby letting you to easily embed YouTube or Vimeo videos in your content. Moreover, the addition of Workspaces, experimental module, offers sophisticated content staging capabilities.

Easy installation

A table with rows and columns showing time to installation of different open source frameworksSource: Dries Buytaert's blog

Time taken for installing Drupal has been reduced considerably. You can install Drupal with the new Umami demo profile which exhibits some of Drupal’s powerful capabilities by providing an awesome website filled with content straight out of the box.

[embedded content]


Developer’s paradise

  • Developers can upgrade a single-language Drupal 6 or Drupal 7 website to Drupal 8 with the built-in UI.
  • Everything is fieldable in Drupal 8 thereby improving data modelling.
  • Drupal 8’s core improvements and APIs make it easier to create custom functionality on the basis of bi-directional data connections to handle and exchange content.
  • With mobile-first displays and responsive layouts, content can be deployed across platforms prepackaged for mobile devices.
  • Drupal 8 backend can handle content and be de completely decoupled from the front end and web applications.

Interoperability with adjacent technologies

Drupal 8 has a top-of-the-line interoperability with adjacent technologies such as CRM, Digital asset management (DAM), web analytics, marketing resource management, and multichannel campaign management (MCCM).

Security by design

Drupal is secure by design. The design of the Drupal is in such a way that it addresses all of the top 10 security risks of Open Web Application Security Project (OWASP).

A box with pointers showing list of OWASP 2017 security risks


With a proven record of being the most secure CMS, it beats the big players in the CMS market when it comes to being resilient to critical internet vulnerabilities. Drupal Security Team is steadfast in its objective of addressing security issues and offering timely fixes.

You can enable a secure access to your Drupal site as it has the in-built support for salting and repeatedly hashing account passwords when they are stored in the database. It helps in enforcing firm password policies, industry-standard authentication mechanisms, sessions limits, and single sign-on systems.
 
It offers granular user access control to give administrators full control over who can see and modify different parts of the site. You can even configure Drupal for strong database encryption in the top-notch security applications.
 
Its Form API makes sure that data validation is done which helps in preventing XSS, CSRF, and other malicious data entry. It also limits the number of times login attempts are performed from a single IP address to prevent brute-force password attacks. Its multi-layered cache architecture assists in mitigating Denial of Service (DoS) attacks.
 
Rightfully, a report from Sucuri shows that Drupal is best security-focussed CMS amongst the leading players in the CMS market.

Bar graph showing the statistics on Drupal securitySource: Sucuri

Drupal as an e-commerce platform

Drupal stands tall in the age of platforms offering a suite of Drupal commerce modules which can be leveraged to build e-commerce websites and applications of all sizes. While e-commerce solutions, most often than not, are built with an application mindset, Drupal commerce was built with a framework mindset emphasising on what you can develop with it.

Metamorphosis of the whole economy

Drupal can transform the whole economic landscape of a business. For instance, Drupal enabled digital transformation endeavours of TPG Capital which is one of the renowned enterprise-level fintech companies. Drupal turned out to be the best choice to tackle the financial industry’s stringent legal and regulatory requirements.

Homepage of TPG Capital with images of TPG products


The story of Digital transformation with Drupal

Drupal Europe 2018 in Darmstadt (Germany) had a dedicated section for ‘Digital Transformation + Enterprise’. One of the presentations focussed on the digital revolution of the Chatham House.
 
Chatham House, which is a not-for-profit, non-governmental organisation, has been leading as a global independent policy institute. But its digital presence scrabbled to evolve quite so prosperously. It was an arduous task to access key reports and information.

Homepage of Chatham House with an illustration showing a boat and Euro logo

Being a content-heavy site, it had a set of intricate requirements. Drupal was chosen for the editorial flexibility along with its open source ethos. It proved as the ideal springboard for success with seamless possibilities. And moving to Drupal was just the inception of their long-term digital transformation plans.
 
New strategy focussed on improving the reputation of Chatham House, prioritising outputs, putting more efforts in marketing, and leveraging insights from feedback. It was all to be underpinned by measuring success KPIs and reporting.

Moving to Drupal was just the inception of the long-term digital transformation plans of Chatham House

Then, full website redevelopment project was performed with a user-centric design utilising the powerful capabilities of Drupal.
 
The presentation delineated the significance of collaborative efforts. Combining strategic partnerships with strong internal relationships has ratcheted the monthly online users of Chatham House.

Conclusion

Organisational change involves a lot more than just adopting emerging technologies. There is a change in cultural setup, operational upgrades, and transformation of the whole value chain. And all these factors culminate to form the very essence of digital transformation.
 
Digital transformation has been vital for organisations to be relevant, keep churning out ways for tackling the changing needs of customers in the digital landscape and stay ahead of others.
 
Drupal, as an open source CMS, has an active community that has been working towards powering digital innovation. With such a community, Drupal has been able to evolve with altering needs and can be a great solution for building a marvellous web presence for the businesses.
 
Drupal experts at Opensense Labs have been continuously collaborating with partners to pursue the digital transformation endeavours with Drupal development.
 
Contact us at [email protected] to understand how can we digitally transform your business using Drupal.

Oct 01 2018
Oct 01

Think of your best friend who keeps things to himself - a characteristic that would sometimes make it strenuous for you to understand if he is in distress. Juxtapose such a character with another friend who is an open book which makes it a downhill task to know what he is thinking and feeling. Such a correlation can be observed in this digital world where the security of open source software and proprietary software is constantly debated.

An open book, showing an image of ocean tides, kept on the table


Dr. A.P.J Abdul Kalam, former President and renowned scientist of India, once reiterated that “open source codes can easily introduce the users to build security algorithms in the system without the dependence of proprietary platforms”. The security that open source software offers is unparalleled. Drupal, as an open source content management framework, is known for its provision of magnificent security for your online presence and is worth considering.

Getting to know open source software

It was in 1999 when Eric Raymond stipulated that more eyeballs can make the bugs look shallow. He coined the term “Linus’ Law” which was named in honour of Linux creator Linus Torvalds. Since then, it has been almost two decades for continuous usage of Linus’ Law as a doctrine by some to explain the security benefits of open source software.

Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone - The Cathedral and the Bazaar by Eric S. Raymond (Lesson 8)

Open source software consists of source code that is openly available for anyone to do inspection, adjustments or improvements. This code may comprise of bugs or issues that require to be flagged.

Furthermore, public availability means attackers could study and exploit the code that emphasises on inculcating code level security practices. Some of the common open source security practices constitute:

  • Governing an inventory of all software used. This data must consist of the version, hash value and the original source of the code.
  • Verification of the availability of security updates and bug fixes. This makes sure that the patch management processes are being done regularly.
  • Testing and scanning the source code. This is performed using code analysers, auditing tools, or a community like Drupal.
  • Make sure that open source applications are in compliance with the existing network architecture to avoid violations of any firewall or security policies.

Myth or fact: Is Open source software more secure than closed source software?

Whether it is the Heartbleed incident in 2014, where the vulnerability was discovered in OpenSSL. Or, the Microsoft Vulnerability Exploit in 2014, when credit card information of millions of Home Depot customers was compromised. Both open source and closed source software have a history of encountering security threats. But which one is more secure?

Closed-source software, also known as proprietary software, is only distributed to authorized users with private modification and republishing restrictions. On the flip side, OSS is distributed under a licensing agreement which makes it available for the general public to use and modify for no cost.

It is this ability to modify the code that forms the crux of the argument within the Linux community that open source is more safer and less susceptible to security attacks in comparison to closed source software Microsoft Windows.

OSS allows anyone to rectify the broken code. In contrast, closed source can only be fixed by the vendor. 

So, when more people are testing and fixing the code within the OSS community, open source gradually increases its salience on security over time. Although attacks are still discovered, it has become a lot easier to identify and fix bugs. Open source enthusiasts believe that they experience fewer exploits and their code receives patches more rapidly as there are a plethora of developers contributing to the project.

When digging deeper, the notion that open source platforms offer users the capability to keeping itself relevant with new and altering requirements underpins the argument for open source over closed. OSS does have a reputation of being more secure as the University of Washington states in a report.

Open source security in Drupal

Infographic with roadmap showing the Drupal security process with relevant iconsSource: Acquia

Drupal Security Team in action

The Drupal open source project has a dedicated team of volunteers who track security-related bugs and release updates. They help in:

  • Resolving security issues that are reported in a Security Advisory.
  • Offering help for contributed module maintainers in fixing security issues.
  • Offering documentation for writing secure code and safeguarding Drupal sites
  • Providing assistance to the infrastructure team for keeping the Drupal.org infrastructure safe.

Anyone, who discovers or learns about a potential error, weakness or a security threat that can compromise the security of Drupal, can submit it to the Drupal security team.

Process cycle

The process cycle of the Drupal security team involves:

  • Analysis of issues and evaluation of potential impact on all the supported releases of Drupal.
  • Mobilizing the maintainer for its removal if found with a valid problem
  • Creation, assessment, and testing of new versions
  • Creation of new releases on Drupal.org
  • Using available communication channels to inform users when issues are fixed
  • Issuing an advisory if the maintainer does resolve the issues within the deadline and recommending to disable the module thereby marking the project as unsupported on Drupal.org.

The security team keeps issues private until there is a fix available for the issue or if the maintainer is not addressing the issue from time-to-time. Once the threat is addressed and a safer version is available, it is publicly announced.

In addition, the security team coordinates the security announcements in release cycles and works with Drupal core and module maintainers. For any concern with the management of security issues, you can also ask [email protected] 

Security features

  • You can enable a secure access to your Drupal site as it has the out-of-the-box support for salting and repeatedly hashing account passwords when they are stored in the database.
  • It also lets you enforce strong password policies, industry-standard authentication practices, session limits, and single sign-on systems.
  • It provides granular access control for giving administrators full control over who gets to see and who gets to modify different parts of a site.
  • You can also configure Drupal for firm database encryption in the top-notch security applications.
  • Its Form API helps in data validation and prevents XSS, CSRF, and other malicious data entry.
  • It limits the login attempts that can be made from a single IP address over a predefined time period. This helps in avoiding brute-force password attacks.
  • Its multilayered cache architecture assists in reducing Denial of Service (DoS) attacks and makes it the best CMS for some of the world’s highest traffic websites like NASA, the University of Oxford, Grammys, Pfizer etc.
  • Notably, the Drupal addresses all of the top 10 security risks of Open Web Application Security Project (OWASP).
A box showing a list of OWASP Top 10 Most Critical Web Application Security Risks in 2017


Statistical reports

In the 2017 Cloud Security Report by Alert Logic, among open source frameworks assessed for content management and e-commerce, Drupal was reported for the least number of web application attacks.

Table with rows and columns showing web app attacks targeting top CMS and ecommerce assetsSource: Alert Logic

Sucuri’s Hacked Website Report also showed that Drupal was the most security-focused CMS with fewer security vulnerabilities reported. It stood on top against leading open source CMSs like Wordpress, Joomla, and Magento.

A bar graph in red colour showing infected websites platform distribution in 2017Source: Sucuri

Challenges in open source security

Open source software has its share of challenges as well. Equifax’s 2017 breach was notable because of the millions of US consumers who were affected. For the digital transformation to transpire, developers are moving from perfect to fast using open source components as vital assets for swiftly adding common functionality. For letting developers move as swiftly as customers demand, security pros must address some fundamental challenges.

For the digital transformation to transpire, developers are moving from perfect to fast using open source components as vital assets for swiftly adding common functionality

The time between disclosure and exploit is shrinking. Today, there is enough information in the Common Vulnerability and Exposures (CVE) description of a vulnerability consisting of affected software versions and how to execute an attack. Malicious hackers can make use of this information and decrease the time between disclosure and exploit as was witnessed in the case of Equifax.

Identification of open source component vulnerabilities listed in the National Vulnerability Database (NVD) increased by 10% from 2015 to 2016 with a similar increase in 2017. For instance, in components from Maven packages, Node.js packages, PyPi packages, and RubyGems, published vulnerabilities doubled (see graph below).

A bar graph in green colour showing the state of open source security in 2017


Security pros must assume that prerelease vulnerability scans are not executed by open source developers. So, software composition analysis (SCA) and frequent updates to open source components will be the responsibility of the enterprise.

Conclusion

Open source security does pose a significant case for itself and can be a better option than a closed source or proprietary software. Also, it is a matter of preference looking at the organisational needs and project requirement, to choose between them for your digital business.

Drupal, as an open source content management framework, comes out as the most secure CMS in comparison to leading players in the market. At Opensense Labs, we have been perpetually offering digital transformation with our strong expertise in Drupal development.

Contact us at [email protected] for amazing web development projects and leverage open source security in Drupal 8.

Sep 27 2018
Sep 27

One of the reasons why The New York Times is able to catch up to its growing user base is its inclination towards technological advancements. That was evident when it leveraged the power of microservice architecture via a remodelled video publishing platform to scale with their newsroom demands. They also moved their infrastructure to the cloud which resulted in a stable and scalable email platform, powered by a suite of microservices, for sending emails to the readers.

Illustration showing a back office of news media company with several people working and paper being circulated in the machines


Why are big enterprises like The New York Times leaning towards microservices? Microservices has grown exponentially and holds an astronomical future for the digital businesses. It will be interesting to see how traditional CMS like Drupal finds a place in the world of microservices. But before plunging into all that, one might wonder where did this ‘microservices’ thing originate from?

Tracing the roots in the UNIX world

New Relic has compiled an interesting and brief timeline of the evolution of microservices. Microservices has its roots in the Unix world that takes us back to more than three decades ago.

As a term, microservices was first documented in 2011 by Martin Fowler

Service-oriented architecture (SOA), a design principle where services are offered to other components by application components via communication protocol over a network, was all the rage decades ago. Due to a superabundance of failures and costly implementations, the SOA earned a poor reputation and took a backseat. Martin Fowler, among others, has said that microservices are a new spin on SOA.

As a term, it was first documented in 2011 by Fowler at a software architects’ workshop.

In 2012, a presentation was given by James Lewis at the 33rd Degree in Krakow which was titled “Microservices - Java, the Unix Way”. This delineated microservices as a means of building software more rapidly by dividing and conquering and used Conway’s Law to structure teams.

Since that time, the adoption of microservice architecture has grown and many organisations are going for microservices as their default style for building enterprise applications.

Understanding the terminology

Illustration showing four boxes with texts explaining microservicesSource: LeanIX GmbH

What are microservices? Microservices are an architecture for splitting a monolithic application into smaller pieces. Each of those pieces offers a certain function through a well-defined and carefully handled API.

The collection delivers the same overall business value like the monolithic application with the difference being these independently working individual pieces in microservices. That means they can be updated swiftly without impacting an entire application.

“The microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies”. - Martin Fowler

"A microservice architectural style is an approach to develop a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API".

Netflix is an unsurpassed example of microservices adoption. It moved from a traditional development model with several engineers producing a monolithic DVD-rental application to a microservices architecture. Small teams could focus on the end-to-end development of hundreds of microservices that work together to serve digital entertainment to millions of Netflix customers every day.

Flowchart with the logos of amazon and etsy showing the difference between monolithic and microservices architecturesSource: LeanIX GmbH

The main difference between monolithic and microservices architecture, as can be seen in the depiction above, is that all the features and functionalities were under a single umbrella. That is, they were under a single instance sharing a single database. With microservices, each feature is allotted a different microservice, managing its own data, and performing a different set of functionalities.

How good or bad are microservices?

Illustration with boxes on left and right side showing challenges and solutions of microservices on the respective sidesSource: Logentries

The benefits of microservices are laid out below:

  • Autonomous deployments: You can update a service without having to redeploy the entire application and rollback or roll forward an update during mishaps. Fixing bugs and feature releases are much more manageable with fewer challenges.
  • Autonomous development: Building, testing and deploying a service would need a single development team leading to perpetual innovation and swift release cadence.
  • Small teams: Teams can lay their focus onto one service thereby simplifying the understanding of the codebase with the smaller scope for each service.
  • Isolation of faults: Downtime in one of the services won’t affect the overall application. This does not mean that you get resiliency for free.
  • Tech stack mixture: Technology that is deemed most fit for a service can be selected by the teams.
  • Scalability at granular levels: Independent scaling of services is possible.

Some of the challenges are outlined below:

  • Intricacy: More moving parts are there in microservice application than the equivalent monolithic application.
  • Development and testing: Developing against service dependencies would need a different approach and testing service dependencies is difficult particularly when the application is evolving rapidly.
  • The dearth of administration: The decentralised approach for building microservices may lead to numerous languages and frameworks thereby making it harder to manage.
  • Network congestion and latency: Usage of granular services can result in more inter-service communication. Chances are that if the chain of service dependencies gets too elongated, additional latency can be a challenge.
  • Data integrity: Data consistency can be a hurdle with each microservice responsible for its own data persistence.
  • Management: Correlated logging across services can become a formidable task.
  • Update issues: If not for a careful design, several services updating at a given time could result in backward or forward compatibility.
  • Team skill-set: As the highly distributed systems, microservices require a team with the right mix of skills and experience.

Taking Drupal into the context

Drupal is a monolith. How can it survive this trend of microservices? Drupal, being an amazing content management framework, provides a great content editing experience and has been pioneering digital innovation. With that being said, microservices architecture can be used for development and deployment of applications using Drupal. Let’s see how Drupal can put into the scheme of things.

Demonstration at DrupalCon Vienna 2017

A presentation held at DrupalCon Vienna 2017 demonstrated an effective way of integrating Drupal 8 in a microservices architecture.
 
Drupal 8 proved to be a useful content management framework for this implementing microservices architecture because of its:

  • Symfony components,
  • Composer to manage external dependencies,
  • and the magnificent results of the Web Services and Context Core Initiative (WSCCI).
     

[embedded content]


It exhibited the delegation of asynchronous work from Drupal to a set of very reactive applications written in Go with some assistance of RabbitMq queues. Elasticsearch was leveraged as a common data storage between services and REST endpoints were exposed where the endpoints could notify back to Drupal.
 
Furthermore, methods of connecting websocket server to push and pull messages between services were shown. To run all these services in a controlled and replicable manner, services of Ansible and Docker were extracted.

Demonstration at Drupal Developer Days Lisbon 2018

Another session at Drupal Developer Days Lisbon 2018 delineated how the citizen portal of the city of Reykjavik (Iceland) was relaunched using Drupal and microservices.
 
With the incorporation of more than 100 web services ranging from simple services like registering a dog or renewing a driver’s license to the intricate services like the admissions of children to school or updating the residential address.

[embedded content]


Powered by Drupal 8, this new portal integrates the services with a microservices architecture using JSON Schema as communication protocol. The microservices architecture was chosen to let centralised data collection and presentation in a single portal while simultaneously incorporating a heterogeneous landscape of services autonomously from one another.

Predictions ahead

Oracle’s Cloud Predictions 2018 report states that by 2020, the lion’s share of new applications will be powered by microservices architectures.

Open source has given a whopping push to the microservices architecture. Its several components support continuous integration and delivery pipelines, microservices platforms, containers, container management and orchestration, container registry service, and serverless capability.

Open source has given a whopping push to the microservices architecture

Adoption of cross-cloud containers like Docker and Kubernetes is on the upwards trajectory and developers consider an open cloud stack to prevent vendor lock-in.

A bar graph showing the CAGR of microservices from 2016 to 2023Source: Market Research Future

According to a report on Market Research Future, the microservices architecture market is expected to reach $32.01 billion by 2023 with a Compound Annual Growth Rate (CAGR) of around 16.17% during the forecast period.

Another report on Research and Markets for the forecast period of 2017 to 2023 states that as far as the ‘Market Analysis’ is concerned, the rise in the cloud adoption is integral for microservices market. This is because the microservices architectures function on smaller and simpler services. Also, there is a high demand from North American companies as they have implemented it in e-commerce, financial, and travel services. This has helped in storing data and information cost-effectively and enhanced the efficacy, agility and scalability.

The report on Research and Markets has an interesting ‘Countries and Vertical Analysis’ vis-à-vis microservices. Most of the major players are in the American region with the prominent vendors covered in the report include the likes of Cognizant, IBM Corporation, Datawire, Salesforce, Infosys Ltd., MuleSoft Inc., and Software AG. Japan, the US and China are expected to witness a tremendous growth in microservices adoption.

Conclusion

Microservices architectures streamline the overall application development lifecycle leading to quicker testing, higher quality and more releases. Such an architecture can be hugely useful for efficient management of Drupal-based projects. Innovation has always been something Drupal is greatly supportive of. Adopting a microservice architecture for Drupal development is possible and is extremely fruitful.

Organisations should be wary of their digital business ecosystem and should understand the challenges that they might have to encounter during its adoption. Opensense Labs has been in the constant pursuit of bringing a positive change for our valued partners with our expertise in Drupal.

Contact us at [email protected] to know more about microservices architectures and its value to your organisational setup.

Pages

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web