Upgrade Your Drupal Skills

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

See Advanced Courses NAH, I know Enough
Jul 17 2021
Jul 17

Drupal is evolving as one of the leading open-source projects that is providing the best services to its community by adopting some significant initiatives, focusing on desirable goals and outcomes. These initiatives are known as strategic initiatives that are currently being worked on and are progressing over a while. Therefore, strategic initiatives of Drupal play a major role in making Drupal the first choice for any open-source user. This article will take you through the contributions made by these initiatives in helping Drupal reach the position that it stands today. 

The role of strategic initiatives in Drupal’s success

Drupal is supported by its community and group collaborations that lead to accomplishing common priority goals. Their strategic initiatives are prioritized at solving major problems that act as a barrier for the users from receiving the optimum benefits from this free and open platform.

Dries Buytaert, Drupal founder and project lead, envisioned the power of strategic initiatives in making Drupal a huge success. Receiving support from community collaboration, these initiatives have contributed to producing some remarkable developments driven by forces such as:

  • Cooperation with the core maintainers
  • Studies related to usability and survey data
  • Building an open-source digital platform experience
  • An improvement in customer experience and advanced editorial can lead to progress in market relevance
  • The facility of validation by collaborations and larger community discussions 

After the initiatives are recommended, they are forwarded to the planned initiatives stage, where every initiative is nourished with objectives and goals by its dedicated contributors. Once an initiative crosses this stage, it then moves forward to the next stage, i.e. active initiatives stage. This is how initiatives come into existence. Drupal has numerous ongoing strategic initiatives that are in progress to provide exceptional outcomes. To learn more on how Community initiatives are proposed and how Strategic initiatives come about, read here. Also, learn what’s happening with these strategic initiatives: Drupal 10 readiness initiative and Automatic updates initiative. We will now focus upon another strategic initiative of Drupal, Decoupled menus which has significantly contributed to Drupal's accomplishments.

Understanding Decoupled menus initiative in depth

At the event of DrupalCon Global 2020, Dries came up with an idea of a new initiative for building a decoupled menu component that is well written in JavaScript. Therefore, for Drupal, to be framework agnostic, he preferred to begin with building components for Vue.js and React.js.

Dries expresses that various websites are progressing into customized, omnichannel digital experiences. Drupal has to keep on advancing with the growing demands in the marketplace. It has to be built into the best web service platform and well-structured data engine regarding the back end. On the other hand, JavaScript seems to grow rapidly on the front end. As Drupal is considered as a decoupled CMS and capable headless, a lot of improvements and advancements can be made with the right approach.

Learn more about decoupled Drupal here:

According to the Drupal 2020 Product Survey, the second most requested feature was a need for a much modern administration UI. Such types of UIs can be built with the help of web services APIs and JavaScript. There is a major need to improve JavaScript and invest in web services APIs. It is well proved by the following facts.

  • Most of Drupal’s end users focus on creating decoupled front ends and omnichannel digital experiences.
  • An improvement can be made upon its administration UI with more WYSIWYG, drag-and-drop, and other ease-of-use features.

Dries further shares that to take a step towards enhancing Drupal's headless capabilities and administration UI, there is a need to include official Drupal JavaScript components to Drupal Core. The first step can be executing a JavaScript menu component in Vue and React. It can mark the first official JavaScript component in Drupal. By developing a JavaScript component, the major issues of the front-end developers can be solved. So, this menu component would provide a menu that can be placed in a front-end JavaScript application. To release the first official JavaScript component, will require the tools and processes to control and release JavaScript components. This further helps in forming a pattern for more components allowing Drupal to successfully embrace JavaScript, the need of the hour.

Illustration with a rectangle describing the path towards having a first official JavaScript component which is longer than it might appearSource: Drupal.org

The path to having a first official JavaScript component is longer than it may appear.
                                           
Here, I would like to take you across one important aspect of Decoupled menus, i.e. Drupal Decoupled Menus Survey which was announced at DrupalCon Global 2020. The reason behind conducting this survey was to get an insight into the preferences of individuals and organizations who have already built decoupled applications. By receiving the necessary understanding, Drupal actively tries to make this platform a preferred choice for the JavaScript developers. Therefore, using Survey Monkey, this analysis was executed and was promoted majorly through existing Drupal developer channels.

The primary goal of the decoupled menus initiative in Drupal is to facilitate the most convenient way for JavaScript front-ends to consume configurable menus managed in Drupal. It includes forming official, community-supported components (e.g. React & Vue) that one can use in his project or as a recommended implementation followed by necessary support that includes docs, security, and packaging, etc. Drupal prefers to keep a practically achievable target, for example, stating the fact that they will be able to ship a single menu component in place of an entire overhaul of Drupal's admin UI is good proof.

Illustration with a rectangle describing the mission and success of Decoupled menus initiative of DrupalSource: Drupal.org


Challenges faced

JavaScript is rapidly growing but Drupal doesn’t have much to offer to this specific field resulting in the feeling of incompetence among its competitors. Using Drupal, many developers are seen building “decoupled sites” for the back end and JS frameworks for the front end. This makes the following people less likely to opt for Drupal:

  • Since by using Drupal not many benefits are attained, JavaScript developers show less interest in this open-source project.
  • Less participation by Drupal evaluators who would prefer using Drupal for its content management features but at the same time would want their site to witness the more "application-like" experience facilitated by modern JavaScript frameworks. They would want to hire developers who are well versed in HTML, CSS, and JS, but not importantly familiar with Drupal.

Problems to be resolved

  • Drupal lacks an important process for building, maintaining modern JavaScript libraries, and shipping.
  • Drupal doesn’t share a good connection with the JavaScript developers as it is unable to resolve the problems they witness.
  • Working on a site using a JavaScript front end, the content editors have less authority over their content and also the structure of their site.

Solutions to the existing problems

With the help of the below strategies, it is possible to solve all the above-discussed problems.

  • Including read-only menu items to Drupal's HTTP APIs (e.g. the JSON: API module)
  • An easy process made for a front-end developer to consume the menu data to provide navigation instead of hardcoding it by:
  1. Writing documentation for the process of integrating a React or Vue application with Drupal to render an effective menu.
  2. Eliminating the unnecessary and monotonous steps by providing JavaScript tools and/or libraries for consuming the HTTP API specified above. With the help of these libraries or tools, the processes for building modern JavaScript and policies can be documented and approved.

This initiative is suitable for

  • It will be beneficial for JavaScript framework developers who would want to use Drupal as a back end and also provide user-editable menus.
  • A good option for Drupal evaluators who prefer to have all of Drupal's CMS features and more options for their front end.

Scope excludes

  • Components of frontend with markup and styles
  • Changes made to admin UI/editing interface

Here is a short informative video giving a brief about Decoupled menus initiative in a very interesting way. Take a look.

[embedded content]


To emphasize more upon the milestone which this initiative has achieved, take a look at the Decoupled Menus Initiative Keynotes which were delivered at DrupalCon North America 2021. Below are the sessions.

[embedded content]

[embedded content]

[embedded content]

[embedded content]


Conclusion

Drupal aims at building a community where the participants can easily get access to all its features, new modules, etc without any concerns that can make their software and sites much secure and convenient. This desired vision can be turned into reality by the support of strategic initiatives that can significantly make a positive shift in attaining the community goals and objectives. Decoupled menus are one of the most key initiatives that focus on upgrading the most expeditiously grown JavaScript of present times. Hence, this initiative is a work in progress that will lead to exceptional outcomes making Drupal the best choice for an open-source platform.

Jul 09 2021
Jul 09


Imagine there is a project that only has one person working on it. All the developments and challenges are going to be performed and overcome by him. Nobody can say that the project would not be successful, it very well can be.

Now compared to the previous project, think of a second one. This has a whole bunch of people working on it. The solutions aren’t coming from a single brain, but from loads of expert brains. 

So, if we had to judge the success rates of these two projects, on which would you place your bet on? For many of us the answer would be the second project with a massive team of experts, who’d be able to come up with more solutions and developments than a single person ever can.

And that is open source software for you. It is a platform wherein, one person creates a software, and other developers have an opportunity to read his source code, to use it, to modify it and redistribute it with the modifications. Open source software makes it possible for people to come together and work magic with their intellect and skills.

However, with that kind of liberty in development, there are often times when people after modifying an open source make it a proprietary software. Sometimes an open source developer wouldn’t mind it, but there is also the chance that he’ll feel misused. To overcome these scenarios, a solution was thought and that is what we are going to be discussing today. So, let’s begin.

How Open Source Licensing Came to Be?

A broad timeline is shown depicting the emergence and the current status of open source licensing.


You would be surprised to know that the origins of open source licensing can be traced back to a consent decree issued by the United States Government. Yup, you read it right. This was back in the late 60s and early 70s, when the Unix operating system was emerging, being the first general purpose operating system. 

The US government barred AT&T, the founders of Unix, from engaging in any commercial activity outside of their primary field of operations, which was telephone services. So, what did AT&T do? It did the next best thing, given the decree. 

Making Unix a commercial software was out of the question. So, AT&T gave away its source code to be modified and shared. Of course, this was done under a set of terms and guidelines, but computer scientists of that period didn’t mind that, nor would the computer scientists of today mind it. This open source code made Unix extremely popular. 

If we look at this scenario carefully, it is essentially an open source license by definition. Let’s see how.

So, what is an open source license?

Open source licensing is a system that dictates the terms and conditions of the use, modifications and distribution of the software code by people other than the originator of the software. It essentially includes the permissions and rights that would be required to use or repurpose the code for building newer applications with it or adding it into existing projects.

Now, can you possibly tell me that what Unix did was any different? I don’t think so. 

Open source software licenses indeed go back to the late 60s, however, its more formal use was witnessed in the 90s with the introduction the GNU project thanks to Richard Stallman. He later created the GNU GPL license. The terms of this license were that anyone could redistribute software, provided that the source code was open and not as secret.

Then with the advent and popularity of the Linux operating system and its adoption of the GNU GPL license, open source licensing became the norm.

According to the Open Source Initiative, today there are about 80 approved open source licenses. And you yourself can create one for your software, the Open Source Initiative would make you go through its license review process. You can very well do it, however, not many would recommend it.

So, in essence open source licenses are contracts for open source projects, which are as legal as they are binding, between the authors of the software and the people who would use its components.

To highlight the importance of an open source license, I’d say that it is these that actually make software development become aligned with open source. Without an open source license, the software cannot be used and redistributed by anyone, despite the fact that its source code is publicly available. And they are similar in cost as compared to OSS, so, when asking, are open source licenses free, the answer is yes, much like the software itself.

How are Open Source Licenses Distinguished?

Now that  the meaning of open source licenses is explained, let’s move further along. What started out as a single license by Stallman has become a standard practice in the open source community. I mentioned earlier that there are about 80 open source licenses available today, however, if these were to be categorised, you would only be able to get two. And these two mark the distinction in the form and application of the said licenses.

And here are the open source licenses by category:

The two categories of open source licenses are highlighted in a diagram.


Permissive Licenses 

Upon looking at the definition of the term permissive, you’d find words like liberal, excessive freedom, non-restrictive and my favourite, open--minded. And these words just about define the scope of these licenses. 

As their name implies, the permissive open source licenses provide more freedom to use, to modify and to redistribute software. You can do anything you want, even using the software for proprietary purposes is not off the table.

The only aspect on which these licenses have a restriction on the acknowledgement of the author. What this means is that you have to adhere to the copyright notice and keep that in place when you are distributing your own software. As long as you do that, anything goes here. Even if you do not want to share the source code of the modifications, it is totally alright.

Copyleft Licenses 

As far as free softwrae licenses go, copyleft license is at an 180 degree angle from permissive. If one is the North Pole, the other is the South Pole. 

Why?

It is because, while permissive licenses boast freedom and liberty, copyleft licenses are the epitome of restrictions. When a copyleft license is issued on a program, other developers can use it, modify it and redistribute it, however, the redistribution has to be aligned with the copyleft license terms. This means the modified program has to make the source code publicly available, just like the original program. And there is no going about it. 

The GNU GPL license, now on its third version, is the paradigm here. Stallman did not appreciate companies using his software and then closing it off as proprietary. And that is what this license prevents.

So, what happens when a proprietary software uses a program with a copyleft license in its source code? 

It would have to make it public and possibly release the entire software royalty-free, since it would be under the stringent terms of the copyleft license. The risk of exposing your intellectual property comes inherent in these licenses.

Furthermore, you cannot place any more restrictions on the licensee’s way of exercising his license. You could say that the phrase, anything goes, doesn’t come close to the definition of a copyleft license.

Let’s Look at Some of the Popular Open Source Licenses

After the categories of open source licenses, the next thing to know is the licenses that have been issued under them. I wouldn’t be talking about all 80 of the licenses approved by OSI, that would take ages for me to write and you’d get bored halfway through the read. So, I have a list of 9 of the most used open source licenses. 

So, let’s begin looking at open source license examples based on the category they fall under. 

Permissive licenses 

The examples of permissive licenses are shown in a diagram.


Apache 2.0

Being a liberal license, the Apache license 2.0 allows the freedom of using, modifying and distributing any of its products. The requirement here is to include the license notifications and copyrights on the distributed code or like a notice in the software itself or both. 

Under this license's terms of service, it is not mandatory to release its source code upon distribution, be it a derivative work, a larger project or basic modifications. All of these can carry different licensing terms. 

MIT

The simplest type of license of them all, named after the famous university, it’ll only take me a single sentence to explain it. MIT license is the license that allows you to do anything with the original code, with no restrictions on distributions, as long as you keep the original copyright and license notice in the distributed source code or software.

Berkeley Software Distribution

The BSD license, like the other two permissive licenses, lets you freely modify and distribute the software contingent upon you keeping the copyright notice, following the list of conditions along with the disclaimer. 

It has three categories to it; 

  • The 4-clause BSD was the original and first BSD license and had an advertising clause and a non-endorsement clause; 
  • The 3-clause BSD was the modified version without the advertising clause; 
  • And the 2-clause BSD, also known as FreeBSD, further removed the non-endorsement clause, making it almost similar to MIT in simplicity and use.

Copyleft licenses

The popular examples of copyleft licenses are shown in the image using a diagram.


GNU GPL 

GNU General Public License is by far one of the most popular open source licenses, being associated with the free software foundation, and pioneer of the copyleft licenses, being the first one to be OSI approved,. It was established to prevent your software from becoming proprietary. 

The GNU GPL license states that any software using a GPL component, despite its proportion of use, has to make its source code publicly available upon distributing. You are going to be passing on the same rights you received through the license to the person adopting your software, meaning if your source code is in the public domain, anyone using your component has to do the same. This makes the GPL license the strongest copyleft version.

At present, GPLv3 is the version that is being widely adopted.

Affero GPL

You would think that the GPL license must be full-proof without any loopholes, but there is one. The GNU GPL license only works when the software developed using a GPL component gets distributed. However, when the same is made available over a network, there aren’t going to be any red flags. 

To counter this predicament, the Affero GPL license comes in, it essentially monitors the distribution over networks, even remote ones, and sends the right alerts to the GPL license. This makes the AGPL quite important for many.

Lesser GPL 

The LGPL license is another variant of the GNU GPL license. There aren’t any more loopholes that it would cover up. It offers much the same license notifications and copyright protection. The only difference here is the size of a project can change the license terms. 

For explanation, a smaller project under a larger project would not have to comply with the larger project’s licensing terms. And a smaller project accessed as part of a larger project would not be asked to share the source code of the larger project. I’d say LGPL makes the GPL licenses seem a little liberal.

Mozilla Public License 

The MPL, maintained by the Mozilla Foundation, is as liberal a copyleft license as they come. The reason lies in its distribution protocol. As a copyleft license, the MPL does mandate that the modified code of its component be made public, however, this public sharing is only applicable to the modifications that have the licensed components and not the entire software. The stipulation is to store the MPL code in separate files and make that openly available.

The license is compatible with GNU GPL, given its enforced copyright notices and patent grants. Nonetheless, it is often considered to be a balance between permissive and copyleft licenses. 

Common Development and Distribution License

Often referred to as the cleaned up version of the MPL, CDDL has much the same attributes of the former. Given the fact that it was inspired by MPL, that comes as no surprise. 

Upon distributing the software in executable form, it is mandatory that you make the source code available. However, if your contributions aren’t part of the original software and are separate files, you are not required to make it public by releasing it under CDDL. A lot similar to MPL, right?

With this license, you will have the liberty to modify and distribute the original or derivative works of any CDDL software. The only stipulations are on changes to copyright, patent or trademark notices of the software along with keeping on the contributor acknowledgements and license notices.

Eclipse Public License 

Founded by the Eclipse Foundation, the EPL has certain requirements on the distribution of an EPL component. However, these vary given the circumstance of the modified code’s distribution patterns. 

  • Modifying and distributing an EPL component in the source code of your project mandates you to disclose the modified code under the EPL;
  • While modifying the and distributing the same in the form of object code would mandate you to make the code available upon request. Further, you would also be asked to disclose the way in which the source code can be requested. 

What is more is that individual program components, including EPL, non-EPL and proprietary code, can be clubbed together and sub-licensed. All you would have to do for that is ensure that the non-EPL elements are separate objects.

A Quick Look at Open Source License Example Through Drupal

Is Drupal free to use? Yes, it is.

Is Drupal free for commercial use? Yes, it is.

Why? 

Drupal is an open source CMS, that is why. And to call itself open source, it had to be registered under a license. And of course, it is. Drupal is licensed under GNU GPL Version 2 or later. All the contributed files that are hosted on Drupal.org are licensed under the same. 

The logo of Drupal 9 and GNU GPL can be seen on a dark background.


You can freely download, reuse, modify and redistribute any component of a Drupal.org project under the terms of the GPL license, that we talked about earlier. The core software on Drupal can also be run and licensed in combination with a version 2 or 3 compatible license. Saying that Drupal projects can very well depend on or be linked to GPL incompatible non-code assets, however this relies on the maintainer possessing the rights to distribute the non-code assets.

Let’s now look at the specific aspects of Drupal and how they are licensed. 

  • The files, be it PHP, JavaScript or images, being a part of a Drupal project are licensed under the license as Drupal.
  • The modules and themes are considered derivative works and so are to be distributed under the GPL version 2 or 3. 
  • The content, however, is licensed under the Creative Commons Attribution-ShareAlike 2.0.
  • The sample code follows the same GPL licensing terms.

Considering all of these, who would you guess holds the copyright of the code in Drupal?

The answer is its hundreds and thousands of contributors, who agree to release their code under the same license. However, if a contributor has created a patch, but isn’t willing to license it under the GPL, he should probably not submit it and the point of retaining a copyright on the same would be moot. 

Learn more about open source here:

Perks of being an open source contributor
Impact of large enterprises on open source
Open source leadership
How open source remains recession-free
Impact of open source during Covid-19 pandemic
Diversity, equity and inclusion in open source
Open source security

Conclusion 

When I started writing this blog, I considered the copyleft licenses to be rigid and unattractive. However, realising that its pioneer is the license behind Drupal made me change my perspective. Drupal has helped a community of close to a million come together and build and distribute their work and that would not have been possible or even beneficial, had the source code not been publicly available. 

So, open source licenses as per their meaning can be liberal and rigid, but I personally feel that the rigidness serves more purpose than the liberty ever could. 

Jul 09 2021
Jul 09

Drupal prioritizes community contributions and group collaborations which helps in evolving Drupal as one of the leading open-source projects, providing best services to its community. To add a significant contribution, the Drupal community members actively work on projects like Drupal Core and contribute modules, distributions, and themes respectively. It discovered a convenient way to progress in all its projects by creating community initiatives to focus upon some major tasks and goals. Therefore, Dries Buytaert, founder and project lead of the Drupal project, considers few initiatives as crucially important and identifies them as Strategic Initiatives. One of the major strategic initiatives, automatic updates plays a huge role in making Drupal more effective and relevant with the ever-changing web sphere. So, in this article, we will discuss how automatic updates finally made it to Drupal? 

Strategic initiatives behind Drupal’s success 

Drupal is seen largely focusing on executing its several recommended strategic initiatives and never-ending innovation. These strategic initiatives aim at solving issues that create hurdles for the users in receiving the maximum benefits from this free and open platform. They have contributed in producing some extraordinary developments driven by forces such as:

  • Creating an open-source digital platform experience
  • Usability studies and survey data availability
  • By improving editorial, developer, and customer experience, market relevance is increased
  • Cooperation with the core maintainers
  • The provision of validation by collaborations and larger community discussions 

To learn more on how Community initiatives are proposed and how Strategic initiatives come about, read here. Also, learn what’s happening with Drupal 10 readiness initiative and Decoupled menus initiative. Moving forward, we will now take a closer look at one of the most important strategic initiatives i.e. Automatic updates initiative in Drupal. 

Automatic updates: In Detail

Illustration with a rectangle describing security status in Drupal's Automatic UpdatesSource: Drupal.org

Updating a Drupal site manually can be expensive, time-consuming and extremely difficult. Therefore, to resolve this major concern, Drupal created the Automatic Updates Initiative that can help users to experience safe and convenient automatic updates for Drupal sites. 

The primary goal of Automatic Updates in Drupal

The prime goal of this initiative is to strategically implement a safe system for Drupal’s automatically installing updates, reducing Drupal site’s total maintenance costs, enhancing Drupal site’s security that further leads to good user experience and making an easy entry for the users to the Drupal community without any major concerns. A look at the roadmap of the automatic updates initiative

The target audience of Automatic Updates

Drupal Automatic updates are not a good fit for large-scale organizations as they have their own established roadmaps and exclusive pipelines. But such initiatives can be beneficial for small-to-medium website owners as they lack in building proper workflow and system.

Some organizations with progressive deployment work plans might prefer using the automatic updates initiatives at the last step before production, i.e. staging environment. To integrate verified updates into custom build work plans, this initiative also facilitates APIs.

Scope of Automatic Updates: Overview of what this scope includes and excludes

Scope includes

The minimum Drupal core implementation includes:

  • Availability of automatic updates for Drupal core patch and security releases.
  • For safe updates, site readiness checks are available.
  • Verification and code signing is accessible for updates from Drupal.org
  • Attainability of Composer integration.
  • A custom “A/B” bootloader helps in updating in a distinct location from the live site that allows switching over at the time of successful update, also providing rollbacks in case the update introduces regressions or fails. 

Scope excludes

The minimum implementation doesn’t support:

  • Major version updates and core minor.
  • The availability of contributed project updates.


Automatic Updates is an ongoing strategic initiative and it is still being developed for better outcomes. Here are some of the significant elements that need to be looked over.

  • This initiative is yet not in core. There is an initial prototype that is available as a contributed module. Although, the core solution shall be different from this module.
  • The first phase of the Automatic Updates module includes Public service announcements (PSAs), Readiness check features, and also apply In-place updates either on cron or manually. 

Here is a short video giving an update on Drupal 8’s Automated Updates Initiative. It provides a quick look into the features of automatic updates i.e. Public service announcements, Readiness check and In-place updates. Don’t miss it, take a look.

[embedded content]


A quick look into the key features of automatic updates:

Public service announcements (PSAs)

Infrequent announcements are done for extremely critical security releases regarding core and contrib modules. Once a PSA is released, site owners should review their sites so that they are well updated with the latest releases. The site should be in a good position to instantly update if any fixes are provided to the community.

Readiness check

It isn’t possible for all the sites to frequently go for updates. The readiness check can be termed as an automated method that helps in recognizing the capacity of a site for automatic updates after any new release is provided to the community. Here is an example, the sites having un-run database updates, working on read-only file systems, or do not have enough disk space for updating, will not be able to receive automatic updates. In case your site fails readiness check, meanwhile, a PSA is released, it is imperative to look after the readiness issue so that your site can be instantly updated.

In-place updates

  • If the PSA service notifies a Drupal site owner about a convenient update, followed by the readiness checks’ confirmation regarding the ability of a site to be updated, the service of automatic updates can then be applied. There is a possibility that a particular site or a hosting provider may offer additional DB handling options if required.  
  • Tarball-based installations are supported by this module and it doesn’t prefer some of the requirements for secure updating, rollback, etc that will be included under the core solution.
  • Contrib updates or composer-based site installations are not supported by this module. Work on composer integration is already started and is in progress. 

Understanding the phases of automatic updates 

The Automatic Updates is huge, as a result, the tasks are worked under phases. It consists of two phases that have different significant objectives. Below are the objectives of both phases.

Phase 1 Objectives

  • Facilitating a JSON feed of Drupal Public service announcements from Drupal.org.
  • Presenting  PSAs in the Drupal admin interface.
  • Availing an extensible update readiness check system.
  • Creating update packages from Drupal.org
  • Safeguarding the update packages with a signing system.
  • With roll-back, apply the updates either automatically or manually.

Phase 2 Objectives

  • Facilitating an A/B front-end controller for more robust testing/roll-back features
  • Provide support to contributed module automatic updates.
  • Giving support to composer-based site installations.

The most recent updates on Automatic updates initiatives were delivered in DrupalCon North America 2021. The keynotes and technical overview shared during the sessions talked about providing a secure system for automatic updates, lowering the cost of maintaining a Drupal site, and improving security. They also explained different areas where the new contributors can help as the initiative is still a work in progress. Check out sessions below:

[embedded content]


 

[embedded content]

 

[embedded content]

Conclusion

Drupal is taking a major responsibility in establishing a community where the users can take the maximum advantage in making their sites and software more secure and user friendly. There is a huge emphasis on community initiatives in Drupal. Therefore, strategic initiatives in Drupal are a practical step towards meeting the designed community goals and aspirations. Considered as one of the most significant initiatives, Automatic Updates allows users to encounter secure and suitable automatic updates for Drupal sites, encouraging everyone to opt for this leading open-source project.

Jul 03 2021
Jul 03

Drupal has scaled the heights of success through its community contributions and group collaborations. It additionally came up with some strategic initiatives that allowed its users to attain optimal benefits by securing their software and sites, making it user-friendly for all. One such primary initiative, Drupal 10 Readiness will be looked at closely in this article. 

How strategic initiatives significantly contribute to Drupal

Drupal majorly emphasizes implementing its numerous suggested strategic initiatives and endless innovation. The large architectural change in Drupal 8 and 9 that was brought by Drupal 7, is a good example of continuous innovation within the community. Dries Buytaert, the project lead and founder of the Drupal project believes that strategic initiatives play a significant role in the success of Drupal. After gaining support from community collaboration, these initiatives could produce exceptional developments driven by forces such as:

  • Market relevance was enhanced by improving editorial, developer, and customer experience. 
  • An idea of building an open-source digital platform experience.
  • Engaging with the core maintainers.
  • The opportunity of validation by community decisions and collaborations.
  • Usability studies and survey data availability.

Once these initiatives are suggested, they are put across to the planned initiative stage where every initiative is built up with plans and strategies in detail. After finishing this stage, the initiative finally moves towards the active initiatives stage. This is the process of how an initiative comes into place. To know more about how community initiatives are proposed and how strategic initiatives come about in Drupal, read here. Also, learn what’s happening with Decoupled menus initiative and Automatic updates initiative. Moving forward we will explore one of the most essential strategic initiatives of Drupal i.e. Drupal 10 Readiness which keeps us curious to know more about the future of Drupal 10. Before we move on, here's the complete guide on Drupal 9, the burning questions on Drupal 9, the Drupal 9 upgrade and migration particularsmust-have modules to start Drupal 9 project, configuration management strategies, and web development strategies that are specific to Drupal 9 project.

Familiarising with Drupal 10 Readiness

Illustration with a diagram describing Drupal 9 features that need to be updated before its end of lifeSource: Drupal.org

The Drupal 10 Readiness aims at providing an agenda to ensure that Drupal 10 gets released by 2022, also maintaining the security status along with keeping it up-to-date. This initiative provides the Drupal 10 roadmap and primarily focuses on:

  • To identify the tasks that are to be completed before the Drupal 10 release, emphasizing updating dependencies and eliminating deprecated APIs.
  • Support contributed module maintainers to move forward while also keeping modules updated. 
  • Plans to release Drupal 10 by the summer of 2022 or if not surely by December 22.

The Drupal 10 Readiness initiative was launched at the DrupalCon Global 2021 and has started putting down the plans into action. This further will help in ensuring the release of Drupal 10 in 2022 as per planned by the Drupal community. Although the exact Drupal 10 release date is yet not fixed, it is still planned to be released by June 2022. So, here are the Drupal 10 features. Take a quick look. 

Illustration showing multiple circles describing the Drupal 10 features proposed in Drupal 10 readiness initiative


Drupal 10 is built on Drupal 9. There is one major exception, the CKEditor 5 project is being built as a contributed module so that it can be easy to test it and also make it easier to collaborate upon. 

Both PHP 8 and Composer 2 support shipped in Drupal 9. Backporting of composer 2 was made to Drupal 8 but the same was not possible for PHP 8 compatibility. For Drupal 10, PHP 8 will be needed as PHP 7 to be ended by November 2022.

Symfony 5 is good but Symfony 6 will be better. Since Symfony 4, one of the two main drivers of the Drupal 10 timeline is to be ended by November 2022, so a plan has been made to be updated to Symfony 5.  The Symfony 5 compatibility issues are also resolved, which can be an added advantage. In the case of Drupal 10, Symfony 5 will be on the long-term supported 5.4 branches, which would "only" be security supported till November 2025, providing Drupal 10 a 2.5 year lifetime. The Drupal team is trying to update Symfony 6 at the same time, making an effort to resolve incompatibilities identified in Drupal 9. Since Symfony 6 development is not itself open yet, they are only able to work on things that are previously deprecated.

CKEditor 4 to 5 update needs more support. One of the motivations behind the Drupal 10 timeline is CKEditor 4 support lasting till 2023.  As of now, CKEditor 5 support is being worked on in a dedicated contributed module.  Drupal is actively collaborating with the CKSource team on runtime plugin support (Webpack DLLs), general HTML support (to avoid the loss of data while using CKEditor 5 on legacy content), etc. Some of the benefits of CKEditor 5 include optional collaborative editing functionality (using a paid server component).

Feedback needed for Starterkit theme prototype. It’s a Drupal-theming paradigm shift. Duplication can be avoided by inheriting from runtime base themes but at the same time, it can cause serious issues for innovation and make Drupal support old bugs not to break live sites. So, rather they try to provide built-in support for generating a theme in a core that is based on a prepared starterkit. 

The jQuery UI components have replacements prototyped, requiring reviews. All the jQuery UI components and numerous uses of Backbone. JS have replacements prototyped: dialog, toolbar, tabbing manager, autocomplete, tours, etc. They are in need of feedback. 

Internet Explorer 11 support to be dropped. An agreement is made to drop support for IE11 from Drupal 10. The official announcement will be made shortly. 

Some one-off feature modules might be removed. Drupal decided to deprecate the aggregator module in Drupal 9 and eradicate it in Drupal 10. There will be a removal of some other single-use core modules which lack momentum and maintainers. They are also taking the initiative to indicate individual module lifecycle states.

Now that we already know Drupal 10 is slated for a mid-2022 launch, more and more contributions will be paramount to the initiative’s success. Here are some recent updates on the initiatives shared in the DrupalCon Europe 2020 and DrupalCon North America 2021:

[embedded content]

[embedded content]

[embedded content]

 

[embedded content]

Conclusion

Drupal strategic initiatives are constantly making an effort to escalate the productivity level of the community leading to remarkable expected results and outcomes. Drupal 10 Readiness is such a strategic initiative that depicts the future of Drupal 10 for which we all are excitedly waiting. So, this article was written to prepare you for Drupal 10 and help you get the proper insights into its significant functionality. Hope you are now ready for a Drupal upgrade.

Jun 24 2021
Jun 24

Technology has made our life super-fast and easy. Starting from shopping online to paying your bills, you can grab the world at your fingertips. But along with easy access through various applications, is technology providing you the necessary security? As security is considered a top priority that needs to be maintained due to the increase in cyber threats around the world. Unfortunately, vulnerability is seen in some of the organization's security ecosystem leading to the inability in building systematically secured software. Therefore, it is always advisable to build security in the initial stage so that no problems occur at the time of product deployment. There are various companies that do not have an approach of designing and building software based on core security principles required for the smooth functioning of applications. This article on secure software development lifecycle can be an eye-opener for all of us to emphasize the significance of building security into software development and make it the topmost priority.

The importance of security in software development

We all are aware of the fact that the information technology sector is one of the world’s fastest-growing industries. It is observed that the rate at which software and software products are progressing is many times greater in comparison to the rate at which software security is progressing. As a result, it gives rise to cyber threats and vulnerabilities. Many companies have witnessed such harmful attacks leading to damage to their brand reputation. For example, in 2011, Sony Pictures experienced a SQL injection attack by LulzSec (the hack-group), which released around 1 million user accounts, including passwords, email addresses, home addresses, birth dates, etc., which as a result violated the privacy policy of their service. HBO was attacked in the year 2017 when a hacker released a screenplay episode of a very popular TV series that wasn’t still broadcasted. The hacker also got access to financial documents, contact lists of actors and film crew, and other confidential information. In the same year of 2017, personally identifying data of hundreds of millions of people was stolen from Equifax, one of the credit reporting agencies that assess the financial health of nearly everyone in the United States.

So, all these well-known companies never expected such malicious attacks which led to heavy financial and reputational losses at their businesses. This is the reason why software security is so important for building up secured software advantageous for both its developers and users. There is a need for a secure path to production. Thus software security helps in strengthening the security posture and avoid any future cyber attacks. 

How to enhance security in Software Development Life Cycle 

It is seen that many companies have a software development life cycle (SDLC) process which produces software with the highest quality in a much disciplined and systematic way. Due to rising software security threats, it is essential to integrate security into all the stages of the software development life cycle (SDLC) to make it a secure SDLC. It is beneficial for organizations to adopt a secure software development life cycle (SSDLC) approach to reduce cyberattacks and threats. The good thing about SSDLC approach is that it is not only restricted to developers or the security team. But it can also be easily adopted by cross-functional teams to enable better security over several stages of the software development life cycle (SDLC). There is a need for Secure software development lifecycle policy that helps in providing safer software production. Having a Secure software development lifecycle policy template can help in improving security during various phases of software development. Let’s now get a better understanding of what exactly is a secure software development life cycle (SSDLC) and its various phases. 

What is Secure Software Development Life Cycle (SSDLC)?

Secure Software Development Life Cycle (SSDLC) is a process of incorporating security into the Software Development Life Cycle (SDLC). It is basically, a framework defining the complete development process of a software product also building security in all the stages of SDLC i.e. starting from the planning to the design, development, testing, and deployment stage. There is a need to follow Secure software development lifecycle standards that can support the security of software production without any further concerns. 

Here we will discuss the various  types of Secure software development lifecycle phases. Take a look below. 

5 Phases of Secure Software Development Life Cycle
 

Illustration with a circle describing the 5 phases of secure software development lifecycle


Phase 1: Requirement Collection and Analysis

During this phase, security requirements for the software application are established. The key security risks within the application such as functionality, type of information application being used, etc. are examined by the security experts. This phase helps in ensuring technical feasibility and providing quality assurance.

Phase 2: Design

This phase helps in building security into the design of the software application. The technical architects and lead developers create high-level design choices that meet the necessary functional and security requirements. It is observed that half of the software defects that create security problems are introduced in this stage. Therefore, the designs are reviewed in this phase to detect the software defects and solve them at the earliest. 

Phase 3: Development

In this phase, it is ensured that code is developed securely so that no security threats and vulnerabilities occur. There are generally established secure coding guidelines and also code reviews that make sure that these guidelines have been followed correctly. The code reviews can be either manual or automated using technologies like static application security testing (SAST). 

Phase 4: Testing

It is very important to test applications and software before they are made accessible to the users. Once the development process is done, the applications and software go through a rigorous testing cycle to meet the set security standards. Such a testing process helps to minimize the number of bugs witnessed by users. The tests include penetration testing, integration testing, further static code analysis, dynamic analysis, etc. 

Phase 5: Deployment & Maintenance

In this phase, the application is made available to the user after finally checking all the security controls like secure code review (static analysis), dynamic, configuration, container security, etc. This is considered as the final stage after the applications and software go through the various phases of the Secure Software Development Life Cycle to improve the security aspect of software development.

The role of DevSecOps

Let me highlight here an important term DevSecOps which automates the integration of security at every phase of the software development lifecycle. It is necessary to understand the relationship between DevSecOps and SSDLC. Both the practices support each other in delivering the best services for enhancing security. They make sure that the developers are efficiently performing their tasks and going the extra mile to meet functional specifications apart from only spending time in writing and testing their code. DevSecOps represents a natural and essential evolution in the way companies approach security towards software development. It focuses on empowering the developers by giving them ownership of the production environment of applications from traditional IT teams. This further helps the developers to prioritize automating build, test, and release processes.

From the beginning of the development cycle, DevSecOps introduces security processes. The code is reviewed, audited, scanned, and tested for security issues throughout the development cycle. The issues are addressed at the earliest once they are identified. The DevSecOps practices also help in reducing time in resolving vulnerabilities and lessen the workload of the security team allowing them to prioritize other important tasks. 

“The purpose and intent of DevSecOps is to build on the mindset that everyone is responsible for security with the goal of safely distributing security decisions at speed and scale to those who hold the highest level of context without sacrificing the safety required,” describes Shannon Lietz, co-author of the “DevSecOps Manifesto.” More on DecSecOps here.

What SDLC model is proposed by OWASP

One more way to provide security is through the OWASP Application Security Verification Standard (ASVS) Project. This facilitates a basis for testing web application technical security controls, further providing the developers the list, necessary for secure development. During the SDLC cycle, OWASP provides security in the following ways.

The Planning or requirement stage

This particular process tries answering the following question, “What is the system going to do?” During this stage, the SAMM project provides 3 specific maturity levels including both in-house software development and third-party supplier security.

Illustration with a table divided into three sections describing the first stage of Secure Software Development lifecycle    Source: OWASP

This is the best way to provide security at the start of the Software development process.

Design Stage

After the requirements are gathered then the execution specifics should be described. This stage depicts a diagram tracing data flows and common system architecture. The threat modelling can be practiced in this stage for better security. The concept of threat modelling will be discussed shortly, in the following paragraphs. 

Development Stage

This step is very important as both the decisions and assumptions made in the previous stages will be examined. At this stage, the SAMM offers the following generic implementation considerations.

Illustration with a table divided into three sections describing the development stage of Secure Software Development lifecycleSource: OWASP

Testing Stage

This stage helps in validating software correctness and its an outcome for enhancing security-related decisions of all the other stages. Both manual and automated testing can be done in this stage. SAMM provides three maturity levels across Architecture Reviews, Requirements testing, and Security Testing.

Illustration with a table divided into three sections describing the testing stage of Secure Software Development lifecycleSource: OWASP

Release Stage

This is the final stage of the software development life cycle. The ModSecurity Core Rule Set is used efficiently to detect and block several attacks. In this, SAMM offers a section on incident management, where simple questions are asked to the stakeholders to help one determine incident preparedness appropriately. 

Illustration with a table divided into three sections describing the release stage of Secure Software Development lifecycleSource: OWASP

For better understanding, you can refer to a book named, “The Security Development Lifecycle: SDL: A Process for Developing Demonstrably More Secure Software (Developer Best Practices)” by Michael Howard and Steve Lipner.” This book mainly talks about the practical history of the SDL, and lessons to help you implement the SDL in any development organization. 

Secure software development lifecycle best practices

Now, I would like to discuss a few practices which are adopted during the early stages of the Secure Software Development Life Cycle (SSDLC) to improve security. Take a look below:

Threat Modelling

Threat modeling is a process that is carried out in the development phase to safeguard the software application from cybersecurity threats and vulnerabilities. This technique helps in understanding how an attacker makes targets, locates entry points, and conducts attacks which further allows the development team to build up strategies to protect software and applications from any such potential threats and damages. It should be performed in the early stages of the software development life cycle as this enables the organizations to integrate security requirements into the design and implementation procedure. The adoption of this practice reduces the workload of developers as the potential issues are identified at an early stage allowing them to not struggle between meeting the software delivery deadlines and deploying a secure product to the users. 

Architectural risk analysis

Architectural risk analysis is a technique that helps in identifying the threats and vulnerabilities during the design phase of the software development life cycle. This process includes the identification and evaluation of risks and risk impacts. It also helps in recommending risk-reducing measures. Architectural risk analysis studies threats and vulnerabilities that may be malicious or non-malicious in nature. With this process, the developers can analyze a software system from its component level to its environmental level to evaluate the threats and vulnerabilities at each level. 

Attack trees

Attack trees provide a procedure to examine security controls, strengthen them, and respond to changes in security. Security can be considered as an ongoing process and attack trees are the basis of understanding the security process. Through a graphical representation that is easily understandable, the attack trees help to recognize the various ways in which an information system can be attacked and build countermeasures to prevent such attacks. Since this approach is used to design, implement and measure the attack, it can be considered as a practice conducted in the design phase of the SDLC.

Secure software development lifecycle training to developers 

It is important for the developers to receive proper training on developing secure software and applications. The organizations can support the developers to build software applications while maintaining the security aspect with the following easy practices.

Providing practical experience. It will be beneficial to give practical examples which will encourage the developers to experience real-life scenarios rather than mere theoretical knowledge in terms of security training.

Availability of relevant courses. It will interest the developers to learn from examples and case studies matching the technology and platforms that they are currently using. This will make them learn things better and in a much more convenient way.

Guidance through online training. Through e-learning courses, the developers get to participate in security training according to their convenient time. It gives a good opportunity to learn complex material which can be reviewed by the developers whenever they want. 

Incentives facility. The developers can be motivated by offering incentives after every course or series of courses. 

Adopting open source is a great way of making sure security at all stages of software development. To know more, read the complete guide on open source security. To see an example, learn how you can incorporate secure SDLC in Drupal development.

Endnote

As we all know that security is an ever-evolving process. Therefore, a progressive organization cannot survive without getting serious about security, and the most convenient way to get serious is to integrate a secure software development life cycle into their work. Starting from requirements to design, coding to test, and finally till deployment of products the SSDLC tries to build security into a software product or an application at every step in the development process. Even though every organization will have its methodology to support software security, the approach should be effective in nature.

Jun 16 2021
Jun 16

Enterprise agility is one of the most commonly adopted transformation approaches which comes up along with a lot of challenges. The companies need to reshape the organizational structures, make changes in the operational models and reform the old ways of working techniques. The agile transformation includes a big shift in organizational culture and that makes an organization ponder over it or even neglect it. But eventually, organizations realize the importance of it, apply agile transformation techniques, and receive immense benefits that help them evolve and move closer towards their goals and aspirations. This article will guide you through the right approach needed towards adopting the agile transformation in your organization. 

To successfully adopt an agile transformation, you need a plan

To succeed with the agile transformation, you need to clearly understand the fact that why are you making such time and effort to adopt this transformation and what exactly you want to gain from it. It is important to have clarity upon what changes you will have to make so that the desired outcomes can be achieved by your business. For this let’s firstly, understand the importance of preparing a proper business case for adopting agile transformation at your organization. It is important to convince the decision-makers to realize the significance of approaching agility in the work culture with the right business case. Before that, go through what agile development methodology actually means.

Making business case for agile transformation

A business case explains the main objectives of the organization in regards to agile transformation. Generally, adopting agile leads to desired business outcomes but only if it is approached in the right manner. Therefore, it is essential to have some set important goals which will help in the overall growth of the company with agility. Here is an insight into the recommended goals.

Illustration showing multiple arrows forming a circle to explain agile transformation

The first and foremost goal is to meet customer commitments on time. It helps in building trust between customers and the company leading to customer satisfaction. Secondly, it is essential to maintain high-quality products and services as at times companies fail to deliver suitable services as promised to the customers. This further helps in building a good brand reputation for the company. Thirdly, one of the aims of adopting agility in an enterprise is to efficiently reduce their costs and maximize profits. Lastly, the companies expect an early return on investment with agility as by practicing traditional working methods they struggle with long delivery cycles which do not allow them to receive early return on investment. Read this complete guide on agile transformation to know more.

Now, we will get an overview of the transformation hypothesis to help us approach agility in the right way.

A step closer to agility with Transformation Hypothesis

A Transformation Hypothesis describes the real purpose behind choosing agile transformation. Along with accepting agility, companies have to be flexible enough to embrace change in various working techniques. But sometimes it might not sound comfortable for the employees as they are accustomed to working with the same old traditional techniques. So, in situations where employees aren’t confident enough and are faced with certain challenges, the companies should proactively help them to overcome such difficulties and welcome change. Below are some of the concerns which need to be resolved to strongly practice agility in your organization.

Picture showing multiple circles to describe the concerns that are faced while practicing enterprise agility

Culture change isn’t the only solution 

It is observed that adopting agility brings a big shift in the work culture of an organization, so we assume that the culture change alone will look after all the necessary steps and efforts required to successfully implement such a transformation within the company. But in reality, it isn’t so. There is also a need for proper guidance in forming cross-functional teams which have various functional expertise to increase innovation in products and services. To succeed with agility, the company will have to look upon various factors, apart from considering culture as the only means to improve agility.  

Process training alone cannot bring agility

We get to see that employees are given training from coaches to learn new methods and techniques, also expecting them to be capable enough to face any challenges which they witness while practicing agility. But the problem here is, it is nearly impossible to handle technical, governance, and organizational issues by employees with the process education obtained during the training sessions. Such issues need to be resolved by providing essential support to the company employees to tackle such hard situations.

Need for a right ecosystem

To reach the desired level of agility, there is a need for an ecosystem that facilitates continuous improvement to achieve a company’s agility goals and objectives. If a company fails to build the right ecosystem, it will be challenging to sustain agility in an organization for better adaptability and resilience.

Strategize plans according to the size of the organization

One has to strategize plans depending on the size of the organization to sustain agility. For example, the strategy which you will use for transforming a single team will certainly differ from the strategy you plan for a large-sized company having 500 or more employees. In the same manner, if you are leading a group of five to seven people, sending them to training sessions might be sufficient. But if you lead 1000 employees, the planning and arrangement must be executed on a much different level. So, it justifies the fact that the size of the organization is to be considered while adopting agility.

Overcome the challenge of dependency 

Dependencies can bring hurdles in successfully attaining agility in organizations. When we have small teams, it is easier to manage dependencies but if we have multiple teams working towards the same goal, it becomes very difficult to handle inter-team communication and collaboration. So, removing dependencies shall be one of the primary tasks. For smooth delivery of products and services, it is very essential to strategize plans to overcome dependencies and develop agility in an organization.

Benefits achieved by adopting agile transformation

Many organizations have received benefits from practicing agile transformation in recent years. They need to put the right agile transformation approach to attain the desired business outcomes with this transformation. The agility in enterprises allows flexibility to adapt new organizational practices and techniques leading to maximization of business value. 

Moving forward, we will discuss some of the benefits which are attained by companies adopting agile transformation in their business. 

Picture formed by various circles describing the benefits of agile transformation

Maximise customer satisfaction

With agility, companies mainly focus on adding value to the customer experience by understanding their requirements and making early delivery of products and services. It helps in evolving customer satisfaction by prioritizing customer feedback to improve the product quality as per their expectations. Enterprise agility allows employees to provide services with expertise, proper collaboration among various teams, and transparency which leads to an increase in customer satisfaction.

Here is an example of Asia Pacific Telco, which adopted an agile operating model to meet customer needs and was successful in increasing customer satisfaction by implementing new ideas and techniques into their work process. Below is the diagram showing the transformation shift towards a positive direction leading to a great customer experience.

Illustration showing triangles formed by small circles to explain benefits of agile transformationSource: McKinsey & Company

Increase employee engagement

Adopting agility facilitates employees the ability to use their creativity to produce better work performance and results. It gives them a sense of ownership to take all the necessary decisions to improve their work productivity and help them feel valued in the workplace. Such flexibility helps in increasing employee engagement to a great extent also empowering companies to reach their desired goals and ambitions. For instance, read how you can build a diverse and inclusive team by leveraging agile techniques.

Raising operational performance

Agility helps in providing various business models to the organizations which further helps in improving the operational performance according to the desired expectations. Due to this agile transformation, the companies are availed with various approaches which help in increasing the speed of company decision making and product development. The target achievement rate can be seen improving remarkably, by the agile companies which prove to be one of the major achievements of a progressing enterprise. 

Growing competence towards changing priorities 

With agility, a behavioral transformation takes place among the employees to reach their highest potential in embracing change and innovation. They learn to handle the changing priorities within the organization in the form of resources re-location to a team who needs support and assistance to survive the challenges which come along with agility. They get comfortable with the changes that take place in their work process and techniques, accepting change for better company growth. 

Enhance project visibility

Project visibility provides a clear vision of a project performance which includes allocating resources, potential risks, and proper distribution of responsibilities. Increased visibility ensures everyone involved in the project understands the objective of the project and their role in meeting the business goals and aspirations. It gives clarity to stakeholders regarding the real-time status of the project. Agility helps in changing any project plan or initiative following customer or stakeholder needs and requirements for better project performance. For instance, read how imbibing agile documentation processes helps improve project management.

Improving Business and IT alignment

Business IT alignment can be regarded as a business strategy that helps in achieving the business objectives leading to improved financial performance. This alignment is necessary to adapt to the constant change in the company and environment due to agility. Therefore, both business agility and business-IT alignment should go hand in hand to maintain company growth and development. For instance, read how the inclusion of agile processes to the testing phases of software development can be immensely beneficial.

Lastly, the most important benefit which we witnessed recently by adopting the agile transformation is the flexibility of working at our convenience during the pandemic of COVID 19. Due to this pandemic, the organizations felt the need for agile transformation rather than sticking to the old traditional transformation techniques which created hurdles in the proper functioning of their business. According to McKinsey’s research with Harvard Business School during COVID-19, agile companies have received better results in comparison to non-agile companies.

Graphical representation of the agile companies' improving performance post COVID 19 crisisSource: McKinsey & Company

Companies sharing their successful journeys with agile transformation

With agility, many organizations have achieved immense success leading their business towards their set goals. Here are some of the companies sharing their success stories which can act as a motivation for everyone to move towards agile transformation. 

Ericsson

Ericsson aimed at improving the delivery of products within the stipulated time leading to an increase in customer satisfaction. To achieve this target, they adopted agility in 2008. They implemented cross-functional teams which could focus on specific projects along with building effective communication across several teams. Instead of individual targets, each team worked towards both organizational and group goals to receive desired results. After making such changes with the help of agile transformation, Ericsson could successfully achieve speedy development, faster customer feedback, and generate higher revenue according to desired company standards. 

Bank of America

In late 2012, the agile transformation in global markets at Bank of America began. Merrill Lynch, the director of global markets technology at the Bank of America expressed that their main aim was to improve the time to deliver better company solutions and also reduce key person dependencies across his technology team. They adopted Scrum (a specific Agile methodology) also providing an environment to the employees where they could experiment by taking risks to bring exceptional work results. The cross-functional team formation too was encouraged to turn business ideas into working products for achieving company targets. After a year of consistent efforts, they finally succeeded in meeting their business goals with agility.

LEGO 

LEGO attained success by adopting agile transformation in early 2018. They adopted this approach in their two large digital departments. After such adoption, they witnessed various improvements in several areas like market engagement, digitalization, and reduction in project delivery time. This further brought a sense of motivation and satisfaction among the employees. So, with this transformation, LEGO could set a successful journey of embracing change. 

To get more insight on a company's smooth agile transformation, you can go through this book-   “Agile Transformation: A Brief Story of How an Entertainment Company Developed New Capabilities and Unlocked Business Agility to Thrive in an Era of Rapid Change” which will give you an idea about a company in the entertainment industry who got excellent results by adopting agility in its work culture. This will be a good read.

Here is a video presented by Scrum Alliance about IBM’s wonderful experience of learning, implementing, and overcoming challenges with agile transformation. Without any further wait, take a look at their exciting agile transformation journey.

[embedded content]

Final thoughts

Agility is an approach to drive performance and provide endless innovation to organizations. Adopting this transformation can break the old traditional working methods enabling to achieve tremendous growth and advancement in business. So, the organizations will have to step out of their comfort and strive for something new which can deliver exceptional business outcomes.

Jun 15 2021
Jun 15

Imagine you created something and that something is a software. You wanted your creation to be used by as many people as possible, you wanted to make it universally accessible. So, you did just that, you made the software source code accessible so that anyone could inspect it, modify it and enhance its capabilities.

This is the scenario that makes an open source software what it is; a publicly accessible tool that is all for the community. It honours open exchanges, collaborations, transparency and perpetual development that is community-centric. These principles have made open source software become immensely popular today. And here is proof of that. 

The percentage of active public repositories that use OSS is shown through a graph.Source: Github

Many of the public repositories, like PHP, Java and .NET, use open source software and in heavy numbers. If we look at the revenue open source software is deriving, the numbers are again quite impressive.

The projected revenue of open source services can be seen in a graph.Source: Statista 

All these numbers speak volumes to the efficiency of open source software. However, if there is one aspect of open source software that needs some kind of assurance, I’d say it’s open source security. The reason is probably the fact that OSS is completely open for everyone, so it is assumed that something with this level of openness cannot be secure. 

In this blog, we’ll try to find an answer to the question, ‘what is open source security’ and see whether it is actually secure or not.

What Is Open Source Security?

Today, businesses try to leverage multiple software in their efforts to move forward in technology and open source is one software that is omnipresent in these efforts, be it just for its code. 

A graph shows an increase in the use of open source components per app.Source: Synopsys

The reasons for this elevated usage of open source components are plenty. 

The fact that you get to try the software before you buy it; 
The fact that support is free; 
The fact that there would be fewer bugs to deal with and faster fixes; 
The fact that software security would improve; 

To know more about the power of open source, read about the perks of being an open source contributor, leadership in open source, why are large enterprises investing in open source, why is open source recession-free, impact of open source during Covid-19 pandemic, and the significance of diversity, equity and inclusion in open source.

All of these account for open source to become a software that is quite pleasing to the eye. The last point that I mentioned may be the most pleasing factor of them all. But why? What is open source security? Is open source insecure? Let’s understand just that.

Like any other software out there, the OSS also goes through two main stages, the development and the production. And open source security works in both of them, managing and securing the OSS at all times by using certain tools and processes; all of this usually done through automation. 

Talking about the Software Development Lifecycle, open source security has three main responsibilities;  

  • It identifies open source dependencies in your applications; 
  • It provides critical versioning and usage information; 
  • And it detects and warns about any policy violations and its consequent risks. 

Moving on to the production phase, open source security continues to work diligently. Its main duties at this point are to focus on any and all open source vulnerabilities. It does so by; 

  • Monitoring vulnerability attacks; 
  • Blocking vulnerability attacks, if possible; 
  • And most importantly, alerting you for the same, thus making you ready to take action against them.

Be it a community driven open source or a commercial one, open source security works in much the same way. 

Delving a little deeper in open source security, is there an initiative or a body that is accountable for it. This was one question that I found myself asking while researching about this piece. And there is, it is The Open Source Security Foundation. It helps organisations relying on open source software to understand their responsibilities in terms of user and organisational security and verify it. 

The initiative focuses on aspects like vulnerability disclosure, security tooling and best practices, identification of threats and even digital identity attestation. All of these only aid in securing your projects, critical and otherwise, in a much better and efficient manner.

Is Open Source Good for Security?

The answer to the question ‘How does open source security work?’ is not a linear one. But if I had to answer it, I’d say open source security is nothing at all like Microsoft, which should provide a lot of clarity to you and instill a sense of faith in OSS.

According to Snyk’s The State of Open Source Security 2020 report, 

Open source ecosystems have expanded by a third in 2019; 
Open source security culture is focusing on shared responsibility; 
Open source vulnerabilities have reduced by a fifth.

A survey analysis is shown that depicts who the respondents thought was responsible for open source security.Source: Snyk

On top of this, the vulnerabilities that were found in open source as most reported weren’t high impact on software projects. 

These facts were enough for me to believe in the capability of open source security. However, for you, I am going to provide four more reasons.

Security that is transparent

The main benefit of open source security is that it is transparent. What I mean by transparent is that its source code is open. You can get information about the code base and potential bugs.

People can sift through the source code of any open source project and improve any imperfections, which would not have been possible if the source code wasn’t open. This further means that there won’t be any surprises as the chances of any malicious functionality would be quite slim with this level of scrutiny. 

Security that is reliable 

This advantage is relatable to the previous one. OSS openness has made it possible for its code to be continually tested. 

The online community, which is responsible for developing the code, is behind these tests, making the software more reliable and trusted. The software developed on such trust would most likely never crash and fail.

Security that provides quick catches and fixes 

After transparency and reliance comes the benefit of quick fixes. The open source community is again to be thanked for this. The many contributors of open source make it possible to detect any bugs and flaws and quickly patch and fix them, without any elongated downtime for your applications. 

Security that is sustainable 

Open source software isn’t going to go anywhere and would open source security become antiquated. The reason would be its growing community that would continue to expand indefinitely. Therefore, the platform would continue to improve and you would have the assurance of better security means as time continues to move ahead.

At the heart of every benefit of open source security is its openness and community. Is open source a security risk? Not really. Is it a full-proof solution? Again not really. Yes, open source security cannot provide you the guarantee of being full-proof at all times, but the fact that the open source security at least provides a better chance of being secure is enough to make it advantageous for us; after all, are there really any guarantees in life?

Are There Challenges That You Need To Overcome?

Moving on from the pretty picture of open source security, let’s focus on the dark side of the concept. Open source security isn’t always full of the joys of spring, there are certainly challenges that need to be overcome. Since open source has become prevalent in every business sector, so have the open source security vulnerabilities. 

The percentage of open source vulnerabilities in different business sectors are shown.Open source vulnerabilities by business sectors | Source: Synopsys

Ironically, most of the challenges coincide with the openness of an OSS, so the benefits become the drawbacks. Let’s take a look at them.

The openness isn’t without vulnerabilities

Much like any software out there, open source also comes with some vulnerabilities. Yes, the open source community aids in the remediation of these flaws, but they tend to widen the difference between open source safety and open source attacks.

A table elucidates OSS vulnerabilities.Vulnerabilities reported in OSS | Source: WhiteSource Software  

Yes, open source security issues come with their fair share of vulnerabilities, from XSS to information exposure, there is everything and these vulnerabilities keep on changing year after year. 

However, there is a silver lining in this challenge and that is the impact of these vulnerabilities. 

A graph reports open source vulnerabilities and the number of businesses they have impacted.Source: Snyk

XSS is one of the most reported vulnerabilities, however, it only impacts a low number of projects. This can be considered as a positive outcome of this particular challenge.

The openness lures attackers

The OSS code is open for everyone and so its vulnerabilities; and we certainly know that everyone includes people with malicious intent as well. So, open source vulnerabilities become an easy target for attackers.

The National Vulnerability Database, which is a platform providing information about the open source vulnerabilities that too publicly isn’t helping this challenge much. Don’t get me wrong, such platforms are indeed helpful in identifying the problems, but considering they are public and open, the attackers get their arsenal for the next target.

You may think that the known vulnerabilities should get fixed before the attackers are lured in by them. But that is easier said than done. The problem here is that the open source vulnerabilities are published at multiple platforms, thus tracking them becomes difficult. Even if they have been located, updating, patching or fixing can require some time and during that phase, you’d be at risk.

The openness might overlook quality 

There are a number of people who contribute to open source security and you cannot be sure that all of them would be security experts. Everyone in the community will not have the same level of skills and expertise. Therefore, the way they would create a piece of code would be different. This makes quality assurance a task that could almost be impossible to take on. Furthermore, the fact that there are no set standards for the quality of open source code makes it all more convenient to overlook quality.. 
 
All of this means that the quality might be overlooked and even compromised. The fact that only 8% of the WhiteSource survey respondents were concerned about the quality is a testament to this challenge.

The openness comes with licensing risks 

OSS may be free to use, but it does come with a number of licenses that need compliance; 110 licenses to be exact, according to the Open Source Initiative. These act as the guidelines for OSS source to be used.

With these many licenses, there is bound to be a risk of compatibility. Let’s understand this, some licenses are compatible, this means you can use them together. However, some aren’t, which means that using them together would put you at risk, like the Apache 2.0 and GPL v2 license.

What’s more is that, if you do not comply with the licensing guidelines of open source, you’d be making yourself open to a lawsuit. While I know this isn’t the kind of security concern we've been talking about so far, it is a security concern all the same.

Can You Overcome the Security Challenges?

The major challenge in open source security are the vulnerabilities. Detecting them and resolving them has to be the priority, if you want to overcome the challenges. Given the fact that open source vulnerabilities have risen in 2020, you need to be sure that you are not at an elevated level of risk.

A bar graph shows open source security vulnerabilities from 2009 to 2020.Source: WhiteSource Software 

Let’s see how these vulnerabilities can be caught in time, so that they do not affect your business by implementing some of these open source best practices.

Prioritising security, always 

The first part in overcoming open source vulnerabilities is to always prioritise security. This starts with the choice, whenever you choose an open source component to work with, security has to be one of the considerations in the choice. 

Usually, functionality comes as the main reason for choosing an OSS. However, just focusing on that can put you at a disadvantage. Think of it this way, an open source component that does not require any integrations with your codebase would remove any and all security risks, along with reducing the complexity of your source code.

Prioritising automation as a means to detect and monitor vulnerabilities 

Next comes the detection of the security vulnerabilities and automation comes quite handy here. Organisations, especially large ones, have a pretty massive codebase and going through it would be a mammoth task, if not automated. Detecting susceptibilities is already quite a lengthy process, even with automation.

You have to identify which packages are being used; 
You have to pinpoint the vulnerable functionality in your code; 
You have to map out the way that particular vulnerability is impacting; 
And then you have to work on rectifying the findings.

Such a process may only include four steps, however, it isn’t a trivial task.

One of the problems in overcoming the vulnerability challenge is that organisations, sometimes, have no clue that they are actually susceptible. The fact that the open source community has an extensive amount of data means that the vulnerabilities would be spread across that expansiveness. So, running automated scans for identifying vulnerabilities would never let them go unidentified.

Taking help of automation tools would not only help you get to the problem areas faster, but also keep doing it continuously. When you enforce automated tools to continually monitor security problems, you come closer to protecting your project and taking control over the open source components you are using.

Prioritising the involvement of the team in security

The last point to cover in order to overcome the open source challenges involves your team. There is a high likelihood that your developers would not be experts in security. And the people you may have in security would be lost in the developers’ realm. Since open source vulnerabilities require you to be efficient at both development and security, there has to be some training involved.

The ways to track open source dependencies are shown.Source: Snyk

Such a response for detecting open source dependencies is not ideal. So, aim for cross training your staff, the developers should be able to at least identify certain security vulnerabilities and the security team should have some understanding of the development process. 

If you think that isn’t a possibility, you can hire outside help to assist you in overcoming the challenges posed by the open source components. 

The Verdict 

OSS is on the rise and it will continue to grow in the future, there isn't any doubt about it. Along with that open source security will also strive to improve. Yes, there are issues that surround open source security, it isn’t perfect. I think that’s a good thing, because perfection cannot be improved upon and that means open source security has a lot of strides to make. 

Open source security operates on visibility and openness, and it also teaches its adoptive organisations to preach the same. Aiming for visibility in your source code would always keep you ahead of the vulnerabilities you might have. It would also provide you with knowledge of your dependencies and a clear understanding of your code. 

So, in that sense, open source software would be a great low cost addition to your project and open source security isn’t something that would ever hold you back. With the amount of open source security tools available today, that’s almost a guarantee.

Jun 11 2021
Jun 11

Is it possible for us to finish everything we start? Is it possible for us to achieve every milestone that we set for ourselves and stick to every new year’s resolution we make? In a perfect world it would be, but sadly we do not live in a perfect world. 

And it’s not necessarily a bad thing to take a step back from a project you know you won’t be able to finish. I started painting my room when the pandemic began as a way to waive off the boredom, and half-way through I realised painting wasn’t for me. It was too exhausting and I wasn’t even good at it and most importantly it made me lose focus from my actual paying job. You can write a lot when you have paint all over your work desk, trust me. 

So, these unfinished projects have to be taken on by someone else, right? You can’t leave the room half painted, that would be a look the 21st century isn’t ready for. So what happens? Do you hand over the paint and the brush to the person taking over and forget about it? Not exactly. 

There are a whole bunch of things that you have to relay during the handover and keep a diligent eye on the new person to ensure that he is taking the project into the desired direction. You have to have the room painted as you had initially planned, you can’t expect a subtle lavender theme to turn out to be a neon orange at the end; that’d be a catastrophe of the highest order.

Now, we won’t be talking about painting rooms throughout this article. No, what we will be talking about is the way project managers handover business projects that are work-in-progress. What are aspects they focus on during the transition of duties, so that they do not affect the project’s completion? And does the transfer actually become fruitful for the project? Finally, I’ll share some instances from OpenSense Labs, wherein our project manager had to handover a project. So, let’s start.

The Handover Begins With Knowing the Company

If we look at project handovers, there are two scenarios that basically decide how much work it is going to take from the project manager himself. 

  • One of them is when a project is being transferred to a PM who is already a part of the organisation. 
  • And second is when a new project manager is hired within the organisation to take over an already in-progress project.

The first step we are going to discuss isn’t really necessary for the first scenario, but quite crucial for the second. And that is the knowledge of the company, its mission, its way-of-conduct and its overall cultural dimension.

Someone who has been a part of the organisation, even if it is for a little while, would already be familiar with it; however transferring project ownership to someone new would have to go through an acclimation process and that is what this step of project ownership transfer is all about.

Why is this acclimation important?

Because it provides perspective 

Being familiar with the organisation’s vision gives a perspective on things for the PM that he otherwise may not get. This perspective is important for things to sail smoothly throughout the remaining life of the project since it’d provide you with a purpose along with an overview.

Because it helps in communication 

Every organisation has its own culture. At OpenSense Labs, we follow the opposite of a traditional work culture with stringent rules and regulations that limit the scope of projects and employees. Liberty, openness and equality are some adjectives that would describe OSL’s office regime. This culture is directly related to how communications go down the hierarchy. Being familiar with it helps new PMs to fit in with the team and take things forward in a way it is used to.

Because it helps in decision making 

When you study the company you are going to take a project from, it would help you make better and more informed decisions without any disruptions.

A table is comparing a company's local process to global processes.Source: Toptal

The above image talks about some of the daily decisions a PM has to make, and knowing how to make them would make his/her work a lot easier.

Familiarising Yourself With the Nuances of the Actual Project Is Next

Now, you know the company, but do you know the project and what place it has in the company’s revenue stream? Knowing that is the next stage of project ownership transfer. This is also referred to as the knowledge transfer or at least its beginning.

Your organisation is going to have a number of projects running at all times, they could be about helping small entrepreneurs become more successful, however, all of these projects cannot be at an equal level of prominence. Some would be high priority and some would be on low. Identifying the significance of your project is what you would need to do first.

Once you have done that, you can start looking at your own project with a fine tooth comb. You would need to know everything about it to ensure that the outcome is what is expected. Start with the generic nature of the project. 

What is the project type, in-house or external?
What does the target audience look like?
What is the marketing strategy?
What are the competitors providing?

An answer to all of these questions will help you get a better understanding of the project. When you have that, then you have to dig deeper into the transition and learn about the change, everything preceding it and everything that has to follow.

What kind of progress has been made in the project?
Which aspects of the project are outstanding?
What tools and processes were being followed?
What are the restrictions and blockers holding that project back?

These questions are extremely important to ask as they would help you in knowing the deadlines and reaching them on time. Being familiar with all the issues hindering the project completion, be it about the team or client communication, won’t let you get blindsided, which can happen after a takeover.

Then You Get Acquainted With the Stakeholders and the Team 

In every project transfer, there are people who play a significant role in its completion. These are the people who are essentially responsible for all the work that goes into the project and its consequent success. As the new project manager, you ought to become acquainted with them from the very first day of the ownership transition because acclimating to people is the most difficult task of any process.

The Stakeholders

Starting with the stakeholders, these people are the ones who are going to directly benefit from the success of the in-progress project. It can be the client and his organisation and it can be people within your organisation, if it’s an in-house project affecting them.

Talking about the client, the focus is to make him comfortable with you and you being comfortable with him. During the entire transition, the client has to be kept in loop. Even if the previous PM had been fired, the client has the right to know. 

At OSL, we introduce the new PM to the client in phases. After some time, the new PM is involved more by making him prepare meeting agendas and answering client questions.

At OSL, we introduce the new PM to the client in phases. We ensure that once the former introduction has been completed, the new PM is always present in client calls even if he/she is not contributing anything. Even without the contributions, they’d be learning and that is what the transition is all about. After some time, the interaction is made more frequent and the new PM is involved more by making him prepare meeting agendas and answering client questions. During this time, the old PM is always there to handle any mishaps. Once those mishaps are no longer happening, it means the comfort is achieved and the new PM is given the command.

For an in-house project, the stakeholders would be the people using the end-product. Because they need it they’ll become your project’s advocates and in turn yours too. You have to capitalise on that. You should make yourself acquainted with them and get their feedback on the project you are delivering by testing an early version of the project on them as an option. 

Every stakeholder of the project would always want it to be successful and it is up to you to get them involved to improve your chances of success.

The Team 

Then come the people whom you would complete the project with. There are three things you have to be mindful of. 

  • One is the team’s structure and hierarchy, if there is any. You should know how they operate and what is the working dimension, remote or co-located or both. 
  • Second is to dig a little history and know about any grievances they might have had with the previous manager or even among themselves.
  • Finally, you need to know whether the team you have is of the right size, you could be understaffed or overstaffed.

These help you become one of them and make everyone feel included by eliminating any kind of friction between you and them. Having the old PM with you during the transition can help make the acquaintance process go by faster because you’d know the kind of authority and system the team is used to making the transition easier for them. Of course, if the PM has already been fired or there was no PM at all, it might be a possibility.

Understand how human psychology works in the project management here.

Knowing Exactly What Is Required of You 

Now comes the part you will play in the project. Of course, you are going to be handling it, but where would you start delivering?

Here the first important thing to know is the reason you are taking over. The previous manager could have left the organisation or he could have been made to leave. The former scenario doesn’t really have any relation to the project itself, but the latter could and you ought to know that. If a PM was removed or fired, there has to be a reason, right? He may not have done the job in the appropriate manner or he may have mismanaged the project and even the team, whatever the case, learn about it and start rectifying from the get go. Trust me that is the first plan of action expected from you.

You can only do that once you know what exactly the role of a PM is in the organisation. By this, I mean a few things.

  • You need to be aware of the way you are going the handle the client and the team;
  • You need to be aware of the extent of your duties and whether they go beyond the scales of the project;
  • You need to be aware of the procurement process as well as vendor selection as you may have to do it at some point;
  • You also need to be aware of the way your performance is going to be evaluated, how and who is going to review it.

A knowledge of all these aspects will only help you perform your duties better and get the project completed without any impediments.

Read our blog ‘Feature Prioritisation in Projects: How It's Done Right?’ to know more about project management and the feature prioritisation that goes in it.

The Final Handoff 

The above mentioned project handover necessities actually sum up the entire process and usually most of it is mentioned in the handover plan or document, which the old PM goes over with the new PM in due diligence. 

And it doesn’t happen overnight, it takes from a couple of weeks to a month, the gradual nature of the handover is what makes it fruitful for the project. Taking a few steps a day by breaking the transition into pieces that are easy to comprehend at a time is essential. Another aspect that is essential is you being shadowed, be it by the old PM or the team, that is what’ll help you learn the ropes faster.

You wouldn’t take the reins at once, it would come in increments of each step we discussed. 
You won’t be expected to answer the client worries from the get go;
You won’t have to deal with the developers from day 1;
You wouldn’t be expected to make a low performing project turn around at once. 

Everything would happen gradually. Once you have the apprehension of the company’s vision, the project itself, the stakeholders and the team along with everything that is expected of you, you’ll be ready to wear the PM hat and take the project on yourself. And the final handoff would be complete.

The Other Side of the Handover: OSL Handover Manual  

OpenSense Labs have successfully completed many projects in its life, however, sometimes these projects have been the rewards of more than a single project manager. There isn’t a particular reason for that. Sometimes the project manager had to hand over their work because he was leaving the organisation and sometimes it was because he was overburdened and couldn’t give his complete attention to the project. 

While researching this blog I talked to two of our project managers, Yash Marwaha and Abhijeet Sinha, to get a better understanding of project handover. Project handovers are a two way street, up until now we have discussed the side of the PM who will take the project forward, now let’s look at the other side and delve into the project transferer’s perspective.

Yash and His Handover Precision 

Yash is all precision and accuracy with a set system to make the handover as smooth as possible. The first thing he does is identify the type of project, which could be a long term engagement or support and maintenance. For him, this identification decides the timeline of the transition.

The steps that he follows usually go like this.

  • Creating a handover document and going over it with the new PM; 
  • Informing the client; 
  • Planning induction sessions with a handson walkthrough; 
  • Introducing the new PM to the client; 
  • Being available on calls between the new PM and the client until a comfort level is reached;
  • Finally changing the ownership when that happens.

This is a great system to follow for a handover, yet Yash has had to take over a project even after the handover has been completed. The reason was the new PM not being comfortable with the client. Even after doing everything by the book, things can still not go as smoothly as you may have wanted. You cannot control all the variables, let’s learn that from Yash.

Abhijeet and His Handover Diligence 

While Abhijeet follows much the same steps as Yash, he doesn’t focus too much on the time, rather he focuses on diligence. What I mean is he doesn’t feel that a handover has to be confined to a specific timeline. A similar project could have been handed over in a week, but that doesn’t mean that the current ownership would go the same way. For him, when you rush things, diligence goes out the window and chaos ensues.

He has two project transfers to prove his point. 

  • He had to hand over a project, redressal of a major tourism website in Kansas City, to Yash. The handover happened within 3-4 days, pretty quick, right? The reason was that Yash was already in contact with the client making the transition as smooth as smooth could be.
  • Then there was Earth Journalism, wherein an all new PM had to be assigned the ownership. He kept her in the loop for the client and the developers. He helped in removing the friction between the new PM and the developers, which happens in every transition, at the same time he ensured that she knew the contextual needs of the project. This transition took about a month. Learn more about the work done on Earth Journalism Network by OpenSense Labs here.

Project transfers can be a tricky business. There are a lot of parties involved and all may not welcome the change. As the project transferer, you have to be patient with everyone. You have to ensure that everyone involved is in favour of the new person, if not the final handover would not be the end of it. 

There is another thing that the OSL team shared with me and that is never ever transfer ownership of a three-month project mid-way. If you are to do it, do it in the beginning itself. There is no point in bringing a new PM after two months, it’s not going to benefit anyone.

Whether you are taking up a new project or getting a handover of an ongoing one, learning through Drupal website projects can be very handy. Learn what are the infinity stones of Drupal development, how to start the Drupal project the right way, how to manage your development workflow for Drupal project, and why product mindset should be preferred over project mindset.

Conclusion

In the end, all I want to say is that people have a tendency to take time to learn things and perform them in an efficient manner. Rome wasn’t built in a day, right? So, what needs to be done during a project handover is valuing the learning curve. It’s going to take time and patience to make it fly. The kind of details an on-going project can have are quite diverse and making the new project manager get a hang of them is what matters. And that requires time from the organisation given to the new PM and his efforts in making that time worth it. 

May 28 2021
May 28

Malcom Forbes, the publisher of Forbes Magazine once said, “Diversity: the art of thinking independently together.” This quote gives us a very strong message that diversity in ideas and opinions can work for the benefit of the society at large. So, when we talk about diversity in open source, we get to see a similar scenario, where people are encouraged regardless of their gender, race, age, class or nationality to express their ideas, innovations and skill sets in a single platform to enhance better performance and results in their respective careers. 

Here, I would like to draw your attention towards some of the insights of this vast topic i.e. diversity in open source. With the help of this article, I would like to give you an idea about the community contribution towards open source followed by the various challenges encountered by the community in building a platform welcoming diversity.

Let’s begin by discussing the important role of community in open source.

Power of Community in Open Source

Open source gives you the opportunity to bring up your unique ideas and innovations independently in front of the whole world. You get full freedom to share your skills regardless of ethnicity, socioeconomic status, exceptionalities or geographical area and so on. In this manner, the open-source community is built up by the contributions made by people from every nook and corner of the world. Here, we will have to understand the fact that community can be regarded as the backbone of open source. With the help of the community, one can strengthen the open source ecosystem by active participation and contribution.

Now, let us get a better understanding about the open source community with the help of a contributor funnel created by @MikeMcQuaid below:

Three icons on right representing people, horn and tools, and a down arrow mark on left explaining the diversity, equity and inclusion in open source  Source: Open Source Guides

The above diagram shows three categories of participants in the open source community. Like the users, contributors and maintainers. These participants play an important role in the progress of the open source community. You will be surprised to know that every user can become a potential maintainer. It is possible by making the experience of each stage of the category easy and hassle free which indeed will encourage every user to take more responsibility and become an active maintainer of the community. 

Here, the question which now comes is, how can you maintain a healthy community? Let me give you an idea of how you possibly can build up a trust-worthy community which will contribute with best endeavour. So, the first and foremost thing to do is, welcome the participants and make them feel valued in the community. After they step in, give them clarity about your work with the help of a README which will provide them full transparency regarding your project. As documenting everything about your project with a README is always a must for better understanding which is also supported by GitHub’s 2017 Open Source Survey. Thereafter, you can let the participants start their contributions by handling simple issues which will boost up their confidence and help them get more involved at work. This further gives you a chance to share the ownership of your project with them making them feel more accepted in the community. While doing that if anyone comes up with any queries, you should always be ready to answer them at the earliest. 

Your community can be a great place for the contributors to learn from each other’s experiences and expertise. Therefore, it is your responsibility to expand your community by sustaining the right people and letting go of the ones who unnecessarily create a toxic environment for everyone. You should stand strong for your community giving equal value to everyone’s opinion and ideas. In this way, you can build a prosperous and healthy community for all. 

What’s next? Let’s now take a look at some of the tweets supporting community contributions to open source.

Contributing to open source is easier for some than others. There’s a lot of fear of being yelled at for not doing something right or just not fitting in. (…) By giving contributors a place to contribute with very low technical proficiency (documentation, web content markdown, etc) you can greatly reduce those concerns. — @mikeal, “Growing a contributor base in modern open source

The truth is that having a supportive community is key. I’d never be able to do this work without the help of my colleagues, friendly internet strangers, and chatty IRC channels. (…) Don’t settle for less. Don’t settle for assholes. — @okdistribute, “How to Run a FOSS Project

While it’s important to create a sense of belonging for the members of an open source community, it is equally important to encourage diverse minds to be a part of the community and become more and more inclusive. Let’s look at a research report conducted by the World Economic Forum that highlighted the importance of diversity and inclusion at workplace. This report explains that when all the employees, managers and the entire organization work under well managed diverse teams, they tend to perform better than homogeneous teams in terms of their usual productivity. Therefore, the practice of diversity, equity and inclusion should be encouraged by the open source community too. This can be seen in the below diagram:

Graphical representation with curves explaining diversity and inclusion at workplaceSource: World Economic Forum

Challenges while Promoting Diversity, Equity and Inclusion in Open Source Communities

In the past few years, the open source community has witnessed some challenges while promoting diversity, equity and inclusion. Let us discuss today some of the most important challenges by taking help of some genuine survey reports.

Not enough contributions from female and non-binary coders

According to a 2017 GitHub open source survey, 95% of contributors of open source projects were male, whereas only 3% of contributors were reported to be female(1% defined as non-binary). The US Bureau of Labor Data says that only 21.2% of professional developers are female.  

Here comes a diagram from 2019 DigitalOcean developer survey to show that the participation of male in open source is comparatively more than female:

Table explaining diversity, equity and inclusion in open sourceSource: DigitalOcean

Next, let’s look at another diagram where the participation of young developers, both male and female are shown in comparison to older generations of contributors regarding their experience in open-source.

Table explaining diversity, equity and inclusion in open sourceSource: DigitalOcean

From the above diagram we can understand the fact that when the younger generation both male and female join the open-source community, they don’t find any hurdles in terms of guidance or required resources. But as we know that the older generation of contributors mainly comprises of male due to gender diversity. So, they do not preferably contribute to the change needed in the community towards gender inequality. As a result, the young female contributors experience injustice and are deprived of opportunities. Therefore, the cycle of male preference in open-source continues.

The sad state of women in a male-dominated world

To get a deeper understanding about the reasons for lack of diversity in open source, let us look into another seminar paper which was written as a part of the lecture Free and Open Technologies, held by Christoph Derndorfer and Lukas F. Lang at TU Wien, Austria, during the winter term 2019/2020. This seminar paper talks about a case, Katie Bouman. 

In April 2019, the first visualization of the black hole was revealed. After this, another picture went viral which was of a young female computer scientist, named Katie Bouman. She is a postdoctoral fellow at MIT and a member of the team running Event Horizon Telescope, contributing with her algorithm to capture this image. Her team consisted of 200 researchers. But solely, Bouman was made the face of the black hole project by the media. Bouman tried to clarify this confusion but was made a role model as she was a woman working in a men-dominated field. On the other side she received immense hatred and even her Wikipedia page was said to be deleted. So, with this case you get an idea about the diversity problem in open-source.

Women need to be empowered within open source communities 

Then we have one more report named “Towards a More Gender-inclusive Open Source Community” published by the Institute of Development Studies at the (DIAL) Digital Impact Alliance. It brings light into the circumstances of gender diversity. This paper shows how women can be supported and an inclusive community can be built.

This report says that there has to be some changes in facilities for women to empower them to contribute actively in open-source. Let us see how can it be done:

  • Resources: In order to excel in one’s career aspirations, one should be given the right amount of resources which can be used to reach the desired goals. Similarly, talking about women in open source, they should also be provided with the opportunity of learning various skills required to enhance their knowledge and contributions. They should be given a friendly working atmosphere to come up with their ideas and plans in the community.
  • Institutions: This comprises the different social environment one gets in life in the form of family, educational institutions and the society at large. It is usually seen that a woman is less likely to get the necessary support from her family in terms of education and other facilities. Growing up when they want to pursue their career and also look after their family life, they are stopped from doing so and are left to take tough decisions of choosing one over another. Therefore, a change in the society’s perception is needed to encourage women to manage their both family and career with dignity and respect.
  • Agency: This comprises the ability of a woman to become a good leader and a decision maker. When it comes to open source, there is less encouragement towards women to prove their capabilities compared to men. So, such injustice has to be abolished for equal and fair chances.

As a part of the above mentioned report, one interview was conducted among women who were contributors working  as programmers and multi-taskers. It’s definitely high to empower and encourage more women to participate in open source ecosystem going by the number of women who were in the open source projects at the time of interview.

Table showing number of women in open source communitiesOpen source organisations and communities in which women contributors were active at the time of interview | Source: DIAL

Time, money, and recruitment from demographically homogeneous communities are obstacles too

In a report by GitHub, in association with The Case Foundation, Nadia Eghbal states that one of the reasons why there is a lack of diversity in the open-source community compared to the technology sector, is because the open-source contributors need time and money to contribute initially which at times can be very difficult. The open source ecosystem must be enhanced by the inclusion of diversity, believes Lorena Mesa, an engineer at GitHub and the Director and Vice-Chair Elect of the Python Software Foundation. Justin W. Flory, a member of the RIT LibreCorps and UNICEF, an open source initiative said that the early leaders of OSS recruited contributors from homogeneous communities leading to diversity issues which can be seen till the present. He further stated, “I look at what we're going through now in this emergency of emphasis on communities, on diversity inclusion, and I feel like there is no other way to describe it then as a feminist movement in free software.” Learn how good leadership and inclusion within the open source communities can make a world of difference.

Neverending myths about open source have to vanish

Now, a contribution is made by Nithya A. Ruff, the Head of Comcast’s Open Source Program Office about some misconceptions which people have about open-source. So, here it goes. The first misconception is that you need to be a programmer in order to join the open source community. But it isn’t true. Open-source is also a platform for various other industries other than technology. The second myth is that the culture and norms of the open source community is easy to navigate. But in reality it isn’t so. You will find a lot of feedback where the new contributors reveal that they don’t get the necessary co-operations from the community members. The third misunderstanding is about the fact that you can’t be a casual contributor but you rather have to work under an open-source project for your entire life-time. But the truth is, you can work according to your convenience and be a short time contributor.

Here are few tweets supporting the above discussions:

Tweet showing a person's face on left and text on rightTweet showing a person's face on left and text on right


So, the above myths can also be termed as challenges towards a more diverse open-source community. Therefore, necessary steps should be taken to overcome these adversities.

Open source meritocracy and the significance of diversity and inclusion

Now let’s also look into some of the information depicting the truth about inequality and favouritism within the open-source community. Women were seen compromising their health when in the year 2015, a heart transplant was available to only 20% of women compared to 80% of men. Apple launched its first Health Tracking App in 2014 which omitted a woman’s menstrual cycle that should have been one of the major concerns regarding a woman’s health and wellness. Amazon was seen removing its AI recruiting tool which was designed to select applicants based on resumes submitted to the company over a 10 years time period that mostly came from men.  

So, apart from the above mentioned challenges of diversity in open-source, you will find many other such discriminations based on socioeconomic status, nationality and so on. In cases like this a question comes to my mind, what if meritocracy was practiced in open source? It could help the community in finding the right participants with merit, intelligence, creativity and skills who were truly deserving. With meritocracy, the open-source could experience diversity, equity and inclusion within the community. This ideology is also supported by huge companies like Google, Facebook, Microsoft and Netflix. More on the impact of large companies on open source here.

Meritocracy does not consider the reality that tech does not operate on a level playing field. — Emma Erwin and Larissa Shapiro, Mozilla.

Statistics show that 78% of companies run all of their businesses with open source software. So, looking at the ratio, it is a must that all the companies working in open source software should follow the rules and regulations and include contributors encouraging meritocracy within their community. If not all, but some are taking initiatives in giving opportunities to the people around the globe looking forward to being a part of open-source. Here is an example: Outreachy is a program which organises a three month paid internship with free and open source software projects for people who experience favouritism and are under-represented  in the technical industry where they are living. 

After discussing the challenges of the open source community, let’s now peep into the topic, ‘Code of Conduct’ which cannot be avoided. 

Is Code of Conduct Enhancing Diversity in Open Source?

Code of conduct can be a medium of communication among the contributors of the open source community. It helps people to know about the set rules, regulations and practices that are to be followed in order to maintain the professional conduct of an organization. 

For open source projects, The Contributor Covenant was created by Coraline Ada Ehmke who is a software developer and an open-source advocate. This contributor covenant works for safeguarding the rights of the members of the community from experiencing misbehaviour and ill treatment. So, it is followed by prominent companies like Apple, Google, Salesforce, Linux, Creative Commons and many open-source projects as well. It has become an essential part of the open source community. We have with us an example where Eric S. Raymond, one of the founders of the Open Source Initiative was banned for violating the code of conduct by his misbehaviour. But alone CoC can’t stop discrimination happening in the field of diversity in open source. There is a need for better authority and management which can strictly look after the matter. 

Wonderful Stories from Open Source Communities Embracing Diversity

The Open source community can be termed as a social movement which is diverse. It is a community model which is designed to help aspiring people contribute to the world their ideas, innovations and unique talents. Here we have some examples of extraordinary open source contributors:

1. Drupal

Diversity, Equity and Inclusion are valued by Drupal as there is a separate team to monitor their active participation and implementation. Drupal celebrates the pride month every year by changing its logo on social media platforms. This is observed inorder to thank the members of Drupal for welcoming and supporting LGBTQ+ into their community.

logo of Drupal Association with drop shaped icon on left

When the world was once again reminded, through the George Floyd incident, that the 21st century still witnesses the violent incidents of racism, the Drupal Community joined hands in raising its voice against such brutal attacks. The statement given by Drupal is as follows:

(We stand with people across the globe in condemning racism, racist behavior and all abuses of power. We grieve for the black community, which has endured another unspeakable tragedy in a long history of injustice)

Drupal believes in the ideology of getting better quality results or performance out of diverse working groups in the community. The Drupal Diversity and Inclusion Contribution Team aims at increasing the contributions to the Drupal projects by the people who are underrepresented or devalued in the Drupal community.

logo of Drupal Diversity and Inclusion contribution team in the shape of a droplet in blue

The diversity problem was handled by Drupal in a very smart way, by introducing Drupal conferences and workshops. These platforms gave exposure to the underrepresented groups to speak and open up their views, perceptions and ideas to a larger audience increasing their confidence level. A speaker training workshop was hosted on September 21 and 28, 2019 with Jill Binder by the Drupal Diversity and Inclusion Group to inspire people around the world. 

The Community Working Group(CWG)  also conducts workshops for the community leaders to provide them the necessary tools, resources and knowledge to build a friendly and flourishing community. To get a better idea of conducting successful conferences, CWG follows feedback from past workshops like Teamwork and Leadership workshop conducted at DrupalCon Nashville. Such workshops are of two days duration. The first day was spent by discussing the needs or necessities and challenges faced by the community members. It was followed by the discussion of utilizing the nudges appropriately and building a positive environment within the community. Then the second day, they talked about emotional intelligence and finding ways to resolve conflicts. There was also a case study challenge, where various groups were assigned tasks of resolving conflicts which were seen in Drupal or other open-source communities. These workshops proved to be beneficial for the community members. 

Drupal encourages healthy conversations to maintain a positive ambience within the community. Even though people try to maintain a peaceful environment, sometimes due to differences in opinions people tend to hurt each other’s feelings. To resolve this issue, an idea was discussed at a Community Working Group (CWG) workshop at DrupalCon Seattle. For the Drupal community, the CWG Community Health team has been working on a communication initiative which comprises a series of de-escalation templates labeled as “Nudges”.

Five icons attached to semicircle representing diversity and inclusion in Drupal


There are five nudges which the community members can utilize when they come across any such uncomfortable circumstances within the Drupal community. Every nudge gives a clarity about why a certain comment towards a member can be harmful and it also provides some relevant links like the Code of Conduct and Values and Principles.

Below are the nudges. Take a look:

  • Inclusive language (gendered terms): Use of gendered language is prohibited. Such language impacts the community negatively as it encourages gender inequality within the community.
  • Inclusive language (ableist terms): Use of  ableist language can hurt the sentiment of people with disabilities. Therefore, one is abstained from using such language within the community.
  • Gatekeeping knowledge: When a community member expects a new community member to know everything about the project without giving the required guidance and questions his/her contributions and ideas, then this nudge can be used. The new contributor shall be supported by helping them learn the necessary concept and topic.
  • Cultural differences: The members coming from different backgrounds, speaking a culturally specific language are undervalued for their contribution by the other members as they are unable to speak the global language common for all. While translating one has to be very careful as expressing something exactly the same in a different language might at times sound rude and uncomfortable.
  • Escalating emotions: Every community demands mutual understanding and proper communication inorder to build a healthy environment for all. So, while working together every member should be given equal amount of respect and dignity without any discrimination. The Drupal community further takes care by providing resources to the members at the time of conflict.

Give a look at what Dries Buytaert, the founder of Drupal, wants to share about gender and geographic diversity statistics of the recent years. It is as follows:

Gender Diversity’s position was closely observed by Dries Buytaert as it is one of the biggest challenges of the open-source community. A slight progress was seen in terms of contribution but still wasn’t enough to be celebrated as a victory of gender equality. Let’s take a look below:

Bar graph with blue, green, and black vertical bars showing statistics on contribution by different genders of drupal communitySource: Dries Buytaert's Blog

Here we have the top 20 countries from which contributions are made in Drupal. The below diagram says it all:

Bar graph with blue, green, and black vertical bars showing statistics on contribution by different countries for drupalSource: Dries Buytaert's Blog

With the above explanations, we get to know that the efforts are made to improve gender and geographic diversity. But it isn’t enough. Therefore, better practices and strategies have to be made in order to reach the desired results. Learn more about Drupal's role in encouraging diversity and inclusion here.

2. Red Hat

Red Hat is one of the leading open source provider companies which actively takes initiative in building an open source community filled with innovation and productivity of better technology. They believe in the collective contribution of every skilled participant irrespective of gender, race, class or nationality within the community. One of the initiatives it took to encourage diversity was by including Women in Open Source Community Award in 2015. This ceremony was organized to appreciate and honor women for their outstanding contribution towards the open source community.  

Red Hat observed a very sensitive matter of using inappropriate language by software programmers which at times affected the sentiment of some participants. The usage of terminology like ‘master’ or ‘slave’ was the major concern. Chris Wright, chief technology officer at Red Hat confirms that Red Hat is building a team to examine its documentation, code and content to find out the improper language and replace it with the right ones. Some of the changes are as follows:

  • Master branch will be renamed as ‘main branch’
  • Whitelist to be renamed as ‘allowlist’
  • Blacklist to be changed to ‘denylist’

3. Mozilla

Mozilla is one of the communities who is open and easily accessible to everyone looking for meaningful contributions towards the vast open source community who is constantly seeking growth. Diversity has been one of the interests of this community and they have always taken the necessary steps towards it. 

In 2018, the code review process was made equal for all without any gender bias by this community. To improve diversity within their staff they published a blogpost in the year 2019. Here is the progress they made:

  • There was an increase of women in technical roles from 13.2 percent to 17.4 percent in their community.
  • Out of all people managers, the women representation has increased from 36.0 percent to 39.1 percent and in terms of executive leadership roles, the graph has raised from 33.3 percent to 41.2 percent within December 2018.
  • The representation of minorities rose from 6.9 percent to 7.9 percent in 2018, but the target of 8.9 percent couldn’t be achieved.
  • From underrepresented minority groups, Mozilla hired 12.4 percent people and also a rise in people of colour from 35.2 percent (2017) to 36.2 percent (2018).

In cooperation with Kubernetes and companies like Red Hat, Mozilla gives importance to the execution of codes of conduct so that proper communication and professional conduct can be maintained within the people of diverse nature. Most importantly, it raises funds for open source projects.

4. The Linux Foundation

The Linux Foundation focuses on broadening the practice of diversity and inclusion, building a more welcoming space for people from diverse backgrounds and expertise. This association commits towards constructing a bias free environment by taking few initiatives as follows:

  • Initiative of Inclusive Naming
  • Advancing diversity and inclusion in Software Engineering
  • Availability of free online courses
  • Diversity and Inclusion in Events
  • Live Mentorship Series
  • LiFT Scholarships

Out of all these, advancing diversity and inclusion in Software Engineering is something that can catch one’s attention. The Linux Foundation announced the Software Developer Diversity and Inclusion (SDDI) project on 26th October 2020. Through SDDI, exploration and utilization of best research procedures, the diversity and inclusion in software engineering could be increased.

5. The Apache Software Foundation

The Apache Software Foundation started a project named Apache Diversity and Inclusion with the mission of constructing a community valuing diversity and inclusion giving exposure to a wide group of people seeking career path/ professional advancement.

homepage of Apache diversity showing textual information on their mission and vision for encouraging diversity and inclusion in their project development works


6. The Academy Software Foundation

The Academy Software Foundation stands against the injustice and inequality happening in the open-source community. It aims at removing all the barriers which creates hurdles in the process of growth and development of potential contributors all over the world.

To set your basics right and make your open source project more diverse and inclusive, Open Source Diversity is a good place to start. From identifying projects which support underrepresented groups like WikiProject Women in Red (for increasing the women representation in Wikipedia) to finding mentorship programs like Write/Speak/Code (visibility for women and non-binary coders through thought leadership), Open Source Diversity has it all!

Conclusion

To completely abolish the challenges of diversity, equity and inclusion in the open-source community is not easy. But there is no end to consistent effort and endeavor. So, it is important to be fully aware of the situation and work towards the collective goal as a team around the world. Therefore, let’s never forget, ‘Diversity leads to Prosperity’. 

May 26 2021
May 26

Owing to the numerous aspects and applications of web personalization, it might be a confusing term for many despite its omnipresence across the virtual world today. Web personalization is best understood as individualization of a website customised in a manner to cater to an individual's unique requirements. The importance of this concept can be realised from the fact that the founder and CEO of Amazon, Jeff Bezos, prophetically mentioned something along the lines of personalization almost 2 decades ago.

"If we have 4.5 million customers, we shouldn't have one store, we should have 4.5 million stores."

Jeff Bezos in 1998


Why do you need website personalisation?

There are numerous statistics and numbers that point towards better business relationships with customers when personalisation is adopted, as when a user feels a personal connection with a piece of content or a layout, he is more likely to invest in the product or service. This is substantiated by the fact that Invesp's survey points out that around 56% of online shoppers are likely to return to a website when they see product recommendations customised according to their interests. Running a cross check from the other end as well, it has also been noted by MarketingProfs that 66% of marketers said that a chance of an improved business performance was their main reason for going forward with personalization. Listed below are some additional statistics that showcase the benefits of web personalization.

three blue circle with text enclosed talking about the benefits of web personalisation


On the other hand, if data and numbers don't speak to you to dig deeper into the human value of building relationships and don't just care about the turnover, web personalization is still your best friend. Apart from the very obvious benefits of increased conversions and sales, DSR duniya prasad the ways in which web personalization helps a business.

  • Meeting customer expectations

From customers' point of view, in this age of integrated tools and technologies, web personalization is not something out of the blue - rather, they expect a degree of customisation from the businesses that they associate with. As backed by sufficient research and data, custom recommendations and suggestions work better in attracting and retaining customers in the longer run.

  • Building brand loyalty

As a subsequent side effect of having invested more into the research and the choices made by the customers, you would garner greater brand loyalty. Tailored marketing strategies, no doubt, speak more to the user than the generic ones. 

  • Engaging your customers

User relationships are nurtured and allowed to grow with your website creating relevant offers, content and CTAs (Call To Action). Once you have done the job of gaining their attention right, the purchase can be accelerated even further by using personalization.

  • Trustworthiness

When you give to the customer, you are bound to receive back. For the smooth User experience ranging across the site and getting recommendations for products that they actually like and value, customers are bound to trust your website more than the others and are likely to rely more on your data.

Types of website personalisation 

User controlled

User-controlled personalization is where the entire website is controlled by a custom criteria set by the user himself. It is usually explicitly asked what the user's specifics related to geography, gender, languages spoken etc. are. These kinds of websites rely on the fact that the user will  take out the time to tell them they are in order to be directed towards personalized products and services based on their own inputs.

The most common method of initiating user-controlled personalization is by asking the consumer to create an account and hence provide a bunch of details about themselves in the process.

For the geographical location of the user, more often than not, their IP(Internet Protocol) addresses are tracked to see what part of the globe they belong to.

Behavioral

In the other kind of personalization, it is not explicitly asked from the user about what they want and who they are. Personalization here is placed more on the user's website browsing history and also based on their interactions with the website content. The data so gathered is then utilized to understand their deeper interests and gauge out their persona. For example, Netflix first observes what are shows one watches and then recommends newer shows based on their history. Considering how much data this process involves, the research can be a pretty daunting task, but works in a magical way once conducted properly.

Contextual

Contextual personalisation is when the activities that you do in the day are analysed and used as a context to provide further recommendations to you. Perhaps the best example of this is a fitness tracking software - it recommends activities to you based on how much you’ve walked or exercised in a day. 

Personalisation can also range from varying degrees and levels depending on where you want your user to find you . 

Email personalisation

Consumers that identify themselves to a business by giving out their email address for some form of notifications or newsletters are sent targeted emails that form a part of an essential communication based on the data that the consumer has provided. Addresses are utilised for targeted email campaigns and differ from other generic ones as they have greater chance of lead to user conversion.

Campaigns

Custom landing pages might be created from time to time to support the cause of a campaign if it is relevant to the organisation's ethical cause. Usually CTA is placed in these landing pages to donate or contribute in some manner. 
Implementing web personalisation

Where to start?

With research, of course! Research regarding personalization will vary greatly depending on the kind of industry and business vertical you are looking to create content for. It should also go along well with your other goals and objectives should fall in line with the rest of your tools in use. While collecting data ensure that it is factually  correct and not outdated, that you are adhering to all regulations while collecting it, and that you have a virtual silo for storing all of this data and extracting it whenever it is required.

Identifying your audience

Once all the data is within your arms' reach, used to identify your target audience and also create the personas of your visitors. These personas should be vividly detailed and should contain all relevant information needed to create custom experiences. Here's an example of a detailed user persona.

three columns with text outlining a user persona


Details like this will save essential time and effort while going through the data of thousands of users as you'll know exactly what to look for. This will help you immensely in the process of identifying your target audience. Learn more about the importance of audience segmentation in web personalisation here.

Setting your goals

Assuming that the research and segmentation part is done and dusted with, it is now time to get realistic and think about what is achievable and how much resources are required to complete the exercise - also whether the allocation is in line with the bigger picture. Once the data is studied and understood, you can now create an actionable plan that demonstrates how you plan to achieve your goals by using personalization and what your monthly or quarterly targets should be. 

Also always keep in mind that personalization is an incremental process and as you get more data with each interaction, the metrics need to be updated - that is, if you want to stay updated.

Mapping out the approach

But where does the plan of action start with? Do you create a separate landing page based on the data, or should it be incorporated in the home page itself? Now is the time to lay out a plan for personalizing the navigation and examining the touch points where the data needs to be delivered. You should not lose focus of the main goal, which is to generate maximum returns from this exercise. The right or wrong placement of a single line has the capacity to make or break your efforts.

Content and Design

This is the step where all of the research done is put into practice. The actual elements of a page that a customer interacts with are its content and design, and these should be highly reflective of what the user wants. The teams dealing with these two elements should be given access to the data and should be briefed comprehensively about what their work should comprise. Everything from the colour palette, the layout, to the kinds of images used are dynamic - but should also be intrinsically connected to your brand image. You should not be struggling to maintain your identity in the face of all of this personalization.

  • The header is your hero. Rightly said, the first impression is extremely important and it is important to put forward a good one. If you can personalize the header using an IP address to create a personal greeting to the customer, there would be nothing like it. The sub heading underneath every header and the image in the backdrop can also be personalized for each category of consumer that you are targeting. 
  • Add elements like featured blogs and other content based on the interactions that the user has had - like recommending ebooks or product related educational pieces. 
  • Highlight specific features of a product or solutions that you offer which are sure to resonate with the kind of audience that you are trying to attract. You could also try experimenting with motion UI to ensure that attention is attracted towards that part of the page.
  • A huge driver can also be customer testimonials, hence be sure to include some at a prominent spot in the homepage. Logos of brands that are associated with you, are partners with you or have invested in your company also add to the trustworthiness factor.

To know more, read about the significance of UX in the age of personalisation.

But is it working?

Early trends in metrics should not be ignored. Keep some analytics tools handy for examining the early trends in data after everything has been implemented. Have a clear analysis of 'before' so that you can compare the 'after'. Take into account the things like

  • Time spent on the site
  • Frequency of visitors
  • Content interacted with
  • Volume of new and returning visitors in comparison to the previous volumes recorded

Dive into the statistics and use it for the initial A/B testing. Analyse the data from different perspectives by keeping into account any seasonal or contextual effects that might have impacted the user behaviour during the said period of time. 

In mid stage metrics, points of data should be deduced from

  • Number of actions taken on the site
  • User feedbacks, if any
  • Quality of visitors - are they a part of your target audience?
  • Trends in lead to user conversion

Lastly, these metrics should be utilized to provide better iterations in the future.

Web personalisation in the near future

Less physical, more digital.

A miniscule number of companies have been deploying personalisation  beyond their digital presence. It has been predicted that all the places of interaction that have been largely physical till now will gradually be digitised, like food chains or clothing stores. Several clothing stores that have digitally transformed themselves to adhere to the present times allow 'online trials' using augmented reality to provide a personalized experience to the consumer. AI (Artificial Intelligence) enabled tools are utilised to improve the services - for example, it has been noted that food since Macy's and Starbucks use GPS (Global Positioning System) to trigger relevant in app push notifications to the consumer when they are near one of their stores. To know more, read how machine learning enhances personalisation at scale and in what different ways machine learning can be utilised for effective web personalisation.

Hence, in upcoming years we can expect the digitisation of presently predominantly physical spaces.

Scaling empathy

What makes AI stand out in this world surrounded by technology is its ability to incrementally improve after every interaction. Recently, McKinsey noted that smart speakers like Alexa and Google home for getting smarter over time and adding more to the skill set day by day.
 

bar graphs with black and blue bars talking about the smartness of home devices like alexa and their role in perosnalisation


The relationship of humans with technology and personalization is at a somewhat peculiar junction where we want the machines to understand us and not be completely mechanical - rather, a slight emotional, human touch is preferred. Thus, the concept of empathy will scale and devices will be expected to be more understanding of human behaviour in different times and contexts.

Formation of ecosystems

It is well known by now that a shopper's buying experience cycle - starting right from the introduction to a product till the end result of finally buying it is a cumulation of several touchpoints both offline and online that contributed to the overall buying experience. For example, an ad seen online, a promotional phone call, an offline retail store all might have contributed to the experience but at different timelines and regions. The next step towards personalization as it expands further would be to create a connection between all of these points and create an entire ecosystem to get personalized products and services delivered to the customer. It does not seem to be that far away, with smart home devices working towards integrating the entire place together and using shared experiences to render personalized offerings. For a complete guide on web personalisation, read here.

Taking the future as a reference

It is always better to live in the future as compared to the present. If you want to future proof your strategies it would be wise to roll out bigger investments on customer data and analytics. You can also make investments in finding and training translators so that you can personalize your brand's experience even further for the global crowd. The future of personalisation is agile and cross disciplinary, and traditional marketing efforts could go futile. Therefore, it would be best to refer to the upcoming trends and strategize your efforts accordingly - in order to remain a step forward than the others. 

May 25 2021
May 25

Providing an optimum digital platform that is accessible, meaningful as well as communicative of your organisation’s plans and objectives is imperative to creating a healthy brand image and also for being considerate of your customers’ demands and expectations from you. Most consumers today expect a widespread and uniform and digital presence of the brand that they are associating with - a presence that lays everything out on the table and leaves close to nothing behind closed doors.

This is where the concept of a Digital Experience Platform (DXP) comes in. A DXP is an integrated software framework that is used to reach out to a wide horizon of audiences through an array of digital channels and touchpoints. The recent decades of the digital boom have brought it to many organisations’ notice to invest in DXPs to build, deploy and continually improve their websites, applications and digital experiences. 

There are two core principles that stand out in the explanation of a digital experience platform.

  • Multiple integrated technologies are needed to connect to a wide array of digital touchpoints.
  • Management of all of these expanded experiences is done from a central platform that acts as a single control centre.

Let's have a look at the visual definition of a DXP.

white background with green graphics showcasing the visual representation of a DXPSource : Xtevia

A recent report showcased that 47% consumers would abandon a brand that doesn't provide relief and product suggestions and shop from some renowned organisation like Amazon instead. Impact found that companies have been realising the importance of an expanded digital presence, with over 44% of the surveyed companies were presently working towards a digital first approach, while 34% had already undergone a transformation. 

Owing to these statistics, it comes as no surprise that the Global Digital Experience Platform Market continues to keep expanding year after year.

Bar graph using yellow and blue lines tracking the popularity of DXPsSource : Data Bridge Market Research

Kinds of DXPs

Two of the primary approaches to Digital Experience Platforms are:

Open DXP

A platform that serves as the connective bridge of digital experiences by integrating multiple products from different vendors together so that they can work and perform as one, is an Open DXP. Hence organisations that already have a wide digital presence and own multiple digital experience products will be able to utilize Open DXP better.

Closed DXP

A closed DXP on the other hand is also a one-stop-shop that has all major DXP components - but the differences that all of these components are maintained by a single provider and integrations with other applications is fairly limited. 

When it comes to choosing the right approach out of these two, it can be very tricky for an organisation as it depends upon what a certain business might be looking for. For instance, an organisation can avoid closed DXP if it does not want to completely ditch different parts of its platform that are working well for it today. On the other hand, choosing open DXP can be fruitful as it lets a business maintain the part of its experience toolset that is working fine. An Open source DXP can lend flexibility to an organisation’s future. A digital business should still look at what it really wants based on all the different factors.

Based on organisation’s specific use cases, DXP has branched itself into three further categories:

CMS DXPs

For today’s creative agencies that require management tools and creative freedom than what a CMS offers, a CMS (Content Management System) DXP makes the cut by focusing more on the needs of the marketing department as well as the User experience (UX) of the platform. These are particularly sought-after if the business is B2C - where the sale cycle is short and the audience is large, as CMS-heritage DXPs have strong offerings for web-based analytics, user segmentations, advertising and campaigns. Learn more about choosing the right CMS and why Drupal can be the way to go.

Portal DXPs

On the other hand if your business is one of those where long-term customer relationships are valued even after the transaction has been made, a Portal DXP is better suited for the purpose. These trace their origins back to providing customer portals and help businesses understand the factors that lead to better customer loyalty and retention. These DXPs can be especially useful for gathering inputs before providing customer service and assistance in issue resolution. 

Commerce DXPs

Commerce DXPs are used for setting up online e-commerce platforms. In addition to product related content delivery and online shopping platform style web interfaces, Commerce DXPs also provide the capabilities related to inventory management, shopping cart, payment integration and checkouts.

DXP vs CMS vs WEM

Now that we're done with defining and analysing the different kinds of DXPs, let’s address the most common query when it comes to these platforms - how is a DXP different from a CMS or a WEM (Web Experience Management)? As the diagram below shows, these similar sounding terms have different use cases and are suited to companies with different goals and aspirations. A DXP has grown out of the limitations posed by a traditional CMS, with regard to creating and managing customer experiences - letting the user dive deeper into the concepts and applications of UX. Forrester's Mark Grannan defines the difference between CMS and DXP as 

“Web CMS is critical for developing, managing and optimizing web, mobile, and other content-based experiences. API-first architecture and cloud deployments are reshaping the packaging of digital capabilities into more granular tools that can be assembled on demand.”
column consisting of three subheadings each talking about DXP, CMS and WEM


A Web Experience Management platform was also born out of newer customer needs, introducing cross-channel functionality for content and data delivery. A WEM enables a brand's business units to share information digitally across channels, and gives the business greater visibility into the user behaviours and personas according to their activities on these channels. 

But the ultimate solution for delivering multi-channel marketing and better user experiences emerges in the form of a DXP, as it brings out the best in both worlds. 

When do you need a DXP?

But of course, not everyone would require a DXP as it completely depends on an organisation's present needs and future aspirations. One must look out to onboard a DXP if 

  • Building relationships with your audience throughout the transaction is one of the chief goals of your organisation.
  • Your future plans include organising omni-channel experiences that provide you the ability to reach out and deliver content to multiple devices and channels like mobile phones, tablets, email inboxes and social media.
  • In a bid to enhance the User Experience of your digital presence, your organisation's pipeline mentions several integrations of new data and platforms to optimise the content and the layouts for your end users. 
  • Further elaborating on the UX, content personalization and differentiated customer experiences are rated high on importance to retain customers and create value. When you work with a DXP, it does the job of collecting consumer data, defining user personas, and serving custom content to specific audiences, also alongside connecting this data with other channels like social media and mobile applications. Hence, a DXP integrates with other systems and departments to create highly personalized experiences for your audience.
  • A platform that does most of the analytical thinking by itself is also great for comprehensive strategizing and planning your roadmaps across channels all while having a single, sturdy management. Not just in the planning, a DXP is also great for retrospection and management of the entire campaign and for incorporating the inputs so received into the workflow.

Choosing the right DXP

While it may seem like a daunting task to choose the perfect digital experience  for your enterprise, the job becomes much easier when you go through the process step by step. Choosing the ideal DXP should consist of the following steps.

Map out your requirements

It is easy to get caught up in the flashy new features offered in the market, but you must keep in mind that your company has unique requirements and that the features and functionalities you might have on your wishlist shouldn't just be there because they're an upcoming trend or a buzzword. Anything that you plan to invest on should add value to the organisation. Set realistic goals and about your requirements in a phase by phase manner, ranging from high priority to low priority.

Assess your readiness for transformation

There is quite a lot of change that happens when fundamental decisions like onboarding a DXP are taken. It is now time to analyse whether your content delivery channels and your diverse audience would benefit from this change - and if they would, would they benefit enough for you to go through the ordeal? Is your audience receptive to change and welcomes new initiatives? Or is it more a laid back user base that wants to identify with traditional systems and methodologies? More importantly, do you have enough resources to absorb the changes that come about - i.e., are you ready both in spirit and capacity to make this change?

Onboard some experts

Bigger projects require a broader perspective, so do not take it upon yourself to analyse who the leading technology vendors are and which one to go for, as there is expert help available for that at any point. Keep an eye out for analysts like Gartner and Forrester that constantly release rankings including top players in digital experience, commerce, CMS and the likes. All of these should be considered while the research is undergoing for a new DXP.

Evaluating surrounding ecosystems

Don’t trace the journey without conducting thorough research about what is going on in the market and with your competitors. Note which organisations used which parts of different technologies and tools, and how well these have helped the enterprise to flourish in the duration. Also take the time to examine  the goals or features of other businesses that overlap with your organization's and how they have been catalysing their workflow with the use of newer tech. Methods that are already tried and tested will help you out a great deal as there is no better testimony than a practical  example.

Also ask your vendor for plenty of references for you to study during the research process to be absolutely sure before finalising a DXP.

Plan a roadmap

Lastly, don’t think only about the present but also the future. There should be a pipeline of tasks that are to be done with regard to the platform in the next few months. Team discussions regarding the execution and usage of the DXP should take place beforehand so that everything works at its optimum. 

Benefits of using a DXP

There's a reason why many big organisations seem to be gravitating towards DXPs to take care of their present and future roadmaps. This is because a DXP comes with some pretty solid advantages.

Integrated Controls

DXPs are best suited for multi-channel deliveries and expanding into the far reaches of the web all while keeping a single integrated control panel. A DXP is well equipped to create comprehensive strategies across different platforms all while keeping the operations seamless, and also enabling close collaboration among web page optimisation, content optimisation and also email campaigns. Not only this, you can also rely on the platform for analytics tracking and A/B testings.

graphics of a phone, community, store and a watch showing the central integration facilitated by a DXP


Flexibility

DXPs can be pretty dynamic and flexible in application and that is exactly what's needed in the fast evolving world of today. DXPs, owing to their open API (Application Programming Interface) first architecture, are flexible enough to integrate the latest technologies so that you can serve that to your customers as soon as possible. Thus, a DXP is both accommodative of changes in your plans as well as scope of the project, as scalability is one of its primal strengths.

Personalization

As DXPs are great with analysing, tracking, and everything else that constitutes user research before rolling out a product, they also are simultaneously great for creating personalized user experiences of these channels by taking into account the several inputs that they received over these touchpoints. If your business bases itself on creating unique experiences for your customers, a DXP is quite a godsend. 

Being future proof

Investing in a platform which is as moldable and customisable as a DXP also is a method of future proofing yourself against an impending technical debt. Apart from this, as organisations dive deeper into the user journeys, relationships that could sustain in the future are also nurtured as needs are understood as well as addressed in a better manner. The information that a DXP gathers for you can turn out to be invaluable in the time to come.

Exploring upcoming digital experience trends

DXP and AI

To study all the data flowing in from multiple sources, analyse it, and to bring forward better content and servicing after reviewing the inputs received and also to continuously maintain and improve the process, artificial intelligence is brought into the loop. The entire concept of a DXP is based on artificial intelligence - AI is interwoven intrinsically in DXP and has access to data from every tool and touchpoint. In turn, the DXP acts as the ultimate seat for the AI to understand and improve the experience from customer acquisition to loyalty.

Voice Interaction

'Smart speakers' constitute a space in the digital sphere that hasn't been mastered yet. But there is no denying that they have become an essential part in the digital experience journey of a customer, and brands that can offer these services seamlessly are sure to have competitive advantage over the others. More about conversational UI here.

Maintaining Privacy

Customer privacy is more important than ever. If you can give your customers the assurance that every data that is collected from them is used for a purpose that they know of, hence involving them into the brand operations, it adds great value to your overall relationship. It shows the end user that you have nothing to hide, that you are transparent, and more importantly, you can be trusted. 

The process matters

Consumers will care more about how you do things. Do you tap on the trends to deliver updated content to your user base? Or is your style more laid back and rigid? As business relationships get more intermingled consumers are going to care it's more than just the product that they're purchasing. They are also going to be  interested in your method of operations, your digital presence, your accessibility on the various channels you're present in, your problem solving techniques, etc. 

Digital will bridge the gap

Digital has been the saving grace during these stressed times, and will continue to be in the saviour even later on. Companies will rely on their digital platforms to access the far reaches of the globe to their scattered audiences. Even within the organisation, a business that is digitally integrated is, in a way, future proof, as it delivers greater visibility into the work of each department and hence better insights on the working of the entire organisation as a whole. This enables one to correct the mistakes faster and achieve greater efficiency faster.

It is inevitable that a business that is flexible, omnipresent, considerate and updated will win the competitive edge in the near future. Hence, it is recommended to start your digital transformation journey as early as possible!

May 25 2021
May 25

All open source thrives on collective inputs and collaboration, there is the need for a centralised channelizing force every now and then to bring out the best in the existing resources. For any organisation that indulges in open source, it is important to remain proactive and constantly reflect upon and retrospect the direction in which their open source investments are heading. 

In any project leadership provides the much-needed vision pathway and blueprint for progressing in a certain direction. Even when something is collaborative, there needs to be a supervisor's perspective to solve problems and meet goals efficiently. 

More often than not, companies have open-source programs with objectives in place that they aim to achieve through the program. Assigning a lead not only improves the overall efficiency of the project but also helps in a number of other ways.

Some of the reasons why organisations care about diving into open source are as follows -

blue background with black text talking about the various benefits of using open source programs


The Seven Laws of Leadership in open source

Leading an open source program varies greatly from the same role in other dimensions in the sense that it is not as straightforward and upfront. And a lot of times people might mistakenly assume that leadership is not required in such a project but they could not be more wrong. Something as vast, spontaneous and continuously evolving needs to be managed and utilised well at every point and in turn needs more supervision than regular platforms.

Let's move ahead and explore some mutually agreed and understood laws of open-source leadership that make a good leader in these platforms.

Competence

Open source leaders are very different from conventional bosses. It can be seen by the personality of Linus Torvalds, founder of Linux or Jim Whitehurst, CEO of Red Hat that their personalities spark liveliness and dialogue. They are highly approachable and remain open to the community base that they are a part of, and can be seen acknowledging and crediting their success to the community regularly. 

It can hence be deduced that rarely does a successful open source leader think just for himself, and it is always the values of togetherness and teamwork that take away the cake when it comes to allocating credit to the platform's success and growth. This is exactly the mentality that is required in an open source leader - somebody who drives their authority not from the designation that they hold but from the millions of people that toil everyday to keep the community thriving.

Being a teamplayer

Conventional leadership is largely surrounded by the aspects of authority charisma and holding onto the crown as long as possible. It is hierarchical and depends on the concept of formal leadership. 

On the contrary, an open-source leader isn't supposed to be perfect and utopian. He is more like the first among equals - he is as good as his team members and is not required to show his complete hands above the others in the team. He is supposed to be on the ground and lead the team by example. An open-source leader, hence, is not an unattainable figure, but he is just one commoner who has the ability to manage and improvise. 

Being spontaneous

For a platform that is as fast moving and evolutionary at every second, a laid-back leader just won't make the cut. You should be someone who is capable of taking spontaneous decisions as the leader here should be someone who can formulate and execute ideas quickly. Swift decision making is the key to succeeding in open source, and it must be the central idea of all plans of action. 

The open-source crowd is not patient enough for leaders who will slowly drop suggestions or complain about an issue or expect their contemporaries to resolve the problem at hand. Spontaneity and team spirit are integral to an open source leader and he is expected to pull up his socks and be the first one to start working.

Autonomy

In open source, autonomy replaces hegemony in the leadership role. The management does not exercise coercive control to get everything done, rather, all the tasks are worked upon and pulled together as a team. The job of the leader here is to lay down the framework of all the initiatives to be taken, within the community and establish related objectives to bring those initiatives into action.

This shows that authority and control are obsolete concepts when it comes to this dimension and creativity and autonomy are the desired qualities of an ideal open source leader instead. He is not only supposed to collaborate and lead but also to empower the team members by facilitating every tool and piece of knowledge that is needed to get the work done. 

Delegating it right

Leadership in open source focuses on the right delegation and decentralization of duties. As stated above, blending in well with the team and keeping everybody on the same same page is essential, hence each team member should be enabled to take the authority and ID fix any minor issues that arise from time to time and not reach out to the leader for every minor inconvenience. 

Never ignore the soft skills

Sure, getting the technicalities right is pretty important, but soft skills are the ones that pay off in the long run. More than anyone else, a leader requires a 'human touch' and needs to be empathetic and engaging with the team to keep each member's spirits high and productivity maximum. A leader should be able to perform, communicate explicitly, be very clear with the expectations along with being result oriented. Humility also accounts for a great soft skill and shines above everything else.

Say no to micromanaging

Needless to say, micromanaging can be detrimental to such a vast project as you might be biting off more than you can chew. It is physically impossible to manage everything that goes on in the ground in an open source platform, and one needs to realise that they cannot manage every project from tip to toe. A safer bet is to teach the skills required to your team members and delegate tasks to them regularly - along with trusting them with what they're doing.

Understanding the Leadership Role
 

five coloured circles stating the different qualites of an open source leader


Gaining leadership in an open source project can lead an enterprise to great commercial success. This is because

  • A lot of products depend on open source software technologies 
  • The path to Innovation unfolds much faster in open source
  • The software ecosystem is more or less dominated by open source.
  • Software can make or break your online business and is one of the biggest differentiating factors in present industries. Therefore, the best one matters now more than ever.

Now that we have covered the basic tenets of open source leadership, let's dive deeper into the model and understand the leadership role better. As widely recognised, this role is said to be the embodiment of an integration of these interrelated characteristics.

  • The first trait is to be awake about any intolerance or discrimination experienced by the team. Nothing kills team spirit quicker than bias. With such things to worry about, it would be a big hurdle for any person to look beyond being undervalued or excluded and perform to their full potential. The primary goal is to empower and motivate everybody and take care of all of their insecurities and weaknesses.
  • Branching out from the first characteristic is the second one - and it is trustworthiness. To act as the glue amidst the chaos, the first quality that you need to develop is being trustworthy. Honesty of the team members is extremely important to bring out the best in each resource and you need to give them an open slate to chalk out their aspirations, fears and problems. 
  • A trait exclusively important to open-source leadership is being agile and quick as the world would not wait for you to formulate an idea and implement it, and will move on at its own pace. If you are left behind there's nothing you could possibly do about it. 
  • Lastly, and most importantly, be accessible!  You do not want good ideas to be silenced or issues to not be brought to your notice until the last minute. An open-source leader must acknowledge that authority and responsibility go hand in hand and it is imperative for him to stay proactive and respond to each and every query and argument of his team.

This is how a leadership role in an open source project is outlined. After these essential requirements have been met, the next step would be to break the project down into consecutive steps and work on it one at a time.

Defining the project structure

Most open source projects follow the rule book in having a common repository that defines all the major principles and objectives of the project's governance model, structure, rules and processes. An open source project mein have any one of the three common governance structures - BDLF, meritocracy and liberal contribution.

Allocation of resources

Allocation of resources also includes assignment of roles to different team members. A member might be 

  • A contributor - someone who creates or follows up on an issue.
  • A committer - someone who has been given the access to write access to the repository.
  • A maintainer - someone who sets priorities and directions for a project or a special interest group. 

Mapping out the requirements

This is actually one of the most difficult parts of the process. The requirements in conventional projects are already defined by the company's authorities, but open source requirements come from users and contributors. Working in open source has to be very agile and swift due to this. Needless to say, the pipeline keeps changing and evolving by each passing day.

Defining coding standards

The team must have rules and standards related to both the overall process and coding explicitly mentioned in some documents and shared on a common platform that ensures easy day today communication. A set of directions on how to proceed with the code would avoid unnecessary conflicts and irregularities later on in the projects and save crucial time. 

Mentoring 

While everybody is expected to perform at their individual level, the leader is also expected to go the extra mile and establish a homogenous flow to help everyone on the team. Regular interactions and stand ups might help reinstating the common agendas. A simplistic pathway should be put in place for volunteers to start contributing to the project. Learn more about the perks of contributing to open source here.

How to make the most of open source?

Utilizing and making the most of an open source platform can become significantly easier when you have a strategy in place. 

  • Owing to the dynamic nature of open source goals should be set and reset on a regular basis. Once the agenda has been finalized, it needs to be reviewed annually or biannually for projects to sustain themselves and not go obsolete by the time you get them done. Therefore, even the long term plans in open source can only stretch up to a certain extent.
  • Needless to say, the planning needs to be proactive and there is absolutely no place for neglect in an open source platform specially from the leaders' end. Even when a project is complete it needs to be maintained in order to adapt to the present software trends for your targeted ecosystem.
  • The tech team should remain in sync with every other stakeholder so that the product that they are engineering is always close to the final idea in everyone's mind. To stay updated, after every milestone achieved, try to get appropriate feedback and incorporate it in the execution.

Lastly, one of the most important leadership roles is to foster a culture of psychological safety where the contributors feel free and excited about contributing to a project and not worried about the response that they will get. This is how Michael Cardy, Red Hat's Chief Technology Strategist puts it.

“The culture has to treat failure as an opportunity for learning, and failure is only bad when lessons are not sought and shared with the rest of the organization.”
May 18 2021
May 18

A computer is a marvellous creation, it can be used to build and execute any number of software and instructions that we may want. What is even more marvellous is that it understands exactly what we want it to do. And this extraordinary task is possible because we have programming languages that speak in computers. 

One of them is PHP or Hypertext Preprocessor. It is an open source programming language that runs on a web server, which has been popular throughout its life cycle being the go-to language for web development.

PHP with its server-side scripting together with HTML and its execution in the browser are immensely popular especially when creating dynamic websites is in question. Majority of Drupal sites are built on it, the entirety of Drupal is written in PHP, I think that should be proof of the language’s epic capabilities. 

A graph represents the market position of PHP.Source: W3Techs

The above image further clarifies the doubts about PHP’s capabilities and well, its popularity. 

There are numerous adjectives that I can use to describe PHP’s competencies, however, the one that is appropriate for how the language is going right now would be ‘behind schedule.’ And sadly this adjective isn’t for the language itself but for the websites and developers using it. The reason is the delay in its update. 

Today we’ll try to understand the language in regards to its versions and the capabilities that come with each of these versions and then we’ll get to the important question as to why PHP is not being updated and what you stand to lose, if you keep delaying. 

Let’s start by understanding PHP’s Life Cycle

Like everything else in this world, PHP also comes with an expiration date. Each of the PHP versions has a fixed life cycle, beyond which using it can be detrimental. Usually this life cycle is around three years, once those three years are completed the version becomes unsupported, you can still use it, at your discretion though.

When a PHP version is released, it is actively supported for the next two years. This active support entails the frequent fixing of bugs and security issues and their consequent patching. The third year, sometimes even fourth, will only entail releases pertaining to critical security issues. This is also the time when the next version becomes available. 

Once these three years have been completed for that particular version, it becomes unsupported. There won't be any fixes or patches, not even for security and using such a version would mean you are making yourself vulnerable.

As of now, 

Version 5.6;
Version 7.0;
Version 7.1;
Version 7.2;

Have reached their end of life, meaning they are no longer supported, yet many sites are still on them. So, which are the versions that are supported and should be ideally used? The answer is 7.3 and above. 

The image includes a table and a graph, both depicting the supported versions of PHP.Source: php.net

Any version that is still actively supported would be the only one ideal for your web projects. Talking about projects under the Drupal flagship, the same three supported versions are the only ones recommended by the CMS; proving that there is truth to what I am saying. This is exactly also why Drupal is able to avoid the misconception that it is difficult to use and has stayed relevant with changing times.

Versions of PHP supported by Drupal are listed in a table.Source: Drupal.org

Taking the supported PHP versions under the microscope

I have said a number of times that using a supported version is ideal, now let’s understand the why. Yes, they would get new updates, fixes and patches quite frequently, but that is not it; these versions are also perfect to use because they have features that are unfound in the previous versions. It’s like being on Android 9, you are missing out on a lot of features that Android 10 is powered with and there is no advantage in that. 

Let’s look at each of the supported PHP versions to understand this. 

Version 7.3 

The third version of PHP 7, version 7.3 was released in December, 2018 and is said to be faster than its predecessor. There weren’t changes in this version, but the improvements that were made proved quite helpful. 

  • The 7.3 came with more flexible heredoc and nowdoc syntaxes; 
  • The 7.3 came with multibyte string functions; 
  • And the 7.3 also had Argon2 password hash enhancements; 

All of these made this release better than the last.

Version 7.4 

Released almost an year after the launch 7.3, PHP 7.4 brought along significant in two key areas; 

  • Performance, by adding the preload functions to speed up loading significantly; 
  • And code readability, with features like typed properties and custom object serialisation. 

PHP 7.4 also marked the end of PHP 7 as this was the last version before 8 came along.

The Newest Kid on the Block: PHP Version 8 

PHP 8.0.0 is the latest version of the scripting language. Released on 26 November, 2020. This was a major release for PHP coming almost three years after version 7 was released. Although there are a lot of new features added to this new release, speed optimisation that was introduced in PHP 7 will continue improving on it. 

JIT Compiler, union types, type annotations and reflection signatures are some of the new features found in this release. Here is a video highlighting and explaining the prominent new additions in PHP 8.

[embedded content]

What will the update mean for you?

Up until now, you must have gotten a fair idea that updating PHP will be beneficial for your web project. Yes, sometimes updating can seem like a mistake, but that isn’t the case with PHP, not in the least. 

There are the additional features that were lacking in the preceding version of the update, you definitely benefit from that. Apart from that bonus, three discernible reasons to update PHP that should make the process all the more worthwhile.

Heightened Security 

The paramount benefit of always updating PHP is security. With every update, you’ll be more secure in the site because that running version is going to be fully supported and patched frequently for any and all security vulnerabilities. 

As we’ve already discussed, as versions come to their end of life, they do not get patches and fixes, making your project unprotected from threats. 

A graph illustrates the security vulnerabilities of PHP from 2000 to 2019.Source: CVE Details

Looking at this graph, it is clear that PHP experiences security vulnerabilities, with 2016 being the year marking the highest level at 106. 

A line graph depicts the types of security vulnerabilities in PHP.Source: CVE Details

Talking about vulnerabilities by type, denial of service, overflow and execute code are the ones topping the ranks. An update is what will prevent these security threats from being a threat and if you don’t update, you’ll have to be extra diligent about them. Is that something you want to do instead of working towards achieving your goals? I doubt it.

Perpetual Support

Then comes support, which becomes almost absent in older versions of PHP. Much like every other advancement we see, whenever a new one rolls by, interest in its older version starts diminishing and it is understandable. For PHP, this diminished interest means that the preceding versions would not get the kind of support from the community that it used to and its compatibility would lessen.

Think about it from the developers’ perspective, since they are the ones creating plugins and themes for every version. When they can devote their entire time and attention in creating something wonderful for a new version, do you think they’ll be interested in doing the same for something that is almost antiquated? I do not think so. 

There is also the concern of time, developers become occupied with the newer versions, so they do not get the time to oversee support for the older versions, making them somewhat incompatible for newer browsers and general development. 

So, when you keep updating PHP, you will continue to get support for it in the form of new plugins and themes and any issues you may face will be resolved quite quickly. You won’t ever see a 2000 comment thread for an issue in a new version, since there will be perpetual support to fix that.

Superior Performance

New technology will always outshine old in terms of performance, right? The same is true for PHP versions. When you update, security and support benefits would be there obviously, however, the more apparent benefit would be the one related to performance. You will be able to tell the difference almost immediately. 

Things that you had to work for diligently to achieve will come out of the box. From better latency rates to being able to handle more requests per second, everything would improve when you update.

Here are two images that show PHP Benchmarks for performance in version 5.6 and 8.0 and the improvements in performance are more than evident between the two versions.

The performance analysis of PHP 5.6 is shown.The performance analysis of PHP 8.0 is shown.Source: PHP Benchmarks

Then, why are the older versions still active?

When an update brings along such benefits, it should be a no brainer. Yet there are umpteen sites that are still on the older versions of PHP. 

The usage statistics of PHP versions are shown in a bar graph.Source: W3Techs

The fact that more than one-third of PHP sites are still on version is kind of sad and hard to digest even. I mean version 5.6 reached its end of life on 31 December 2018, almost two and a half years ago, yet it is still active without any support.

So, why is that? Why are these sites keeping themselves vulnerable when they can be secure? Let’s try to understand the reasoning. 

The obliviousness about the update 

The foremost reason for not updating is the obliviousness surrounding the update itself. The thing about web projects and websites in general is that, although they are built by developers, the people running them on the daily may not have knowledge about its technical sides. All they are concerned about is the fact that the site is running and functional and that it looks good. 

For these non-technical site owners, updating PHP isn’t something to be concerned about. Half the time they are oblivious about the fact and even if they do know it, they’d not pay much heed to it. Many a time, it is the developers and web hosts, who have to push the site owners for the update and they don’t always win that battle based on the W3Techs statistics.

The investment of time

If we talk about updating PHP to version 8.0.0, it is fairly easy to do so. However, that ease is contingent upon the code being updated. If the code is up-to-date, you’ll have an easy-breezy update. If not, you’ll be looking at a huge investment of time and resources. And that is the second reason why sites don’t update.

  • Developers who have older plugins and themes will have to put in a lot of time and effort to update their code because the newer version would not be compatible with an outdated code. 
  • Then comes the testing that needs to be done to ensure the compatibility of the update, which is quite extensible because there will be a great deal of plugins to test.

The apprehension surrounding the update’s effects

Lastly, it is the apprehension that comes with the thought of the update that makes site owners immensely hesitant about updating. 

What if the update breaks the site?
What if the update results in additional support tickets?
What if the update makes the site stop functioning altogether?

These what if pose a massive roadblock even before the road to update has begun. Fortunately, all of them are unwanted and misguided. 

Remember the previous reason, it talked about updating the code before updating to a newer version. If you update without making the code compatible your site will break, there isn’t a shadow of doubt about it. 

Apart from that the update won’t affect your site in a negative light. Upon updating PHP on a site built on a CMS like Drupal, you’ll instantly see an improvement in performance and that isn’t something to be apprehensive about, rather you should be looking forward to it. Learn more about how keeping the dependencies like PHP has helped Drupal 9, the best version of it so far, to make upgrade from previous version simpler.

How do you go about the update?

Now that we’ve discussed everything concerning the PHP update and have established that it is more than imperative to keep PHP updated, we have come to the final aspect of the process, which is how to update PHP.

The update is done in two parts, one is a prerequisite and the second is performing the actual update itself.

Checking PHP version compatibility

The first part of the PHP update is to check whether your site is even compatible with the version you are trying to update to, in regards to the themes and plugins, they should be updated to their latest version. This is also one of the reasons I mentioned in the previous section as to why sites don’t update PHP.

You would need your developers for this, since they’d be the ones who would add or fix support for the version to be updated. There is also the option of choosing alternate plugins, if that is what you prefer. 

Once your themes, plugins and current code is updated, you’ll be ready to perform the update. 

A little side note; You should remember though, that updating the staging site before updating the production site is the better way to go. This is because if you do encounter any mishaps during the update, you’ll be able to fix them on the staging site without any effect on the live site.

Choosing the suitable way to update 

The actual update can be done in three ways depending on the build of your site and the kind of tools you have access to.

Through the cPanel 

If you have access to a cPanel or your host provides access to the same, you can simply go to the control panel, log in and change the version of PHP to the one you want; it’s as simple as that.

Through your own server 

You can update PHP using the migration guide provided by php.net, that is if you are the administrator of your own server. This guide covers the migration procedures from version 5.5 to 8.0 and clarifies all the details related to the update from new features to backward incompatible changes and deprecated features.

Through a web host 

If the aforementioned ways don’t work for you, that is you don’t have access to the cPanel and you are also not the administrator of your site, then you can simply ask your web host to perform the update for you. 

Conclusion 

There comes a point in life when you have to say goodbye to what has been normal for you because something else has taken its place. And it’s almost never a bad thing. Has anyone ever felt sad after updating their iphone? I don’t think I know anybody who has, maybe a little upset about the hefty bill, but never about the product. 

The same is the story with PHP updates. It may seem like a daunting task to undertake, much like paying a thousand dollars for the iphone, but in the end, it’ll be you, who’ll be basking in the benefits of the update. Is that not something you’d want?

May 10 2021
May 10

Digital experiences have become an integral part of everyone’s life today. Be it the provider of the experience, being the businesses or the receiver of those experiences, which would be the users; both benefit a great deal from a sound and seamless digital experience. 

For the business to provide an impressive digital experience and the user to enjoy it, a DXP or a Digital Experience Platform is somewhat necessary. Through the software’s management of multiple channels, devices and every user touchpoint, it is able to provide personalised user experiences. Its forte is its ability to converge multiple technologies to provide the best possible experience to the user, making their journey a memorable one. With the use of the latest technology, the people building the experience are also pretty gleeful since they get to explore whatever is new.

So, if I had to define a DXP, I’d say it is a platform that is equipped to handle and deliver all the digital experiences of an organisation and perpetually work towards enhancing them. And if I had to mention DXP’s formal definition, I would quote Gartner

A DXP is an integrated set of core technologies that support the composition, management, delivery and optimization of contextualized digital experiences.

In this blog, we’ll be talking about these Digital Experience Platforms and all that they come equipped with, however, we’ll be focusing on a particular category, which is open source DXPs. Before I get into that it would be more appropriate to compare open source DXPs to their counterparts, which would be proprietary. Let’s get started.

Open Source DXP in Comparison with Proprietary DXP

There is a table that shows different aspects of digital experience.Source: Infosys

Based on the above image, you can clearly see that a DXP encompasses every aspect of the digital experience that an organisation may want to be taken care of. 

From user touchpoints to targeted campaigns; 
From content services to social services; 
From commerce to searches; 

DXPs are pretty versatile in their offerings. 

Now that we have a basic understanding of what a DXP is and what it does, let’s look at two of its major classifications, being open source and proprietary software. 

In essence, the difference between open and closed source software lies in the ownership. Open source by definition means a platform that is open to everyone, everyone can use it and anyone can contribute to it and there are no restrictions in the form of licencing fees or other charges. On the contrary, proprietary software, or DXP in our case, would be closed in plain terms. It’s a software that would be used by people who pay for it and the majority of the development comes through the proprietor himself.

Talking in terms of DXP, there are three main differences between an open source and a proprietary DXP apart from the licensing fees and charges. Let’s look at them. 

Parameter  Open Source DXP  Closed DXP  Licensing fees Not required, it is free to use Mandatory Choice  Abundance of choices; you can pick and choose the features you want to use The choices are limited; you have to use the DXP in areas that were already optimised Integrations  Integrates seamlessly with other software Integrations are minimal  Growth  Has a faster growth rate due to heightened flexibility  Fast, but not as fast as the open source


Open VS Closed Choice

The first major difference between these two categories is the level of choice they offer. If I talk about the open source DXP, the choices are plenty. You’d never be locked inside the software. You do not even have to use the entirety of the software, you can simply select the aspects which require improvements and leave the rest. There is also the option of customisation, you can build on top of the DXP you are using without anyone questioning you. You could use it for one of these or all of them.

Web content management; 
Web personalisation; 
Data and analytics; 
Marketing automation.

Now taking the closed DXP into consideration the choice is pretty limited. You choose a closed vendor and you are locked inside of their software. There isn’t much or even leeway to explore outside that locked space. You are all in. 

Open VS Closed Integrations 

Next difference is in regards to the integrations. An open source DXP can also be described as a combination of multiple products provided by multiple vendors. Using a DXP like Drupal, which is open source, you can integrate your digital experience with a platform like SalesForce with ease.

For the closed DXP, the story is a little different as the integrations are pretty limited as it is a one stop destination. You will find the majority of the services a DXP can provide, but they’ll be from that one vendor only.

A closed DXP is like one single brand, wherein you’ll find the products and services of that brand only, while the open source is like a supermarket, wherein you can find the products of almost all the major brands.

Open VS Closed Growth 

Finally, the open and closed DXP’s growth also paces at different rates. This is because of the kind of flexibility and contributions they have respectively. 

The open source DXP would be immensely flexible because of its open foundation. This means that it’ll always be open for adaptation as per the changing market requirements and its growth seamless and quick. Add to this the fact that there is an entire community to contribute and make necessary improvements into the software. 

In comparison, the closed DXPs also continually evolve. There are certainly improvements made to the software. However, because it's not open, its level of flexibility isn’t as high as its counterpart. Perhaps that is why the open source software DXP is making strides in the closed spaces as an alternative to them.

Why should you choose Open Source DXP?

So, you know that an open DXP is quite different from a closed one. Since you can only choose one of them for your organisation’s digital presence and consumer experience, you will have to pick one. Based on the previous section, I am sure you would have come closer to a decision. To make it even easier, let me tell you about all the benefits of an open source DXP.

Open Source is malleable to the future 

The only thing we can say for certain about the future is the fact that it is uncertain and that there is high plausibility of change. Future cannot be predicted, so we should not even try. However, what we can do is make ourselves malleable enough to adapt to whatever the future might hold. 

And that is what open source DXP entails with its API-first infrastructure that has the ability to integrate with the future. Of course, by future I mean the tools and frameworks that would reign in the future. Open DXP’s technology stack is indeed ready for the future because it is always ready to adapt. 

An open source DXP’s malleability also helps in improving consumer experience. This is because it makes it easy for businesses to create solutions in accordance with the changing consumer needs. The said solution would provide the most optimal results if it is created with speed and here the open architecture comes extremely handy.

Finally, with open source DXP you have the power to eliminate and replace certain parts of the platform that either do not align with your strategy or are hindering your growth. This makes it highly efficient in the worst of times. To know more, read about the impact of open source in Covid-19, how open source remains recession-free and why large enterprises are leaning towards open source.

Open source lets you innovate to your heart’s desire 

Collaboration; 
Partnership; 
Shared goals; 
United ambitions; 

All of these mean mutual success, all of these mean more power for better innovations and all of that is what open source stands for. Open source is where innovation thrives. Let’s understand the why. 

Have you heard of JAMstack? It stands for JavaScript, APIs and Markup. Back in 2018, it made quite a noise in the realm of marketing site theming. Ever since then it has become the go-to design stack for developers. This stack of modern technologies gives the developer the room to innovate and spurs them on constantly, the results enhanced developer velocity. It creates just the right environment with its new tools and quickness for more innovation. 

If I were to talk in plain terms, I'd say that because open source does not confine the developers with one vendor and only its resources, there is a lot of freedom to innovate. It creates an open culture that allows the people in it to build as much as they want individually and with partnerships through the open connections of open source.

Open source elevates consumer experiences 

Today consumers do not have just one single touchpoint with the business. They can connect to it through mobile applications, IoT, voice assistants and even chatbots. And the consumer expects context awareness in all of these. So, what is the solution?

With an open DXP, you can deliver content that is created by content authors without special emphasis on the channel it’ll be used on. This sounds bad, but it, in fact, is a good thing as it allows content creators and front-end developers to create pieces that are aligned with the target audience’s needs.

Once a piece of content is created, it can be repurposed for the platform and its context can also be altered and further delivered across various channels. This eases the complexity of working with an open framework and makes content quite composable. Moreover, the open APIs make the centralisation of content consistent throughout the channels and devices. 

The result is a holistic consumer experience that has the consumer in control of his interaction with you.

Open source empowers consumer data 

Every time a consumer interacts with you, he leaves some information behind. It’s like meeting someone in real life, with every encounter you will get to know the person more and not the other way around, you can’t be asking the person to introduce themselves every time you meet, that’ll be rude on so many levels. Yet this is what happens when your digital presence has consumer data that is scattered in various departments in data silos that are often inaccessible.

An open source DXP comes equipped with an open Customer Data Platform, which would help you capitalise on the consumer information you already have with you. Consumer data from e-commerce, from customer support systems and CRMs gets accumulated and organised at one place, so that you can actually utilise the information you have about your consumers. These consumer insights are immensely helpful in building forward and an open DXP helps in that. 

Open source has room for microservices 

Imagine a suite of lightweight mechanisms like an HTTP resource API that would be responsible for running many small services within an organisation as one single application. This is called a microservices architecture and it is provided by the open source DXP.

You might think what is the point? 

The points are three benefits you will get from this architecture. 

  1. You’ll get a better handle on your technology solutions; 
  2. You’ll be able to enhance your productivity because of that; 
  3. And you’ll also be able to achieve better scalability as the architecture will fit perfectly to your long term organisational goals. 

Open source caters to commerce needs 

For the gazillionth time, because an open source DXP is open, it can better cater to your commerce needs. Let’s understand this with a comparison to its closed counterpart. 

A closed DXP would have an already established, integrated and rigid commerce platform that you cannot mess with, while an open source DXP could integrate itself with any commerce platform that you want based on your needs. 

So, when the need to add a commerce capability to your digital platform arises, which it will, you would be glad to have chosen an open source DXP. This is because open source is never tightly coupled, so, you wouldn't have to compromise and adjust to the rigidness of a particular platform, rather you can stand your ground on your needs and capitalise on the platform that aligns with your needs.

Open source offers better security 

Security breaches and data leaks are far too common for anyone’s liking. And when you consider a software that is open to everyone, the threat of these security attacks should be all the more obvious, right? Wrong. 

Open source DXPs are far more secure than closed DXPs and the only reason for that is their openness. With an open DXP, you would always be aware of the vulnerabilities and can take action to improve on it, while a closed DXP, being a proprietary software would consider not telling about those vulnerabilities merely because it’d lose money. You decide, which is better?

Open source saves money 

When you choose an open source DXP, you choose to save money. This is because of two reasons. 

One is because it acts as central management tool that helps you manage multisite as well as give you flexibility, security, control and efficiency it needs. Once you get that, there would be minimal chances of duplicacy of resources, be it in IT or marketing. And that is going to be a worthy investment.

Secondly, an open source solution is a combination of microservices and SaaS, which essentially translates to you paying for only the services you choose and not a penny more.

How does Drupal fair as an Open DXP?

We know what a digital experience platform is, we also know what an open source digital experience platform is, now we’ll talk about a particular DXP that is open source and its Drupal. Having worked with Drupal myself, I can say for sure that it is up there in the list of most impressive DXPs and being a fan, I have to talk about it.

An open source platform that has been around for two decades and is still running strong, Drupal is meant to create the most amazing digital experiences and the support and contributions of its vast community makes that a possibility every day. 

If I had to compare Drupal to the benefits of open source DXP that we discussed in the previous section, I’d say that it fairs pretty well. Drupal as an open source DXP is always to work. Let’s see why. 

API-first build  

The best part about Drupal as an open DXP is its API-first architecture. This makes the creation of multi-channel experiences quite fulfilling. With an API-first approach, Drupal can decouple itself and provide room for new technologies like Vue, React and Angular. You will have the option of selecting the best-in-class products to integrate and build your digital infrastructure, adding the freedom of innovation for your developers. 

Extensible 

Drupal can very easily accommodate your needs and goals and that is what makes it extensible. You can have a small organisation or a global one, Drupal will be able to help you architect your digital presence the way you want, build it and expand it until you keep growing. 

Drupal’s modular architecture makes it all the more extensible. With upgrades being equivalent to installing a new module, building and improving a Drupal site’s digital experience is never going to be a mountainous task. 

Then there is the fact that Drupal, as an open source, allows customisation. You can very easily build your own DXP on top of Drupal. There are umpteen open source DXP vendors, who have actually done that. 

Community 

Drupal has a community of over a million and growing. With that many Drupalists in the world, you can be assured that there would be an answer to any Drupal conundrum you may be stuck in. Upon raising an issue, you can always expect the Drupal veterans and contributors to respond and help you out. The contributions from the Drupalist not only make Drupal a successful DXP, but also ensure that it is reliable. 

Here is a video that will help you understand the role of Drupal as an open source DXP. 

[embedded content]


Nobody can deny that Drupal is a powerful DXP, however, denying that it doesn’t have any flaw would be unfair too. 

  • Certain advanced features like creating customer profiles or building a neural network become a difficult task; 
  • A/B testing and introducing personalisation is also something Drupal isn’t renowned for; 
  • CDP, an important practical capability for a DXP is one that is missing from the DXP.

I wouldn’t say that these features make Drupal unworthy or hard to work with, not in the least. However, they are something that need to be mentioned. 

Conclusion 

Having a digital presence has become pivotal today. However, having a digital presence that does not leave its mark on your consumer is as good as not having one. A DXP is what will help you leave that mark and lure your target audience towards you. And if that DXP is open source that mark would be all the more deeper and you’ll be all the more delighted because of it and I am pretty sure you’d like that.

May 05 2021
May 05
“Your time is limited. So don’t waste it living someone else’s life.”
Steve Jobs

A personification of this quote is Vinit Kumar, Technical Lead at OpenSense Labs. He had started off as an aeronautical engineer, but life took several turns and he somehow ended up being a Drupal developer! Let’s skim through a story that talks about conventions, ups and downs, and most importantly, following your dreams.

Q : Hi Vinit! So let’s start with talking about your education. Why did you choose aeronautical engineering in the first place? 

A : I had been pursuing aeronautical engineering more for its professional aspect, and always had more interest in graphic designing and consequently, web development. While still in college, I took up a course in graphic designing and also took up some commissioned projects that were offered to me by the teacher himself. While working on these projects, soon I realized that web development and graphics go hand in hand, and started trying my hands on development as well.

Q : I see. Had you ever developed interest in programming beforehand or was it a spur of the moment decision to transform? 
A : It was a rather extended transformation process. Pritam has been my friend since we were in school, and he was the one who was more into web development. During the years I spent being an aeronautical engineer, the aeronautics sector was not looking good - a big airline like Kingfisher was on the verge of closing. It was rather chaotic! Pritam knew about my interest in graphics and web development, and insisted that I pursue that instead - as the web was only going to expand in the upcoming years and moreover, it was something that had spiked my interest since the very beginning. Pritam helped with the basics when I was still a fresher in the domain. Subsequently, I joined a company in Hyderabad as a developer, but left within a month because my skills weren’t competent enough to keep up with the profile. After that, I brushed up my knowledge a bit and joined another company where I worked the night shift for a year. By the end of the year, due to consistent hard work and toil, I made a rather smooth switch and felt that my life was finally getting in order.
 

four pictures place side by side comparing Vinit Kumar's journey from being an aeronautical engineer to a Drupal developer


Q : As you said, you left the first company that you had joined within a month as you lacked the skills to keep working. What made you pursue the field despite not finding success anytime sooner?
A : I think that the approach makes all the difference. I wasn’t bummed by the fact that I didn’t have the supposed skillset but rather took all that as a part of my learning curve. I appeared for numerous interviews and all the questions that I couldn’t answer, I would go home and prepare those. Hence, I accepted that I was still learning. The added bonus was that web development was something that I actually wanted to do - so work never felt like work. It felt like a yearlong training procedure.

Q : That is such a great perspective! While we’re still in the topic of transformation, was there a moment of instigation that prompted you to switch from aeronautical engineering to Drupal development? How easy/difficult was it to take the call?
A : Sometimes, an outsider’s perspective is required to make the picture clearer. While working in Bangalore in a job dealing in technical publication (publication of different kinds of user manuals for the maintenance of aircrafts), I occasionally used to skip going to work as an engineer to stay home and create websites. On one such event, one of my friends realised that I had been sitting creating the website since early morning when he was going to work - and was still on it by the time he returned in the evening. I still remember when he looked at me, a little astonished, and said that I should go on and pursue something that I really wanted to. It was a turning point in my life. I called Pritam that very day and left for Hyderabad - where I took up my first job as a developer.                                                                         

Q : So that is how it started! When I look back at your journey - that has eventually led you to becoming the tech lead, how has the experience with Drupal been so far?
A : It has been working pretty well for me. I still consider myself a student in the domain and focus on learning more than anything else. I have definitely grown a lot in the past 8 years and gathered knowledge in every step - and I want to keep it that way.

Q : Do you ever wonder how different life would have been had you remained an aeronautical engineer? 
A : Quite different. I don’t really have any regrets though, I followed my heart and landed in a decent place. I don’t think that any of the jobs I had taken up in aeronautical engineering really spoke to me as much as Drupal development has done so far. Not once in these years have I been prompted to go back to become an aeronautical engineer.

Q : Glad it worked out for you. Lastly, what would you tell someone who wants to make a career switch like you did?
A : I’ll tell them the same thing that my friend had told me - follow your heart and it will lead you to the right path.

While we may believe that following conventional guidelines is the ‘safer’ way to live life, Vinit also highlights that we can step onto different boats and examine the best one for ourselves while we are still young and agile. There’s a time suitable for experimenting as well - we just need to identify it!

For more such interviews on The Unlikely Drupalists series, read about a/an:

DJ who became a web developer

Electrical engineer who became a frontend developer

May 04 2021
May 04

The world we live in is pretty dynamic, it keeps evolving. Talking strictly in the technological sense, things that enjoy immense popularity today stand a chance of being considered obsolete tomorrow. Then there are the advancements in popular trends, which happen to be eminent today and tomorrow, but the eminence is enjoyed by its newer version.

This isn’t necessarily a bad thing, if you don’t consider the acclimation period, which can become tiring, but once that is out of the way, we are almost always thankful for the change. 

Take Drupal 8, for instance, upgrading from its previous version was a massive undertaking, and the fact that Drupal 8 was a whole other ball game than Drupal 7, made the acclimation process quite difficult to be honest. However, D8’s new features and capabilities made the difficulties worth it. Having worked on D8, I am speaking from personal experience. 

2021 saw the emergence of some of the most astounding technological advancements that deserve to be awed at. So, today we would be discussing some of these that come as popular trends in technology and change the way we do and see things. Being from the Drupal community, I would also be co-relating these advancements with Drupal and see how we can amalgamate the trend and the CMS and make it work for us, as Drupalists. Drupal, being an open source software, is extensive by nature and making it scope wider to align with the latest trends is a challenge that not many would be opposed to. So, let’s begin getting familiar with the trends and see if Drupal can be used to capitalise them. 

The Remote Environments’ Charm 

The first trend I will be talking about is one that has affected all of us. The phrase ‘remote working’ used to seem like a far-fetched idea in the pre-pandemic times, but now it has become a reality, a reality that would be here to stay for much longer than we anticipated.

Remote environments have become the trend in the tech industry and the fact that these are beneficial to everyone involved in working, the boss, the employee and the customer, is the reason for its longevity. Collaboration strategies massively change in remote environments and work pretty well for the organisation as it improves productivity.

Let’s start with the bosses of the tech industry, the first hard hitting fact of the pandemic for this sector was the realisation of the inadequacies of its digital infrastructure. The initial phase of remote working saw the employers rushing to provide even the most basic of infrastructural needs. The digital cracks that were hidden in the past became quite blatant in the pandemic. From dealing with heightened consumer traffic online through scaling and building resilience to adding features and getting them into production, every business aspect has been made possible through remote environments. 

Employees are happy that they are able to avoid the hour-long commute, as many as 70% will continue to work remotely on a permanent basis.

As for the clients, they are able to reap the benefits of the global technological network from their homes. The barriers for digitally gaining access to industry experts are no longer visible and the customers are capitalising on that. Getting an expert on a virtual call is so much more convenient for both parties than a physical meeting, the chances of which would have been slim, regardless of the pandemic.

Then there are the virtual tech conferences that are a win for everyone, the consumers, the employees and the bosses. Talking from personal experience, I was pretty upset when I couldn’t go to the DrupalCon Amsterdam 2019. So, when the first ever virtual DrupalCon was announced in July 2020, in the midst of the pandemic, I was beyond thrilled, because I was able to take part in it from my home. 

Of course, there are also the environmental and social benefits of remote working. Less carbon emissions, more renewable resources, less traffic and consequently less number of road accidents, all say that remote environments’ charm cannot be taken lightly.

In MIT Professor Tom Malone’s words, 

The current crisis has accelerated us forwards a decade in terms of acceptance of remote working, and there is no going back.

What’s Next in Cloud?

Cloud isn’t a new trend in the market. AWS, Azure, AliCloud and GCP have been the flag bearers in this domain, making the transition to cloud quite seamless. Servers, storage, databases, networking, software, analytics and intelligence, everything is provided for on the cloud. With a lion’s share of organisations using cloud based services, its eminence is staring at us glaringly. 

There are two trends in the cloud domain that deserve attention. 

Infrastructure-as-code 

To define infrastructure-as-code simply would come out as the automation of infrastructure and the consequent management of the said automation. In a broader sense, it would be defined as the practice of configuring and managing infrastructure such as networks or machine readable files. 

Through this concept, developers are able to supply IT environments with multiple lines of code and also gain the ability to deploy in minutes, rather than the ages it used to take manually. 

With recent improvements in IaC, it is more likely to deliver better outcomes as its ecosystem is growing. However, being a relatively new technique, it has certain disadvantages including inconsistencies in its tooling along with paradoxical approaches. New ideologies are still surfacing around it, infrastructure as software by Pulumi or infrastructure as data by Hightower are two of them. The way IaC will come out in the future is highly anticipated. 

Pipeline-as-code

Coming to pipeline-as-code, which essentially means defining the deployment pipeline through code, rather than the configuration of a running CI/CD tool. With organisations moving towards automation in all across their environments, especially the development infrastructure, pipeline-as-code would become a need. 

LambdaCD, Drone, GoCD and Concourse act as resources to make pipeline-as-code work for you. 

I’ll culminate this trend with Drupal. In DrupalCon Vienna 2017, a session took place that talked about using Drupal to capitalise on infrastructure as code as well as pipeline as code. In a session during the event, the implementation of Continuous Delivery pipelines in immutable infrastructure was discussed. DevOps and general tools like Docker, Packer, Terraform and Ansible amongst others can make that possible. And all of this can be achieved by extending Drupal. You will find a lot of interesting details in this video.

[embedded content]


The Realisation of Data and Analytics

Data has become one of the most important commodities for businesses and the analytics to understand and generate lucrative insights from that data is even more important. 

When we consider data and analytics, predictive analytics is often an integral part of it. Building websites that are able to capitalise the notion and create dynamic content which operates on the user's browsing history and site relative behaviour is garnering a lot of interest. The thing is building such a site requires a host of software to work together. R, Google Analytics along with Drupal can make that happen. For ‘the how,’ you would have to watch this video.

[embedded content]


With a majority of the CIOs believing that data and analytics will start shaping their business in the future, it won’t be wrong to believe that many trends of today are also in line with this concept. Big Data and AI have become crucial for sectors like finance, wherein the assessment of potential loans and investment is done through the analytics. It is suffice to say that today, businesses, from private to government, are becoming more data-driven by the day. To make data safer, data residency, privacy and its usage are accounting for a regulatory environment that is both dynamic and complex in its mandates, making organisations steer in the right direction. 

Associated with data and analytics are concepts of surveillance capitalism and surveillance state, which use surveillance and manipulation to drive power and profits. With COVID-19, such surveillance technologies have been adopted by many countries including China and Israel. Once the pandemic is clear, there is a high chance that these emergency measures will remain. Learn more on how better data strategies can help capitalise on consumer behaviour.

The Modern and Updated Core 

At the heart of a consistent output of every business, you’d find its core processes. So, saying that they are important would be understating them. Having core processes that fairly rudimentary is not going to be enough in 2021. 

With a heightened level of digital transformation, more expectations from our users and an increased use of data-intensive algorithms being implemented in the core systems everywhere, be it the front, middle or backend, there is progression towards uplifting the core from being basic. 

Core modernisation is quite discernible as a trend in 2021, and the development and delivery of the advanced ERPs and legacy programs is its proof. To further substantiate it, think of the kind of interactions the consumers want, instantaneous and tailored would be the words used to describe them. That is why core modernisation has become a need, not only for consumer relationships, but also for digital finance and real-time supply chains. Refreshing and reengineering ERP and legacy systems are the first step towards achieving this. Doing this would allow you to get to new levels of agility, automation, scalability and security.  

The Rise of Digital Reality Technologies

Digital technologies are becoming more real with the passing time. AR/VR, voice interfaces, speech recognition, ambient computing, 360° video along with immersive technologies have enabled businesses to provide a more real user experience. 

Terms like natural, intuitive and imperceptible are used to describe these technologies and their consequent engagement with the users.

Being able to experience a situation without actually being in that situation has become possible through virtual reality. The Massachusetts State University’s VR tour is one example of virtual reality and Drupal combo. A react front-end, Drupal backend and JSON API made that possible. Look for yourself.

[embedded content]


The same can be done for your employees and workers, wherein AR and Drupal can provide the workers a 3D view of the procedure, leading to an elevated level of productivity. Imagine a shopping application that becomes your assistant inside the store, from telling the route to reaching the products you want to scanning them and telling you the price, that’s augmented reality in its prime. With Drupal 8, building that application becomes a possibility.

[embedded content]


The reality of digital experience in 2021 is deepening with emotional connections with consumers and employees alike. This brings to the next  trend, which is the human-factor of these experiences achieved through AI.

The Humanness of Artificial Intelligence

The term artificial intelligence is not something that many of us haven’t heard or even experienced ourselves. It has been a concept that has been around for a while and we have seen its marvels and have been impressed by them. 

In the context of Drupal, the digital sphere has numerous plausibilities with regards to Artificial Intelligence.

[embedded content]


And there is more; 

But what’s more? These aspects, although impressive, don't excite us or our consumers anymore. To bring back the excitement, the concept of driving human emotions, feelings and moods into AI has become a trend. 

This AI approach emphasises on designing for humans, meaning the focus would be one human and emotion-led experiences, which would then be curated through AI technologies; a total 180 from the traditional designs. Human emotions like empathy, trust and feeling complex emotions would be the star of human experiences. 

For this, 

  • Neuroscientific research would be conducted, including EEG, eye tracking, facial coding and implicit association testing amongst others.
  • Human centred design would be implemented, which would focus on the human, his beliefs, values, feelings and ambitions along with ethnographic research and neuroscience to understand the human’s needs and wants on a deeper level.
  • Cognitive and affective technologies would come to play, to stress ethical considerations of the design and align it with the organisation’s values.

Vision systems, voice recognition, natural language generation, natural language processing, voice stress analysis and sentiment analysis are some of the AI technologies being used to deliver human experiences. With these at work, a phone call to the automated-caller would only placate the consumer/employee and not agitate him/her further. 

The Next Gen of User Experience

When a user interacts with us, there are certain actions that make it possible. Clicking, pointing, swiping and scrolling are some of them. As you may have experienced yourself, these mediums of interactions are evolving. A user can experience what you want him to without these actions, speaking and gesturing are what I am referring to. And with advancements, thinking would become a part of it too. This technology is referred to as ambient user experience. 

It is when technology is used in accordance with consumer data to provide a seamless interaction for the user, which may not be dependent on human touch. 

With new and improved devices being launched every second, the user has become somewhat dependent on them. This dependence would only grow with time and devices would have to provide more. 

  • The future would look something like this; 
  • More prominence would be given to technology, all the while making devices smaller, yet more powerful. 
  • Proactiveness would signify all consumer interactions. 
  • Neurofeedback technology would become ubiquitous, making direct brain and neural interactions an everyday occurrence.
  • Devices in general would be more connected and context-aware at home, office and everywhere else we go.

The Transactional Blockchain 

In 2021, blockchains and their use is going to gain traction. The reason being the numerous benefits these digital ledgers come with.

Improved transparency; 
Better security; 
Accurate traceability; 
Reduced costs;
And enhanced speed being just a few of them.

Blockchain initiatives are advancing in every sector of the business world. It is not just limited to financial services and fintech companies anymore, rather from government to life sciences and healthcare, from technology to media and telecommunications, every major sector is trying to lead in blockchain development. 

Blockchain are usually fully decentralised p2p architectures, however, there is another architecture that is being explored. A semi-decentralised architecture, with the same benefits of trusted transactions can be built. Here Drupal can provide assistance, its User Accounts can be used for that.

Talking further about Drupal, its Ethereum Blockchain Module that integrates with Ethereum, an open source blockchain platform programmable through smart contracts, has made the CMS leverage this technology. Watch this video to get more insights on both the Drupal aspects in Blockchain technology.

[embedded content]


The Method of Agile and DevOps

The way businesses operate is also changing and 2021 is bringing with it the convergence of technology and business strategies. This has brought on the trend of development methodologies like Agile and DevOps. 

Today, providing operational excellence has become equivalent to driving value creation. Businesses are doing one to achieve the other. There is a tangible shift in priorities from delivering projects to the results that project would bring. Hence, the adoption of methods like Agile and DevOps has become pivotal.

Version control, automation and testing tools, backup and disaster recovery along with sound security practises are just a few of them. All of these make the management of servers and other infrastructure pretty convenient as part of an organisations daily operations.

The best part about these DevOps techniques is that they can be used with other web applications and Drupal is one of them. If you are looking to widen your knowledge span of DevOps and its use alongside Drupal, this video would be the one to watch.

[embedded content]


The Physics of Quantum

Quantum is not just a physics concept anymore, it is being used everywhere or more like quantum computing is being leveraged in every corner of the business world. 

Be it producing breakthroughs in science; 
Be it implementing machine learning to get to illnesses sooner; 
Be it creating devices and structure that are far more efficient than in the past; 
Be it promoting financial strategies that will be helpful until a person retires; 
Or be it generating algorithms that would enable the resources to at our disposal quickly; 

Quantum computing is becoming omnipresent and its ability to process information and execute computations that are not only unhackable, but also have the ability to concentrate tech is probably the reason for it being in vogue.

With quantum computing, there won’t be any technical constraints that often hold back both data and material scientists. Unlike the traditional computing’s use of 0s and 1s, quantum computing relies on its own quantum bits to propel change through manipulation of single particles, which would have the potential of solving highly complex problems. 

The Accessible Version of Programming 

Let’s look at numbers, there would be billions of people using the web and all of its offerings and by offerings I mean the numerous websites and applications we, as users, use. Now, what do you think would be the number of expert developers and programmers making these experiences for the user? That number would be much-much lower than users. 

The talent pool required to build programs is scarce to be honest. If we were to be dependent on it to create everything we have on the web, we might not actually have it. So, how come we do? The answer lies in accessible programming. 

If you have heard of spreadsheets and low-code platforms, you will have a fair idea of what I am going to say. These are means for novice programmers or even non-programmers to create, store and manipulate data without the need for a long development process involving the scarce talent pool I just mentioned. The pre-built components and configurations help in future accelerating the development process without the need of coding. 

You might think that this is a great new trend, empowering non-programmers to tap into the programming world and create something on their own, and it truly is; however, I wouldn’t say that it is a new trend. 

  • Back in the 60s, when COBOL was created as a programming language, it was made to resemble the english so that the non-programmers could work with it. 
  • Then there is Drupal with its D7AX, which is a community of sorts, wherein developers pledge to create modules that adhere to accessibility standards and by simply installing them, you can create a truly accessible web experience. Learn more on Drupal’s web accessibility provisions here.

Although these two examples are fairly different in regards to accessibility, they do promote it in their own way, making the work of programmers and developers easy. 

With increasing awareness about this, this trend of making development accessible is sure going to pick up pace in 2021. 

The Reign of Programming Languages

Programming languages are the sole connection between the computers and the programmers, making both understand each other. To make that understanding as seamless as possible, there are tons of programming languages available, some more advanced than others and some more convenient than others. There are the ones that we, as developers and programmers, use everyday and then there are the ones we wish to use. We’ll talk about both. 

A raph shows the list of languages that are the most loved by programmers; Rust tops the list, making it one of the popular macro trends.Source: Stack Overflow

At the top of the most loved languages since the past half decade is Rust and with good reason. It is a language that delivers an impressive performance and is memory safe along with that its robust expressiveness also works in its favour. The fact that it is being used for big data and machine learning further adds to its lovable attributes. 

Talking about the language that the programmers covet would be Python, followed by JavaScript and Go. While Rust lands at number 4 in this category, it does show that the loved language is garnering more and more interest each year. 

A graph shows a list of languages based on their desirability for the programmers.Source: Stack Overflow

The Pivot Towards Visualisation Tools

It’s safe to say that a good picture can speak with more clarity than words ever could. Perhaps that is why visualisation tools, that equip the developers with the ability to create good images, are becoming prominent. These images are concentrated in every realm of web building from architecture to code complexity and up to system performance, visualising data and making your work easy. 

Frameworks like Tableau, IBM Cognos Analytics and Microsoft Power BI are the front-runners in this domain, becoming feature packed data studios in themselves. However, this year there has been an emergence of up-and-coming visualisation tools that have proven to be as good as the rest. Dash, Streamlit, Sisense, Kiali and Infogram are some of them.

From providing custom reports and dashboards for machine learning apps to observation tools and capturing distributed traces and metrics, these visualisation tools will remain in vogue because they take data and make it seem simple enough to explore your own health and structure as well as provide flexibility, customisation, version control on top of automated deployment.

The Browsers Going On to Full-Blown Applications?

A browser can do a number of things. If we compare an app to its browser site, you’d find a lot of similarities. Chrome and the Google app have that. At my work, I have Google Docs, Gmail, Slack and Zoho all working throughout the day on Google Chrome with Zoom calls popping in a couple of times, so, yes the browser can achieve some semblance of the functionality an app can achieve. But was it meant to be? Was a browser supposed to become an equivalent of an app? 

There isn’t an accurate answer to this question. Maybe it was the addition of HTML 2.0 and instigated the browser war between Microsoft and Netscape or maybe it was just coincidence. Nonetheless, nobody can deny that the browser has become a more complex and versatile platform with an ecosystem of its own. With polyfills and a JavaScript ecosystem make it both easy and complex for the developers to navigate through the browsers. 

Yes, browsers have transcended the expectations their users once had of them, but they still have a certain way to become a full-blown application. Take automated testing for instance, the tools browsers have for that are as good as ancient in comparison to the applications, which have the same as a first-grade objective. 

Despite this fact browsers are and will continue to evolve, this is true because browsers as code platforms are gaining traction and the tech community is making strides towards improving the overall browser experience. And to think all of this started with the addition of the ‘submit forms’ features, kind of surreal, isn’t it?

Conclusion 

And there you have it, all the popular technology trends that 2021 has to offer us. Many of them are not new of us in the tech industry, but the advancements being made in them called for their mention. Be it cloud technologies or the visualisation tools or even the ambient experience, every macro trend in 2021 is unique in itself and its outcome and that is what I think will make this year unique too.

As for Drupal, it is an old CMS, yet at 20, it’s still going strong. The most discernible reason for that is its versatility. Drupal has many out-of-the-box features that make it great, however, it hardly had any that I mentioned above. Despite that fact, it is able to provide its users the benefits of using these macro trends because it is extensible. Drupal can be used and integrated with the technologies that you want it to work with and that makes the CMS advance right along with the changing macro trends each year. 

In the end, I hope this article is as enlightening for you as it was for me. Good luck following trends and making new ones! 

Apr 23 2021
Apr 23

Have you ever wanted something, merely for the reason that it was in trend? And because it was in trend and everybody seemed to have it, you had to follow the trend? If you ask me, I would have to answer yes to this question. I have done things and bought things, just because everybody else was doing and buying them and not because I actually had a need for them. 

Now, let’s take this situation from our everyday life to the world of web development, do you think it’ll be applicable there? It would and I’ll tell you why. 

When a web project is underway, there are tens, if not hundreds of scenarios, that can turn out to be the outcome. It is up to the project managers to steer the project into the direction that is the most suitable for the goal that was decided in the planning stage. However, there are times when the project goes adrift.

How can that happen?

People, when developing a project, often aim to make it the best. Nobody aims for a substandard result. So, in the chase to become the best, they try to pack the project with as many features as possible and lose sight of the initial target. 

The client has asked for it, add that feature; 
A stakeholder vehemently disagrees with a valuable feature, leave it; 
The competition had added a specific feature, we have to add that too; 

Decisions like these are a major reason as to why projects do not achieve what they intended to. It is also why project managers have to take on the burden of choosing what to incorporate in a project and what to leave behind for now or for good. 

This practise of choosing the appropriate roadmap for a product and acting upon it throughout the development phase with the help of a well-defined strategy is often referred to as feature prioritisation. It essentially draws out the order of features that would find their way into the project and the time as to when they would. There is a lot that goes behind feature prioritisation and market research is the beginning of roadmap development. 

Upon asking a group of project managers about the biggest challenges pertinent to their workload, here is what they had to say. 

A survey is displaying the results of the challenges faced by project managers.Source: Mind The Product 

Feature prioritisation is by far one of the most challenging aspects of a project manager’s job profile. Today, we will find out why that is the case by understanding how this concept usually works, what are the flaws that accompany it and also the suitable strategies that work in the favour of feature prioritisation in project management. So, let’s begin.

The Everyday Feature Prioritising Process 

Feature prioritisation is a process that can be a tad strenuous to achieve. A major factor as to why I used that adjective is because it is a process involving people, their ideas and their feelings attached to those ideas. Building a web project requires work, but involving people and opinions and trying to reach a consensus for each development in the project would require work and give you a headache. Ask any project manager, an aspirin would be a common dietary supplement that comes with the job. It is, after all, a job where emotions perpetually run high. 

Let’s have a look at how feature prioritisation is done on an everyday basis. 

Focusing on the bigger goal 

Before the PM gathers evidence to back a feature and have all of the lengthy discussions based on the evidence trying to convince every person the team that it would work and is a must have, the PM has to make everybody see the bigger picture and focus on just that. 

The development team is going to be diverse, there are going to be people who are pros at what they do and these people are going to want to have their way because they think they know best. And maybe they, but being expert in one area does not give them a say in deciding what is right for the project, wherein several other aspects also play. 

Therefore, the understanding of the end goal by every person on the development team is crucial, if a sense of consensus has to be achieved. Of course, there aren’t always going to be unanimous decisions, and when that happens, team members shouldn’t resent the decision, they should be able to comprehend the reasoning behind it by focusing on the bigger goal. 

Prototyping for evidence 

Now, comes the part of accumulating evidence in support of a feature that should be implemented. And prototyping is the means to go here. 

For instance, you have a theory that you know is going to work in favour of the end goal. However, there is some apprehension about it. What do you do then? You prototype. You will try to develop a testable hypothesis, run it, get the results through the proper execution of the testing cycles and get your proof. 

This proof would help the team alleviate their doubts about an approach, even if it is you. The same can have negative results, meaning the test outcome could be unfavourable. In that case too, you would have the evidence to not seek a particular line of action.

Valuing the hierarchy or not?

When prioritising features, you will have a clear roadmap, you will most likely have a semblance of understanding as to what you want and what you don’t. However, all of that can go in vain, when a high level idea pops into your planned course of action. 

Denying an executive his request can be a problem for many. The perfectly curated project plan can land from a high chance of success to high chance of failure because a stakeholder decided to imbalance the project features with his request. 

Remember the prototyping we discussed in the previous point, put that to practise and save your project from being jeopardised. And that is how you must value hierarchy.

Seeing the future through the present

At the end of the day, feature prioritisation and even the entire development process is pursued for a goal that should be fulfilled in the future. And it would only be accomplished, if you put in the efforts today. 

Seeing the future means that you know how the dots will connect to make a perfectly straight line. This is done by thinking practically about the path to take and filtering out the meaningful from the meaningless.

You, as a Project Manager, have to make your team understand the reasonings of the present for the build that would get implemented in the future, If people know what they are doing today is going to serve a great or even a small purpose, like providing online education to the lower income households, they would most definitely put their best foot forwards; making feature prioritisation less of headache for the PM.

So, how would you define feature prioritisation? 

According to one of our Project Managers, Abhijeet Sinha, feature prioritisation cannot be put into a mould to have a rigid definition that would stick to every scenario. He considers the process to be purely contextual and thus, its meaning and implementation becomes quite dynamic. The only thing that persists in feature prioritisation is balance, a balance between the needs of the stakeholders and the feasibility of those needs. You can’t deliver the moon and stars on every occasion, the sky would lose its brilliance then. And I am 100% in accordance with him.

The only thing that persists in feature prioritisation is balance, a balance between the needs of the stakeholders and the feasibility of those needs.

During my discussion with Abhijeet, we talked about one particular project, wherein prioritisation was more difficult than others because priorities and feasibilities were clashing at massive proportions. 

This happened in the Thinkin Blue revamp project.

Thinkin Blue is one of OSL’s most prominent project; it involved the progressive revamp of its site. The client wanted the existing theme of the site to remain the same, the revamp would involve a change in the templates, all of this seemed feasible. The problem came in the homepage, wherein two themes had to be involved, the existing one along with the new one, which was essential for the revamp to look like a revamp. 

However, the developers were apprehensive about it, because building a homepage on two themes was going to be a massive challenge, and complicated would not even begin to describe it. 

The client wanted one thing and the developers thought it was too complicated, the project was in a deadlock. Abhijeet, being the PM, tried to reason with both the parties and in the end, the developers compromised and the home page was built on two themes. 

The same happened for the headers, the client wanted global headers, while the developers didn’t think that was the correct way to go for the home page because of the new theme. One of them had to give some leeway to Abhijeet to make the project roll forward and this time it was the client. 

Do you see what Abhijeet did? He didn’t let the stakeholders reign everywhere and neither did he allow the developers to issue all the commandments. He always listened to both sides, he thought rationally about the practicalities and wherever he thought he could push, he did. When he had to accept the client’s needs over the developers, he did and vice-versa. There was always a balance. And that is how projects succeed, Thinking Blue is a testament to that. Being stuck in a deadlock would only cost you money, time and efforts, and if compromising can avoid that, then you, as project managers, should start working on it.

So, What Should Be the Hard Hitting Prioritisation Questions To Ask?

In the previous section, we talked about feature prioritisation and how it usually goes around. The involvement of ideas, emotions and hierarchy is inevitable. Regardless you have to persist to get to the suitable features for your project without going on a crazy rampage of unwanted attributes that you will most definitely regret later. 

Here are some questions that will help you to avoid going astray.

Think about the users

Feature prioritisation starts with the users, it is them for them all of the efforts are being made. Therefore you must ask yourself; 

How many users would the proposed feature impact?
How many users would be able to use the feature without finding it complex or confusing?
How many times will the user be using that particular feature in a day?
How many users would feel as if they are empowered by the feature, would its value resonate with the users?

The higher the answers to these questions, the better the feature would turn out to be. For instance, adding various accessibility features that aid the use of a screen reader on your web project would benefit the visually impaired a great deal. With as many as 285 million users being visually, I’d say the odds of such a feature passing prioritisation are quite high.

Think about growth 

After the users comes the growth potential. Growth is a pretty broad term. It could mean bringing in new customers through an invite feature and it could also mean eliminating a feature that acted as a deterrent in luring the competitor’s market. You have to be familiar with all of your feature’s growth aspects and then ask yourself; 

Would the feature aid in your growth?

Think about efforts 

Building something that solves a problem is indeed going to require some effort from your effort. So, to ensure that your efforts get their rewards, ask yourself these three questions.

Does the feature require to be developed from scratch or does it just need some fine-tuning to perform better?
Does the feature require a lot of resources for its implementation, if so do you have a plan for delivering those resources?
Does the feature raise the level of building and using complexity for the developers and the end users and will it be worth it?

Then, think about yourself 

After all of that, you think about yourself, your goodwill and your market position. The kind of features you provide in a product speak to the kind of values you have as a brand. A brand prioritising accessibility would resonate as a brand aiming for social inclusion and that would be wordlessly spoken through the features it pumps into its products. And I do not have to tell what the value of a positive brand image is. 

So ask yourself, how well is the feature suited to your brand’s vision and its market position?

The Flawed Kind of Feature Prioritisation 

Now that we have a fair understanding of the do’s of feature prioritisation, it’s only fair to peruse the don’ts as well. These certain things and aspects of selection that may seem totally fair to you, but in reality can hamper the entire process; so, you really have to be mindful of them.

Prioritising one opinion over getting diversified notions 

One consumer feedback, one analyst opinion, one ROI report on that one feature; what do all of these have in common, the adjective one. They are proposed by an isolated person or report, and because of that, you cannot pay too much heed to them. It’s like not voicing your opinion because one person told you to shut up. 

You have to look at diversified notions. 

  • If a number of consumers are dissatisfied with a particular feature, then consider fixing it. 
  • If an analyst is able to back his claim with up-to-date data and not antiquated reports, then consider implementing his opinions. 
  • If the company ROI and consumer value is on the table along with the ROI of the feature in focus, only then consider any course of action.

Otherwise, you’ll end up wasting valuable time, efforts and resources and I’m pretty sure doing that has been in your don'ts list since such a list was conceptualised.

Prioritising gut over rationale 

There are features that we love and there are features that are necessary. Both of them could be the same and benefit the brand and the consumers alive, however, there is also a chance that they might not. 

If you or let’s say your boss thinks that a particular feature would add immense value to the project because she loves it and her gut tells her that this is what the project has been lacking, you can’t listen to that. She could be right, but following the gut is a big no-no in feature prioritisation. 

There has to be a proper rationale behind every selection, every addition and every decision made. 

You also need to know that you cannot always ensure that everybody on the team is making a rational decision, cognitive biases are a real thing and you can try to negate them, but being 100% free of them in the selection process is not a guarantee.

Prioritising an interpretable measurement system over a solid one 

In a group with a divided opinion, how do you come to consensus? The answer is through voting. And that is an important part of the selection process in feature prioritisation. These votes become the unit of measurement, based upon which a feature is selected or discarded. So, it has to be a solid system, right?

Yes, it should be full-proof without a shadow of doubt, however, it may not be and that happens when the units of measurement are open to interpretation. 

When the value of business is given a two star rating, can you be absolutely sure of what those two stars signify? 

Does that rating denote a sub-standard value? 
How does it translate to business profit? 
How do you reach five stars? 

For one person, the value may be clear, but for another it may be muddy; the reason being the difference between people’s perception and there are the cultural differences that also come to play while interpreting. 

Prioritising every vote at the same level 

Continuing on the voting discussion, it is often said that every vote is valued at the same. However, if the person voting is clueless about the feature he is voting on, should his vote have the same as that of a specialist in that area? Think about that for a minute.

Every team has a diversified skill set based on its members. There would be people with technical backgrounds like the developers and there would be people with a not-so-technical background like the marketers. Now you tell me, should a marketer be given the same voting rights as the developer, when the vote is about a technical feature? 

What About the Time and People Constraints?

Like it or not, many a time a feature is shelved not because it was ill-suited, but because the team did not have the time to build it or it did not have the right people to do it. Something like this has happened in every organisation at one point or another. 

Such an incident, when you do not have the right people to execute a feature that you know would do wonders for your project is going to be frustrating, which is understandable. You can’t do anything about it; you can hire a new person, but that could be a whole other task in itself. 

You can think of these constraints as negative or you can look at the silver lining and think of them as another filtering agent helping you prioritise further. Since I am the glass half-full kind, I’d say it is a good thing. 

If you plan out everything in an organised way and your process is full-proof, you have won half the battle. Carrying out its proper implementation would help you over the time and people constraints. If your team agrees to the plan and knows it, your chances of success increase immensely. This also means that the team is able to identify the priority tasks over the non-priority ones. 

The end goal of every project is improvement and it is research and prototyping that make it possible. So, if you have a process to implement those two, no amount of constraints will be able to hold you back. And just maybe, these two constraints help you in avoiding over-reaching?

What are the Ideal Strategies for Feature Prioritisation?

We have learnt everything we can about this concept, now it is time to learn some about the strategies that help project managers implement it. There are a few feature prioritisation frameworks that deserve mention. 

The KANO Model 

The KANO model helps you in understanding the consumer’s needs and wants and base your features on them. This is done through questionnaires and consumer feedback. Although it is a time-consuming process, it does give you a clear picture of where the consumer stands in terms of product features by classifying them. 

A graphs illustrates the four parameters of the KANO model.


According to the KANO Model, the sure thinks in four ways. 

  • For one, he wants excitement. These features add no value of the product or service, but their presence is enough to excite the consumer and lure him in.
  • Second, he wants an elevated performance. The better the performance of the feature, the better the consumer satisfaction and vice-versa. 
  • At number three, he wants the basics. There are certain that have to be there, despite them not providing any excitement to the user, you could refer to them as the threshold.
  • Finally, he becomes indifferent. This indifference is towards features, the presence or absence of which does not affect the consumer.

All four of them, with their different satisfaction and functionality levels help the project managers know the strengths and weaknesses of the project.

The MoSCoW Model 

Must-haves; 
Should-haves; 
Could-haves; 
Won’t-haves;  

These four sum up the meaning and the reasoning behind the MoSCoW model. All of them categorise features based upon their importance to the project. Going from the top; 

  • Features that have to be in a project to make it complete are the must-haves and should be prioritised over anything else. 
  • Features that should be included in the project, but can be delayed for the time being are should-haves, much like green vegetables; you should eat them, but you can survive without them for some time. 
  • Features that could be included in the project or could not be included in the project without having any impact on the overall functionality are the could haves. It’s good to have them for higher consumer satisfaction, but their absence won’t be blatant to the consumer.
  • Features that are won’t have are the ones that are not at all crucial for the project at the moment and would only cause additional stress on the resources at hand. 

The thing about the MoSCoW model is that it lets you know what kind of features you can bring to the table in the feature. This is because priorities never remain the same, a feature that was shelved for requiring too much work and having too little impact could become a Must-have in the future.

According to OSL's project managers, the success of any given project is primarily determined by the intelligent prioritisation of various tasks. Choosing the right high-priority feature may seem to be daunting, but for successful and timely delivery of the project, this is a must. Neha Grover, one of our Project Managers, feels that during instances in projects when you have the list of work packages, which need to be prioritised and moulded into a work breakdown structure(WBS), the PM has to play a key role in getting the stakeholder's and dev team's expectations and priorities to be on the same page.

"I follow the MoSCoW prioritisation technique in my projects, as this is quite simple and less time-consuming and it focuses on both customers and stakeholders."

The Cost of Delay Model 

It is often said that you can't put a price on time, it is indeed priceless; never to come back again once it is gone. Saying that, if you happen to have the right matrix to work with you can actually value the cost of time or more like the cost of delaying. And that is what this feature prioritisation framework is all about. 

The COD model calculates your losses for delaying the development and implementation of a particular feature. Based upon that cost, you will get an idea as to the importance of that feature and prioritise its build accordingly. 

For instance, 

Say there is a feature that would take 30 days to build and every day it’ll cost the organisation $1000. Then there is a feature that would take the same amount of time to develop, however, it is costing the organisation more than double in comparison every.

In such a scenario, which feature would you prioritise? The answer is simple, the one that is making you lose more money. Building that first would stabilise your losses more than the other as the cost of delaying that was more than the other. 

Prioritise what saves you more money by reducing the cost of delay.

The Value Model 

Businesses develop features because they think the said features would prove to be valuable for them. To get that value, they endeavour to build something good. What if that value isn’t as impressive as the business, the project managers and the developers had thought to be. This is why the value model becomes an important strategy to implement during feature prioritisation. 

The purpose of the value model is to reap the highest value of a feature for the business through its two facets.

Value based on cost 

Cost doesn’t necessarily mean money, it could be interpreted as efforts as well or even complexity. The model states to simply prioritise the tasks with high value and low cost first, then move onto the features with high business value and high cost. If you wish, you can take on the low value-low cost features, but most definitely avoid low value and high cost features. 

A graph shows the functionality of value vs cost model of feature prioritisation.


Value based on risk

From cost, we come to risk, which is another metric to be mindful of while prioritising features. It more or less works in a similar fashion to the value and cost model, it's just instead of the cost, you’d be focusing on the risk. 

A graph is explaining the way value and risk model works.


The higher value and low risk features would be prioritised over everything else, while the low value and high risk features would be avoided altogether. This helps in enduring that you are not going to end up building something that is unnecessary or even something that is too simple by playing it safe.

The Financial Model 

An income is what everyone is after and feature prioritisation operates in the same notion as well. The purpose of increasing revenue and reducing costs is omnipresent in all the business decisions and choosing features for a particular project falls under that umbrella. 

So, thinking about the financial side of the features is what the essence of this model is. 

Whether you will be able to generate new income; 
Whether you will be able to enhance your operational efficiency and reduce costs; 
Whether you will be able to lessen the amount of consumer turnover;
Whether you will be able to gain an additional income from the consumers you already have; 

All these are important scenarios to consider in the financial model for feature prioritisation. 

Then there is the actual money metrics to pay heed to in the selection process, which includes three important dimensions. 

  • One is the focus on the Present Value of money. What you have invested today and the return you will get from it five years down the line would not be in the same value of currency as it keeps changing. So, making a projection based on the Net Present Value formula is a wise choice. 
  • Second is to calculate the Internal Rate of Return, which is essentially a percentage value of returns for a project and how quickly they might increase.
  • Third is to focus on the running total of the discounted cash flows to get an overview of the time it would take to get the investment back. This is also referred to as ‘the Discounted Payback Period.’

The Opportunity Scoring Model

For every feature in every product, there are two attributes that usually stand out apart from the financial aspects of that feature. And these are; 

How important the feature or its outcome is to the consumer?
And how satisfied is the consumer with the provided feature?

Take the answers to these questions and start pointing them out in a graph and you will end up with something looking like this. 

A graph is illustrating the way opportunity scoring is done.


So, the scoring makes it easy to prioritise by using visuals and categories simultaneously. The features that are important to the consumer, but aren’t very satisfactory would be priotises more than the features that are satisfactory for the consumer, but not very important. 

The RICE Model  

The RICE Model gives you an in-depth understanding of each feature you wish to implement based upon four parameters that some of the other strategies are unable to. 

Reach 

Reach refers to the number of people the feature would reach and affect. These numbers are calculated on real matrices like ‘customers per quarter’ and ‘transactions per month,’ thereby removing all forms of personal bias from the equation. The higher the resultant number, the further the feature’s reach.

Impact 

The I is for impact, meaning the kind of impact the feature would have on individual users as well as the goals and     objectives of the business as a whole. This is ranked from minimal to medium to high to massive impact based on points from 0.25 to 3.

Confidence 

Now that you have the numbers for the reach and impact of the features, comes the moment to test your confidence in them, that is what the C denotes. Using a scale with 100, 80 and 50 points referring to a high, medium and low confidence level, you will start scoring. Remember to always provide evidence in the form of data for every score you give.

Effort

In the end, the E is for Effort in terms of time and people. Questions like how much time would it take to build the feature. How many people would be required to make it, how much time would one person have to shell out in a day for the build are to be asked and answered in this parameter. 

The RICE formula, a framework for feature prioritisation, is depicted.


Once you have the results for all the parameters, you will use this formula and will be left with a number that would denote the total impact of time worked. This number is what would help you prioritise. 

The Voting Model 

This is not a well-established model, but it has a lot of merit in its implementation. Based on two different aspects of feature selection, here is how it is used. 

Annotation 

When you are voting for a feature’s implementation, you would be stating whether that feature should be high on priority or even low, you can’t just say those two simple words; there won’t be any clarity in that. If you are saying that a feature is high impact, then you must state why? It could be any reason, an admin panel with a particular feature could have a massive impact because it would help the stakeholders in completing their primary tasks with ease. A comment can truly make a difference in the perception of a feature and thus, aid the selection process.

There is table showing how a feature is prioritised based on its impact on the stakeholders.


Diversification

The second part of the model is to diversify the voting team as much as possible. Include experts in the domain as well as non-experts. This would give you a more concise picture as to the popularity of the feature amongst a wider range of people. However, do remember that you separate the experts' votes from the non-experts clearly, because even though diversified voting helps get a better perception on the proposed features, the expert opinions would weigh more. You can even segregate the votes based on departments, like votes from the finance department’s votes could be one category and marketing people could have a different category. 

Now that you have explored various approaches of prioritising features in a project, read about the right way to start a Drupal project, standard development workflow for a Drupal project, best project management techniques for complex Drupal projects, difference between product mindset vs project mindset and human factor in project management for effective project management.

The Bottom Line 

There are numerous other techniques and strategies that can be implemented for feature prioritisation. You can use all of them or just a couple, that is totally up to you. However, you have to remember that a feature is not just for the consumer and not solely for the business. 

Both the consumer and the business have different reasons for using and building a particular feature. The consumer wants the feature to fulfil a need, while the business wants the feature to bring an increased revenue. So, you have to endeavour to strike a balance between the two. This can be done through choosing strategies that are both business-centric and consumer centric, like the Cost of Delay model or RICE. 

In the end, I just want to say that feature prioritisation is a never ending process much like development. As long as you will keep developing, you would have to choose certain features over others to prioritise. So, mastering the prioritisation technique would serve your interests well. 

Apr 21 2021
Apr 21

This is the second of the two-part series on ‘Formulating a business case for a new CMS’. The first part debates on open source CMS and proprietary CMS. The second part will discuss various other factors that are to be considered before opting for a new CMS for your business.

A Content Management System is one of those things that we didn't realise we needed until they became commonplace, and now it is near impossible to survive without using, or hearing of one every now and then. In an age where convenience and agility are prioritised, the concept of a CMS holds great merit. It highly simplifies the work of creating a website and expands the use case of technology, making it accessible to a wide range of people - whether technically proficient or not.

Factors to consider while choosing a new CMS

While one CMS may be good for a particular enterprise, it might add no value or even prove to be detrimental to the other. Hence, skimming through important factors is an essential aspect of building a business case for a new CMS. While in part 1 we have discussed multidimensional comparisons between open source and proprietary software, this part is focused mainly on discussing the factors that are responsible and must be addressed before bringing a new CMS to the table. 

Why go for a new cms? 

Before trying to answer questions like why to choose an open source CMS or when to go for a proprietary one, first the need for a new CMS should be justified. Is there aur technology problem that you're facing? Can that problem be solved by undergoing something less monumental than migrating all your content to a new CMS? If yes, should you update, rather than replacing your existing base? 

Once the need for a CMS is mapped out and you are sure that you'll be going through that route, the next step would be to shortlist, analyse and re analyse every aspect of the new technology. You should be thinking as holistically as possible during this phase to eliminate potential issues in the future.

  • The CMS must resonate with your brand image, and facilitate the execution of your agendas. . 
  • You also need to analyse the CMS in terms of the amount of content you’ll be operating on it and whether it will be able to handle that, and if it provides the architecture for you to manage your content methodically.

Listing down both the business related pros and the probable risks of every option would be a good idea before proceeding. 

Primary stakeholdership 

A question pretty important but often ignored while choosing a new CMS is who has the stakes to decide and consider on the different CMS features that are being debated. As your organisation expands digitally and physically, the number of stakeholders starts increasing as well. The various teams dealing with IT, Marketing and Content might see a different CMS each that fits well with their demands. It is, again, a matter of debate to decide which area your company relies more on and is looking forward to invest in. 

SaaS vs Hosted vs On Premise

A SaaS (Software as a Service) CMS is a cloud computing environment with no obligations to install, update or maintain it. In stark contrast to this is an on-premise CMS where a licence is required from the vendor to install the software on your own server, and the provider is also responsible for maintaining the software. In a cloud-hosted CMS solution, a licence is required to install the software, but after that, it works just like an on-premise CMS.

These technicalities also need to be addressed while the discussion for onboarding a new software, so that the team finally ends up choosing the right CMS.

Business impacts

Long-term impacts need to be examined beforehand if possible. CMS platforms categorise into Development Platforms and Solution Platforms - where the development platforms act like a blank canvas one can build anything on, and the solution platform comes largely pre-built with customisable features. If your business banks on a good User Experience and looks forward to personalizing user experiences, a development platform might be a better choice. Similarly, if the focus area is not UX or creativity but content, a solution platform would be a better bet.

Technology Integration

Exhaustive documentation is required to analyse what tools and technologies you are going to use for marketing forms, project management, CRM (Customer Relationship Management), email marketing and even customer support. Does the CMS provide enough flexibility and scalability features to operate each one of these tools efficiently? You don't really need an all-rounder CMS, you just need to figure out what technologies you are going to use and find an associated software product that syncs well with those.

Skillsets

Choosing a good team is way more tedious a task than choosing a good CMS. So now is the time to talk to the team members and discuss their strengths and weaknesses regarding the tools they are comfortable using, or are expecting to be a part of their workspace. Consider your existing IT infrastructure and expertise and analyse whether your team has sufficient time to allocate to installing, maintaining and securing a CMS. Do you have sufficient in-house resources to customise the CMS if needed? It is imperative to answer all such questions before going ahead.  To know more, read what skillsets facilitate traditional and decoupled Drupal development.

Feature bloat vs Feature-rich

Always bear in mind that a lot of features in a CMS require nerve and sinew to make them functional. You need to know the basics of every feature that you are planning to utilise. A software may have immense capabilities regarding personalization and customization, but these won't articulate by themselves. The question here is - do you possess the necessary resources to breathe life into all of this? More importantly, all that sparkles isn't gold. Do you, in fact, need all of this pomp and show, or is most of it going to lie stagnant or cause unnecessary delays due to a heavy system? Do realise that you want a feature-rich CMS, ie, one that has features that you actually need. 

The potential CMS of choice might be great for complex workflows, but the question is do you have or need a complex workflow with multiple approvals on the line to make decisions? It is imperative that you remain realistic about your company’s maturity and roadmap and see if it aligns well with these technologies, hence not overdoing features to the point where they become unnecessary ornaments on the site. Always keep the requirements matrix of your platform in the backdrop while deciding on which CMS to go for.

Product demos

Theory can never be as reliable as practical examples.  An investment as elaborate as choosing a new CMS cannot be planned without taking into consideration various product demos and user reviews. Once the feature requirements have been worked through, develop usage scenarios and conduct initial product research for the next phase of the selection process - which is to document your needs and test the product against these requirements. Try to look for reviews that talk about problem solving, certain encountered issues, software upgrades and other potential problem causing areas.

In this phase, also try to examine whether the product naturally fits the vision of your company, what compromises might need to be made if you choose the product, and more importantly, if the vendor understands your business' work patterns and complements your ideas. Also run a check with your present team on how compatible they are with the platform.

Understanding the product roadmap 

It is imperative that you realize the roadmap of the potential vendors as well. Does it align with the track that you have set for your business? Taking the effort to track the future plans you are thinking of opting for would not be 'going overboard'. Being a little foresighted is an essential quality in a business owner. With new technologies taking over every now and then, the general trajectory might undergo change several times over the years - hence, a good way to track the adaptability of a CMS would be to trace down history and examine how much it has changed in the past to to fit into the ongoing trends, like decoupled architectures, cloud, SaaS etc. 

Cost efficacy

The budget is one of the first things an organisation considers. All kinds of costs - initiation, operation and implementation - need to be considered while chalking out the investment, as we don’t want the plan to turn turbulent at a later date. Software upgrades, maintenance, premiums - everything should be studied carefully in order to comply with your monetary limits. Both proprietary and open source models incur certain kinds of costs but in very different dimensions. Hence, it is upto you to prioritise where you want your money to be spent.

Drupal: An ideal CMS for building a modern web property

Since the choice of a software turns out to be the bedrock of all business activity online, most users try going for reliable options that have stabilized their name in the market by proving to be a resilient business partner over the years. Drupal is one such CMS that has been here for over two decades, and has been powering websites across the globe ever since. Let’s see how Drupal stands against the various dimensions of choosing a new platform.

  • Open source

Drupal is an open source platform with contributors bringing in global, cosmopolitan perspectives to their work each day. Apart from the many benefits of being open source, there's also a social satisfaction that comes with being a member of the community. Hence, Drupal development is free of cost to begin with. Depending on the level of customisation and the number of features you want to use, partnering with a digital agency can of course incur costs.  Learn more about merits of open source by going through the impact of open source during covid-19 pandemic, influence of large companies on open source, the power of being recession-free and the perks of contributing to it.

  • Content authoring

Drupal offers all the high utility tools required for content creation, publishing and the maintenance of a seamless workflow. Authentications and permissions are placed at appropriate levels to help manage editorial management. This means that right content architecture can be created using the admin interface, or even programmed. One can work with granular tagging and mobile editing to create content that is suitable for both websites and mobile applications. Drupal allows content authors to use a WYSIWYG editor to create and edit content in-place, ie, one could browse to a page, click on the content and edit it right there, on the spot. Apart from this, Drupal provides for tracking content revisions, an essential feature is you have multiple editors on board.

Drupal with its powerful display mode tools categorizes and displays only the most appropriate content including an array of media. While the Layout Builder allows content authors to create customisable visual layouts to display content, the Paragraphs module paves the way for an organised, cleaner site by providing pre-defined Paragraph Types for organising text blocks or images in a slideshow. For more on content authoring using Layout Builder and Paragraphs, read here.

  • Ease of use

Drupal's ease of use again depends on the manner in which you are using Drupal. If you are using the headless version to create custom layouts and mobile applications, very easy usability cannot be expected with the additional technicalities involved. However, developers point out that the availability of modules for every functionality on Drupal makes it extremely convenient even for newbies, making the learning curve quite short. Moreover, starting as a Drupal developer requires the least amount of Drupal centric learning and one can even start with the basic programming languages. Read here to know more about how easy learning and working with Drupal can be.

  • Industries suitable 

Since everything in Drupal is extremely customisable, it can be moulded into under requirements of literally any industry, both government and private. Currently Drupal is in use across several industries dealing in digital mediaFinTech, sports,  food, education, and many more as can be seen below.

white graph with blue bars showing the various sectors in which the cms drupal is usedSource : Drupal.org

In terms of security, Drupal emerges as a solid and secure CMS. Being designed keeping robust security in mind, it comes as no surprise that Drupal powers the websites for many leading corporations, brands and governments across the world. While one of the largest open source developer communities in the world ensures a rapid response to any issues, a bunch of problems are prevented solely by Drupal's strong coding standards and a stringent community code review process. No wonder, a report by Sucuri proves that Drupal is one of the most secure CMS among the major open source CMSes in the market.

grey and green bar graph showing cms infections in 4 different cms side by sideSource : Sucuri
  • Scalability and performance

In a case where it is used and optimised appropriately, Drupal can be scaled up to reach millions of people. For instance, the CDN (Content Delivery Network) module helps one integrate their Drupal website to a CDN, which is basically a globally distributed network of proxy servers that increases the reach of your content manifold. If the hardware of your server is giving up, Drupal allows you to scale it either vertically or horizontally - i.e., by either adding more resources at the same server or adding multiple servers to divide the load. Read about Drupal’s immense scalability and high performance offerings to know more.

  • Decoupled Drupal 

Decoupled Drupal comes with a bunch of flexibility. Developers are free to choose any front end tools that they deem fit while backing on Drupal to provide a robust backend. Decoupled Drupal architecture provides the best possible framework for serving content in the form of chat platforms, conversational UIs (User Interface) etc. through a variety of channels like mobile apps, Internet of Things apps, smartwatches and CRM systems. To know more, read about Decoupled Drupal architecture, difference between monolithic and decoupled architectures, when to move from monolithic to decoupled architectures, how to decouple Drupal, and success stories on decoupled Drupal.

Drupal allows for maintaining separate independent sites that branch out from a single code base while having their own separate databases, configuration, files and URLs.

  • Multilingual 

Drupal enables building multilingual websites with its built-in language handling abilities that make it easy to create localised digital experiences. Certain core modules in Drupal facilitate the translation of every element of a website. Explore more about Drupal’s magnificent multilingual capabilities here.

Drupal can greatly aid you in the Search Engine Optimisation of your website, necessary for clients to find you. You can rely on Real time SEO For Drupal to constantly remind you of anything you might have missed in the optimisation process, and work with the Googalytics module to integrate Google Analytics in Drupal, hence keeping in touch with all the current trends. To know more about Drupal’s SEO features and to update yourself on the present and upcoming SEO trends, check this guide on Drupal SEO.

  • Mobile apps

Drupal focuses on mobile first development. It has also come up with a mobile initiative for this, along with multiple device friendliness to bring about community participation in the same. Not only that, the potential for building mobile applications with Drupal is plenty. For example, you can extract the power of Flutter and Drupal together to build an intuitive mobile app. 

  • E-commerce

Using Drupal Commerce, businesses can utilise an open-source eCommerce framework to build flexible eCommerce websites and applications based on Drupal. Drupal commerce aims to make teams more productive by simplifying complex checkout outflows and keeping every feature accessible at an arm’s length for a merchant of any size. One doesn't need to worry about conforming to industry security standards while implementing Drupal, and can easily rely on  Drupal's own best practices.

It also includes provisions for integrating payment and fulfillment tools to strategize the best marketing strategies tailored for your business. The Commerce Kickstart distribution can be used to start the project, as it comes loaded with features that make it easy to use and administer.

For creating a more engaging and interactive website while still staying in touch with Drupal Commerce, headless Drupal could be utilised. To complete this transaction, APIs (Application Programming Interface) act as the bridge to connect the frontend and the backend - with Commerce API extending JSON:API and Commerce Cart API which lays out an interactive interface of the buyer’s cart through REST API.  Read here to know more about content-driven commerce with Drupal.

  • Web accessibility

Drupal has various modules in place to ensure web accessibility guidelines, realising how important it is to make the website accessible to users across the globe. Modules like CKEditor provide a number of features like CKEditor Accessibility Auditor and CKEditor Accessibility Checker to analyse if the overall experience is convenient for disabled people. Keeping accessibility uniform throughout the site, Drupal’s Automatic Alternative Text Module provides alternative texts in all the images where the content author may have missed it. To further your knowledge on how Drupal ensures web accessibility, read here.

  • Documentation

Every little step taken by Drupal or the community  is exhaustively documented for greater knowledge sharing and transparency among the stakeholders and contributors. Dries Buytaert’s State of Drupal presentation in July 2020 and December 2020 includes all the changes and upgrades made in Drupal in the past year. For more proper documentation on everything Drupal, you can check out Drupal’s official documentation page. Whether you may want to try out a Drupal demo site or are ready to build a perfect Drupal-powered site for your business, the curated list of user guide, evaluator guide, local development guide and many more will help you easily start your Drupal website.

  • Agency partner availability

Drupal Marketplace lists all the agencies that are avid contributors to Drupal's modules, distributions and case studies revolving around Drupal projects. Hence, if a business is thinking of starting a Drupal project but doesn't have the required expertise to go about it, they can contact one of these top ranking agencies for Drupal development services. OpenSense Labs ranks in the top 5 and would love to partner to help fulfill your digital transformation dreams. And, if you wish to leverage more resources for your projects, our staff augmentation services would take care of the rest.

  • Support and maintenance

One of the biggest plus points of being an open source platform is that support is highly accessible and maintenance is pretty swift. Since it is such a widely cultivated and utilised platform, there cannot be bug fixes related to important issues lying around stagnant for a large amount of time. The Drupal community is always walking towards resolving issues that crop up from time to time. 

If you have a Drupal website that you require assistance with, we at OSL could help you out with our  Drupal Support and Maintenance  program.

Conclusion

This concludes our exhaustive list of factors responsible for choosing a new CMS, complete with a business case comparison between open source and proprietary models. Hopefully this article helps you in making the correct decision regarding your business' choice of the appropriate digital platform.

Apr 20 2021
Apr 20

If there is one thing that is in abundance today, that’d be competition. It starts as soon as a child is born and ends when he takes his last breath. It’s not just people who have to face the gruelling reality of perpetual competitiveness, it’s also the non-living objects who compete. 

Tell me, can you possibly buy the new Adidas Aerobounce 2 without checking what the competitors have to offer? And can you really buy that shoe without comparing the prices on the online and offline stores? I am sure not. 

This is why brands and businesses try to be the best in catching the eye of the consumer and presently the best way to do that and beat the competition is through Digital Experience Platforms.

Today’s consumer doesn’t connect to a business through medium, there are a number of touchpoints in play and integrating all of those together to engage your consumer base is what a DXP does. This helps businesses to not only build and deploy digital experiences, but also improve them continuously across your websites, portals and mobile applications. All of it accumulating to a wholesome user experience.

The various features of a DXP are represented in the image in the form of a diagram.Source: Bloomreach

The diagram above is the sum total of a DXP’s powers, which are pretty versatile, as it combines all of the various aspects of online businesses, be it social media or personalisation and targeting, and lets you deliver a seamless digital experience. 

Digital Experience Platforms provide an edge to a business that CMSs and WEMs cannot and that is why they are becoming popular by the day. Their advantages back this claim. 

  • The ability to manage the bazillion consumer touchpoints is the paramount merit, be it FAQs or chatbots, there is an answer to everything.
  • Then is the ability to connect your business’ various aspects at one place, from sales and commerce transactions to instilling loyalty amongst the consumers through in-house programs. 
  • The ability to be flexible is inherent in DXPs as well. You can build it on your rhyme and rhythm, there won’t be any objections. 

Let me also give you a few statistics to understand the rage DXPs are becoming in the present and what their future looks like.

Future projections of the DXP market is depicted.Source: Markets and MarketsThe market of DXPs is shown based on geographical regions in a bar graph.Source: Markets and Markets

Based on these figures, I have to ask, when are you switching to a DXP? If the answer is right about now, you have landed yourself in the right place because I am going to be talking about all the things you would have to consider before choosing the right and most suitable DXP. So, let’s begin our DXP checklist. 

What tools and integrations are you using and plan to use?

The foremost question to ask relates to technologies you are using and plan to use in the future. You can document these technologies based on your consumer’s journey. This would allow you to create the most optimal digital experience for your users because you would have worked on the gaps and weaknesses of the journey. 

From that first step, you have to move onwards and upwards and focus on all the tools and integrations you would need to work with your chosen DXP. Let’s take a look at them together. 

Data Analytics 

Every organisation has a data warehouse, however, it’s proportion does vary. This data might as well be responsible for shaping your strategy. Therefore, you have to consider your analytical requirements before taking on a DXP. 

Remember that you can always come to Google Analytics for any analytics, even after choosing a closed DXP. To know more on how data driven strategies can help understand consumer behaviour, read here.

Digital Marketing Tools 

The DXP you choose should be able to integrate with various marketing tools in the market. Look for integration support with a keen eye, it could be out-of-the-box or an extension, but it has to be there with a side of third-party marketing automation at play.

Conducting a thorough review of the MarTech stack is also recommended here, find out what is being used and where it is being used before going any further.

Digital Asset Managers 

If you have a digital asset manager, you should consider one thing and that is its integration with other downstream systems. This would ease the flow of images and assets through your organisation. Everything about digital asset management (DAM) here.

Backend Integrations 

Then is the question of backend integrations, you could have a CRM or an EPR working at your backend. If that is the case, you ought to start finding them out and assess their compatibility with your DXP provider.

What are your notions about decoupling?

Nobody likes being constrained, the joy you find when you are free to do as you want is unlike anything else. That is pretty the scenario with decoupling or going headless. You could have a strong monolithic architecture now, but in the future that could change, because what works today may not work tomorrow. Therefore, you should think about choosing an Open DXP, if you are indecisive about decoupling today.

Your projects could need microcontent; 
Your content could need to be published on multiple channels; 
Your developers could ask to go headless because there is so much to explore; 

All of these scenarios are real possibilities and you must consider them before making firm decisions on decoupling and DXPs. There are plenty of these platforms that support going headless and having that room to explore can’t be bad.

What are your plans for commerce?

Commerce is another important aspect you need to consider before choosing a DXP. Having all the right features to look for is crucial here. You have to ensure that the DXP’s commerce strategy actually aligns with your commerce needs and at the same time gives you room to be better. 

  • Assess yourself first, know whether your needs are just browse and buy or are they more than that.
  • Assess whether the DXP should be able to work with different commerce technologies to get you what you want.
  • Assess your Stock Keeping units and let their count decide the kind of robustness you would need in your DXP. 
  • Assess the kind of data model you need based upon the working of your team and its present and future needs. 
  • Assess the importance of content in commerce, more like search it up and integrate it without any hesitation. This would create a much more effective experience for the user.
  • And assess whether going headless is worth losing the commerce extensions that come along with the platform.

Once you have an answer to these, you’ll become a step closer to the perfect DXP for you.

What are your editorial needs?

After technology, comes the part your content writers and editors play in the DXP decision. You have to understand that the more writers and editors you have, the more complex the editing experience would become and you would need a DXP that can handle it.

In this regard you have to consider three things before making a decision. 

Cache Manipulation 

Cache manipulation features allow you to sync your developers’ caching strategies with the user's needs. This helps in making you content appear quickly to the users and a perpetual communication in your cache layers.

Review Needs 

Sometimes your content needs to be reviewed by people within the organisation before it goes live. These could be your legal department or even project managers. If that is the case, you need to look for a DXP that is equipped to handle this kind of editorial needs.

Multilingual Requirements 

Finally, many sites today are operating globally, this means they have to change to the local language. For that your DXP needs to have impeccable translation needs, with understanding of the various dialects of the said language. You can’t be using American English on a Scottish website, it won't be wrong or unethical, just inappropriate and your audience might not be able to relate.

What is the value of security for you?

Security is another major criteria that has to be given its due importance. Making a fully-functional site with all the right features, but lack of security would make all your efforts go in vain. That’s why you have to look for the right security features in a DXP to avoid the unfortunate fate.

  • The foremost feature to want should be an integration to Varnish and a CDN along with free-flowing interactions between the DXP and cache layers. 
  • Then you should think about securing your network nodes that are outside your network core. This is done through edge protection services provided by top DXPs, so make that a mandate.
  • Distributed Networks Attacks can be quite harmful, so ensure that the DXP you choose can prevent and counter them.

Also remember that you need to let the experts do the decision making in this regard because you cannot afford to go wrong here. 

What about government regulations and stipulations?

There are a number of rules and regulations that your digital experiences have to adhere to with a super glue consistency. A DXP that makes that easy for you is always going to be a winner; you must know what happens when you go against the law.

Here are the paramount regulations that you have to stick to.

  • Americans with Disabilities Act or ADA;
  • General Data Protection Regulation or GDPR; 
  • Health Insurance Portability and Accountability Act or HIPPA; 
  • Family Education Rights and Privacy Act or FERPA; 
  • Web Content Accessibility Guidelines or WCAG;

These are a must when building digital experiences, so grill your prospective vendors about them and if possible, ask for case studies.

Apart from this, Personally Identifiable Information should be a factor in your choice. The way it is collected and stored should be compliant with the GDPR regulations.

What are the financial implications?

When you would be looking for a DXP, you will certainly want one that will favour all the technologies that you want to incorporate into your organisation’s digital platforms. Am I right? So, you will be aiming for the best out there. However, what if the best is not within your price range. Do you settle then? No, of course not. You choose what is the most suitable for you and whatever ticks the most boxes. 

So, before or even during the selection process of a DXP, you need to allocate the budget you are comfortable with. It could be less than a hundred grand or close to a million dollars, that is on you. 

Remember that just because a DXP is expensive, doesn’t mean it is the best. Whatever your budget may be, you could still get what is best for you.

Finally, what do you want the future to hold for you?

Life is often regarded as transitory and it really is; what is important today may not be important in future and what may seem trivial today may become the next big thing. 

The same is true for DXPs and your digital experiences; they will evolve with time. Therefore, when you choose an agency remember to not let it make you inflexible. You would need to keep an open mind about the future and your digital experiences should have the same openness in their build. 

  • Look for future scope in the DXP; 
  • Look for extension of current technologies like marketing automation; 
  • Look for an open DXP architecture with flexible APIs.

You certainly cannot be sure of the future, but what you can be sure of is the fact that the future is going to change and you would have to change with it. 

Bottom Line 

As Steve Jobs said,

“You’ve got to start with the customer experience and work back towards the technology- not the other way around.”

There is real meaning behind that statement, all of your digital experiences start with and end with the consumer, so why not prioritise them over everything else. 

So, how to choose a DXP? By assessing your past, present and future in accordance to your consumer experiences. You must want to create a fulfilling digital experience for your users, for that you have to have a fulfilling digital experience platform that guarantees to check every and all of your necessities. The questions I talked about above would help you kick start your DXP journey. OpenSense Labs continues to build amazing digital experiences with Drupal that endeavor to provide all of what we discussed, so you could, maybe, start looking here to build a Drupal-powered DXP. 

Apr 13 2021
Apr 13

Drupal has been in the content management game for over two decades. That is a long period of time and in that time span the CMS has accomplished a lot. It’s community of over a million Drupalists is just one part of it. With 20 years gone, Drupal is still running strong and its latest update is proof of that. 

Yes, in the June of 2020, amidst the pandemic, Drupal 9 was launched and it was my only sunshine at that time and I am sure many of my Drupal friends would agree with me. Drupal 9 can be deemed as one of the best offerings of Drupal, not there were many that were anything but great.

Job done easy: Drupal 9 upgrade

The latest version meant we had to take it on, why be comfortable with the past when the present can offer more comfort, right? However, the mammoth task that was the Drupal 8 upgrade, you must remember that, made many of us apprehensive and rightfully so. And that is where we were surprised, pleasantly might I add, by Drupal. 

“Easiest upgrade in a decade.”

This is how the Drupal 9 upgrade is being described and it is because you won’t have to replatform your site, you’d only be updating. It's like taking a connecting flight from London to Paris rather than leaving the airport and taking a train from the station. Connecting flights are easy.

The timeline of Drupal releases in shown. Timeline of Drupal 9 future releases | Source: Drupal.org

Considering the fact that Drupal 9 is not a migration, the upgrade is a breeze. With the addition of new features like Olivero and Claro, being built and stabilised respectively, the new versions of Drupal 9 will become all the more appealing and a release can be expected half yearly much like Drupal 8. So, can we afford to sit back and not take the step towards upgrading our Drupal sites. The fact the Drupal 7 and Drupal 8’s end-of-life has been decided has given us all the more reason to make the upgrade. Read our complete guide on Drupal 9, Drupal 9 FAQs, must-have modules to start your Drupal 9 website, configuration management strategies in Drupal 9 and web development strategies for Drupal 9 website to know more about Drupal 9 and its usage.

To help you in finding the answer to the popular question of “How to upgrade Drupal 9?”, here I am with an all inclusive checklist for this massive step you are about to take. So, let’s begin.

Is the upgrade different for Drupal 7 and Drupal 8?

This is one of the most commonly asked questions for Drupal 9 upgrade. There are still a lot of Drupal sites that are still operating on the 7th version, so it is understandable to want to know whether ‘the easiest upgrade of the decade' is applicable to them or is it different. 

Drupal 9 upgrade is different for Drupal 7 and 8 sites. This is mainly because Drupal 8 was a whole other ballgame than Drupal 7, while Drupal 9 is just a new and improved version of Drupal 8 with no deprecated APIs. Therefore, the upgrading process was bound to be different.

Let’s see how. 

Drupal 8 to Drupal 9 

Support for Drupal 8 will end on 2nd November, 2021, it will receive patch releases, but there won’t be any major updates in its feature simply because we have Drupal 9. Therefore, upgrading to the newer version is the better option. 

To upgrade from Drupal 8 to Drupal 9, 

  • You would have to see that all your projects are Drupal 9 compatible; 
  • You would have to see that your codebase is free of deprecated APIs; 
  • And then all you would have to do is run update.php. 

It sounds simple enough, right? That is because it is. Of course, you would have to perform some more steps than these three and there would be a number of tools that you would have to use for them. However, it is these three steps that are essentially the crux of upgrading from Drupal 8 onto 9.

Drupal 7 to Drupal 9

Drupal 7’s support is said to end on 28th November, 2022. Although your D7 site has quite some time ahead of it, you still have to start thinking about the upgrade as the process is not as easy as the D8 to D9 upgrade. 

You can take two routes here; 

  • You can first update to Drupal 8, avail functionality from all the modules that are yet to come in Drupal 9 and then take the easy route of upgrading to Drupal 9; 
  • Or you can directly upgrade to Drupal 9 and skip the 8th version. This would be ideal because your upgrade would have a much longer lifespan.

For the upgrade from Drupal 7, you would need three modules; 

These three do everything from data and content migrations and checking the availability of modules to scanning them and updating them for the upgrade. 

So yes, the Drupal 9 upgrade from Drupal 7 and 8 is different, simply because they are very different versions of the CMS. 

Now that we have this notion clarified, let’s move on to all the nitty-gritty details of the upgrade.  

What tools would you need for the Drupal 9 upgrade?

Can you cook without the right ingredients? Can you make the perfect lasagna without the melt-in-the-mouth pasta? I know you know the answer to these two questions and that’s a big fat no. 

Therefore, the incredible journey towards the Drupal 9 experience has to start by talking about the tool you would need for it, the ingredients that’ll make the upgrade all the more appetising. I’ll stop with the cooking analogy now and come to the point. There are two mandatory tools that you will be needing.

Upgrade Status 

Upgrade Status is a module that prepares your site for the upcoming upgrade you are planning to execute. It is a pretty versatile module that does all the grunt work required before making the leap to D9. 

  • Your site has to be the latest version of Drupal, that is Drupal 8.8 or 8.9, so the first thing this module does is inspects whether you are on that version, if not, it’ll tell you to update.
  • Your system needs to meet Drupal 9’s set requirements for the upgrade to go on smoothly, so the next thing it does is check if you meet them.
  • Your contributed projects also need to be updated and be compatible with Drupal 9. If they are Drupal 8 compatible, there is a high chance they’ll be for Drupal 9. So, Upgrade Status works with Update Status to ensure every project is in sync.
  • Your site needs to be compatible with Drupal 9 in other ways as well, so that is also checked and verified through phpstan.
  • Your system’s integration drush is also taken care of here.
  • Your system might have deprecated APIs, Upgrade Status finds, although there are any fixes provided; for that you'll need another tool.

Upgrade Status’ enchantment doesn’t end here, there is more to this module yet. 

  • I’ve told you that it prepares your Drupal 8 site, but it also gives you the leeway for downloading it with and without the Composer. 
  • It is also available in Drupal 7 and this version would help you in preparation for the Drupal 9 as well as Drupal 8 upgrade, if that is what you want. 
  • Now, the most alluring part, once you’ll upgrade to Drupal 9, it’ll start preparing you for the Drupal 10 upgrade! Yes, you read it right, Drupal 10 launch is in the works and you can be ready for that when it happens with this module.

Deprecation Check

Remember I mentioned deprecated APIs above, well, there are more than APIs that can be deprecated and that needs your attention before you start creating the upgrade environment for your site. That is why, Deprecation Checking and Correction Tools become a necessity.  

All in all, there are five tools for your help. 

  • The first one is an IDE or code editor, which comprehends deprecation to kickstart the process. 
  • Then there is the Drupal-check, this one performs a PHP run and let’s you know whether deprecated code is used and where.
  • Third is the Upgrade Status I talked about above, which essentially scans your entire system and finds deprecated code for you. 
  • The Drupal.org Testing System also supports deprecation inspection.
  • Finally, the Upgrade Rector Contributed Project provides a solution for all of the checking done above and that too in an automated manner.

What are the environment requirements for Drupal 9?

When you are roasting the perfect chicken, the temperature in the oven has to be just right, the timing has to be just right and the flavours have to be just right to make it come out all juicy and succulent. I know I have started with the cooking analogy again, but this is the best comparison I could think of. 

Like that perfect roast chicken, Drupal 9 also needs just the right environment from you and your system to make it work. And this involves; 

Web Servers

Drupal 9 can be run using two different web servers and you need to have the latest versions of these two.

  • For nginx, you have to have the version 0.7.x or above; 
  • And for Apache, it has to be at least 2.4.7.

PHP 

PHP is the language Drupal is built on, of course you must know that. What you may not know is that you need PHP 7.3 for operating Drupal 9. The latest version 9.1.0 supports PHP 8.

Database and Hosting Structures 

Drupal 9 has specific requirements for its backend database as well as its hosts. These are; 

  • Version 5.7.8+ for MuSQL or Percona; 
  • Version 10.3.7+ for MariaDB;
  • Version 3.26+ for SQLite; 
  • Version 10 for PostgreSQL; 

And if you are planning to use Drush to build your interfaces, go for version 10, since only that is compatible with Drupal 9.

Have you prioritised the update of the core codebase?

Drupal 8 was the last major release before Drupal 9. Like any Drupal version, there are a number of minor releases being launched and you must keep up with them. If you have done so, your core codebase would be up-to-date and you’d be all set for the upgrade. 

One of the Drupal 9 upgrade requirements is that your site be updated to Drupal 8.8 or 8.9 for you to be prepared for the easiest upgrade of the decade. 

What happens if you are on a version older than 8.8?

What’ll happen is the upgrade won’t go through. Now you might ask why? I’ll give you an analogy, can you skip a few grades and land from 6th grade directly to high school? Even if you could, would you say that getting the hang of the classes you’ll have be quite arduous? It most definitely will be. So, like you can’t skip grades and you can’t skip the minor releases of Drupal 8 before going on to Drupal. Because Drupal 8.9 and Drupal 9 are somewhat similar the upgrade is a breeze, however, Drupal 8.4 and 9 do not share that kind of similarity and you might need to upgrade fast. 

From upgrades in PHP to core modules, from themes to contributed modules and from path aliases and database, almost every aspect requires updating to be compatible with Drupal 9. And only Drupal 8.8 and 8.9 have that level of API compatibility. 

How to upgrade if you have a Drupal version that precedes 8.7? 

For a version older than Drupal 8.7, you would have to perform some small code changes and database updates that are not very complex. An update to the latest version of the core would be required, and this would make the database and contributed modules ready for the 9 upgrade.

You can use Upgrade Status to ensure that all of what you just did is compatible with Drupal 9 or not. 

Then you’ll have to check for deprecated code, like we discussed two sections above. Thereafter, you become ready to update your core codebase to Drupal.

How to upgrade if you have a Drupal version that succeeds 8.8?

If you are already on Drupal 8.8, there isn’t much you have to do in order to prepare yourself. The only task to perform is running the Upgrade Status and checking compatibility. 

There is one more thing that you will have to do. And that is what your existing site is based upon because that will decide how the actual upgrade will flow. 

Your site could be based on Composer or it could be based on Tarball. Make sure you keep that in mind before starting the upgrade, as both work on different upgrade mechanisms. While the former has its own list of steps to follow, the latter is upgraded using Drush.

What about updating the custom code?

After upgrading the core codebase, you would have to pay close attention to your custom code. There is a high chance that your project will have custom modules and themes, these mean a custom code would also there and it is your responsibility to update it. 

You wouldn’t need new tools and techniques to help you here. 

  • Upgrade Status will scan all the projects for custom code deprecations; 
  • Upgrade Rector will fix any minor deprecations by itself. 

Updating the custom code is not that big a task, so it is often neglected and overlooked. However, it is important enough to hamper the entire upgrade. So, don’t skip it.

Can the contributed projects be neglected?

If you have taken care of the core and custom projects, you can’t think about leaving the contributed project without any attention. So, updating them is the next agenda on the Drupal 9 upgrade checklist. 

The reason for updating the contributed projects is the same as the core and custom projects, to check the compatibility of the projects with Drupal 9. And you must know by now, since I am repeating it for what feels like the 100th time, Upgrade Status will help you in the compatibility check.

You must know that even though a module is Drupal 9 compatible, there is the off chance that it can be a version of a major release that’ll bring API changes along with it. You have to be mindful of these modules because they can be detrimental to your site’s health. API changes that you are not prepared for can’t be efficacious by any means.

But what if a module is not Drupal 9 compatible?

There are, of course, not many of them, however there are some and you must know how to handle them. You can do any of these two things in this scenario.

  • Creating, you can create a custom code to update it;  
  • Or waiting, you can wait to see if it gets updated by the time you are ready for the final upgrade;  

What about the contributed modules with patches, do they need attention?

There are situations where you may want to update a contributed module, but an update is not in the picture, rather you have patches available and sometimes, not even that. What would you do? Pay attention to the patches, that is what.

Usually if a patch is available for a module, Upgrade Status would inform you about that and you can implement it. 

Then there is the scenario, when a contributed module has neither an update and nor a patch. For such an instance, the combination of Upgrade Status and Upgrade Rector will have you sorted. You can also check Drupal’s Contributed Modules Guidelines to help you further. 

Have you examined your content and field types thoroughly?

Auditing for site building is a must. Adding fields and customisations in Drupal is quite easy, anyone can do it. This is both good and bad. Good because anyone can do it leading to less dependence on developers, bad because anyone can do it meaning there might be redundant field types and outdated content. And in this step, you check for just that. 

  • Check and eliminate fields that were created for a once-in-a-lifetime event; don’t let them sit and waste away.
  • Remember those content types you created to add content later, well, you haven’t done that yet, so they have to go as well.
  • Update the help text; this might seem trivial to you, but being someone who relied on that piece of text to perform all my initial duties instead of pinging my manager every minute, trust me, it is important. If it is outdated, it is useless and why would you want something useless on your upgraded Drupal 9 site?

Customisations are only great until they don’t start bloating your site causing regression. You do not want that, so don’t just keep all your focus on the code, modules and themes, give some time to the content as well.

How do you become sure that your upgrade is successful?

You will execute the upgrade to make your site better than it already is, that should be the aim, right? However, despite you doing everything to the T, there is a chance that you may go in regression. Your upgrade may be doing everything that it is supposed to, but still your site’s performance can be slower than it was. 

No one wants that scenario to become their reality, so how do you avoid that? How do you ensure that the upgrade is successful? There is certainly a way to ensure that and that’s through testing.

When you perform tests, you get to know what is truly happening with your site. Where you went wrong and what you did right won’t be hidden under a veil. For instance, performing a test to check the administrative and editorial working of the site is ideal. On paper, everything may appear sound, but in reality your editors could be struggling to make even the smallest of edits. And it is only through testing that you’ll be able to find that out. 

You can start at a smaller level with a hello world test and gradually scale up to examine the major aspects of the upgrade. 

Another thing that’ll help you in making the upgrade a success is going slow. Yes, upgrading to Drupal 9 is deemed as the easiest update of the decade, but it is still a huge task to take on. Just the sheer number of modules that wild require updating can become overwhelming, so go slow, update a few modules at one time. This is the chances of errors would be slim and the chances of success would be quite high. 

The Bottom Line 

Drupalists from across the globe had been awaiting the release of Drupal 9 for a long time, now that it is here, there is nothing holding us back from taking the upgrade leap. If I am to be honest, I’d say that I was fearful of the upgrade process. However, when Dries Buytaert say that one of the fundamental issues to address in the Drupal 9 release was the ease of installation, you cannot do anything but believe him. That’s what we should do. 

Apr 06 2021
Apr 06

Do these numbers seem shocking to you? They certainly were for me. And the more unfortunate fact is that these numbers will only grow in the future. So, what should be done? We cannot stop people from getting a disability, that is in no one's hand. However, we can ensure that that disability should not hold them back. We should endeavour for inclusion, wherein every person on this planet gets an equal opportunity, disability not being a criteria impeding on their life experiences. 

To that accord, accessibility was designed, for inclusion, for equality and for making the differently abled feel that their voices and their feelings value. Accessibility has expanded as a concept since its inception and now, it is also being rigorously practised on the web.

The web or the internet is for everyone, you cannot say that it was designed with a particular demographic in mind because it simply wasn’t. From 5-year-olds watching YouTube videos that are making them prepared for school to 70-year-olds watching a YouTube tutorial on how to update their WhatsApp status, the internet is for everyone and web accessibility ensures that it can be accessed by everyone without difficulty. 

This brings us to the meaning of web accessibility, which is to design something on the web that includes the needs of the differently abled. People with auditory, cognitive, visual and speech disabilities amongst others should be able to perceive, understand, navigate and interact with the web with ease. You should remember that accessibility is not just limited to people with disabilities, it also transcends to other aspects of life that may affect one’s ability to perceive what is right in front of them. Old-age, bright sunlight, the size of the device being used and the person’s mental and physical state at one point, all are included when we talk about accessible design on the web. Therefore, when businesses and organisations are able to build such experiences that cater to all of what I just mentioned, only then would they be truly accessible. 

With Tim’s words at the back of our minds, let’s find out what the fuss about accessibility is for. Here are three reasons that sum up the crux of accessibility and why it ought to be practiced down to the very of the web business.

The paramount reason for practising accessibility lies in the numbers we talked about in the introduction. The close to one billion differently-abled people in the world would be able to access your web project with ease. They won’t feel frustrated or undervalued by your business model, if it is accessible. And can you guess what that means? Yes, you’ll be able to target a market that your competitors might have overlooked. And that is enough to get you the revenue you endeavour for.

You know the United Nations? I’m sure you do. And when the UN says something is important and needs to be followed, you follow it. The United Nations Convention on the Rights of Persons with Disabilities clearly states that access to information and communications technologies is a basic human right. And when you make websites that are inaccessible to persons with disabilities, you are going against the UN and you won’t want that.

Even in the US, the Americans with Disabilities Act also establishes grounds for web accessibility and adherence to those guidelines is important to stay on the good side of the law, don’t you agree?

Then, there is the concern about brand image. If I had to describe accessibility’s essence, the only thing that would do it justice would be social inclusion. Including every section of the society and every scenario that may hamper their web experience, and building a web project that takes into account all of that would most definitely get positive feedback from the audience using it. And that is how you build a positive brand image. 
 
Now, tell me are you not on the side of accessibility? Are you not craving to make the entirety of your website truly accessible to the users, whoever they may be, whatever their physical or mental condition be, and wherever they may be? 
 
If that is the case, continue reading because I am going to be talking about accessibility tools that are found in Drupal, a leading CMS, so that you can use those tools and modules to make your site the epitome of accessibility.

Drupal has certain checklists that are used to evaluate the competence of a particular aspect of your project, these are called Drupal Core Gates. There are six in total, ranging from Content to Frontend and testing. And you would be glad to know that accessibility is one of these six parameters, this alone is explanatory enough to let you know how much Drupal prioritises this part of web designing. 

All of these are proof of Drupal’s compliance with accessibility, meaning that Drupal is incomplete without it. With the additional WAI-ARIA support, Drupal is becoming all the more proficient in building projects that are accessible and rich internet applications. 

With that said, let us look at the accessibility-centric features found in Drupal. 

The addition of WAI-ARIA landmarks, live regions, roles and properties has equipped Drupal to provide more semantic HTML5 elements that can be leveraged by assistive technology.

Let’s try to understand this, when an assistive device scans a web page for information, it extracts the data about the Document Object Model (DOM), or the HTML structure of the page. No further information is read by the screen reader.

Often these assistive devices only allow a user to select to read the headings on the page or only the links. It prioritizes according to the hierarchy in which the headings and links are presented making browsing easier for users of assistive devices. So, HTML and WAI-ARIA help in achieving screen-friendliness and making the UIs more interactive.

Aural users play a major role where accessible design is concerned. To that accord, Drupal.announce() has been made a part of Drupal core so that timely messages can be delivered to these users relying on a screen reader with different tones as well; you can be assertive or polite, it is up to you. This is the Aural Alerts feature.

Users that are visually impaired and the ones who cannot operate a mouse can opt for the Tabbing Manager. This is a feature that would essentially become a guide for these users, so that they are able to access all the salient features and that too in a logical order. 

Your content can be displayed in multifarious ways; it is up to you to decide how you want it. With Drupal’s CSS classes, you can control the way your content is hidden or not. Would certain screen readers can view it or all of them, would hidden, visually hidden or focusable or entirely invisible, you would get to decide every single nuance.   

This is due to the centralised alternative to CSS display:none; and the standardisation of the HTML5 Boilerplate naming convention. 

It is important to provide the necessary feedback to users about the results of their form submission. Both the times when successful and when not.  This incorporates an in-line feedback that is typically provided after form submission.

Notifications have to be concise and clear. The error message, in particular, should be easy to understand and provide simple instructions on how the situation can be resolved. And in case of successful submission, a message to confirm would do. 

Drupal forms have turned out to be impressively more open to the expansion of available inline form errors. It is now easier for everyone to identify what errors they might have made when filling in a web form.

Fieldset labels are utilized as systems for gathering related segments of forms. Effectively implemented

label gives a visual diagram around the shape field gathering. This can, to a great degree, be valuable for individuals with cognitive disabilities as it viably breaks the form into subsections, making it easier to understand.

Drupal presently uses fieldsets for radios and checkboxes in the Form API. This helps towards additionally upgrading forms in Drupal. This feature is also being used in the advanced search option. 

The Alternative Text 

People with good eyesight can see the images, but what about the visually impaired? They won’t be able to see the images. And images are important in context to what you want to portray in your content. So, what is the solution?

It is an alternative text, this text describes everything going on in the picture, so that the people without sight are able to understand what the picture is about. 

Drupal has alternative text as default to make the content accessible to everyone and content creators understand its importance. However, the default can be overridden through CKEditor or Image Fields, if that is what you might prefer. 

The Bartik 

If you think about it, a link is like any other piece of content on a webpage, yet it is different because it has the power to take you to a different page for more information. This power should be highlighted properly. And Bartik is here to help in that. A Bartik underlines a link, which basically highlights it and makes it easily identifiable, aiding to enhance accessibility further. 

The jQuery UI 

Drupal’s autocomplete feature is quite useful and jQuery UI is helping in elevating its usefulness. Being implemented in Views UI and in other places, it is improving Drupal’s accessibility standards. With the involvement of jQuery UI community, the benefits are being experienced by both the projects in leaps.

Drupal Accessibility Also Transcends to Developers: D7AX

When we hear accessibility, we always go to the users. Accessibility has to be about them, right? We must ensure that everything on the site is totally accessible to every user, regardless of their physical condition. 

This notion is true, yet it is only half true. Yes, the majority of the accessibility guidelines focus on the users, however, the developers, the people who actually build a project from the ground up also need to prioritise in terms of accessibility. So, the development process has to be accessible for them to build something great that they are fully capable of doing.

And Drupal provides this as well. Drupal has focused on accessibility for developers and that is what makes me as a Drupalists proud of this platform. Developers can depend on Drupal for support when they are creating accessible sites and projects. 

The D7AX is shining glory of Drupal in this accord. It makes it extremely convenient for developers to find contributed modules and themes that support the development of accessible websites. 

So, what is D7AX? 

It is a kind of platform that lets other developers know that a module has been designed after following all the resources for developing accessible modules. When you see a hashtag saying D7AX on a module page, know that it is accessibility friendly. 

Whenever you use a D7AX module, you are contributing in making that module a success. Using it would mean any issues that were overseen before might be caught by you and resolved, making you a D7AX developer as well and a contributor in Drupal accessibility, 

What about themes? 

D7AX is not just limited to modules, it also works to resolve the accessibility challenges found in the theme layers. It works in similar fashion to that of modules and the hashtag lets the users know that a theme is compliant to the accessibility guidelines. The Accessibility handbook will help you further in this regard. 

Is there an accessibility group?

Yes, there is and it is the Drupal Accessibility Group. It would answer all your questions about Drupal accessibility and make accessibility come alive on your fingertips. With regular sessions and talks, you’ll get to know all the hints, tips and tricks about it. 

Your feedback is always going to be valued at Drupal, the accessibility group is no different. Even if you have concerns about Drupal lacking in an aspect of accessibility, you should raise it. Who knows maybe you end up making Drupal even better. 

This is the kind of indulgence by developers as part of one community that makes Drupal an ideal place for developers to build something that is universally accessible because they have access to the ideas and work of other developers and that gives Drupal an unparalleled edge. 

Modules Making Drupal Sites Universally Accessible

Knowing that Drupal caters to accessibility for the administrators and developers as well as the visitors does give a sense of relief that we are going on the right track with Drupal. However, is that enough? I don’t think so. 

Until you know how to effectively implement the aforementioned accessibility features into your project, you can’t sit back and relax. To help you in executing accessibility to the T, here is a list of the modules that will enable you to deploy a universally accessible project. 

#1 The CKEditor Family 

You cannot talk about Drupal accessibility modules without talking about the CKEditor. It is a WYSIWYG module that provides umpteen features like structured content and clean markup and convenient drag and drop features based on its UI along with pretty secure safety guidelines for your content creators.

The CKEditor in itself is pretty powerful when it comes to accessibility, however, when you bring five of its variants into the mix, it has the potential of making Drupal even more accessible. Let’s have a look at them now.

CKEditor Accessibility Auditor 

The HTML_CodeSniffer Accessibility Auditor comes in the package of CKEditor Accessibility Auditor with a button for the same that audits the source code of your current content. 

If you have a specific error; 
If you want a success criteria and suggestions of techniques; 
If you want to know what triggered the error; 

Everything would be found by these modules and the results will be in front of you almost as soon as you run the auditor.

CKEditor Accessibility Checker 

The CKEditor Accessibility Checker provides a plugin with a creativeness for accessibility inspection of your WYSIWYG body created in the CKEditor itself. Of course, the inspection would lead on to immediate solutions of any problems found. You should know that this innovation plugin is the Accessibility Checker, hence the name of the module.

CKEditor Balloon Panel 

This module is used in relation to the previous one to create floating panels that have accessibility tips. These floating panels are a courtesy of Balloon Panel plugin that make it possible for you to present as content at whichever specific position you want to, 

CKEditor Abbreviation 

The CKEditor Abbreviation’s purpose is quite simple. If you want to add a button to the CKEditor to help you insert and edit abbreviations, it will do that for you. The addition of a link to edit the abbreviation is an added bonus.

USWDS CKEditor Integration

Like the name says, the USWDS CKEditor Integration module integrates the US Web Design System to the CKEditor, which has become a requirement for government websites. You can use the USWDS classes and components and inject them into the CKEditor, all without opening the source even once.

#2 Automatic Alternate Text 

Did you know that there is an API that can actually process images through its state-of-the-art algorithms and return with an output that is quite on point? It can sense the content of the image, its maturity levels and even the prominent colours in it. 

The Microsoft Azure Cognitive Services API is able to do this with ease. Drupal’s Automatic Alternative Text module utilises the competence of this API and provides alt text to images your users did not. 

However, you must be aware of the fact that the way we perceive images and the technology would perceive it may not be similar, so the produced alt text can be different to what you may have expected. 

#3 A11Y:Form Helpers 

Remember the accessible forms I mentioned as a Drupal feature, the A11Y: Form Helpers helps in achieving that. It aims to fix the accessibility issues found in Drupal forms. 

This module’s features are quite impressive. 

  • You do not require any HTML validation; 
  • You can include readable inline error messages for screen readers; 
  • You can even put in pre-filled attributes to certain form elements, which is always a winner.

#4 Block ARIA Landmarks Role

People usually prefer when you come straight to the point and skip all the small talk. And ARIA landmarks are just the means for that; it allows users to skip the unnecessary and switch to the main content. 

With the Block ARIA Landmarks Role, you can add extra elements to the block configuration forms and users can allocate an ARIA landmark role or label to a specific block. Having been created with inspiration from the Block Class, this module does cater to accessibility.

#5 Editoria11y

Editoria11y is a module that caters to the accessibility needs of the content creators and editors. Being a user-friendly checker, it focuses on the accessibility concerns of content authors and rectifies them. 

  • It ensures that speckcheck is always on and corrects the content mistakes as and when they happen.
  • It ensures that errors never happen in relation to Views, Layout Builder, Media and similar modules. This is because it runs in context with them and its checkers are always running.
  • Lastly, it ensures that content issues get fixed by prioritising them. Its exclusive focus on them ensures page editors don’t miss anything that is easily fixable by them.

#6 Fluidproject UI Options 

A web page has a lot of different elements that might need modifications to make them aligned with the accessibility standards set by Drupal and W3C. The Fluidproject UI Options tends to make these modifications easy for you. 

Be it; 

  • the page’s font size;
  • the page’s font style; 
  • the page’s height; 
  • the page’s contrast ratios; 
  • the page’s link style; 

everything can be sorted and the changes can be retained using cookies. However, it does come with certain limitations, using CSS gradients for contrast settings is one of them. 

#7 High Contrast 

You will have a theme that you are currently using, then there will be a theme that would be a high contrast version of the same. Reading this along with the name of the module, you must be able to guess what this module is all about. 

With High Contrast, you will be able to switch between your theme and a high contrast version of the same. All you would need to do is press tab on the keyboard after installing the module and you’ll get the high contrast pop-up link on your screen and the work is done.

#8 Siteimprove

Aiming for high quality content along with higher traffic and a higher level of digital performance is not unreasonable. And doing all of this by adhering to the regulatory compliance is what Siteimprove is known for. 

Being a comprehensive cloud-based Digital Presence Optimisation software, it offers a smooth integration through its Drupal module, wherein  you can capitalise Siteimprove efficiency in content creation and editing process.

Be it testing the content; 
Be it fixing what was found; 
Be it optimising the perpetual work; 

You will have the analytics and content insights at your disposal to make this happen. Siteimprove’s plugins ability to lessen the gap between Drupal and the software’s Intelligence Platform is the sole reason for these amazing benefits. 

#9 Style Switcher 

Have you ever found yourself in a conundrum wherein creating themes and building sites seems like a mammoth task? If you have, you most likely would have been facing issues with the alternate stylesheets. 

The Style Switcher module makes all of this a breeze by focusing on the themer as well as the site builder. It provides an alternate stylesheet for both in the admin section. These styles are presented in a list of links in a block to your site visitors. 

And there is more, with the module making use of cookies, these styles are always remembered and when someone returns to a page, he is welcomed by the same style he chose in his previous visit. Pretty amazing, right?

#10 Text Resize 

Have you ever squinted your eyes to read a piece of text that is too small? Did you get frustrated by it? Now, imagine you have a weak eyesight and focusing is always an issue. Would you be able to read a small font size? I don’t think you will and now you know how the visually impaired feel.

The Text Resize module helps in making the visually impaired feel less frustrated. Using jQuery and jQuery Cookie, it creates a Drupal block that allows users to change the font size of the text, making your pages more accessible. You would be glad to know that it can also resize images. However, you have to remember to enable the Text Resize block of your theme, only then would the block appear. 

#11 Civic Accessibility Toolbar  

Civic Accessibility Toolbar has a pretty similar principle to the previous module. Unlike the Text Resize module, it not only aids changes in the font size of the text, but it also helps users in switching to a theme version that has a higher contrast. 

Now, much like Text Resize, this module also operates on the creation of blocks for the utilities being implemented for accessibility with the visually impaired in mind. 

Bartik, Garland, Zen Starterkit, Stark and Oliveiro are all the themes in which the Civic Accessibility Toolbar has been trialed and tested.

#12 HTML Purifier

Auditing your site with a thorough and secure whitelist as well as ensuring that your documents are compliant to the standards of W3C’s specification will keep you on the good side of accessibility. Drupal’s HTML Purifier module does just that through the HTML filter library of the standard stringent HTML Purifier

With this module you can say goodbye to all malicious code.

Custom fonts; 
Inline styles; 
Images and tables; 
Restricted tags; 

All of these are possible when you combine the HTML Purifier with your WYSIWYG editors. You will hit the standard compliant ball out of the park with a home run through this module. 

Now that we have discussed all the necessary modules that aid in making your Drupal site universally accessible, let’s listen to what one of our frontend developers at OpenSense Labs has to say about Drupal and its part in accessibility.

“Drupal Core on its own takes care of the accessibility in the site. Since many accessibility challenges are confined to Frontend (Theme) Layer, it is better to have good practices in place for frontend development to ensure accessibility compatible sites.” 

I personally feel that he is right. There are hundreds of modules in Drupal and you can use as many of them when building your site. With so many modules at work, your site is bound to be extremely functional and impressive. However, it still might not be accessible, if you don’t keep accessibility as an imperative parameter during the building process. 

I’ll explain this with a few modules for better understanding. 

If you look at all of these modules, they are not blatantly related to accessibility, but all of them are somehow adding to your site’s accessibility appeal. Now, if you developers are constantly building with accessibility at the back of their minds, they would use these modules without any hesitation. 

Therefore, like our frontend developer said, Drupal accessibility is all about good practices throughout the building process and throughout the life of the web project. 

Are You Certain Your Project is Accessible, Let’s Review!

Up until now we have discussed the accessibility features found in Drupal and the modules that support the implementation of those features. Do you think that is enough? Do you think the installing and running a bunch of modules makes all your accessibility work done and now you can sit back and relax? If you think so my friend, you are utterly wrong. 

By running modules, you cannot be certain that your site is truly accessible, that it checks all the accessibility boxes. You have to run a thorough review on all the parameters that can affect your site’s accessibility and after reviewing the results and rectifying them, you can sit back and chill as much as you want. 

So, let’s start the review.

Review through Automation 

You need to start your reviewing process with Drupal’s automated tools that are designed to assess your project’s accessibility levels and issues arising out of it and consequently resolving them. 

Some of these tools are; 

WAVE;
Tenon;
Accessibility Insights;
Google Lighthouse;
Siteimprove;
And Siteimprove Accessibility Checker.

With axe-core, you can automate some of them and sit back while they do their work.

Review the Keyboard

Keyboard navigation is of great significance when it comes to web accessibility, so you cannot afford to go wrong with it. Everything and every element on your screen must be accessible through a keyboard and with a tab order that makes sense.

When making your assessment, look for things like these; 

  • The tab should work forwards and backwards; 
  • The interactive elements should be highlighted from others; 
  • The document object model should be followed in the tabbing progression, making it natural; 
  • The skip option is available for content that is repeated; 
  • The user should be able to skip overlays, modals and autocomplete widgets; 
  • The hovering mouse content should be accessible through the keyboard as well. 

Pointers like these amongst others would make your project keyboard friendly. One more thing, you should remember to review this on mobile and tablets as well to avoid any responsive breakpoints.

Review the Colour and Contrast 

Next comes the colour and the contrast, which should be prioritised too. The foreground and the background need to be quite distinguished from each other. 4.5:1 is the ideal ratio of text to the background. Anything lesser than that would be in direct contradiction to the accessibility guidelines. 

You also need to remember that colour cannot be the only way to relay information. Think of your audience, who might be colour blind; would they be able to gather what you are trying to say?

There are two boxes with the same kind of figures differentiated with colour, but the second has the addition of numbers as a desciption


The second demonstration in this image is what you should always go for. 

Review the Content 

You also need to review your content. By content, I don’t exactly mean the words you use, although the language should be easy to understand. 

Apart from that, there is also the changing content such as the list of search results, which keeps updating all the time. This is called the dynamic content and you must announce these changes through assistive technology; ARIA Live Regions help in this regard.

Headings are a part of the content as well. In this regard, you have to make sure that your headings are not only prominent enough, but also descriptive enough to ensure that something reading it understands its entire context. 

Then there are the icons, which cannot just be the icons because the users would not be able to know their functionality without a proper description. Give labels to all your icons, if you haven’t already. 

Review the Sound and Video 

This one is for the deaf community and people who have hard hearing problems. The elements on your site that are relaying information through sounds and videos should have accompanying textual transcripts and captions so that people who cannot hear what is being said and read it. This would automatically make your site more accessible. 

I used both captions and textual transcripts because this review also focuses on the users with visual impairments. This is because for a complex video, captions alone may not be enough. There may be a need to textually describe the scene to people who cannot see what is happening and captions would only provide context to some degree. 

Review the Animations and Autoplay 

There is a high chance that your project might have animations, audios and videos. Obviously, there would be a purpose for their presence on your site, but you have to consider the user as well and that means avoid autoplay. 

Videos that autoplay and don’t pause by themselves are a nuisance to me, frankly, if I want to watch, I’ll press play myself. So, you should also turn the autoplay option off and even if it is on, the animations, audios and videos should stop playing after a couple of seconds. 

You should also think about adding easy controls to play and pause these media items. 

Review the Screen Reader 

You are going to have users that would completely rely on a screen reader, so ensuring that there are no issues with that has to be on your review checklist. 

For this, 

  • You should assess that the same information is being relayed to users using assistive technology and the sighted users. 
  • You should check the flow of information, ensuring that it is logical much like the tabbing order in keyboard accessibility. 
  • You should see that all your links make sense; something like ‘click here’ won’t really help the screen reader user. 
  • Finally, you should ensure that all the images have alternative text describing them in a clear and concise way. 

Conclusion 

Web accessibility has become quite popular today. If you adhere to the W3C’s guidelines on accessibility, you could achieve wonders for your brand image and enhance your consumer base to a great deal. However, if you do not, your image would downgrade and so would your revenue. The aim of accessibility should be to create a web project that is accessible to someone without any disability, someone with a physical disability and someone with cognitive disabilities on an equal without a shadow of bias.

Accessibility features in Drupal are so comprehensive and whole that they would not let the latter outcome be even an option. I have tried covering all of Drupal’s accessibility modules and tools and I really hope that you will take a note of them and build a project that gets universal attention. Good luck!

Apr 06 2021
Apr 06

SEO is the process of optimising a website's content with the use of certain keywords with the goal of ranking better in the search results of a search engine, for example, Google. SEO is independent of PPC (pay-per-click) results, and focuses on organic rankings. If a business wants to make the most of the web to reach its targeted audience, Search Engine Optimisation is one aspect that cannot be ignored. According to Backlinko, less than 1% of users care to explore beyond the first page of Google.

black and green graph showing the number of people who go to the second page of Google while searchingSource : Backlinko

Website content still relies heavily on SEO for traction, legitimised by a recent survey stating that several bloggers found that SEO was the second most important driver of traffic for their websites.

white and green bar graph tracking the importance of SEO in driving trafficSource : Backlinko

Owing to these parameters, Drupal has taken into account to include several modules to facilitate SEO in Drupal. Not only are there multiple intent SEO friendly features, Drupal also provides several customizations to fit into the trajectories of various kinds of businesses online.

The Drupal SEO Checklist 

Here are some must have SEO modules in Drupal.

For the overall framework

  • Real Time SEO for Drupal acts as a constant alarm clock to remind you of things that you might have missed. Since there are a number of technicalities involved in SEO, one might skip one or two if left unassisted. Real time SEO keeps a track of things like post length, meta description, consistency of the focus keyword and its placement in the appropriate places etc.
  • Drupal’s SEO checklist module makes use of best practices to check your website for proper optimisation.. It automates most of the on page optimisation making use of the latest techniques that are updated in the module regularly. The way it functions is by breaking down the tasks into functionalities like Title Tags, Paths, Content etc. Links to the associated modules are attached against the task. It also keeps a track of the entire SEO history by placing a time stamp next to each saved item. The SEO checklist module, however, is not for newbies as it requires the user to know the basics of SEO to make optimum use of it. 
  • The Require on Publish module is best to use in cases where the content has fields such as tags or SEO data that one doesn't really need to fill in until the content is going to be published. Hence, it marks required only when the fields are actually required in the process, and not before that. 
  • One of the most popular ways of trapping and practicing SEO is to use Google Analytics to look for the trending keywords and then incorporating those in your content. The Google Analytics module allows a number of statistical features to be added to your website like domain tracking, AdSense support, Modal dialog tracking, enhanced link attribution support etc. thus forming an extensive web statistics tracking system for the site. Additionally, you could also use the Googalytics module that provides for integration of Google Analytics in Drupal.

Linking it Right

  • Linkit provides a simple interface for internal and external linking with WYSIWYG (What You See Is What You Get) editors with the help of an autocomplete field. This module has, by default, support for all types of entities that define a link template, for example, taxonomy, nodes, files, comments etc. Linkit, however, does not have support for link attributes like title, class or target and one would have to use the Editor Advanced Link for the purpose.
  • The Link checker module does exactly what its name suggests. It extracts links from one's content and then at regular intervals, tries to detect broken hypertext links by checking the sites and evaluating the HTTP response codes. If a link check fails, it shows it in the separate section on the content page, hands making it extremely simple to rectify any errors.
  • The Footnotes module creates automatically numbered footnote references in the content, making the article look better structured.
  • The Redirect module provides the user the ability to create manually redirects for all the content, while also maintaining a canonical URL for it - hence redirecting all other requests to that path.
  • Pathauto could also be used in such a case to automatically generate the URL aliases and path redirects, to ensure that the changes in the URL alias do not break the existing links. 

For Navigation

  • The Easy Breadcrumb module is a navigation tracker, which when embedded in your pages, utilises data from the work you have already done to generate your paths' alias. It is a plug and play module that auto generates the breadcrumb by using the current URL. 
  • On the other hand the Menu Breadcrumb module allows the user to use the menu that the current page belongs to for the breadcrumb. It uses the titles of the parent menus to generate the breadcrumbs.

Sitemap

  • Sitemap module helps  make navigation user friendly by providing the visitors a sitemap that gives them an overview of the entire site. It also has provisions for displaying the RSS (Really Simple Syndication) feeds for all the blogs and also for the various categories to explore within the site.
  • To generate a sitemap a Simple XML Sitemap can also be used. The sitemaps generated by this module are compliant to Google's standard regarding multilingual content and are also good with respect to SEO in Drupal.
  • The XML Sitemap module takes into account the sitemaps.org specifications, while creating sitemaps, helping search engines like Google, Ask and Yahoo! to better understand and place the website.
  • Using Menu Attributes, one can specify additional attributes for items in a menu such as ID, name, class etc. The user wants to give the menu and ID so that it is easily detectable using jQuery or when you want to customise the menu. 

For tags

  • Metatag module is quite useful for a methodical Search Engine Optimisation. It auto generates structured metadata like meta tags, meta description and meta keywords that help improve the overall ranking of the website in the search engine results.
  • Hreflang tags are used by search engines to serve the correct language or regional URLs in the search results. Once these tags are generated, the Hreflang module automatically adds these tags to the respective pages. 
  • The Schema.org Metatag module could be used to further extend the Metatag module to display data in a structured format in the head of web pages.
  • The Power Tagging module is used to extract the content of your entity, like node or user, and offer you the concepts and existing free terms that fit best in the context. It has the provision of tagging the entire content automatically via bulk tagging, and also supports multilingual tagging.
  • Similar By Terms brings out the similarities in content items based out of taxonomy terms and links assigned to the content, making the site easily navigable.

Combat Error 404

Instead of displaying '404 page not found', the Search 404 module performs a search on the existing keywords in the URL. This helps retain visitors who might happen upon outdated links.

These are some of the major search engine optimisation modules that help Drupal websites achieve optimum SEO, whether directly or indirectly. While the software is constantly evolving to adapt to the changing norms, SEO remains too dynamic of a subject. And with constant parallel innovation in the terms of technology, SEO also keeps undergoing significant changes owing to these trends. Some Optimisation trends that are projected to stay afloat in 2021 are listed below.

SEO trends in 2021

Looking for user’s search intent 

As User experience expands and seeps into different arenas, its effect is bound to be seen in SEO as well. Google has been pretty mindful about making search intent a top priority, ie, the search engine aims to display results regarding the search intent of the user. To figure out the search intent, it is imperative to examine the keyword. The intent might be informational, transactional, commercial or navigational. For example, a person that searches for 'buy protein bars' has a transactional intent, and tracking this, the search engine is likely to redirect the person to an online shopping site or a grocery store nearby. But if the person searches for 'best protein bars', the search results will greatly vary, leading him to a blog or an informational website.

blue, green and yellow boxes talking about user intent while searching for somethingSource : Search Engine Land

Customer Retention

Not just customer acquisition, but retention also needs to be considered while planning out the SEO of a website. When a visitor turns up, you should be interacting with them, answering their questions, and every need that they are searching for. Each keyword that has been used in optimisation of the site should be justified, and there should be appropriate information about it.

Brand SERP Optimisation

SERP (Search Engine Result Page) tracking is projected to become the norm in 2021. This means that brands will go the extra mile to define who they are and what they offer in accordance with Google's Passage Ranking. The SERP layout is projected to undergo change as well, with businesses switching from creating several verticals within the website for different topics to creating long pages for the entire content, for better ranking in the search results. 

For this to formulate, we may see more personalized research on consumer behaviour in 2021.

Core Web Vitals

Core Web Vitals include features like page speed, multiple device friendliness, image optimisation in  different devices, compliance to security protocols etc. Google introduced core web vitals as a ranking factor in 2021. Hence, it is another aspect that needs to be considered while optimising a website. SEO now is not just about whether it answers your users' queries but also about how satisfied the user is with that information and also whether the environment in which it is being presented seems trustworthy. 

Importance of mobile SEO

About 56% of global internet traffic in 2021 has been attributed to be coming from mobile devices, hence while planning out optimisation strategies, the primary area of concern should be the performance of your website when accessed from a smartphone. Hence, a bare minimum mobile experience isn’t going to suffice if you want Google to consider your website setting out the ranking.

Web Automation

The quality as well as quantity of AI (Artificial Intelligence) generated content cannot be beaten, and hence it is expected to increase monumentally in the following year. Jesse Mcdonald, Optimisation Lead at IBM, believes that it is going to be one of the biggest SEO trends in 2021 to roll out automated functionalities with respect to optimisation, cutting down manual SEO wherever possible. 

Content is still the king

It has been witnessed that blogs of over 2000 words outperform blogs of 1000 words or less, the former perform better with respect to Google's E-A-T (Expertise, Authoritativeness, Trustworthiness) guidelines. Hence, the long form content trend is to continue in 2021 as well, as most websites try to expand their content to said length.

Content also has immense potential when it comes to expanding the audience base of the article. One sure shot way of getting yourself some subtle marketing is to include some statistics, survey or study that constitutes research related to the topic, as others writing on the same topic will keep linking you in their document while using your research data.

Graphics do the job of grabbing attention really quick, hence visual content should be added at regular intervals for sustaining the reader’s attention. Concept visuals, i.e., visuals that explain tricky concepts are especially helpful and are more likely to be shared and referred to. 

Lastly, all the constant research that is done over topics from time to time can be brought to good use by presenting a bunch of content on a specific topic as a ‘hub’. These work exponentially well for SEO, and also are a form of value rich content that is likely to grab attention in a good way and be shared widely.

Visual Search

With the popularity of Google lens soaring, visual search has been trending throughout the year and will continue to occupy space in 2021 trends as well. Therefore, optimising images on your website has become as essential, as according to Backlinko, as 32.5% pages that ranked in Google Lens had a keyword in their Title tag that matched Google's Vision Label.

Conversational UI: Voice and Video interfaces

Google Home and Alexa how become the new members of most internet connected households today, simply because the added convenience these devices bring with themselves. This is the reason why Search Engine Optimisation for voice search is not an option to consider anymore - it is quite a necessity. With Google and Alexa constantly referring to sites that consist of the user's question and answer both, FAQ lists are becoming more and more important. According to Google, 4 out of 10 US adults perform at least one voice search in a day. 

Videos are a significant element that are driving significant traffic to websites, as demonstrated by the following graph.

white graph with blue bars tracking the kind of media bloggers use for the SEO of their siteSource : Orbit Media Studios 

With a dedicated social media platform just for videos (YouTube), the change is quite inevitable and was bound to happen. Video Optimisation is the future of SEO today, hence keyword optimisation needs to be done in the multimedia of your site as well.

Featured Snippets 

Google's search results have become smart as well. With increased focus on User experience, the search engine realises that it is pretty inconvenient for a user to click on every website to read the contained content. So it displays the related content in the form of a Q&A as a part of its featured snippets.

Backlinks

Creating backlinks can also effectively improve SEO rankings and drive traction to the site, but this can only be achieved when the content is good enough to quote, or already has a good enough SEO or an online presence in order to be tracked by other websites. Guest posting is another way of tapping into backlinks. 

Google Passage Ranking

Similar to Featured Snippets, Google has also started to run specific passages from websites that appear relevant to the search result. Google also specified that this feature does not mean that the passages are assessed independently of their pages, but simply means that specific paragraphs can also be an additional ranking factor from now on. 

Domain Authority

With E-A-T evaluation setting in, domain authority is less about links and more about this part of the guideline now - as Google says that it wants to rank pages that are 'reliable sources' and appear to have content that is reflective of the qualities of 'expertise, authoritativeness and trustworthiness'. 

  • Creators of the content of the page are taken into account - is the content generated at random by freelancers, or are these people experts in the particular topic? 
  • A suspicious looking website will not rank well on Google's search results, as the notions of transparency and accountability are gaining ground widely.
  • Maintaining a good reputation outside of a website is also equally important. There is nothing worse than your website claiming something and external sources disagreeing with it. Similarly, being cited on other websites on a positive note is considered while ranking as well.

Combating decreasing CTRs

It is common knowledge that organic click-through-rates are down. And yet it comes as no surprise, because it is quite difficult for organic to survive among features like SERP, Ads, and others. There is a way to combat this practice and stand out, even though a little, in this race - and that is by creating keyword rich URLs, as they have been shown to get much more clicks than URLs without the keyword that the user has searched for.

Conclusion

Even after 20 years of its conception, Drupal continues to remain a favourite in website creation, and that is primarily due to its high level of customisation and adaptability to the present trends. Today we see individuals and organisations both contributing to and relying on Drupal because it has a solid foundation of what it takes to stay up to date, even when it comes to SEO - through its extensive modules and distributions. Rest assured, come what may, the community stands prepared to make the most of these upcoming trends.

Mar 24 2021
Mar 24

Distributions are pre-made bundles of utility tools that greatly simplify web developers' work by cancelling out the time spent on creating Drupal websites from scratch. These are complete Drupal copies that consist of Drupal core along with some additional software such as a theme or an installation profile, with a specific purpose in mind.

There are two kinds of distributions -

(A) Full featured distributions that provide everything that you will require for specialised use cases.

(B) Other Distributions comprising quick start tools to simplify the work of developers starting to build a website. 

Why use Drupal Distributions?

Drupal distributions are an extremely convenient way of starting a website, as one does not need to build everything from scratch. 

  • Launching your website becomes a matter of hours instead of weeks. 
  • You don't need a resource with a specific skill set for the different elements of your website.
  • Maintenance on the site becomes even easier as the whole set of modules and on site components can be upgraded in one single Drupal update. 

Major Drupal Distributions 

Let's have an overview of some of the top Drupal distributions and the function that they serve. 

For starting a new Drupal Website

  • Commerce Kickstart is a great distribution for businesses looking to get started with Drupal Commerce, being great for creating online stores. Customised templates, themes and modules in this distribution are specifically set to create an e-commerce website with ease. The new Commerce Kickstart 2.x also provides a demo store to serve as a starting point for new websites, fully stacked with features like search configuration, promotions engine, analytics and reporting tools, marketing tools, payment options and a lot more. 
  • If you are about to work with a lot of repetitive work, consider working with Varbase. Its underlying idea is DRY (Don’t Repeat Yourself), as it automates a bulk of your work through the use of a vast majority of modules, features and configurations.                                                             
  • One of the best Drupal Distributions that can be used as a base for a Drupal site is Panopoly. It is designed to be a general foundation for site building and also to act as a base framework upon which to build other distributions and components. Open Atrium, Open Church, and Web Experience Toolkit are some major public distributions that are using Panopoly.
  • Base can also be used for a simple installation procedure in a new website. In addition, if you want to relieve yourself of the burden of detecting initial configuration settings, go in with Hostmaster (Aegir) distribution as it does the job for you. DevShop Devmaster can also be used to develop and host Drupal sites.
  • If your website is potentially scalable and you want a distribution that supports the idea, Drutopia would be a wise choice as it supports multiple other distributions. It needs to be built using Composer. Scalability is also provided by Drustack’s highly customisable environment. 

If you’re dealing with Media and Publishing

Thunder and Lightning are distributions meant for the media and publishing industry. Thunder consists of a lot of handpicked publisher centric modules meant for professional publishing. It also offers custom regulations and makes it easy to install and use new functionalities, hence keeping up with adaptability and personalization. Along the same lines, Lightning aims to empower developers and editorial teams to create professional authoring experiences by providing a framework that is both lightweight and documentation friendly for a smooth publishing process. Using Composer is recommended to build the codebase for a project based on Lightning.

For official usage

  • Brainstorm is a distribution best suited for corporate use by companies that wish to display their best features and services to the customers. With its engaging User Interface, it enhances the User Experience manifold. Hence, Brainstorm is perfect for making a good first impression, as one can also upload their portfolio and create blog posts on the site, thereby putting their best foot forward. It performs well across mobiles, laptops and tablets owing to its adaptive and responsive design.

Similar distributions that provide for a digital display of a corporate’s services are Multipurpose Corporate Profile, Corporate Profile and Commerce Profile. Along similar lines, if your company is looking to recruit, the Recruiter distribution is perfect to set up a recruitment platform.                                                                        

  • While Droopler is also meant to provide an enterprise with an all inclusive and attractive corporate website, an additional feature of Droopler is that it can also be used with Drupal commerce to kickstart a related project. It also provides custom theming and colour palettes to suit one's requirements.
  • If you are a startup or a small business, Druppio might be a better choice for you owing to its modern flat design and easy configuration. Seeds is a great starter kit for small and medium enterprises too.  
  • If you have an active client base your business interacts regularly with, you could utilise OpenideaL, which is described as an innovation management system to share strategic decisions regarding one’s future products and services with the clients.

For People’s Participation

  • Open Atrium is one of the best Drupal Distributions if you’re looking for something meant for collaboration and engagement of the community to develop solutions and discuss issues together. In addition to this, Open Atrium also helps systematise bug resolution and other tasks by providing features like document and event management, issue tracking, media management and also a work tracker to monitor everyone's tasks - hence leading to a transparent work culture and accelerated organisational growth. 
  • As Drupal is a community driven software, user engagement holds a significant place in the functioning of the platform. Open social creates digital spaces that enable the members of the community to use the distribution's out-of-the-box feature for knowledge sharing, and discussing ideas and solutions. Open Social is used by governments, NGOs and a number of big and small organisations. Extensions to the distribution that expand the use case even further our Real Time Chat, Webinar, Native App, Forms and Surveys, etc.
  • Alternatively, you could also use Open Outreach for public engagement, as it comes loaded with features like event calendars, image and video sharing, and contact management for better collaboration.
  • If the focus is on a productive social engagement, OpenLucius is a great distribution for the purpose with its utility features like social intranet, collaboration toolkit, document management system, real time chatting, notebooks, etc.The usage for OpenLucius is open to both formal and informal sectors.
  •  If your social or official setup requires frequent conferences, Conference Organising Distribution is great for the purpose as it comes loaded with features like event suggestion, selection and scheduling for the event - and social networking for afterwards.
  • For systematic community engagement, the Local Baha'i Community Website Incubator can be used. Its in built features include a multi user site, wherein each member can have their own profile, a WYSIWYG (What You See Is What You Get) editor, a news column and an events calendar. 

For hospitality purposes

Easy Booking offers the user to set up a website that includes every feature that is needed to manage a hotel, inn or a hostel online. Functional both from the owners’ end and towards the visitors' convenience, Easy Booking offers a bunch of options to the guests to facilitate a good User experience like contacting hotel administration, following the hotel's newsletter, or simply being acquainted with all the special offers and discounts. 

For online education

  • The ongoing pandemic has made online learning the new normal, and Opigno is a distribution that works towards bringing to life this new reality. It contains all the features required to create engaging learning paths by first assessing the innate knowledge of the users, and then monitoring their achievements by using reporting dashboards. While ensuring skill addition, Opigno also awards certificates to legitimise the acquired knowledge. Opigno is, hence, a great distribution for universities and e-learning organisations. 
  • Vardoc is another distribution meant for knowledge seeking purposes. It is built using Varbase, and is perfect to host a huge amount of content arranged in a structured manner, streamlining the content in an easily navigable layout. 

Specialised for Governmental organisations

  • deGov is a Drupal distribution meant for addressing the needs of government organisations at different levels. It is used for managing the working of official websites and publishing information. It also provides for citizen engagement portals and civic issue tracking portals for greater transparency.
  • While deGov was developed keeping in mind the needs of the German government, the distribution aGov was created according to the guidelines of the Australian government with the purpose of smooth transition of Federal, State and Local government agencies' websites to Drupal while retaining complete control of their codebase and choice of hosting provider. GovCMS was also created for the Australian government for ensuring a seamless workflow within the government's digital functioning.  
  • Another distribution meant to simplify the working of the public sector is Dimpact WIM. It is used by a municipality to state an online presence and to remain connected to other municipalities of certain regions in The Netherlands, in order to discuss queries and solutions among themselves. This is aimed towards bringing out an integrated public framework. Drupal voor Gementeen is also used by the Dutch government for the same purpose.
  • Also aiming at transparency and citizen participation in organisations is OpenPublic. Open Public makes it convenient for open governments to function with features focusing on providing open government requirements, such as improving citizen services, providing public access to data and providing a public forum for two way communication with agencies, without compromising accessibility, security, or usability. 

For an engaging and innovative website

  • Web Experience Toolkit is a distribution meant to create innovative websites that are usable, accessible and interoperable. It is led by the Government of Canada for free use by its departments, and even external web communities. 
  • Speaking of innovative websites, a responsive, clean and trendy website template is provided by BigVideo Installation profile. The X-factor in this distribution, however, is the ability to attach videos to the background of the site. 

Other important Distributions  

  • OpenChurch is a much thought about distribution that eases the working of churches and ministries by providing them a bunch of utility organisational and developmental tools online. Among the various features of OpenChurch are a blog page, bulletin board, events calendar, and a gallery for uploading pictures on the site. One can also easily integrate the rest of their social media with the website. 
  • farmOS is quite a popular distribution for record keeping and management of farm activities. The modules included in this distribution are efficient in managing all tangible objects in an agricultural farmland - like trees, animals, crops, etc. The functionality of farmOS can also be extended using additional modules
  • Crypto is a distribution for analysing live market market data of over 800 crypto currencies. It uses react.js to list top 4 currencies and coin listing, extracting data from a headless Drupal website. 
  • OpenFed is a distribution created by the Belgian Federal Public Service Policy and Support, as part of the Fast2Web offering. Major functionalities include advanced search, modules for customising layout and modules for enhancing security. 
  • Apigee Developer Portal Kickstart is used to build new Developer portals for Apigee, a platform for managing several APIs. 

All in all,distributions are a great way to simplify one’s work. They also make it much easier to stay up to date with the ongoing trends and developments all around the world.

Mar 22 2021
Mar 22

I was scrolling through my Instagram last night and I saw an advert that was pretty appealing to my taste. It was an ad for those flared jeans that are so popular today. And like any other fashion loving person, I clicked on it and it took me to the website of the brand. Cut to half an hour later, I was a proud owner of a very flared, wide bottom pair of denims with a super high waist line and I was pretty happy about it. 

This is a scenario which isn’t uncommon in the times we live in. If you ask me, I find this trend to be utterly appealing, utterly clever and utterly persuasive. 

I say this because if you think about it, I wouldn’t have ever landed on the product’s actual site, not by any chance. So, the seller’s plan to become a part of social media and sneak into people’s feed with such tantalising videos and pictures of the product, that they have no other option than buying is indeed a masterstroke, if there was one. 

And this is what marketing is all about. It does involve the more technical aspects of designing, production and packaging, however, making the product come in contact with the consumer is like the finale of the marketing film. And to ensure this contact is a memorable one, the marketers make it ubiquitous. Now that I have bought that one pair of jeans, I’m sure my Instagram and Facebook are going to be inundated with similar products and brands in the near future, because if I have bought it once, I might buy it again.

So today, we are going to be talking about an emerging vogue in the ever so evolving realms of marketing and that is Marketing Automation. Let’s get on with the marketing automation guide. 

When the Marketers met Automation

Marketing Automation is a concept that is all about making the work of the marketers a tad bit easy. The automated technology takes the load off of the marketer’s shoulders and onto its own.

At the heart of the concept of marketing automation is the consumer. Every nook and crevice of this concept recognises consumer as the boss. Let’s take a look. 

Understanding consumer behaviour; 
Identifying potential consumers; 
Creating consumers leads; 
Effectively nurturing the consumers leads; 
Personalising the marketing strategies for the consumers; 
And converting consumers into buyers.

These six points can sum up the entire working of marketing automation and consumers are everywhere. Yes, at the end of it, you, as a businessman would benefit from it, but you need consumers for that first. 

If I had to define marketing automation, I would say it is a concept that uses software and technology to ease all marketing tasks, especially the repetitive one. Those social media posts that have to be posted every Monday at 5 on the Twitter handle can be easily automated. The result would be better consumer engagement and increased efficiency, which means more revenue. 

Marketing automation is a pretty broad term that has numerous aspects and functions involved in marketing. 

Sending marketing messages using a trigger; 
Sending personalised emails to keep the consumer in the loop; 
And sending Facebook, Instagram and Twitter stories and posts for perpetual engagement; 

These are three of the most popular ways automated marketing strategies that help marketers generate leads from everywhere and convert them into sales. 

Now that we have covered the general concept of marketing automation, let’s look at some statistics that will give us a picture of its use in the business world. 

A chart depicts the percentage of organisations using marketing automation tools.Source: Regalix.com

The above picture shows the findings of a survey performed on a sample group. With close to a fourth of the surveyors answering an affirmative to using marketing automation, the concept seems to be a hit. 

The image is a combination of a pie chart and a bar graphs showing figures about the perception of marketing automation of businesses.Source: Dun & Bradstreet

Another survey shows the extent of marketing automation at work, with close to half of the surveyors using it extensively. 

A bar graph shoes the trends related to marketing automation in present with future predictions up to the year 2027.Source: Grand View Research 

Now, this one shows how marketing automation is going to progress in the future. Every sector, be it healthcare or education, is expected to enhance its size in marketing automation in the US. It would possibly double in comparison with 2016. So, if anything is going to boom in the future, it’s going to be marketing automation.

Marketing Automation and Its Achievements 

Marketing in general has numerous benefits that not a single person on this planet can deny. Likewise when marketing automation is concerned, the benefits still persist. There is a lot that can be overcome be it reducing costs, increasing efficiency or making you richer by the date and all of that starts with one lead generated by marketing automation. 

Let’s have a look at all the achievements of this marvelous concept. 

Automation saves time 

The main difference between doing something manually and automatically is the amount of time it takes to complete it. When you automate simple marketing tasks like figuring out the seriousness of a lead or sending emails, you free up a lot of your time. And that time can be used for more meaningful tasks like converting leads. 

Automation increases income 

A major benefit of automation in marketing is generating leads, which later helps in creating higher conversion rates and lower abandonment rates. What do you think would be the result of this? More sales, which simply means more income. 

There is also the perspective that marketing automation reduces costs because with automated processes, you would need less manpower and hence, lower costs. 

Automation eases scaling

Every business is meant to grow, so a marketing strategy that takes into consideration the present scenario along with every possibility that the future may hold should be the right choice. Marketing automation is that choice. This concept grows with you, regardless of the pace you have. Look at Tesla’s stock prices in 2020, that could happen to your business as well and marketing automation would be right there with you. 

Automation enhances user understanding 

Marketing automation is also responsible for making you understand your demographic better. This is achieved by tracking and monitoring every contact the user makes with your business and where they stand on the purchasing decision, you could say that marketing automation is essentially behavioural tracking of the consumers. The outcome of this level of user understanding is that you can make a few tweaks here and there based upon user patterns and thereby compel him to make a purchase.

Automation evaluates your successes concisely 

Marketing automation tools are a part of it and these tools have the capability of measuring all the right numbers for you. You’d be glad to know these numbers are not just pertinent to your consumers, but you as well. Assuming you automated an online campaign, once it is complete and even during it, marketing automation tools will have recorded its performance down to the T. This way you would know how you performed and what you need to work on.

Making Marketing Automation Work

Next comes the part, where we understand the workings of marketing automation. Yes, marketing automation is becoming increasingly popular. Yes, there are numerous benefits of this concept, but if you do not know where to start its implementation, then what is the point really? 

So, here are a few pointers that will give you an idea of how automation in marketing works, more like how you can make it work.

Do you know your needs? 

When thinking about marketing automation’s working, the first question to ask is what do you need it for. You can’t make it work, if you do not know what to work for. Is it lead generation or you simply want to ease the pressure of marketing by scheduling things and events instead of always worrying about the upcoming ones?

This concept can achieve so much, but only if you know what those achievements will look like. Create a workflow and start following it. 

Are you understanding your consumers?

Marketing automation helps you in understanding your consumers, but the more important thing is what you do with that understanding. Yes, you know what your target audience looks like, which geography you are targeting and what the psychology of the users is. But what then? When you have an answer to that, you’ll hit the automation homerun.

Are you using the right tools?

This concept is nothing without the right set of tools. Automation relies on technology and technology means tools and software that will make marketing a walk in the park. Drupal, a leading open source CMS, for instance, has numerous third party tools that allow its sites to capitalise the automation vogue. More on this in the next section. 

Are you building relationships or retaining them?

Marketing automation will target a whole new section of consumers. This would be a long and expensive process. So, just building new consumer relationships isn’t the right way of marketing automation. It would only be right when you focus on retaining the past consumers and cinching them to you with loyalty. How? That you have to think on.

Does the outcome seem too-automated? 

Marketing automation can seem a little too impersonal to the consumer. If it does, you are on the wrong track. To make the concept work, you must focus on personalising every consumer interaction. Make your brand something to remember. Reminding a consumer, who hasn’t been active based on your data, that their empty cart is missing them with a popup in their notification bar will compel them to have a look at your new catalogue. Hook, line and sinker, but with a personal touch.

After you have the clear cut answer to these five questions, it would be wise to know four more aspects that contribute to making marketing automation work for you. 

  • You must always remember to specify things and criteria you are working for along with the outcome you aim for. This is because all of this would need to be interpreted by the software at work and that would in turn be stored and executed to make you get what you wanted. 
  • You must leverage cookies, because it is these stored inside the visitor’s browser that let you know his behavioural patterns, track them and issue scores as well. 
  • You have to generate leads as a marketer, and forms with valid contact information of the customers is one of the best ways of doing that and further qualifying these leads.
  • Finally, you must have a plan that combines both inbound and outbound strategies. This helps marketers make out the difference between strong and feeble leads. 

One of the prime purposes of marketing automation is generating leads and these four points effectively achieve that. 

Making a Play at Marketing Automation with Drupal 

We have already discussed the priceless value of marketing automation in the business world, going without it is no longer an option. To that sense, Drupal has come out as a pretty valuable asset, having tools and modules that cater to each and every marketing automation need and then some. 

With the very appropriate motto of “Drive Your Strategy Forward,” Drupal indeed helps businesses in moving forward by attracting, engaging and delighting your consumers with personalised content and services. 

  • Be it real-time sales alerts; 
  • Be it managing your consumer data in bulk; 
  • Be it streamlining your workflows;
  • Be it tracking your site’s traffic down to the conversion rates; 
  • Or be it advanced email reporting; 

Drupal is equipped and ready to let you take advantage of the automated marketing strategies down to their very core.

Now, let’s focus on the specific tools that make the Drupal motto on marketing automation come alive. 

#1 Marketo MA

The Marketo Marketing Automation (MA) module helps your website by allowing it the ability to track like Marketo and capture lead data during user registration and form submission.

Mareketo’s Munchkin adds certain features to this module like tracking code to pages and capturing lead data using it’s JavaScript or API integrations. The lead capturing, being the highlighting feature, can be done during user creation, update and/or login; all you have to do specify the user actions. 

It can also very conveniently integrate itself with other marketing automation modules found on Drupal to give a better execution experience.

#2 Pardot Integration

A big part of marketing automation are the online marketing campaigns; they are essentially responsible for substantially increasing the revenue. 

Pardot Integration is a module that helps your marketing departments to not only manage these online campaigns, but also to create and deploy them. There are umpteen CRM tools that Pardot can integrate with to make the marketers tackle lead nurturing, scoring, and ROI reporting. 

Salesforce.com 
NetSuite 
Microsoft Dynamics CRM 
SugarCRM are a few of them. 

#3 HubSpot 

A renowned inbound marketing software famous for attracting, converting and closing customers has integrated itself with Drupal to form the HubSpot module, which comes with an embedded HubSpot JavaScript tacking code.

The HubSpot API and integration to Webforms which are directly submitted to HubSpot’s management system, makes this module work pretty smoothly, be it for tracking customers through signups or unleashing your existing email campaigns for the said customers. 

The fact that Webform 3.x is used makes building virtually any kind of form and embedding them anywhere possible.

#4 Poptin 

Poptin is a module that helps in creating popups, optins and forms in minutes. By showing these popups to your visitors at the right moment, you will be able to keep them engaged and minimise the chances of abandonment. The result is better sales and more revenue. 

All of the work that Poptin does is dependent on consumer behaviour, an insight to which will allow you to dole out the most irresistible popups for the consumers. You can customise the popups for your brand keeping in mind its aesthetic and vibe.

The inclusion of advanced triggering options like; 

  • Exit intent trigger; 
  • Display after time spent on website; 
  • Display after website X pages visited or X number of clicks; 
  • URL targeting; 
  • Device targeting; 
  • And traffic sources amongst others make this module more than appealing to the marketers.

#5 Mailchimp 

Mailchimp is an email delivery service. With emails being an important part of marketing automation, the Mailchimp module provides seamless integration with this particular service of the same name. 

The Mailchimp features include; 

  • directly connecting email entities to its lists; 
  • creating forms for easy signups; 
  • creating, sending and viewing campaigns and its statistics; 
  • being able to see to all the past activities on Mailchimp; 
  • and finally, triggering automated emails for defined events. 

#6 Salesforce Suite

Salesforce is a customer relationship management service platform with a side of marketing automation for customer service. Drupal’s Salesforce Suite allows to reap the full competency of the platform to propel the marketing strategy forward. 

Being a suite, this module has a range of Salesforce modules that integrate themself with the software and synchronise Drupal entities with Salesforce objects and push and pull data from each other. 

  • Salesforce Integration 
  • Salesforce Mapping 
  • Salesforce Mapping UI 
  • Salesforce Push 
  • Salesforce Pull are some of the modules in this vibrant suite.

#7 Webform 

Like the name says, the Webform module helps in creating form and surveys. These are forms that will tick all the right boxes for an enterprise grade form made using an enterprise grade form builder and the versatility of Drupal.

Once the forms are created and submitted, customisable e-mails become an option to be sent to admins or submitters or both and results are often exported to spreadsheets. Once that is done, the modules continue to work to provide a statistical review. You can also add other extensible features, if you like. These include encryption, antibot, the use of Captcha and MailSystem to name a few.

#8 CleverReach

The CleverReach module combines the efficiency of Drupal and CleverReach and makes marketing seem easy. With CleverReach’s email marketing software at work, you will be able to create, send, measure and manage your email campaigns. 

Together with the CleverReach API, this module can do a lot. Before that you would have to do two things. 

  • One is to import your CleverReach- Groups & Attributes or fields; 
  • Second would be to create a block for every group. 

These blocks would basically be newsletter subscription forms and the attributes would be the form fields. Once you have done that, subscriptions would automatically be sent to your CleverReach account. 

#9 Google Analytics

Google Analytics isn't unknown to anyone, least of all today’s marketers. Being an eminent marketing platform that allows marketers to measure everything from advertising ROI to site traffic and tracking social networking applications and sites. 
 
The Google Analytics module lets you integrate the platform’s web statistics tracking system to your Drupal site. 

  • Tracking single, multi or cross domains;
  • Tracking certain users, roles and pages and even excluding them; 
  • Tracking links and monitoring the types that are being tracked;
  • Monitoring the kind of files that are being downloaded; 
  • Tracking URL fragments that are changing; 

And so many other features that are incorporated into Google Analytics will be at your doorstep with this module.

#10 Crazy Egg

Crazy Egg is a popular website optimisation platform that specialises in heatmaps. With its integration with Drupal, all those heatmaps would become accessible for you in your marketing automation strategy. All you need is your Crazy Egg account details, enter them and you’ll be all set.

The Crazy Egg module comes with additional features on top of the heatmaps. These include; 

  • Knowing where your visitors scrolled through scrollmaps; 
  • Knowing exactly how you users interacted with your site through session recordings; 
  • And performing A/B tests to run two versions of your site simultaneously.

#11 Cloudwords for Multilingual 

Marketing isn’t confined by geography or language anymore. Global campaigns are being run everyday from anywhere in the world. This mandates that campaigns and marketing be accommodating to multilingualism because someone in Indonesia would never be able to relate to American Content. 

Cloudwords for Multilingual helps in this regard, being the fastest and most flexible way of making your website become localised. Cloudwords is built for marketers and by marketers, it is one of the most popular ways of running global sites. Its integration with Drupal makes both the software run to their maximum benefits and your campaign will definitely benefit from that.

#12 Mautic 

Mautic is an open source marketing automation service, which gives businesses the opportunity to integrate and personalise every digital property and channel they might have, so that the consumers receive a seamless experience every time. 

The Mautic module integrates itself with this platform, and the results are campaigns and content performing at a higher level to attain better leads and conversions. Choosing multiple authentication methods and selecting forms from a particular Mautic instance for display are two of its most used use cases.

Conclusion 

Marketing automation is gaining grounds by the day. An organisation that isn’t taking it up would somehow be lacking in its marketing game. Remember the end goal of any business is just one, to get to the desired revenue figure, no matter the path it may have to take. Marketing automation one path that makes that figure seem almost tangible. So, why not take it up. With Drupal marketing automation is a breeze, so again, why should we not flow with the wind?

Mar 15 2021
Mar 15

‘Retail therapy,’ an extremely common phrase in today’s era, can work wonders on lightening a person’s mood. The new 1000-thread count Egyption sheets, when wrapped around you, can make the gloominess seem distant. The new Clavin Klein perfume can actually make your day seem more fragrant. And the new smart watch you just saw on Amazon has the potential of making you as fit as you want.

So, retail therapy is quite up there on the pedestal of making people feel great about themselves. And retail therapy, if done from the comfort of your couch while watching a Friends’ episode is all the more beneficial. And that is what we are going to be talking about today, the online retail market or ecommerce, if you prefer. 

Buying things with a few clicks on your computer screen used to seem like a novel idea close to a decade ago, but now it is an everyday occurrence. The ecommerce industry has boomed exponentially and these numbers are proof of that. 

Statistics on ecommerce are mentioned.Source: StatistaGlobal retail ecommerce sales figures are presented.Source: eMarketer

3.53 trillion USD is an exorbitant amount and that is the value of online retail sales globally. If a pandemic couldn’t stop ecommerce from flourishing, I am certain nothing can. 

Now let’s come to matter at hand. The point of this blog isn’t to tell you the value of ecommerce per say, rather I am going to be focusing on one emerging aspect of ecommerce that has made it quite different from the past, and maybe even a little intriguing and that is content. How content has played a role in ecommerce, why it’s important, how it is being used, does it actually have an effect on sales, and finally how does Drupal come into the equation? We’ll find answers to all of these questions. All you have to do is continue reading.

Content and Commerce: Understanding the Dynamic 

Words are a powerful thing. It’s words that can make a person the wisest and the most stupid. The right words can have such a profound effect on its reader that it might even change their way of thinking. With such a profound effect, it was only a matter of time that the power of words was being utilised in commerce in the truest sense. This is essentially the meaning of Content-driven Commerce. 

If you look at the traditional sense of advertising, you would find it flawed to a great deal. Those TV commercials, the cleaning ads and those ludicrous weight-loss adverts, all of them have hardly any truth to them and the viewers know it. Perhaps that is why they no longer resonate with their target audience. People have become far more difficult to please now than the past.

Cut to the emergence of Content-driven Commerce, with its realistic outlook and clutter-less approach. If I talk about myself personally, I find the incorporation of content in marketing strategies, the best kind of, well, marketing strategy. 

Look at this screenshot for instance. 

A screenshot of Amazon's product page can be seen.Source: Amazon

Upon searching for nuts on Amazon, you will probably end up on this piece of article in the screenshot above. Now, not only is this article advertising Amazon products, but it is also informative and enlightening. And the latter fact is what makes it a masterstroke of marketing. Someone reading it would have learnt something new and that knowledge is going to spark a craving that would require satiation upon every purchase journey. 

Content commerce isn’t just related to writing blogs and articles. You might have thought so, since that is the only thing we go to when we hear the word ‘content.’ This concept is broader than that. It includes everything from infographics to videos, from podcasts to webinars, anything that can instill interest in the buyer and be informative can be considered as content.

The Science of Content Commerce 

Content commerce has a lot of thought put inside it. You can just bombard the buyer with one piece of content after the other and expect that he’ll admire them all and be ready to click on that buy now button with a massive cart waiting to be delivered. Nope, that’s not even close. 

Consumer data; 
Consumer shopping behaviour and patterns; 
And industry trends; 

These are the three aspects that sum up the science of content commerce. When you know what your customers want, what patterns of behaviour they follow and how your competitors are taking action on that, you will have the most sound content commerce strategy; that would be  personalised to the T.

For instance, 

At present, being a minimalist is in vogue, with a subtle emphasis on the key features of the products that would be enough to inform, educate and inspire the visitor. With a touch of personalisation, a splash of fun through quizzes and a hint of what’s more to encounter through catalogues, the visitor is more or less hooked. This coupled with customer testimonials and case studies pushes the visitor one step closer to the purchase. 

This is how content commerce is being done today and it’s working. The result is better and more interactive and informative consumer experiences.

A venn diagram of content and commerce is depicted.Source: Pimcore

So, you tell me is Content-driven Commerce a trend that would make people fall in love with advertising and make their buying experience something to remember. If you ask me, I’d most definitely say yes. There are many like me who believe that content driven marketing is going to pick scale and boom in the future. 

A pie chart shows the popularity of content-led marketing campaigns.Source: eMarketer

Why champion Content driven Commerce?

At the end of day, the consumer would only come to your business only when he’ll find you different from the others, when he thinks that you have more to offer than the rest. And content commerce is the best way to make that happen. You can build your brand’s identity based on the kind of content you deliver on your site and outside it. When people would actually associate you with providing meaningful and rich contextual experience, would your goodwill not enhance? I think it will and that is why Content Commerce has become such a big deal. It allows brands and businesses to leave a strong impression on the audience. 

A travelling documentary that was posted on a tour and travel site as a testimonial on its home page could actually make many wish to experience the happiness and exhilaration that the video boasts on and on about, much more than any TV commercial or newspaper ad would ever be able to. That’s the power of content combined with commerce.

In Comes Drupal: The Perfect Blend of Content and Commerce 

So now you know the power content has, but how do you leverage it? Having resonating content and having the ability to showcase it are two different things. The former is all you, while the latter mandates the decision of making a choice amongst the varying options. Having worked with Drupal, I know the answer to the leveraging dilemma is Drupal itself. 

You must wonder why?

Drupal is a powerful CMS, which is renowned for its ability to handle any kind of content without any glitches. Drupal has a solution for every kind of content type you can imagine, making your experience of content authoring easy and flexible.

  • Easy Content Authoring: Intuitive tools for content creation, workflow and publishing make it easy for content creators. User permissions, authentication help manage the editorial workflows efficiently. Previews help the editors access how the content will look on any device before the users approve and publish.
  • Mobile Editing: Team members can review, edit and approve content from mobile devices, to keep content and campaigns flowing, regardless of where they are and what device they’re on.
  • In-place Authoring: The WYSIWYG editor in Drupal to create and edit content in-place. 
  • Content Revisioning and Workflows: For a distributed team Drupal enables a quick and easy way to track changes, revisions, and stage. It tells you who did what, when, out of the box. Also, it lets you manage custom, editorial workflows for all your content processes. Content staging allows you to track the status of the content - from creation to review to publication - while managing user roles and actions, automatically. 
  • Content Tagging and Taxonomy: Beyond creating content, Drupal’s strength lies in creating structured content. This comes when you define content elements, tag content based on their attributes, create relevant taxonomy so it can be searched, found, used, and reused in ways that satisfy the visitors.
  • Modules for Multimedia Content: Entity browser, paragraphs, pathauto, admin toolbar, linkit, blog, meta tag, and other content editing modules give the extra lease of life by extending and customizing content features and capabilities. They allow you to choose what features you want for your site.  
  • Yes, Drupal is great for content, but it is equally great with commerce. It’s because Drupal has the innate ability to to integrate content and commerce. It can manage every single aspect of a commerce site, be it its products, carts or financial transactions and then integrate all of it with content and media. What’s even more fascinating is the fact that Drupal helps you build an application that is a perfect fit for your needs today and tomorrow because when times change, Drupal changes too and its third-party integrations are the reason for that.

Let’s now look at Drupal’s commerce centric features to understand its compatibility even more.

Drupal Commerce 

When we talk about Drupal and ecommerce, the conversation cannot begin or end without the mention of Drupal Commerce. It is one feature that makes Drupal outshine all other CMSs in the market because it promotes innovation and growth through standards that make you take advantage of everything Drupal has to offer. 

With Drupal Commerce, the possibilities are limitless because that is how it is designed; to help you build what you want not be confined to what it can do.

  • From product types and descriptions to diversified product pages; 
  • From payment gateways to tax calculations; 
  • From organising promotions to managing orders; 

Drupal Commerce can do it all for your ecommerce business digital channel. 

Decoupled Drupal Commerce

Decoupling works by separating your commerce site’s front end from its backend. You can take up JavaScript for the presentation layer to make it more interactive, while all the backend aspects would be handled by Drupal. All of the benefits of decoupling would be enjoyed without parting with Drupal Commerce.

You will end up with a site;

  • that is faster and more engaging;
  • that is richer and more interactive;
  • that is easier to update and modify, without one end affecting the other; 

All of this because you won’t be confined to Drupal to build your frontend, you can take up any of the available frontend technologies. More on decoupled Drupal Commerce here.

Drupal APIs

Where there is Decoupled Drupal, there are APIs, which streamline the separation of frontend and backend as well as provide the connective thread. With the robust Drupal APIs, it becomes all the more easy to integrate Drupal with other services.

Again Drupal Commerce plays an imperative role here, by providing additional modules that extend REST APIs in Drupal. These are; 

These result in better functionality for your retail site as well as make it work with far more tools than otherwise would have been possible. More on different Drupal web services implementations here.

SEO Benefits 

When we think about content-driven commerce, we have to consider content as much as commerce. Writing blogs and articles is all good and fine, but how do you make them shine on the search engines, that is where SEO friendliness pops in and Drupal is best friends with SEO. There are numerous SEO modules in Drupal that will help in everything you might need, from keywords to tagging, Drupal will have you sorted and ensure that the educational pieces you wrote do just what they were intended for.

Out-of-the-box Benefits

And there is more. Drupal has several other out-of-the-box features that make it totally compatible with ecommerce sites, especially handy, if you are going to be running your site in multiple states or even nations. 

  • Be it multilingual support and translations; 
  • Be it handling multiple currencies;
  • Or be it the management of multiple stores from one place; 

Drupal will have you sorted by providing the right module for the right need. Plus, the superabundance of themes available in Drupal will ensure you get the desired modern look and feel for your ecommerce website.
 
On top of these, the fact that Drupal helps you deploy your ecommerce site built with Drupal Commerce within hours is the only silver lining left to make you cave in to Drupal.

For a comprehensive guide on Drupal’s offerings for an enterprise-scale ecommerce site, read here.

Drupal at Work in the Ecommerce Industry

Now that you know all that Drupal can accomplish, let’s look at some of the e-commerce businesses that have successfully been able to leverage the prowess of Drupal in this domain.

Timex

The screenshot of Timex's website is presented with a number of watches from the catalogue.


Timex is an American watchmaker, you most likely have heard of it. It wanted two things out of its retail site and these were; 

  • A unique site for personifying what the brand identifies itself as, its own style had to be incorporated into the site’s design. This also meant that product, social and editorial content had to be combined to deliver an impressive visitor experience.
  • Secondly, the Timex team wanted independence, meaning they wanted to be able to create, manage and update content as and when required without a developer. 

Drupal effectively checked both these requirements and helped create the perfect Timex site.

Cannabis Yukon 

Two screenshots of Cannabis Yukon's shopping cart are shown before and after the changes.


The legality of cannabis is still a contentious issue all over the globe. Therefore, when the Government of Yukon had to build their cannabis retail, their paramount concern was to protect the privacy of its users. That is why Drupal was chosen, to have total and complete control over the consumer data. This along with Drupal Commerce and the fact the Government of Yukon website was already on Drupal, the decision was final.

LUSH 

The screenshot of LUSH's homepage can be seen.


Being a popular cosmetics company in Britain, LUSH had a massive following of users. That meant when it delved into the digital space, there were a lot of clicks per minute, especially during its Boxing Day sale. When its site ended up crashing with such a load of users, it decided to switch to Drupal, which can handle any amount of traffic thrown at it. With Drupal, the code and architecture was rethought and the site made impressively scalable. 

King Arthur Baking Company 

The screenshot of King Arthur Baking Company's website is shown.


King Arthur Baking Company is known for its mouthwatering recipes. It switched to Drupal for its transition to the digital space and was able to provide personalised experiences to its audiences, be they pro bakers, first-time novices or climbing the ladder of baking. With the additional support of experts available through expert bakers the site was indeed a success.

Conclusion 

Every site that is built has a purpose behind it, for e-commerce sites that purpose is deriving sales. Today, achieving that is no longer a walk in the park. You have to leave a mark on the user’s mind and personalised and informative content is the way to do that. 

With Drupal Commerce and Drupal’s impeccable content management system, that aim of higher conversions and better brand loyalty is no longer distant. That’s the Drupal factor in content-driven commerce.

Mar 12 2021
Mar 12

Whenever we build something, we always ensure or at least hope that it doesn’t get damaged. Take our homes, for instance, we have more than a few locks at our places to protect and keep it secure. The same goes for our gadgets, our vehicles and most importantly our livelihoods. 

This brings me to the world of website development, wherein security is a major issue. An ill protected site is all but setting its demise, bugs and hacks will become its doom eventually. So, what should be done about it?

I have an answer and that is Drupal. 

Drupal, being a content management software, comes with an array of tools and features that protect its sites from every security breach. You will have to optimise Drupal properly to make that happen.

Drupal is one of the safest open source CMSs out there

A pie chart depicts of results of sample group survey for security of various CMSs.Percentage of security issues in a sample group. Source: Acunetix

These numbers are proof of the competence of Drupal's security measures. The entire responsibility of ensuring optimal security lies on Drupal security modules. And that is what we are going to be talking about today.

With the launch of Drupal 9, security has become all the more important. So, we’ll be discussing all the essential modules required for this task. I have taken the liberty to segregate the modules into eight categories, which will cover all the aspects of security that need to be looked into and protected to make a full-proof site. 

Let’s delve right in.

Seven parameters for Drupal Security modules are quoted in seven squares.


Tackling Brute Force 

A user logs onto your site, he has a strong enough password to protect his credentials, yet there are people who will keep trying to break that to gain access to your site. When these bad actors do that, you have to protect yourself from their Brute Force. If they gain access to your site, your entire project would be compromised and that would be an upsetting scenario. 

Tackling brute force starts with user registration, Drupal’s User Registration Password module allows users to register with a password while filling out the registration form, with a verification email. This module together with Password Policy ensures that the passwords set uphold the ideal standards with uppercase, lowercase, numbers and symbols at work.

What if your user wants to remain logged in?

That is an option with Persistent Login’s ‘Remember Me’ feature. However, you as an administrator can control how long those ‘Remember Mes’ live; meaning you could make a user sign in again after some time. You can also control which pages these users can and cannot access. 

There is also the option of Automated Logout, wherein an administrator can log a user out who has been inactive for quite some time.

Moving on, Secure Login is a module which ensures that the user logins and other forms are securely submitted without any transparency. With Login Security, you can protect and secure your site further with access controls. For another layer of security of individual pages, you can use Protected Pages, this module can secure any and all pages on your site with a password. 

Finally, you can also restrict the number of sessions by a user at one point, using Session Limit.

All of these together can make your website or application a force itself, which no brute can think of targeting.

Handling Authentication 

From brute force let's move onto authentication. Did you know that authentication is very different from authorisation? Authentication is the former step, wherein a user is identified and validated in regards to his claim over the site and its access points. The above talked about passwords are one way to authenticate a user. 

Once the authentication is done, authorisation swoops in. You know the person is an administrator, but what’s his grade? Can he be entrusted with sensitive information? Giving him the rights and liberties to access pages, data and any and all information is what authorisation is all about. 

How does Drupal handle it? 

Through its umpteen modules of course. Like I said before, a password is one of the best ways to authenticate, however, adding another layer of authentication with it becomes the best option of them all. Two-factor authentication and Google Authenticator Login provide you just that. While the former sends a code to the user’s mobile number, the latter works on a Time-based One-time password. Google Authenticator/ 2 Factor Authentication also provides similar functions. There is also the option of choosing Require Login, a module that aids in making user authentication on pages a mandate. 

If a user is authenticated with an external site or service and its authentication details are stored there, he can be logged in or registered with External Authentication. With Social Auth Google, users are authenticated using their Google accounts to your Drupal site. JSON Web Token can also be used as a factor to authenticate users through JSON Web Token Authentication. Drupal OAuth & OpenID Connect Login - OAuth2 Client SSO Login is a module that would allow any OAuth or OpenID Provider resident user to log in to your Drupal site. 

The authentication powers of SAML, OpenID Connect and Lightweight Directory Access Protocol can also be implemented with Drupal. SAML Authentication, SimpleSAMLphp Authentication, OpenID Connect and LDAP help in that respectively.

Social API is another module that can integrate with external services through a Social API. Using it would mean you can integrate modules for every authentication task.

What about IP addresses, is there any module pertaining to them?

Well, yes. You can very easily block access or simply ban certain IP addresses, if you want. Automatic IP ban and Advanced ban accomplish this feat conveniently, the former even has a watchdog table.

Finally, what about malicious attempts at authentication? 

Drupal has you covered there as well. There can be instances wherein certain bad actors try to identify valid usernames. This is called Username Enumeration and often leads to credential stuffing. However, Username Enumeration Prevention helps in avoiding that by stopping these anonymous users in their tracks.

Controlling Administration 

User access and authentication reminded me of the administrators and the role they play in accessing a site, which brings me to the next classification of security modules. Just like users can’t be granted access to everything on your site, the people building it also cannot be given total and complete reins over it. As there are permissions and restrictions for users, there are also for administrators. 

Let’s see what Drupal has to offer the administrators in terms of permissions and roles. 

Firstly, there is Permissions Filtered by Modules, this provides a filtered list of modules and roles at the top of the permissions page making management a breeze regardless of the number of roles. Then there is Administer Users by Role, which fine grains permissions even more to the level of sub-admins.

Next come the specific permissions and roles; Block Region Permissions and Block Permissions not only allow you to control access to administer blocks, but also pave way for finer grained validation in managing blocks, respectively. For adding, modifying and deleting items, an administrator can be given the permission from Menu Admin per Menu, specific to certain menus, or he won't be able to do that. You can also set permissions to fields related to authoring information and publishing options through Override Node Options

If you wish to disable User 1 to remove the administer user’s permissions, which allows them to edit their username and password, you can do it with Disable User 1 Edit.

Drupal also has another quite charming module, which I personally love. This is the Masquerade module, as the name suggests an administrator gets the power to switch users and surf the site as the switched user and without the need to enter a password. This helps a great deal in knowing the site’s outlook from the eyes of a client.

I would like to talk about Role Delegation here as well, it is a module that allows site administrators to assign roles to further authorise roles to users. 

Should we talk about user permissions and administrators control them? 

Yes, we should. There are two specific modules I want to mention here, one is View Unpublished. This allows an administrator to give access to user roles to view certain unpublished nodes. 

Second would be the Menu Item Role Access, which makes it possible to restrict certain items on a menu without the need for creating separate menus altogether. Isn’t that just great?

Intercepting Content 

Now it’s time for the content, who can access it, how it should be accessed and what should be accessed and what needs to remain restricted. 

Your content can be as secure as you want on Drupal. With its modules, you can easily manage your content without any worry of it reaching the wrong hands or eyes. Content Access will help you to manage access permissions. It's both flexible and transparent and would let you classify the permissions as ‘view all’ or ‘view own.’ Node View Permissions also works similarly with the same exact permissions.

Field Permissions helps site admins to set field level permissions for editing, viewing and creating fields for any kind of entity.

What about blocking content from certain users or admins?

There is a lot to talk about here as well. Let’s start with hierarchy, Workbench Access is a module that would allow you to create editorial access controls and guess what these controls would be based on? Yes, it's the work hierarchy. 

Then there is Block Content Permissions, with this you can control access to administer block content types and create, update and delete them whenever you want. There is also the option of blocking a node from being edited by two users at the same time, this can be done through Content Locking

You can also add a filter that would exclude pages from certain blocks, after or even in between a wildcard with Block Exclude Pages. If you are thinking about granting access to certain users so that they can view unpublished nodes and media, Access Unpublished can help you with that.

Another clever module is the 403 to 404, which displays the 404 error when a user tries to access a page that he doesn’t have the permission to access.

Implementing Encryption 

The majority of the files and messages on a website or its server are usually encrypted. This is done so that the unwanted eyes do not reach them. Can Drupal modules be serving this purpose? Of course. 

Your database is going to have several field values stored inside it, with Field Encryption module, you can store these values in an encrypted manner of your liking. You create your own encryption method with this. 

What about the key?

There is a module with the same name. Key helps in managing all sensitive keys including APIs and encryption keys, of course. You, as an administrator, can take command over how and where these keys would be stored, making the security of the same pretty efficient. 

Is there a module that does both? Encryption and decryption?

There certainly is. You can perform symmetric and asymmetric encryption with Drupal. You can integrate modules to perform encryption and decryption in a standardised way. You can also have any number of encryption profiles used by any number of modules. And you can do this with the Encrypt module. 

You can also use the power of AES encryption with the Encrypt module. For that, you would have to combine Real AES with the former and gain access to Defuse PHP-Encryption Library.

Fighting Spam 

Unwanted and unsolicited is what spam is. It may seem like nothing beyond a nuisance, but it can become more if the web builders become complacent. Spam is capable of infecting your site with malicious software and you must know that that can never have a positive outcome. Lucky for you, Drupal is capable enough to never let that outcome take place. 

When we think about spam, a few things instantly pop up in our minds, these would be emails, comments, registrations, messages, feedback and contacts. Usually getting all of these is a good sign for your growth, but when it's spam written all over them, the good doesn’t take long to go bad. 

Honeypot and Antibot are two of the more popular modules for eliminating robotic form submissions with close to 150,000 and 33,000 Drupal sites using them for this purpose. 

Drupal modules like Spam Master, Protected Submissions, Anti Spam by CleanTalk, Check DNS, Drupal Perimeter Defence, Spambot and Spamicide, also aid in deterring the intrusion of spam on your site. Talking about Spamicide, which is pretty clever in itself, it’s a module that adds a field to forms and then hides them. So, when a bot is filling that registration form, it’d probably fill in that field and when that happens you simply discard that form and rid yourself of its nuisance. 

For email obfuscation, SpamSpan Filter and Obfuscate come in handy and prevent spammers from collecting them. E-mail No-Reply is also a great module that allows you to create a field with no reply addresses, yet still, receive important notifications from Drupal. 

What about the troubling IP addresses?

Flood Control is a Drupal module that allows you the functionality of an interface that makes it very convenient to remove IP addresses as well as user IDs from the flood table.

Can we really talk about Spam and not mention CAPTCHA?

Today, almost every web form has a CAPTCHA challenge at the end right before the submission is final, only to trick the spammers and bots. A CAPTCHA would be very easy for a human, but very confusing for a bot. This is an age-old trick to manoeuvre spambots entry to your site. Drupal has both CAPTCHA and ReCAPTCHA modules available for the taking.

CAPTCHA and ReCAPTCHA are the front runners here, equipped with the right challenges to handle spambots.

Simple Google ReCAPTCHA with its checking the ‘I’m not a robot’ box is pretty good as well. Google ReCAPTCHA v3 provides you with a score for those requests without any friction. Recaptcha Element provides further integration with Google reCAPTCHA v3.

There is also hCaptcha, a module that helps in labelling large proportions of data within a stipulated time as well as being affordable and reliable.

Attacking Hacks

Your website is somehow going to end up being a target for hackers and you can’t avoid that from happening. All you can do is make sure that it is protected to the nth degree when that happens. 

Using Drupal’s Security Kit is the first step in hardening your security. It protects from various security threats and keeps your vulnerabilities at bay from exploitation. Cross-site scripting, cross-site request forgery, clickjacking and SSL/TLS are some of the attacks prevented by this module. Content Security Policy works on a similar principle; it informs browsers of trusted sources to mitigate hacks and add an additional security layer on top.

If you want a reverse proxy and firewall for protection against hacks, then CloudFlare would be the right choice. 

System Status is another module that does everything from eliminating security vulnerabilities to performing necessary upgrades to keep your site hack-proof.

Dealing with the Rest 

Up until now, we have covered all the major aspects of security, from permissions and authentication to spam and hacks, yet there are still some modules left to discuss that have a role to play in Drupal security. We’ll discuss that now. 

Let’s start with the laws. General Data Protection Regulation sets the guidelines that govern how data is protected as well as the privacy of the users in the EU. Drupal’s GDPR module provides helper tools that in turn aid your sites in becoming more compliant with this law. Cookiebot further aids in tracking your use of cookies and GDPR and ePR compliance. Then there is TacJS, which helps your sites in adhering to the European Cookie Law with the user of tarteaucitron.js.

Moving on, to ensure that all uploaded files are sound and secure, you can use File Upload Secure Validator, which does exactly what its name suggests; validating the security of the uploaded files on the server-side. ClamAV further ensures that those files are not infected by any virus by integrating Drupal with the virus scanner of the same name.

For headers and referrers, there are the Remove HTTP Headers and No Referrer modules. While the former removes the HTTP headers from the configuration, the latter ensures that no referrer information is leaked.

Security.txt helps in implementing the security.txt standard, which ensures the proper documentation of your site’s security contacts and policy. There is a module to avoid stale IP addresses clogging up your database and protecting user’s privacy, this can be done through IP Anonymize

Finally, to ensure that your site is at the prime of its health, you can opt for Health Check, which would enable you with an endpoint for the load balancers. 

Conclusion 

So, there you have it, the majority of the Drupal security modules that would make your Drupal site watertight. I wouldn’t say that there aren’t any other modules for security, there certainly are and you would be wise to use them as well. 

In the end, I’ll just say that security is always going to be a primary concern when websites are built and made operational. Drupal isn’t a software that would be described as lacklustre in terms of security and with the launch of Drupal 9, security has become all the more efficient at Drupal.

Mar 11 2021
Mar 11

Technical leadership means overseeing a team of technical professionals at a software company. The led teams usually deal with software development and engineering. It is a designation of high responsibility, balancing thinly between being a strong leader figure and being approachable and personable while dealing with the team members. There is also a huge amount of accountability involved in the role with respect to both the organisation and team members, as a technical leader forms the essential link between both and coordinates the overall working of the tech departments to the board, and conveys essential inputs back to the teams. 

Thus, a technical leader ensures that ideas from the top are appropriately represented in the final product and that communication among various groups within the organisation is never derailed. 

The principles of technical leadership

Like any other position of fundamental importance, there are certain principles on which technical leadership basis itself on.

The right technical knowledge

There are multiple roles and responsibilities associated with technical leadership. One of the first things that the leader must be proficient in is a broad knowledge base about his craft. Every member of the team turns to the leader whenever any issue arises, hence the tech lead should always be prepared to review the code, scrutinize the related documents and lastly, code - for one always learns better by example. Knowledge about technologies like PHP, JavaScript, C++ is also quite important. 

The technical leader is also involved in the hiring process of the organisations, hence he should take into account bringing diversity and inclusion into the team while at the same time hiring the brightest minds.

Pritish, Senior Drupal Developer leading multiple projects at OpenSense Labs, asserts that while languages do form a part of the entire learning process, it is more important to be good with object oriented concepts and logical thinking. He also believes that to realise the optimum working potential of the team, it is important to arrive at the solutions together which means that there shouldn’t be rigid demarcation between the responsibilities of the members. The focus should always be on the bigger picture i.e. the perfect outcome.

Exemplary techniques  

As a person everyone in the team looks up to, the tech head should lead by example. Part of the job description is also to provide motivation in the form of utility techniques and acting as a guide to every resource whenever they need assistance.

Proactiveness  

As the leader of the team, a lot of work is dependent on you for clearance and progression. Hence, the leadership needs to be ultra responsive and swift with decision making. 

Ideally, the present state of the project should be at your fingertips at all times, ie, you must always be aware of each little step that your team takes. An even remotely possible hurdle should be brought to your notice in advance. 

Responsibilities of a technical leader

With great power comes great responsibility, and the leader stands accountable at every hour for what the team does. Some areas he must keep track of are - 

The right alignment 

Your thoughts and ideas must always be aligned with the company’s values and ethics, and this underlying bedrock cannot budge. Every action should be analysed keeping in reference the company's norms, which will act as the guiding compass - enabling the leader to navigate their way through. In addition, there might be plenty of problems that wouldn't be laid out by the organisation and be left to the tech lead for identification and resolution, hence keeping the company principles in mind, each possible scenario must be well thought out.

Communication is key

Without a doubt, improper communication can lead to huge fixes in the future. The person in the leadership role is a senior member with the steering wheel in his hands, which means that his repository of knowledge is far greater than the rest of the team. Proper articulation of that knowledge is essential if optimum performance is expected from the team. The mission and the vision should be communicated well, as everybody needs to have the same idea of the end product in mind. 

As a part of his leadership role, the tech lead should understand that communicating also translates to bringing in regular motivation and keeping the team spirit going. For example, take a look at how the right kind of communication between developers and designers can be beneficial.

Being a leader at all levels

Contrary to popular notions, technical leadership includes way too many backend functions to keep the team from derailing. the leader is one who resolves conflict, is constantly involved in constructing and reviewing ideas, and is the first person on the ground to scrutinize a problem when it arises - consequently taking the lead to solve it. 

Even in the tech side, when improvements in UI or an API are made, it is the leadership's job to push those improvements into the lower layers of the stack and adding to the component library. Thus, the tech lead not only paves the way for the rest, but also fosters collaboration within the team to come up with solutions. For instance, check out how collaboration between designers and developers during code review yields great results.

Blue text reading 'being a systems technical leader' and multiple black texts reading the different reponsibilities of technical leadership arising from itSource : ResearchGate


Craftsmanship Pursuit 

The leader should always keep in mind to deploy as many tools as possible to make the job of the team easier. New techniques should always be welcome, for example, if there is a need to to work on data visualisation features, tech like Angular should be brought to use to prototype the features. This significantly reduces the overall time taken to wrap up the project.

Project Management 

Not just the first to arrive, the tech lead is also the last person to leave the ground. Top notch management and leadership skills are needed for not only the end-to-end management of the ongoing project but also for managing potential crises. Identifying core responsibilities, their proper delegation, and punctuality in delivering the project are primary responsibilities of the leadership. Read how human psychology plays a vital role in project management.

This narrative is substantiated by Abhijeet, Project Manager at OpenSense Labs. As homes turn into offices and beds turn into workspaces, he says that there are multiple issues that crop up simultaneously when it comes to managing a team remotely. For instance, direct supervision and short feedback loops go out of the window. With each team member working according to their own convenient timings, blockers need to be identified far ahead in advance, as there isn’t much scope for emergency meet ups to solve problems. Motivation keeps faltering often, and requires regular standup calls to stay afloat. Work overlapping across several departments only needed a walk around the office to conclude, but in remote environments, might even take a day or two.

Overcoming the Challenges 

While a position of such responsibility might look challenging from every aspect, it is best to stay aware of the very imminent ones from the beginning. 

Team building

A challenge that every technical leader is bound to encounter is finding talent suited to one's requirements and also retaining it. Technology keeps changing at the drop of a hat, but relevant skills and workforce cannot appear out of thin air. Hence, the team should comprise members that are at the least are skilled in areas that could see rapid change in the near future, like AI, data science, analytics or software engineering. Team members must be kept motivated and engaged, so that they have more than just monetary reasons to stay. More on team health and productivity here.

Vinit, Senior Drupal Frontend Developer at OpenSense Labs, adds that learning from and recalling one's own experiences is imperative while one works with their team. It is important to realise that every person is different in ability and skillset, and the tech lead must acknowledge that. The person should make it his own responsibility to bring equity on the table by assisting each resource appropriately, as understanding the technicalities of the role might not be easy for everybody to grasp in one go.

From team player to team leader

The transition might look organic, but one is bound to be overwhelmed being in the profile of a technical leader if their previous experience was that of a team member. From walking solo to leading the path, from being accountable for yourself to taking a bulk load of responsibility, the transition is anything but natural. 
Being a constant visionary 

Unlike the rest of the team, the tech lead cannot live in the present. A good leader is not one who delivers just once, but constantly. Every possible outcome of the decisions to be taken must be anticipated by the head before execution to bring out the best in both the short term and the long term goals of the organization.

Managing remote teams

Now more relevant than ever, managing remote teams has emerged to be quite a head scratcher. Wanting the team to move together when each member is set up in a different location can be challenging even for the most experienced of players. Hence, a technical leader is more of an evolutionary role, and requires the person to be able to constantly adapt to changes and implement them too. Read why collaboration in remote working is important.

Stress Management 

The tech sector is widely known for short project cycles and stressed timelines. The tech lead must be prepared to face scenarios of severe burnouts within the team, and that too, regularly. Outlets for letting the stress roll out must also be appropriately discussed as well as practised in case of heavy workloads. Therefore, an essential quality of a technical leader is also to display a certain level of emotional intelligence to get the team spirits up and about during these rough patches.

Anmol acknowledges the problems that remote working has brought, as being a senior software developer at OpenSense Labs he is obligated to take up a managerial role every now and then to act as a mentor for the rest of the team. He states that with challenges like limited visibility of each other’s work timings and schedules, it becomes quite a task to sync the thoughts and channelize the workflow of the team. The key to handling dwindling accountabilities is to always maintain a positive atmosphere in the team, hold healthy conversations, and try to stay as connected as possible despite the distance.

Conclusion

It is near impossible to list down all that might be needed to completely understand the role of a technical leader because of how dynamic the profile is. Having said that, a curious hard worker with a thirst for knowledge is sure to make a great head in such a working environment.

Mar 09 2021
Mar 09
The Drupal 9 logo can be seen on the left, while on the right, there are three logos of React, Vue and Angular.


The 21st century is a pretty marvelous time to live in. There is so much that can be achieved today with limitless possibilities. There aren’t any inhibitions found in people. If we want it, we get it. I mean the 21st century folks have landed on Mars, so is there anything that we can’t do? I think not. 

If you look at all of our accomplishments, you’ll find that technology is at the root of it all. It is the advancements we have made in science that has allowed the present time to be as marvelous as it is.

Talking about all of these technologies would take as long as a year, even if I do it succinctly. So, I’ll not get into it. However, I will talk about one segment of tech that has had a profound effect in the way we surf the web. And it is the web development process. 

To be concise, I want to discuss a trend in web development that has aided the developers, designers and project managers to build to their heart’s desire without having to rely on one specific technology, which used to constraint them. It is a trend that eliminates restraint and promotes innovation. 

Let’s find out what it is. 

The Drupal Prequel

Before I get to the main agenda of this blog, I felt like I needed to talk about the underlying technology, which is Drupal. Being a content management software, Drupal ticks all the right boxes when it comes to building versatile web experiences. 

To build websites from the ground up and being completely responsible for all of the site’s aspects is deemed as Drupal being traditional or monolithic. What it means is that Drupal would have total control over a site’s technological stack. The front end and all the presentational aspects along with the back end and all of its data layers would fall within the realms of Drupal. Such use of Drupal is quite sufficient for standalone websites and applications, where editorial needs surpass developers' needs and the former seeks complete control over all the visual elements of the page. With Drupal offering features like in-place editing and layout management, I don’t disagree with wanting such control. 

However, what happens when the developers want to start implementing the current technology on the front end? What happens when the site needs more interactivity than before? Wouldn’t React or Angular seem like a better option to achieve that? 

I think they would and that brings me to the trend I was talking about in the introduction, being Decoupled Drupal.

Unfettered innovation and Decoupled Drupal 

Decoupled Drupal essentially removes the link between the frontend and backend and makes the developers free to do what they want with the presentation layer of the site. The reason for this separation is the flexibility it gives to the architectural development, empowering the front end developers to have total control over the projects’s rendered markup along with the user experience.

It’s not just the control over the frontend layer that motivates developers to push for decoupling, there are plenty of other benefits that make the feat of decoupling too good to give up. 

These include; 

  • Building impressive features through server-side rendering or Node.js; 
  • Securing data through a publicly inaccessible CMS; 
  • Publishing your content on all forms of IOT devices; 
  • Increasing the speed and efficiency of work with a clear separation of concerns and duties, less interdependence and less hassle; 
  • Updating the software becomes quicker too, without any impact on the working of the other end;
  • Finally, being able to take advantage of the rich JavaScript framework or a static site generator of your choice for an immaculately interactive site. 

All of these advantages of decoupling have made the trend to follow. Depending on your need, decoupled Drupal has the potential of building your project with its inbuilt web services and APIs. REST, JSON:API, and GraphQL are the prominent contenders in this regard so that the flow of information from the front to the back is seamless.

With decoupling, it is also easy to find the right personnel for your project. When you are building a frontend with JavaScript, you would need developers fluent in JS, and it is a well known fact that there are far more JS developers than Twig.

However, decoupling Drupal can also leave you in a bit of conundrum as well. The thing is when you decouple Drupal, you are saying goodbye to many of the out-of-the-box features Drupal offers such as layout and display management, content previews and certain security features. Some of these can be written from scratch by your developers, but there are more than a few that cannot be compensated for. 

So, in a situation like this how do you lessen the losses? How do you ensure that you get the unfettered innovative edge on the front end and still be able to reap the benefits of Drupal’s frontend capabilities? 

The Middle Ground: Progressively Decoupled Drupal

How to decouple Drupal? There is a perfectly reasonable answer to the decoupling dilemma and it lies in its categories. Decoupling Drupal can be achieved in two different aspects. 

  • The first one is when you decouple completely, totally extracting the frontend from the backend. This is called fully decoupled Drupal architecture. It can be done for dynamic sites using JavaScript or for static sites by relying on static site generators like Gatsby and Metalsmith
  • In the second approach, you will separate the presentation and data layers, however, there won’t be total interdependence between the two. By this, I mean some aspects of the front end would be developed outside of Drupal and the remaining would house inside of Drupal. This is called progressively decoupled Drupal architecture. 

In the first approach, with a total separation you would have to part with Drupal’s out-of-the-box features on the frontend, there is no going around it. However, when you take up the second approach, which is to progressively decouple Drupal that won’t be the case. You would get to play with other front end technologies, yet enjoy all the functionality Drupal has to offer. More on best frontend technologies for decoupled Drupal here.

You must be wondering how that becomes possible, and let me tell you that. 

When progressively decoupled Drupal is in the picture, you get to build a frontend using Drupal and all its out-of-the-box features. Once you have done that, then you can layer a JavaScript framework on top of the layer you have built. 

The difference between traditional Drupal architecture and progressively decoupled Drupal architecture is hown through a diagram.


It is important to understand that in progressively decoupled Drupal, it is up to you and your needs to decide the kind of responsibility you are to dole on JavaScript. The JS layer on top of the Drupal frontend could be responsible for rendering an independent block or component on a single page or it could go as far as to render every single aspect of that page. 

The kind of progressive decoupling you would do, would have a direct impact on the kind of control your editors would have. More JavaScript rendering would mean less editor control because Drupal’s administrative capabilities would diminish on the frontend, while less JS rendering would automatically mean more room for Drupal’s administrative capabilities and more power to the editors.  

Progressively decoupled Drupal is indeed the perfect balance between advanced frontend technologies and the powerful capabilities of Drupal. You would not need to compromise on one to get the other. The reference of the middle ground for web development in the decoupled sense is an accurate description of the progressive architectural approach.

But how do you decide whether taking up progressive decoupling is the better choice. The question progressively decoupled Drupal or fully decoupled Drupal can often prove to be quite difficult to answer, yet we have to try. So, let’s do just that.

Think of the Editors or the Developers?

For any web project, be it a site or an application, there are two important players. These are the people who bring the project alive, being the developers, and the people who become the voice of the project, being the content authors and editors. So when deciding whether to go for coupled, fully decoupled or progressively decoupled Drupal approaches, you have to keep them in mind. 

For the editors, you have to think about; 

  • The kind of ease they would need in manipulating page content and layout; 
  • The kind of in-context tools they would require; 
  • The kind of accessibility they would need in Drupal’s HTML by default; 
  • And the kind of previews they would be in need of without custom development

For the developers, you would have to think about; 

  • The king of control they want over the frontend presentation; 
  • The kind of server-side rendering they want; 
  • The kind of APIs they want to write JavaScript;
  • And the kind data security they want.

Assuming the editors want it all, an ease of manipulating page content and layout, tools like in-place editing and contextual links, the ability to preview unpublished content and a constant access to content. Now, assuming that the developers also require the same kind of ease, with control, with the ability to choose between server-side rendering and Node.js built features, with JSON:API at work and a publicly inaccessible CMS. 

If that is the case, progressively decoupled Drupal architecture would help you give the best to both your developers and editors. The developers would be able to adopt JavaScript for portions of the pages and satiate their appetite for interactivity and advanced development. At the same time, the editors would be able to work without any blocks with all of the Drupal features they always wanted. A win-win situation for the crucial players. 

OSL and A Progressively Decoupled Drupal Project

We, at OpenSense Labs, have worked with a global brand, Produce Market Guide (PMG) to cater to a specific need by performing progressive decoupling. 

PMG is a leading name in the market for producing commodity information, trends and data analysis. A part of the Farm Journal family, but aimed to provide an advanced and enriching experience to its users. However, because of a slow search feature that was becoming impossible. 

The picture shows a screenshot of the search bar of the Product Market Guide's site, which was built using Progressively Decoupled Drupal Architecture and React.


Other than that, the site was functioning pretty well with Drupal. So, in order to rectify the slow search feature, a progressively decoupled Drupal approach was implemented by OSL. using React and elastic, the new search function was built and this improved the time it took to present the result to mere seconds. Look at the detailed case study for PMG for a clearer picture of the project. 

This was one project that made our developers understand decoupled Drupal a lot better. The fact that you do not have to build an entire front end from the ground up is a prominent benefit of the progressive approach. Using JS for just one function, making it as advanced and interactive as possible, and calling it a day is essentially how progressively decoupled Drupal works. And I think there are very few architectural approaches better than this one.

The Final Verdict 

I want to conclude by giving you another example. 

“Imagine you have a site that needs a lot of interactive elements that would encompass user choices and give the user the option of getting a personalised experience based on his history, with future recommendations. Also, imagine that your site has a lot of traffic and a lot of content to manage for which you are bound to need highly competent content management and site building tools.”

For such a site, neither the coupled Drupal architecture would work, nor would the fully decoupled architecture work. It needs a balance of the two. 

Why?

Because Drupal alone cannot build a highly interactive site like this one, it would have to rely on JavaScript and the likes. However, with high traffic, a lot of the data is often cacheable and Drupal is equipped to handle that very well. If the content isn’t handled properly, the performance of the site would be affected drastically. That is why a middle ground has to be chosen and progressively decoupled Drupal is just that. I wouldn’t be totally wrong in saying that the future of decoupling Drupal could lie in doing it progressively. Do you agree?

Mar 08 2021
Mar 08

As a business, once you start with something, it becomes almost impossible to retrace your steps and retrospect on your choices or alter the decisions that you took in the past - especially if one little move holds the capacity to affect both you and your audience exponentially. Hence, optimum planning is necessary for each aspect that your organisation is working towards, including web development for your online presence.

To keep pace with the digital world, more and more businesses are showing up online to grab more eyeballs and solidify their market value. A facilitator in this process is Drupal 9 - and a quite popular one at that owing to its flexibility and scalability. Drupal 9 presently is in use across several industry verticals and powers thousands of websites. 

While there’s a lot that goes into the general process of web development, simplifying the process by placing all your thoughts methodically is always possible. This list is intended to serve both as an exhaustive guide and as a checklist representing the correct chronology in which web development needs to be approached.

Defining the Purpose

The very reason that you’re getting into web development is because you have a purpose in your mind, but what’s essential is to define that purpose. This is required both for your future team and for your audience to understand and resonate with your brand better. Your target audience along with your unique value proposition must be clearly outlined along with your short term and long term goals, including both value addition and business targets. The defined goals should be measurable, relevant to your business value, time bound, and lastly, be attainable in the time allocated. While planning the execution, defining ways to measure the success of each campaign is also equally important.

A blueprint will only help you proceed with web development in a defined, synchronised manner - essential for managing future growth and expansion.

Picking the right team

After defining the purpose, the next step in web development planning would be to pick a team that brings these targets to a tangible completion. Depending on your business, the team would vary in terms of manpower and skillset. If your business focuses on UX (User Experience), you would want to have designers on board. If it focuses on sales of a product or a service, more marketers would be required. Nevertheless, the team that you tentatively need would comprise

  • a project manager for keeping things on the track, 
  • content creators to provide written and other media content, 
  • a content strategist/architect to plan priorities organise the site,
  • Designers to plan and design the layout,
  • Developers - both frontend and backend.

Refer to all the different roles and skills integral to building a Drupal 9 website here. And, for the decoupled Drupal project, you can check out all the right skills here.

Building a Brand Image

Once two and two are together, the first thing that you and your team needs to do is to plan out a brand image as this will be the bedrock to the web development process of all your website content, marketing strategies and social media presence. Some important elements to decide on would be -

  • The logo, as this is what most people would associate your brand to. The layout, colour palette and design of the logo should represent the underlying identity of your business.
  • The domain name, essential for brand identity as well as driving traffic to your website. It must be short and easy to pronounce. 
  • Also keep in mind that the advertised USP (Unique Selling Proposition) must also be in line with the brand image, as anything that reaches out to the audience more often is a matter of greater scrutiny.

Planning it out

Now is the time to analyse every nook and corner of the web for competitor research. Ideally, there should be a list of brands that you both consider a competitor but also look up to, preferably businesses operating in the same domain with a similar target audience. Another area of analysis should be the current market standing of the kind of products and services that you’re offering. What are you audience looking for in the present scenario? What is the gap that your product is intending to fulfill?

Here’s what the mind map for your research should look like -
 

Black background with a blue square in the middle reading 'competitors and market trends' and green lines arising out of the box forming rectangles at the end


Post research, comes the actual planning of the website's elements, which will be -

  • The website’s structure. A sitemap can be used for facilitating the layout.
  • Identifying the interests and navigation trends of your audience by deploying relevant tools to do the job, and creation of a users’ persona for better understanding of the market needs. A flowchart software can be of great help in this case, as it lays out the navigation in this manner -
     
black background with green square reading 'home page', with blue lines arising from it reading the navigation map of the page layout, important for web development planning
  • Budgeting. Allocation of money, or a draft blueprint of the same needs to be created.

The layout

For the web development process regarding the website’s layout, elements under consideration should be -

  • Deciding on the colour palette, the font, photography style, spacing - basically everything that your audience interacts on a daily basis with, that could be a potential bottleneck later on if left undecided. 
  • Use of wireframes to preview your website’s layout. A wireframe is exactly what it sounds like - the skeleton of the layout like page contents and their placement without added elements of color and design, for an understanding of the site’s functionality.
  • Quality design is invaluable, as elements in your layout can comprise your  USP as well. The layout should be attractive and convenient enough to navigate for your user to want to come back.

The importance of UX

If a website is too complicated, has lousy speed, has a scattered icon placement or the content isn’t comprehensible, even having a good service delivery will not help. The design of a website holds the capacity to create a bond of trust with the user, and also to establish customer loyalty. Areas of focus should be 

  • Use of simple, lucid language.
  • The content should put across the point instantly without beating around the bush.
  • A well thought out design that visualises the effort that has been put into it.
  • A list of FAQs (Frequently Asked Questions) makes knowledge sharing about your service even easier.
  • Multiple device compatibility
  • Interactive, responsive UI (User Interface)

The overall look and feel of the website must be professional and should have an elegant touch in the present elements. If a user is by chance tickled off by the design or performance of the website or if he can’t find what he’s looking for, retaining him would not be possible. Read our comprehensive guide to web design to know more.

Choosing the right CMS

A good amount of work is already done just by choosing a good CMS (Content Management System). Some large enterprises are based on CMSes like Drupal and rely on the softwares for their digital infrastructure due to the inbuilt tools and stability that comes with it, excluding the need for being extremely tech savvy. Depending on the amount of features and flexibility that is required by your business, Drupal can be your best bet.

Certain points to keep in mind after deciding to start your web development project with Drupal -

  • Keep up with the frequent updates that the software goes through. It might seem like a simple, matter-of-fact thing to do right now, but if you are not mindful of planning it ahead, you can miss out on many new features and benefits offered by Drupal by lagging in the update cycle. It is, hence, recommended to schedule reminders ahead of time.
  • The architecture of the website needs to be revisited from time to time. Is there any deprecated code that needs to be removed? Or, have your priorities changed over time, and you require different features than the ones already existing? It is imperative that these questions be answered time and again.

Drupal 9, the latest version of Drupal, is always a good option to go for because of the widespread community support and global usage it comes with. With a variety of packages and distributions, web development in Drupal 9 becomes pretty simple even for new developers as there are multiple tools to their aid - the best part being that there’s something for everyone. Updating Drupal is even simpler, a single click upgrading every theme and module on the site. 

blue, green and grey bars placed side by side comparing different features of Drupal 8 and Drupal 9Source : Drupal.org

The correct choice of modules can greatly amplify one’s experience when it comes to web development in Drupal 9. A great choice to make the page layout more methodical would be the  Admin Toolbar module, as it makes the admin toolbar into a drop down menu. A simple XML sitemap module increases the efficiency of SEO by creating multiple multilingual sitemaps along with custom URLs, and a Coffee module greatly enhances the UX by allowing the user to navigate to the admin seamlessly just by using a keyboard shortcut.

To know about the complete list of essential Drupal modules that will help in kick starting your web development project with Drupal 9, read this blog. Access our complete guide to Drupal 9 and go through Drupal 9 FAQs to know more.

Marketing it right

First, a decision needs to be taken on what avenues would be used for advertising and also how these channels will be prioritised, according to the underlying research about one's target audience. Is social media your primary channel to reach your audience? if yes, then which platform fits best with your business model? All these questions need to be answered before hitting the market. Some valuable points to keep in mind are -

  • Search Engine Optimization of all the content on your website is essential to drive more traffic into your website.
  • The URL structure should be logical and also optimised. 
  • Meta description is what a person reads before clicking on the website link, and it should be viewed as an interactive opportunity for a business to make a good first impression. 
  • Targeted marketing like cold emails and DMs might also work for some businesses.
  • The content strategy should be end to end, which schedules in line for planning, creating, executing and measuring it.

Brainstorming sessions with your team about new marketing strategies and ideas are also a good marketing execution method.

Choosing the right agency partner 

Taking expert aid can never hurt. Instances where the work gets too bulky or complicated for you, it is best to delegate it to an agency that knows the job inside out owing to years of experience and varied resources suited to different purposes.

  • An agency not only does your work in a much better and professional fashion, but also acts as a consultancy for any queries that you might have. 
  • Technology is fast evolving, hence, it is best to have a safety net that fills in the gaps in expertise wherever required. 
  • Your development gains maximum momentum with an additional number of hands working towards a specific goal with a focused intent, hence catalysing the development process. 
  • Strategising, design and development are all areas that can gain significantly from an outsider’s perspective. 

If you sync well with your agency partner and are able to make it long-term, a professional advisory would always be at a close proximity. Hence, it is an investment disguised as a partnership. An agency can help you migrate a bulk of content or develop a new website from scratch with ease - using their seasoned knowledge. Often, agencies also provide you post production support and maintenance. If your functional CMS is Drupal and you are unsure about how to incorporate the latest Drupal upgrade, or if you’re a business just setting up their Drupal website, you can well utilise the services of certified Drupal experts at OpenSenseLabs. Or, if you wish to extend your team of Drupal developers, UI/UX strategists and JavaScript developers, our unique staff augmentation model is available for flexible contracts with dynamic availability of certified professionals.

Future Plans

Lastly, everything might be moving on track for now, but that won’t be the case forever. Pre plan safety nets for all possible ups and downs. Also, it is important to not lose track of your long term goals by getting too engulfed in the day to day functioning of the website. A little farsightedness goes a long way.  

Mar 02 2021
Mar 02

The digital sphere keeps changing and evolving at the drop of a hat, technology being the truest representation of the requirements of the present world. Web development is a component of the web that manifests these changes on your screen, which explains why the Bureau of Labour Statistics  projects the demand for web development resources to grow by 8% from 2019 to 2029. But has this equation between the tangible world and the web world always been the same? When the web was formulated, did it mirror us the same way that it does now?

Let’s take a look at how web development has evolved over the years.

Evolution of Web Development

Tim Berners-Lee came up with the World Wide Web  in 1989. He was working at CERN at the time, and his invention was meant to serve various scientists in far off universities by facilitating data sharing among them. The idea was to provide the growing technology of data networks, hypertext and computers a common global, accessible platform. When the web materialised, the code for his web server was set up by Tim on a NeXT computer, the first web page comprising links to the WWW Project, a brief description of hypertext and the details one would need to create a web server.

This is a screenshot of the world wide web browser created by by Lee - 

Black and white web page screenshot of the world's first web page, a landmark in web developmentSource : CERN

As more web servers were created, the links to each of those were added to the first web page by Lee. There was no search engine, the web page consisted of information one might be on the lookout for like CERN Phonebook, guides for using CERN’s computers, etc. Web design was still a fetus concept at this time, HTML’s

Function, that arranged the text into rows and columns, being the closest kin. 

Two years later, in 1991, the first web server came online in the United States. As the web expanded, Lee urged developers from all over to join in and contribute to the web. This is how the journey of the web becoming a global phenomenon began. Design came on the front seat too, as in the same year, the first search engine, ALIWEB, used colour for the first time in the web pages - using yellow highlights to organise the search results. With time when more and more websites cropped up, web designing became an important thing along with web development.

Clearly, we have come a long way. To actually conceptualise how different the times have become, let’s look at what the web development trends looked like ten years ago.

Web development in the previous decade

The past decade succeeded the one with digital revolution, technology occupying the centre stage throughout the years. Like everything else around us, even web development underwent several additions and alterations. The gradual evolution of web development in the preceding decade can be summed up in the following points -  

  • In the 2010s, Ruby on Rails 3.0 was the talk of the town, being an awaited version of the popular Ruby on Rails framework. Javascript had just breathed a new life in node.js framework - an engine high in performance, speed, security and reliance. In addition to these, Microsoft Visual Studio was the chief editing tool used by developers in comparison to Atom and Sublime today.
  • With the first Iphone coming out in 2007, the market a few years later was lined with an array of devices. Smartphones, Ipads, Ebooks were all out for public use and that meant that the web was meant to be an adaptable, fluid thing now. The development and design sphere also underwent iterations with Android OS (Operating System) kicking in. With smartphones showing up left, right and centre, demand for web design grew as well. There were now a plethora of development and designing skills required to keep up with the transforming world.
  • With technology reaching new heights, Augmented Reality and Virtual Reality reached the common public’s houses, leaving it on the developers and designers to make it navigable and comprehensible. Later in the decade, even social media platforms like Instagram and Snapchat entered the augmented reality market with face filters and the likes. The common crowd began resonating with AR much more, and it started to transition into a commonplace service.
  • The Internet became more and more accessible with each passing day, and greater competition led to heightened focus on User Experience (UX). Websites wanted more animation, greater interaction with their user base. Softwares with in depth design tools starting emerging, with Adobe’s Creative Cloud setting off the dominoes to give rise to competitors like Serif’s Affinity Designer and Procreate.
  • In the 2010s, online communities were also quite a thing. People with similar interests could get on forums and chatting platforms to interact with each other. Some popular platforms during these times were StackOverFlow and Reddit.

Web development has evolved to a point where it has very little in common to its original parent now. In an attempt to culminate this timeline, here’s elaborating on what people and organisations believe will be the upcoming trends in web development.

Projected Trends in Web Development in 2021

Mobile-first development

According to Statista, mobile data traffic is expected to grow at an annual compound growth rate of 46% by 2022, which means that most of the generation has gradually shifted over to mobile devices like smartphones and tablets for non official usage. This digital transformation has both altered and expanded the avenues for web development. Now, adaptability to various devices is one of the most important factors to look out for, mobile-first development being primary. 

New architectural styles like micro frontends are also coming up where individual frontend applications are first built and later added into the codebase. 

JavaScript Frameworks

Use of Javascript frameworks will be on the rise, as these provide both animations and a bunch of other functions that make coding much simpler and compact for developers. Frameworks like React and Vue have new features like React Hooks and Typescript that offer Javascript in a more structured, object-oriented form. CSS libraries have also proved to be beneficial to jumpstart front-end development, and hence will supposedly stay trending in the upcoming year too. Javascript frameworks have also been used extensively for powering front ends in a headless CMS, which is another concept to have gained much clout in the previous years. 

With the growing popularity of Javascript, APIs and HTML5, another predicted trend is the rise of JAMstack websites. These websites make use of tools and content dynamically through APIs thus expanding and growing the user base and use case. These features solidify the hold of JAMstack websites in the developer crowd.

No code and low code

Web Standards are predicted to gain momentum not just with respect to tools like javascript frameworks but also in no code and low code space. A no code framework allows you to create content, for example, a design, without the need to code, translating to customisation without the need of expertise. This expands the user diaspora manifold, also opening up avenues for widespread awareness and adoption of web standards.

WebAssembly

Web Assembly (WASM) is a small binary format that creates an environment for web applications to run as a bytecode, thus enabling the application to run much faster inside the browser. It has taken the developer world by a storm, as in complex areas like gaming, music, streaming or video editing, WASM is especially useful. Rightfully so, Web Assembly is becoming increasingly popular by each passing day.

Browsing convenience

Convenience in browsing is a major competitive advantage that websites aim for, which is why Single Page Applications (SPA) and Progressive Web Applications (PWA) are gaining ground. A SPA is an application where all the data is relayed in a single web page, hence completely omitting out the time needed to load different URLs of various segments. Since a solid user base is accessing the web from mobile phones now, SPAs are even more relevant. Accelerated Mobile Pages are also being used specifically for bettering the speed and convenience on mobile pages. Along similar lines, a PWA is a ‘lighter’ version of a bigger app, that is targeted towards customers using limited internet or lower speed internet. With inclusivity being a primary concern, new technologies in the web development industry are all aiming for faster, convenient internet.

Google has taken browsing convenience into consideration too, with their ‘featured snippets’ section not requiring the user to click and visit on every link.

Serverless

Components of a server’s database are predicted to go increasingly virtual in the upcoming year, giving rise to the concept of serverless. In such a scenario, developers would be free to take on a managerial, decision maker role with a difference in the kind of tools they want to work with. A serverless architecture makes a model limitlessly scalable, and expansion to a global level can be visualised. AWS Lambda has shown immense potential in 2020 and is currently the market leader of serverless.

Increasing User Engagement

With user experience on the high tide, focus is on making the user feeling more engaged by using methods like sending push notifications to remind or notify the user about something important, Motion UI (User Interface) to sustain attention, and chatbots for an interactive and convenient session. Chatbots save the time and money usually spent on query resolution by human interaction and notifications can be pretty helpful both for the user and the enterprise - hence these methods are symbiotically beneficial. 

Ghost buttons are also being used increasingly in UX. These are placed for CTA (call to action) and are called so because they’re well blended with the design of the website, portraying their occurrence as largely natural. Their meant usage is primarily for increased interaction and sustaining the users’ attention.

Artificial Intelligence and Machine Learning

Artificial Intelligence (AI) and Machine Learning (ML) are omnipresent everywhere now - of course these have a part to play in web development as well. Gaining insights about user preferences and subsequent fine tuning is made much more convenient with the use of AI as all the field research is digitised and content is personalised. With components like content automation, fairly accurate customer behaviour analysis, self learning algorithms and enhanced customisation, AI is being used extensively in web development and is projected to stay at the top of the game in the upcoming year as well.

Internet of Things

Internet of Things (IoT) has best materialised in the form of Google Home and Alexa, enabling the connectivity of several devices to execute commands seamlessly. Statista’s research suggests that there will be a threefold increase in IoT devices in 2025 when compared to 2019. Even websites nowadays are opting for voice search optimisation, an IoT component - as you might notice that Amazon has placed Alexa within the Amazon shopping app as well. In the approaching times, devices will listen to their users’ commands and respond accordingly. 

Blockchain

Blockchain has been here for quite a while now and as per 2019 statistics, over 34 million Blockchain wallets were in use globally. In 2021, there is expected to be a wave of software and hardware infrastructure building, litigation and trade regulation for enabling blockchain use in a more comprehensive manner.

Expanding Open source

According to the State of the Octoverse 2020 report, the number of developers on GitHub will reach 100 million by 2025. Hence, we can expect significant growth in the number of open source projects and expansion of the existing ones in the upcoming years.

Being a part of the web development world and also a constantly evolving open source community, even Drupal has seen massive growth over the years and continues to innovate. It has found ways to tackle Covid-19 pandemic, remained recession-free and attracted the interests of large companies to invest.

CI/CD tools

All in all, serving will be made simple and developer convenient by tracing the roots and going back to the basics with the use of the new gen CI/CD (Continuous integration and Continuous Delivery) tooling. As the interfaces of the web get simpler with static web pages and applications,, the processes that are used to manifest it on the screen are getting more complex in the build to enable it.

Web development advancements in the Drupal World

Drupal with its constant updates has always aimed to stay in sync with the web development advancements happening around it. Being an open source software, plenty of user needs that are later materialised as technology are constantly brought up every now and then by the community, making the expansion of Drupal pretty organic and stable. Over the past few years, Drupal has come up with various new components. 

The consequent versions of Drupal 8  have tried to cater well to the community’s requirements and aspirations. Drupal’s out of the box feature enabled trials with experimental modules like the layout builder (for drag and drop management) and media library (for handling enormous amount of media) based on creating an interactive and engaging UI, which were later made into core components with version updates based on their performance and the needs of the user base.
 

[embedded content]

By the time Drupal was out with version 8.8, the workspaces module that was made to run on trial in the previous versions was embedded into the core. It made handling multiple workspaces much easier with features that allowed getting the content reviewed and deployed at one go. A native composer support was also built in, replacing previous third party dependencies. 
 

[embedded content]

In the latest updates, Drupal 9.0 and 9.1, Drupal has made an effort to make upgrading easier for everybody using the software, as approximately half of the pre existing modules do not need any changes. Access your complete guide on Drupal 9 here.
 

[embedded content]

The planned default front-end theme for upcoming Drupal 10 has been released as an experimental theme in Drupal 9.1, the underlying thought being incorporation of better ideas and bug resolution before the final release. This is what Olivero looks like - 

blue and white webpage displaying the theme OliveroSource : Drupal.org

Apart from Olivero, some major plans for Drupal 10 currently in the form of initiatives are  automated updates replacing the need to update your software components manually, an improved out of the box feature and introduction of javascript components. 
 

Light brown background with black flag and text talking about javascript componentsSource : Drupal.org

Coming to keeping up with the trends, Drupal has banked upon its flexibility to adapt to several technological advancements in the recent years.

Drupal works seamlessly with AI and ML. To facilitate ease of use, Drupal also has several modules that enable the use of AI in the website. Drupal’s compatibility with Machine Learning was well demonstrated by the demo of a proof-of-concept project shown to analyse user preferences and consequent fine tuning with due assistance from several APIs, in DrupalCon Baltimore, 2017.
 

[embedded content]

Drupal has noticed the trend of JavaScript Frameworks being extensively used in websites and has thus given a lot of emphasis to its decoupled architecture. Drupal’s open source community has worked a lot on various web services implementations like GraphQL, JSON:API and REST to enable efficient execution of headless architectures. This enables you to utilise a wide range of javaScript frameworks for frontend and build a perfect decoupled Drupal architecture.
 

[embedded content]

Drupal is mobile first and focuses greatly on responsiveness and UI.  In the past, Drupal has come with the mobile initiative for mobile first development and multiple device friendliness in an effort to draw community participation in the same. In addition to this, the Accelerated Mobile Page module enhances the overall UX of a website when accessed from a mobile device.,

To further the agenda, Drupal makes use of Progressive Web Apps to make browsing convenient and engaging for the user. These apps are usually installed in the background after the user has granted the permission to do so while browsing. PWAs do not need services from the play store and are installed from the browser itself. 

Drupal also is very handy with the native mobile application development. For instance, you can leverage Drupal as a content store and Flutter as your UI toolkit for building beautiful native mobile apps. More on Drupal’s provision for mobile apps here.

Drupal Community has also delved into Virtual Reality, Augmented reality and  Internet of things and has demonstrated Drupal’s stupendous capabilities to work well with such emerging technologies. For example, a while ago, a Drupal agency built an application prototype on Drupal 8 where users could consult a chatbot for grocery shopping, keeping certain health constraints in mind. The smartphone cameras were used to capture relevant product information, and the chatbots rendered necessary details to the customer. The concept, thus, used AR and AI together for better user convenience and experience.
 

[embedded content]

In 2018, organisers of DrupalCon Nashville used virtual postcards for admittance of the guests. From a VR editor built using Drupal as backend and React as frontend, to the javascript API WebVR demonstrating dynamic content using Drupal compliant JSON API, Drupal has come quite far experimenting with Virtual Reality.

virtual reality postcard with blue background, graphics of buildings, yellow text and the face of a manSource : Drupal.org

Drupal can also work with blockchain for synchronizing data of the websites of large corporations.

Headless Drupal can be effective to build advanced serverless architectures as well. For instance, you can seamlessly integrate Amazon CloudFront, [email protected], and headless Drupal that can deliver lowest latency and personalised experiences to users.

Conclusion

Trends in web development are always in constant evolution, demanding the rest of the market to keep up with them. While these are a few projected ideas, we might see some newer developments and technologies taking over in the near future.

Profile picture for user Akanksha Mehta

Akanksha is a writer more by personality than by profession. Believes in the unpopular opinion that Kindles are better than books. Also believes that even inanimate things have their own personalities - tea is all things bright and summery, coffee is all things cold and suave.

Line

Get in touch with Us

Tell us about your project or drop us a line. We'd love to hear from you


Accepting Guest Posts

A BIG SHOUT OUT to the bloggers and evangelists willing to impart their knowledge with their writing.

Share your experience and opinion with us and let the world be the stage to your ideas and work. Share your piece with us at [email protected]. We also welcome ideas in the planning phase.

What Do We Expect?

  1. The content should align with our interest in web development and open source technology. However we are open to topics from in and around the industry.
  2. An average blog post should be of around 1000 words, but this is of course subjective.
  3. We love crazy and colourful content. Feel free to link awesome pictures, infographics, stats, and all.
  4. We are also open to articles with cool tips and tricks, some How-to and step by step guide as well

Have a question?
Email us at [email protected]

Name

Email

Attach a file

choose file

One file only.
2 MB limit.
Allowed types: gif, jpg, png, bmp, eps, tif, pict, psd, txt, rtf, html, odf, pdf, doc, docx, ppt, pptx, xls, xlsx, xml, avi, mov, mp3, ogg, wav, bz2, dmg, gz, jar, rar, sit, svg, tar, zip.

Subscribe for more awesome emails and insightful updates

Mar 02 2021
Mar 02

Today, there are a bazillion options available for us to choose from, be it restaurants, clothing brands, gadgets or software. We, as users, may have difficulty in choosing the best, but never in finding the options. The options may confuse us, but we are going to be bombarded with them nonetheless. 

This brings me to the question of choosing the right option amongst the lot; how is it selected? For me, one of the most important criteria is usability, if I am not able to understand the usage of a product, I’d rather choose the next one. I am sure usability must be an important factor in your decision as well. 

Now, coming onto the product that I would be talking about today, Drupal. It is one of the most renowned open source content management systems out there. If you are reading this blog, you would definitely be aware of Drupal and all of its brilliance. Despite its eminence and versatility, it is still marred by a slightly unjustified rumour based on its use. Yes, as the title suggests, Drupal is often considered difficult to use and as a result many shy away from using it. 

Today, we will try to understand all the aspects of Drupal that could account for this claim and see if it is really true. Can a software that is meant to be free for anyone to use be so difficult that it become inaccessible to a major lot of its audience? What would be the point of it then? You think about that while I begin with the individual of Drupal’s so-called complexities. 

A Glimpse at Drupal’s Market Share 

Drupal is one of the leading CMSs in the market. Its ability to build powerful web experiences is the paramount reason for the same. So before I get into the nitty gritty details of Drupal's ease of use, I wanted to highlight its popularity. 

A line graph is showing Drupal usage statistics. Source: BuiltWithA table is showing the number of sites using Drupal at different points of time.Source: Drupal.org 

These numbers clearly show that Drupal is being used by a considerable number of sites worldwide with as many as a million Drupal sites operational at one time. This proves the answer to the question ‘Is Drupal in demand’ is going to be an affirmative.

A graph shows how many sites use Drupal in comparison with other CMSs.Source: W3TechThere is a list of the most high traffic sites using Drupal.Source: SimilarTech

Is Drupal still relevant? I’d say it is primarily because it isn’t just the numbers that make Drupal impressive, but its performance as well. The above images depicts Drupal’s competency at handling high-traffic sites. Drupal is a software for which millions of visitors aren't daunting as proven by its clientele.

Two pie charts are showing various changes in business and projects handles by it.Source: Drupal.org 

Moreover, in a survey to understand 2021’s business outlook, Drupal found out that the majority of its users felt that the new year would mark a growth in their prospects. With Drupal’s presence in a wide range of industries, the profitability of the CMS is impressive too. Sectors like education, charities and nonprofits, government, IT and even media have experienced more profits with Drupal as per the findings of Drupal Business Survey 2020

Drupal has proven its worth in every aspect, be it the number or the performance. The only thing that mars its impeccable record is that it is difficult to use, which isn’t technically the case. I’ll start answering the why with the next section.

Let’s move on to the programming language 

PHP or Hypertext Preprocessor is the programming language Drupal is built on. And PHP is a language that is often considered to be part of its complexity. I would say that it is not accurate. 

PHP is one of the best programming languages and has landed itself in the top 10 best languages to learn in 2021 by many surveys; Simplilearn and Hackr.io are two of these reports. With that kind of efficacy, the language cannot be considered to be problematic.  

Further proof of PHP’s popularity is in the number of websites and applications that use it, which isn’t a lowly figure. Look at the graph below for proof. 

A graph is showing the popularity of various programming languages.Source: W3techs

And these reports and figures aren’t antiquated, rather are as new as the year itself. So, PHP must be a worthwhile language, even if it isn’t the easiest of them all. 

However, PHP isn’t the only language Drupal works with. It has other dependencies as well. These include; 

Symfony; 
Twig; 
CKEditor; 
jQuery and jQuery UI. 

All of these only mean that Drupal is versatile, it isn’t a software with one side. Its multifaceted programming aspects only add to its appeal. It may seem like a lot at first, but it is necessary and doesn’t add up to Drupal’s difficulties, rather it eases the task of web development.

Moving on to the beginner’s conundrum 

When we start something, more often than not, we feel overwhelmed with it. Since we are not accustomed to the newness and it’s nuances, that is understandable. And Drupal ensures that it takes into consideration the novice developers. 

Until Drupal 8, beginners have reported difficulties with the installation and evaluation of Drupal. But after the release of the eighth version, things are more streamlined with the beginner’s needs and expertise. 

Drupal has also brought on new themes to make its experience more flattering for the beginners. For example:

Umami in Drupal 8.6 
Claro in Drupal 8.8 
And Olivero as an experiment in Drupal 9.1

All three themes have made Drupal more accessible, responsive and simple for its users, if we are to rely on user feedback. If I talk about Olivero specifically, it is the new beta experimental frontend theme, which is both modern and concise, and will take over Bartik as Drupal default theme. Its simplicity and professional look make it a perfect pair for beginners.  

With Drupal 9, there isn’t much that has changed. If you are comfortable with Drupal 8, you would be able to ease into the 9th version with a breeze. Although there are indeed differences between Drupal 8 and 9, these are not as stark and have made development not seem like a daunting task. 

And there is more. 

The Drupal Community, always helping out!

Drupal has a community of over 1 million people and 100,000+ stories to tell. From putting your skills at work to acquiring new skills to work, the Drupal community is known for upliftment of the software and the people using it. 

Any questions a beginner may have will be rightfully answered. You can easily find mentors, who are Drupal veterans and will gleefully help you become an expert like them. You can practise, practise and practise some more to get to the level you want to be at. Being part of the Drupal community, you will be able to hone your skills unlike anywhere else. 

You would not feel like an outsider, meet people with similar interests and similar geography as you at Drupal Groups. Since the best way to learn Drupal or anything really is to be immersed in it, the Drupal community is just the place for learning and mastering.

And, there is a constant endeavour to help underrepresented groups from the Drupal Community. Diversity, inclusion and equity is at the heart of the community.

So, there isn’t much room for the beginner’s conundrum at Drupal.

Then there are the notorious Drupal upgrades

Upgrades are necessary, but they don’t necessarily have to be an insurmountable task, which frankly speaking was the case for Drupal. Upgrading till Drupal 8 could not be described as being easy and quick. They required a lot of work and it was difficult, as there were major fundamental changes in the software. However, there was no other way to go about it. If you wanted the added functionality and support that new version would have, upgrading was the only choice.

However, that isn’t the case now and thank goodness for that. 

With the launch of Drupal 9, upgrades have become less notorious and more accommodating. The Drupal 9 switch has been deemed as the easiest upgrade of the decade and that is saying something. This is because unlike previous upgrades, Drupal 9 does not change the entire CMS on a fundamental level, there is no reinvention, but it is still unique. It is a new and improved version of Drupal 8, with deprecated APIs and updated dependencies.

Here is an illustration that will help you understand what I have been saying about fundamental changes.

Different train tracks are used to describe the difference between various Drupal versions.Source: Drupal.org 

With a four step process, you can make your Drupal 8 sites ready and waiting to be upgraded into Drupal 9, if that is difficult, I wonder which adjective would be appropriate for the previous ones. You can also directly upgrade from Drupal 7, if you wish to. Access this complete guide to Drupal 9 to know everything about Drupal 9 upgrade and migration.

Yes, Drupal upgrades were difficult, but they aren’t now. So, does this fact make this pointer for Drupal moot? I think it does.

Coming on to the workflow 

For content management systems, content is the integral. The way it is created and managed essentially decides whether the life of developers and content creators is going to be easy or not. If you are using Drupal correctly, I can assure you life is going to be a breeze.

I say this because in terms of editorial workflow, Drupal has a lot to offer and not much is complicated, with structured tools equipped to define the same.

Here is an overview of some of them.

Workspaces is one tool that helps in defining the staging environments, previewing content changes, all the while deploying these to a live environment.

Transitions is another tool that makes it easy to control content States, which have their own attributes. It allows state changes to become restricted by roles and permissions along with allowing users what content to be put through them.

Then, there is the eminent Views module. This is one unique to Drupal and its highlighting feature in terms of content. It gives the power of creating, managing and displaying lists of content to administrators and site designers. It is these lists that are called views, while what the portray in the form of blocks or pages is the display, it can be one or many.

A screenshot of Drupal's Views module can be seen.Source: Drupal.org 

One of Drupal’s most fulfilling editorial tools is the Layout Builder. It allows editors to create a publishing piece that is more than flexible to their needs. Any kind of layout is possible with this module.  
 
All of these support the editorial needs of the many content authors who will be populating a platform and the better part is they would not need the guidance of the developers every of the way or any at all.

The new-age of Headless CMSs 

As times change, the things that satiated our needs no longer do so. The same is true for CMSs. Looking back, it is evident that site builders and developers were quite satisfied with nestling an entire project inside one CMS, which would have acted as the provider of the frontend and the backend needs. However, with the advent of multitudinous frontend technologies, that satiation is no longer achievable. 

Hence, the new-age of CMSs emerged, which is essentially without a head, that is the presentation. Unlike the monolithic architecture, the headless approach separates the frontend development from the backend, making the developers happy by leveraging other technologies.

Drupal is a pro at the headless approach. Its monolithic architecture is also used by sites with simpler needs, however, it does give them the option to decouple or go headless, if they wanted to. 

  • You could choose to decouple partially, this would be the progressively decoupled approach
  • You could choose to go all the way, with the fully decoupled approach with JavaScript framework of your preference taking care of the frontend or you could choose static site generators as your frontend.

Be it React, Angular, VueGatsby or Metalsmith, Drupal can work with all of the major frontend technologies and make the project a success with it acting as the content repository.

Drupal’s work isn’t finished yet, it also provides robust APIs to streamline the connection between the presentation and the content layer. Built on the API-first approach, Drupal offers all of its application functions as APIs. This is done through its web services including RESTful web services and JSON:API along with API extensions with GraphQL

Drupal can create its own flexible and structured presentation layer, there isn’t a doubt in it. Regardless of this, when it is decoupled, it performs with equal efficiency to create API endpoints, which basically make room for content consumption and display in the headless application.

And this new-age of CMSs is gaining ground each day, and Drupal, with its own web services at play, is making the transition quite easy.

Fusion with Emerging technologies

I mentioned in the previous section that with time things change and so does their to us. Today, technology is a major part of that change. I remember a time not long ago, when a single camera setup on our smartphones was enough for us. Now, my phone has three, still I envy my husband, whose smartphone has a quad camera setup. Who could have imagined that? 

The same is true for CMSs, when we look at them, we don’t just want a simple site building tool. We want innovations, enhancements and upgrades that will stun us in the most positive way. And CMSs have started providing that. 

Taking Drupal into focus, it has had a revolutionary impact on the market by integrating itself with futuristic technologies.

Drupal has proven to be both reliable and reaching in its fusion with emerging technologies and that has led to an improved digital experience, both for the developers and the users. Read our blog Unleashing macro trends in technology with Drupal to find more about this topic.

It all comes down to continuous improvement in focus

A horizontal bar graph shows the various reasons people opted for Drupal.Reasons for people choosing Drupal. Source: Drupal Business Survey 2020 

The most common reason for people using Drupal is because they have already used it and because of that familiarity, it becomes easy to use. However, ease of use is not amongst the top reasons for taking up Drupal. 

Probably that is why, when Drupal 10’s 2022 release was announced during DrupalCon Global in 2020 by Dries Buytaert, its ease-of-use was addressed as one of the most impactful aspects. And Drupal 10’s development is proof of that.

In Dries speech, he emphasised the ease of use quite a lot. He talked about five crucial steps that were taken to simplify Drupal even more. 

  • Improving third party components even after their EOL to enhance Drupal 10 readiness; 
  • Improving Drupal’s ease-of-use further, Drupal 9 was a great step in this direction;
  • Improving frontend themes; 
  • Improving updates by making them automates, this would work best for security upgrades; 
  • Improving on Drupal technology by implementing JavaScript components in the UI. 

For all of these, the efforts are being made by the entire community. 

Yes, it would be faster, better and more innovative, but it would not be difficult. Like I mentioned before in this blog, we should not expect many overhauls to the software that would make our eyes pop and heads hurt. 

There are going to be improvements, there would at least by four versions of Drupal 9 before the arrival of 10. However, this continuity in advancements does not have to affect the way Drupal is seen by its users. It needn’t be the forbidden fruit that everybody wants to taste, but scared to do so. Drupal is an open source software, it is meant for everyone and that means it isn't too difficult. I wouldn’t deny that wasn’t complex at one point, but that point of time is long gone. What lies in the future is a version of Drupal that is as easy to use for a beginner as it is for an expert developer.

The Bottom Line 

I’d like to answer the question ‘How hard is it to use Drupal?’ with a direct from one of our developers.

“Being from a technical background and having PHP development experience before diving into Drupal gives me an upper edge during the journey. Being into Drupal development for around 3 years, I can say it’s all about learning the architecture of Drupal (such as entities, configs and forms) and how the code executes (sequence of functions calls). The earlier you understand these, the easier the Drupal journey would be for you and it would help you to debug faster and select the best approach for the requirements. Plus having a great community and open contribution platform helps you learn better and faster. Drupal is like a Lego, you can build it to your liking but, at a certain point of customisation, it is like a box with thousands of pieces and not all of them fit together.” - Anmol Goel, Senior Software developer at OpenSense Labs

For Anmol, Drupal experience made the journey easier. It requires you to get a hang of things, once you do that, there isn’t much that you’d find difficult, and your Drupal development experience would be a walk in the park; at least most of the time. And like he put it so eloquently, who could find a game of Lego difficult? All it is about is building something new every time, be it today or tomorrow and that’s Drupal for you.

Feb 26 2021
Feb 26
Choosing Right CMS for Your Business: Part 1 Akanksha Mehta Fri, 02/26/2021 - 10:15

This is the first of the two-part series on ‘Formulating a business case for a new CMS’. The first part debates on open source CMS and proprietary CMS. The second part will discuss various other factors that are to be considered before opting for a new CMS for your business.

A successful business is resultant of an array of decisions, whether big or small, leading to its conception, formulation and finally, execution. With digital being normalized to the extent where it is the only way we know of to access a ton of products and services, a solid online presence has come to be of utmost importance for a business. A lot of times, businesses prefer going for a CMS (Content Management System) instead of building a website from scratch, as a CMS gives you a pre-built website, good to go as it is, or easily customisable even without having a dedicated team of developers and related coding knowledge.

What are the options?

The first step towards making a business case is to weigh your available options side by side. As a business choosing a new CMS, you will be rendered the following options -

A) Proprietary Model CMS

A CMS built under the proprietary backdrop will have a unitary ownership. Every tool and feature available will be created and listed by the owner organisation, and will be served to the end user in a transactional manner, with not much deliberation involved as everything sources back to one single origin. 

B) Open Source CMS

On the contrary, in an open source CMS model, apart from a few core features, contributions are invited from everybody. The model opens up avenues for discussion and innovation for its end users thus forming the likes of a community, working together for the greater goal.

Due to the community benefits that come along with an open source CMS, recent statistics point towards an increase in inclination towards adopting an open source model for a business.

blue and pink bar chart analysing the likelihood of large companies to opt for open source cmsSource : The New Stack

The said benefits can largely be summed up in the following points.

grey chart with blue lines mapping the benefits of open source adoptionSource : SASwhite chart using blue lines to map the customer benefits of using open sourceSource : SAS

Business Case : Open Source CMS vs. Proprietary CMS 

For a better understanding of the business case for a CMS of either kind, let’s compare from various dimensions the features of Open Source and Proprietary CMS models with a business point of view -

The Costs

In a proprietary model, since it is the organisation that bears all the cost of maintenance, addition and subtraction of features, upgradation and bug fixation, it will recover these expenses in the form of subscriptions, licenses etc. You might need to pay yearly renewal fees or monthly usage charges. Along the line, be prepared for cost surprises, as they may initially be hidden, but will pop up soon enough.

If you’re wondering why to choose an open source CMS in this case, it is because it’s free to use with no charges in the form of subscriptions or premiums.

Hence, both the models do need some form of monetary support, and it is the business owners’ call what they want to invest their money on. 

Customisation

With the homogeneity that comes with proprietary CMS models, also comes rigidity in terms of customisation and personalisation, since there’s very little that is left to you for deliberation. Hence, if your business thrives on establishing unparalleled user experience by tapping on features like personalised feed and customisable layouts, go for open source. An open source model remains connected to its user base owing to continuous contributions and ongoing discussions within the community, making the field research for customisation much easier. 

On the other hand, if your requirements do not place much focus on the look and feel of the site, and rather banks on niche content for niche audiences, the associated costs and effort that comes with customisation is not that high utility for you and this is when to choose a proprietary CMS.

Complexity

Needless to say, all the additional features and tools make open source CMS unnecessarily complex. A small business with limited resources might find it too overwhelming to delve into web development especially if it is not their calling. However, the open source community, like that of Drupal, for instance, is available at your disposal any time. Just leave your questions in the dedicated forum, someone from the Drupal Community, that comprises millions of members, would surely revert. Or, if you wish to get web performance optimisation services or support and maintenance services, you can also partner with a digital agency which specialises in Drupal. In the case of proprietary CMS, with a single vendor to reach out to, things can be streamlined here as well.

Reliability

A proprietary CMS is a one-stop-shop experience, everything is handed out to you at once and you have very little to worry about if your area of expertise lies elsewhere. You can certainly rely on it in customary scenarios where you’re looking for greater stability of the product. But what must be kept in mind is that the ownership decides the lifespan of every service offered, and reliance takes a hit if the products you’ve based parts of your business on are changed opposite to your liking, or even removed. You also need to rely on the owners for bug fixes.

On the other hand, in case of an open source CMS, when our surrounding technology sphere undergoes change, open source is the first to reflect it, as it consists of users, and more importantly, contributors, from all across the globe. It gives one the freedom to work on a part of the software that is useful to them, hence creating their own safety net.

Security

Proprietary CMS models bank on security by keeping their source code under wraps, which might backfire as any bugs that creep into the source code will remain hidden from the public eye as well. Although the source code being open in open source models has drawn speculation, it is widely known for bug fixes being very prompt as multiple hands are working constantly to make it error free. Snyk found out in one of their reports that there were lower vulnerabilities reported across popular open source ecosystems, and that there was an improved security mindset within open source organisations. 

Bulkiness 

Proprietary software packages come in a bulk, installing various components that you might never end up using, as choosing exactly what to install isn’t everybody’s cup of tea. Open source softwares are based online, taking up negligible computer storage space. If bulkiness is your area of concern because you already have a lot of bulk on your plate, closed source might add to the problem.

Expertise Required

Open source is a developer’s paradise. If you have the expertise to work on an open source software or can afford people with the needed skills, nothing like it. However, if your website requires multiple people being on board to handle the content on a regular basis, it might not be the best choice for you. A closed source software doesn’t need any technical knowledge or coding skills to work seamlessly, while open source does. People with little to no technical experience can also work on proprietary software.

Innovation

The flexibility and space for innovation that comes with an open source software is unparalleled. Open source is like a self service buffet, each user is free to take what he or she wants, but it does not end there. New ideas for the betterment of the software and the community are always invited. In comparison, closed source models have a few people deciding on the features of the software, so it is impossible to cater to everybody. If your business’ future is to thrive on change and creativity, it is best to go for an open source model to avoid a fix in the future.

In open source communities, we see newer ideas and technologies on the ground not only sooner, but also on a continuous test drive with multiple technicians already working on the issues as soon as they’re detected. Open source CMS Drupal has held quite a starry record in unleashing new trends and making those functional as an open source platform. Macro trends in the industry like Continuous Delivery for superfast project deliveries, microservices infrastructure for small, autonomous services and machine learning for ‘intelligent’ web development’ have been brought to good use by Drupal. Hence, newer technologies see optimum utilisation with the backdrop of an open source community. 

Most importantly, the satisfaction of working with open source and contributing to it

Contributing to open source also has a plethora of hidden, indirect benefits. A company that is known to contribute to the common good is sure to build a positive, welcoming and compassionate brand value both within and outside the company. Developers involved in working on the open source components would be interacting with similar abundantly skilled people from all around the globe. Hence, not only is open source the right thing to do, it is equally exciting and challenging to work on. A person constantly interacting with the community is bound to gain a lot of dynamic experience, leading to a much faster growth rate as compared to a stagnant worker. And at the end of the day, one walks home satisfied and content with the feeling of having contributed to the bigger picture, to have fulfilled a bit of their own social responsibility. 

Companies as big units also find it important to provide funding to the community as a part of their CSR (Corporate Social Responsibility). Since they derive so much in terms of components and knowledge from the open source community, it only makes sense at the end of the day to give back to it. More on large companies' preference for open source here.

Drupal as an open source software has time and again seen how contributions and community engagement keep the platform afloat. Drupal acknowledges each contributor by issuing them credits for their work, and derives essential data from the trends of contributors. For example, if they see minimal engagement from a social or ethnic group, the inclusion statistics are likely to be revisited in order to analyse whether Drupal is accessible to everybody to engage and contribute in. Drupal also states in its Values and Principles that the bigger goal is to foster a learning environment leading to collaborative decision making and overall excellence. To know more, take a look at what makes open source recession proof, how it has tackled Covid-19 problems, and how Drupal stayed on top in the coronavirus pandemic.

At present, Drupal receives contributions from thousands of organisations and individuals who believe in the power of open source. Learn more about the approaches and perks of contributing to Drupal here.

Conclusion

The process of choosing a new CMS should be undergone carefully after thorough analysis of every aspect of the business cases for different softwares. The CMS is what you choose to represent and associate your brand image with, hence it should do justice to your goals, agendas and vision.

blog banner picture of computer screen reading 'add new post' blog image brown desk with papers and two hands pointing at it CMS open source cms Open Source Community proprietary cms Content Management System Open Source Blog Type Articles Is it a good read ? On
Feb 22 2021
Feb 22
The Drupal and Contentful Comparison: Open Source vs Proprietary Software Gurpreet Kaur Mon, 02/22/2021 - 16:16

Today, everything is being done online. If you are not online, you just might be considered antiquated. From social media to e-commerce, every aspect of the online world is, thus, improving by leaps and bounds. We are benefiting from these advancements, so no complaints there. 

All the advantages that we are able to reap from the online world, from the websites we so eagerly use, are dependent on a particular system. This is the system that they are built on, the more versatile it is, the better the website’s versatility is going to be. And this is exactly what we expect from our web experiences and the system provides almost every time. 

Drupal and Contentful logos can be seen together.


It is the Content Management Software, I am raving about. There are plenty available for the developers to choose from. However, we’ll be talking about two of them in particular, comparing them actually as they are strangely a bit alike and a bit different too. These are Drupal and Contentful. So, let’s begin.

Parameter

Drupal   Contentful Market Share  Founded in 2000, Drupal has a substantial market presence, with a million sites using it  Launched in 2013, Contentful’s market share is impressive too Decoupled Architecture  Drupal offers efficient decoupling with an API-first infrastructure  Decoupling features are similar to Drupal

Performance and Scalability 

If optimised properly, Drupal provides impeccable performance and limitless scalability  Contentful offers great performance too, however, it poses technical limitations Security  Quite reliable and the most secure open source CMS with a proactive community constantly working on issues  Good, however, bugs can be a common occurrence Content Workflow  The content modelling and editorial experience is wholesome for the authors, Views system being the highlight Contentful works differently, but offers an equally wholesome experience to content authors Pricing  Free to install and configure, there can be other costs depending on the scale of the project  Not free, being a proprietary software, has a standard monthly cost to be paid Third-party Integrations  Integrates seamlessly with third party tools and application  Matches Drupal in this regard Community  The Drupal community is over a million and growing  Contentful does not have such a wide community, but its Community Plan is a step towards it Migrations  Difficult in the past, but a breeze with the launch of Drupal 9 The CLI tool helps in migrations, making them automated Responsiveness  Designs, themes, images and tables, everything is mobile-friendly with Drupal  The responsiveness to mobile devices is quite impressive as well. Multilingual  Translates content, configurations and interfaces in over 90 languages Offers translation services similar to Drupal, but in 30 languages Accessibility  Drupal follows WCAG 2.0 and ATAG 2.0 guidelines for accessibility  Contentful follows WCAG 2.1 guidelines SEO  Drupal has a module for every SEO need, be it keywords or links Contentful also supplements SEO needs, but it is dependent on the creation of dedicated content types

Understanding the CMSs and their abilities 

Drupal, leading as an open source  

Drupal has been around for two decades. The 15th of January 2021, marked its 20th birthday, being around for this long, it has mastered all the nuances of content management and digital experiences. It is a digital experience management system that has the potential of driving web content onto multiple platforms to provide personalised experiences that would allow your users to connect with your organisation.

The kind of content management tools Drupal comes with are not only sophisticated, but also stimulate perpetual innovation. The great thing about Drupal isn’t its numerous modules, themes and templates, even though they are great too, but it is the fact that Drupal is open source and accessible to far more people than a proprietary software would be. 

A line graph is showing Drupal usage statistics. Source: BuiltWith

 

A table is showing the number of sites using Drupal at different points of time.Source: Drupal.org

Contentful, not the conventional CMS

Contentful was founded in 2013 by Sascha Konietzke and Paolo Negri in Berlin. It hasn’t been around as long as Drupal, but it isn’t the new kid on the block as well. In simple terms, Contentful is a content infrastructure, a platform that would allow you to create, manage and distribute content to any platform. 

This pretty much sums up the definition of a CMS. So, why did I say Contentful was not conventional?

Other CMSs, Drupal included, come with out-of-the-box content models that you have to choose from. However, with Contentful you have the liberty to create your own content models and you get to decide which content you want to manage. The RESTful APIs provide you the ability to deliver your content across multiple platforms, including websites, mobile apps, be it iOS, Android or Windows. From Google Glass to infinity, it is your pick. You can utilise the potential of Contentful on your own or a team. The uncluttered UI makes assigning custom roles and permissions a breeze. Contentful is a modern content platform that paves the way for faster launches.

A bar graph shows the market share of Contentful in different countries since it was founded.Source: BuiltWith 

Drupal vs Contentful: Putting them under the microscope

How efficient is decoupling? 

Usually a CMS is equipped to manage content in the backend and push it to the front-end templates that essentially provide the desired user experience. This meant that a CMS served as an all-in-one system that provided for all the development needs. However, that is changing with decoupling, where-in the frontend and the backend are two different entities, independent of each other.

Drupal 

With Drupal, you can decouple the frontend from the backend where you want to, making the content become reusable chunks that are independent of the presentation layer and always prepared for delivery to as many sites and apps.

When you decouple, you get the benefit of Drupal’s presentation-neutral content. The REST API, GraphQL, JSON:API and all the different alternatives that you get in decoupled Drupal ecosystem to build a front-end as you want, with any technology you want, is amazing

These are a few of the tools and frameworks that decoupling Drupal would allow you to take up and build interactive sites and apps. You can get the complete insights on what frontend technology to use with decoupled Drupal architecture here.

You also get the opportunity to future-proof your project by refreshing designs without re-implementing the entirety of the CMS.

Contentful 

Since decoupling is dependent on one principle, that is the separation of the frontend from the backend, I wouldn’t say that Contentful is all that different from Drupal in this regard. 

  • It is an API-first content infrastructure.
  • It makes front-end layers less rigid and more versatile, with a number of tools and frameworks.
  • It acts as a content repository delivering your content.

All of this is achievable through Drupal as well. What is different are two things;

  • It has its own Contentful API, delivered through a CDN, while Drupal operates on RESTful APIs, JSON and GraphQL. 
  • Next is the fact that Contentful uses an approach known as JAMstack, JavaScript, APIs and Markup; while decoupled Drupal uses MERN, MangoDB, Express, React, NodeJS.

There are also chances of API requests turning wrong. When that happens, the Contentful server will automatically create an error, with an appropriate HTTP status code in the header along with a JSON response in the body. 

How reliable is the performance and scalability?

Drupal 

Drupal comes equipped to handle any and all performance scalability needs an organisation might have. However, it would only be able to do that if you optimise it properly, that is a contingent for scalability. 

For instance, sites operating on Drupal 8 and later versions come with tools that will allow you to scale on the frontend and the backend. 

Blazy
Content Delivery Network 
Server Scaling 
Site Monitoring tools 

All account for a better performing Drupal site that is always ready to accommodate for traffic spikes and content growth making your site always available. To know more, read these comprehensive guides to Drupal performance optimisation techniques and scalability provisions.

Contentful

Contentful was made to scale to compensate for your site’s growth much like Drupal. It has taken into consideration all of the dimensions of growth that a site or app may face and categorised them into seven categories.

It is prepared to handle 

  • heightened levels of traffic, data and usage; 
  • the addition of more projects, products and channels; 
  • an increased level of complexity and sophistication in use cases;
  • an expansion in global markets; 
  • an elevated number of internal users; 
  • an enhanced pace of development; 
  • and cater for an advanced level of security for business perpetuity.

At the end of it all, Contentful comes with certain technical limits upon the infrastructure. These are enforced to mandate a lack of interruption on the shared-service infrastructure functions, however, they are limits all the same. Reading them before using Contentful would be wise.

How sufficient is the security?

Drupal 

In terms of security, Drupal is on the higher level of sufficiency, if not the best. The kind of features it comes equipped with make it a frontrunner. A Sucuri’s report even showed that Drupal is amongst the most secure open source CMS out there.

Drupal security is very competent because of; 

  • Its expert security team, adhering to the guidelines set by Open Web Application Security Project; 
  • Its community, being proactive and analysing any security issues; 
  • Its implementation of a secure access through strong passwords that are even encrypted;
  • Its secure codebase; 
  • Its control over the most trivial user access; 
  • Its encrypted database; 
  • Its APIs, ensuring validation of data and preventing malicious entry. 

Contentful 

Contentful almost competes with Drupal in terms of security, I have used the term almost because there is a catch. 

Talking about the positives, Contentful’s security infrastructure is based on Amazon Web Services, making it quite impressive. 

  • It has ISO 27001 compliant data centres; 
  • It comes with data storage, that is encrypted at rest along with an encryption of all forms of communication in transit; 
  • It comes handy with a web application firewall, brute force prevention, data retention policy, threat detection and two-factor authentication along with security audits. 

Despite all of these measures, Contentful isn’t totally secure from hacks. There are bugs and fixes that are often highlighted, and with a large codebase like that of Contentful, it is almost understandable. Therefore, its Bug Bounty Program was launched to reward hackers for finding these issues and vulnerabilities. 

How streamlined is the content workflow?

For a content management system, the content is the most essential part, its creation and management to be streamlined for the CMS to be successful.

Drupal 

In terms of content modelling and the editorial experience, Drupal’s abilities are more than impressive. 

  • Drupal offers numerous field types like boolean, comments, date, email, links, timestamp and numbers, inclusive of decimals, integers and floats. 
  • Drupal’s Field Group module enables you to custom group fields, allowing easy customisations for your editors.
  • The Views system helps in creating an experience that has enhanced uniqueness because it gives you the power to add any field to the view, pull relationships as well as executing many operations at once.
  • Then there is the Content Moderation module along with the Workflows module that can define an innumerable count of arbitrary publishing states and workflows. You could have a largely diverse team, and still be able to map out your preferred workflow before implementing it.

Majority of these are unfound in Contentful, however, it does have its own share of tools accounting for a streamlined workflow.

Contentful 

Contentful doesn’t really fall behind Drupal in content workflow by a substantial margin. Its abilities are almost as good as that of Drupal’s. Contentful’s default editorial experience is extremely easy to understand and use. However, when you decouple it, say using React, you would have to part with the default features. 

  • Contentful offers field types as many as Drupal’s, however, it doesn’t highlight specific format types like email and links and physical addresses. But then it has a JSON object, which Drupal is missing out on. 
  • Contentful uses widgets to define each field type. 
  • Default content views make viewing and filtering content very easy. 
  • Contentful also has easy field restoration with a referencing experience for searching and creation of entities, both of which aren’t found in Drupal.

Contentful’s content modeling and editorial workflow are quite different from Drupal, but effective all the same.

How pocket friendly is the pricing?

Drupal 

Being an open source software, Drupal is free to install and configure. If you have the right human resources, it is absolutely free. However, if you don’t, then it is going to cost you. And these costs depend on the kind of site you are building.

Costs would be dependent on; 

  • The size of the site you are aiming for, the bigger the project, the higher the cost; 
  • The kind of complexity it is going to mandate in relation to workflows, integration and multilingual sites;
  • The timeline and the team you would be relying on; a bigger project would need additional team members like project managers and quality assurance personnel;
  • Then there is the question of the Drupal agency to do all of this for you, if you cannot, which is going to cost you.

Contentful 

Contentful isn’t associated with being free like Drupal. It has different pricing models for different needs of developers and organisations.

  • If you are looking to build a personal site as an individual developer, Contentful would be free for you.
  • If you are looking to power a modern stack site or two with enhanced authoring roles and technical support, you could take up a free trial and then subscribe to Contentful starting at $489 per month.
  • And if you are looking to build hundreds of digital experiences while scaling your content platform, you can get a custom plan from Contentful for your specific needs.

I wouldn’t say Contentful is too heavy on the pocket as is, but including the cost of hiring developers and staff and it would become more expensive than Drupal. 

How effective are the third party integrations?

Drupal 

Drupal is renowned for its abilities to integrate itself with third party tools and applications. Be it analytic platforms, e-commerce verticals, ERP systems or email and marketing systems, Drupal works well with all of them.

Its API-first focus, like Contentful, makes it essential for finding connections to make content reach to other sites and apps. And third-party integrations are just the way to do that.

Contentful 

Contentful comes with UI extensions that are able to integrate themselves with external APIs and third party data. From e-commerce sites to YouTube to local translators, Contentful can merge itself with a number of tools. 

There is also the fact that Contentful has successfully integrated itself with Gatsby and Metalsmith as its official projects proving its abilities further in this regard. Drupal and Contentful aren’t all that different in terms of third party integrations.

How helpful is the community?

Drupal 

Drupal is a large platform, operational all over the globe. This means that its community is also spread throughout the world. And it has, the Drupal community has over a million users in as many as 230 countries, isn’t that an achievement in itself?

People from different backgrounds, different skill sets and different perspectives come together to improve Drupal and enhance its community ties. Perks of contributing to open source are immense and this guide to Drupal contribution will shed more light on the advantages that you get.

Contentful 

Contentful does not have a community as wide as Drupal’s. However, it is making strides towards building one. It has devised and launched a Community Plan that would empower individual developers to build as they like, without incurring any costs as opposed to its 14-day free trial. 

The community also provides technical support through its slack channel, where thousands of developers are active and ready to help.

How seamless are the migrations?

Upgrades and migrations are inevitable when it comes to web development. Usually developers do not look forward to the hassle they bring along. So, do Drupal and Contentful bring on the hassle or eliminate it?

Drupal 

With Drupal 9 having launched last year and Drupal 10 on the horizon, there is a lot of anxiety amongst the Drupal 7 and 8 using folks. The primary reason for the anxiety being the looming EOL dates and the heavy-duty upgrades. 

However, the anxiety isn’t necessary at all.

Talking about the switch from Drupal 8 to 9, as per the makers, this upgrade is considered the easiest in almost a decade. By following a four-step guide, you can have your current site ready for the functionality and better security standards of Drupal 9 by using the Upgrade Status

As for the upgrade from Drupal 7 to 9, easy is not a term that would be used to describe it. The migration will overwhelm you, but all the advantages of Drupal 9 will make it seem worth it. Developers can make the upgrade themselves with the help of Upgrade Status and Drupal Module Upgrader. These help in letting you know whether your themes and modules are competent for Drupal 8/9 and converting your custom code respectively. Explore the ultimate guide to Drupal 9, all the burning questions that you may have about Drupal 9 and the must-have modules to start your Drupal 9 website to know more

Contentful 

Contentful has a tool that helps in the migration process, making it rather easy by using CLI. The Contentful migration CLI helps developers to script changes to the content model with a fine-tuning that wasn’t possible before. Using continuous integration services along with it will also help you in validating the deployment before it hits production. 

Installation and configuration of the Contentful CLI; 
Writing of your own migration script; 
And applying the migration with CLI, is all you need to do to make it happen. 

The result would be getting documented and versioned content types along with automated and predictable migrations that can be repeated in other environments.

How versatile is the responsiveness?

Drupal 

In terms of responsiveness to devices, Drupal is a pro. Providing an optimal visitor experience is one such feature of Drupal that makes it worth everyone’s while and responsiveness is its core. 

Drupal offers; 

  • Responsive designs;
  • Responsive themes; 
  • Responsive images and breakpoints; 
  • And even responsive tables; 

All of these enable Drupal sites and apps to identify the width and height of any device and adapt itself accordingly, making it mobile and user-friendly at the same time. 

Contentful 

Contentful is often referred to as a mobile content management system, meaning it was built keeping in mind the fact that developers and authors would want to publish content on the go through a smartphone or tablet and Contentful makes that work seamlessly.

It optimises mobile performance with three features; 

  • Selective sync;
  • Image auto-compression; 
  • And providing support for offline persistence.

This makes it as good as Drupal in responsiveness.

How fluent are the multilingual sites?

Drupal 

Another one of the benefits of Drupal is the fact that it caters to a multilingual audience very well. With inbuilt language handling abilities, it provides localised digital experiences that are both fast and easy to get.

  • It can translate content, configurations and interfaces. 
  • It can be run in 90+ languages.
  • It also provides an overview screen for translators, making their work easier.  

Access this guide to Drupal’s multilingual capabilities to know more.

Contentful 

Much like Drupal, translations in Contentful also take place in-house. It has a six-step process to make translations happen, which isn’t very complex or rigid. You can add and delete the locales (languages) from the settings as and when you wish, provided you have administrative access. 

The only aspect that pales Contentful in front of Drupal is the number of languages supported. Sadly, Contentful only offers translations in 30 languages. 

Contentful uses locales to define the varying languages a site might use. This allows you to define localisations of content easily enough. However, when you have to work with multiple locales, it can become confusing for your authors. That being said it is an insurmountable task, organisations have worked with as many as 30 locales at once. 

How universal is the accessibility?

Drupal 

Drupal follows the WCAG 2.0 and ATAG 2.0 guidelines to make its projects accessible to people with disabilities. 

Features for screen readers are a major part of it, with the inclusion of drag and drop functionality, colour contrast, image handling, form labeling and exclusion of null tags, to name a few. 

Drupal accessibility also transcends from the users to the developers, with themes, modules and community sites making an inclusive developer environment. 

Contentful 

Contentful also offers similar features and functionalities for accessibility like Drupal. The only major difference is that it adheres to WCAG 2.1 guidelines, which are more recent. 

Building sites that are easy to adapt, navigate, have distinguishable elements and are keyboard accessible are some of Contentful’s accessibility principles. It also implements automated accessibility testing to check whether the project is compliant with the set standards or not. 

How friendly is the SEO?

Drupal 

Drupal has powerful SEO tools that can enhance your site’s visibility by a landslide. When I say tools, I mean modules, the use of which can make you a pro at SEO. 

Mastering the keyword game through Real-time SEO for Drupal; 
Mastering the linking game through Linkit module
Mastering the duplicacy predicament through Redirect module

Drupal can and will keep you at your A-game in terms of SEO. The Ultimate Drupal SEO Guide will help you become acquainted with all the right SEO modules. 

Contentful 

When you use Contentful as is, there aren’t as many SEO privileges to enjoy. For instance, a media page would only have a title and a description. That’s not to say that Contentful doesn’t provide for SEO. 

It does, however, for that you would need to provide more information. This means you would need to create a dedicated content type for the media files you will have. 

Once that is done, you Contentful will enable you to; 

  • Take command of the SEO; 
  • Put in the right tags (which are only used for organising and searching content, sadly); 
  • And add alt text for your accessibility. 

The change in the content type helps you to create whatever suits your needs and preferences, which is a good thing. There is one thing to remember that the extended metadata for these media files would be stored in the content tab, rather than the media tab, where the actual file would be located. This can be a little confusing. 

The bottom line

In the end, I wouldn’t say one is definitely better than the other. There are aspects wherein Drupal prevails over Contentful, like security and performance; however, there were also areas, wherein Contentful gave Drupal a run for its money, like accessibility and responsiveness. I’d say that both are great at what they do and saying one is entirely better than the other wouldn’t be appropriate. So, I’ll leave it to you. 

blog banner There are two chicks standing side by side. blog image A balancing scale can be seen. Drupal Contentful Blog Type Articles Is it a good read ? On
Feb 19 2021
Feb 19

A whole lot of mental, physical and monetary investments later, your website is finally moving on the track. You have a good traction, and keep up with the trends with updated content and regular revisions. When you have eventually got the hang of managing a full fledged online presence on your website, the first thought that is likely to show up on your mind is to extend it even further. 

Blue background with light blue arrows, addition sign and light blue drop


For reaching a wider audience, optimising mobile experience, and building an alternative marketing solution, mobile app development is perhaps the best way to move forward with one’s business plans. 

What is Flutter?

blue arrows on white background with the text flutter


Flutter is a cross-platform mobile application development framework, more like a software development kit, that was created by Google in 2018. It is used to build applications for several operating systems, both mobile and desktop, and the web, from a single codebase. It is written with Dart programming language. In addition to this, Flutter is an open source platform and invites community contributions into their code repository. 

Ever since its launch and subsequent expansion into development for desktop and web, Flutter has seen widespread adoption and expansion. According to Stack Overflow Trends, Flutter has surpassed both React native and Xamarin in terms of the questions asked about their respective technologies. Google Trends display an increasing  interest of users in Flutter, with searches about the framework soaring since the past two years as well, while Google also claims that Flutter has been adapted by over 500,000 developers for app development.

white graph with blue red and yellow lines mapping the number of questions asked about flutter, xamarin and react yearlySource : Stack Overflow

Why use Flutter?

There are plenty of options available for mobile application development. Despite the presence of other similar frameworks and Flutter being relatively new in the market, in terms of popularity Flutter continues to be one of the most successful app development models among developers. This can be attributed to the following reasons  -

Widgets

Flutter makes the job of development easy with the use of widgets. Widgets are building blocks - each facilitating a part of User Interaction and Experience (UI and UX). Stateless widgets are static frameworks that don’t store any data and exist for the purpose of streamlining your inputs. For example, the Text widget lets you create stylised text and the Row and Column widgets let the user create layouts in vertical and horizontal directions. Similarly, the Container widget creates a rectangular, contained layout visual with margins and padding. Box decoration can be used to customize the rectangle. On the contrary, if the widget in question performs a function when activated, it is called a stateful widget. Examples of such widgets in Flutter are InkWell, Checkbox, etc. Thus, everything doesn’t need to be formulated from scratch, with various pre made layout builder widgets available for the developer.

Open source

What makes Flutter stand out from the rest of its competitors is that it is an open source platform. There are various ways in which an open source model builds its progress over proprietary models in software development. When the cause is community driven, there is always a certain proactiveness both from the users and the owners for driving towards betterment and growth. With no proprietary limitations, the developer community is free to indulge in knowledge sharing, code alterations, and discussing associated challenges with one another leading to better bug resolution in terms of analysis and frequency. Hence, choosing Flutter for application development means having a flexible framework that is open to customisations along with having a community to discuss and also solve your resulting issues with. To know more about the power of open source, read how open source communities work together, how much contributions are valued, why large companies believe in open source, why open source is recession-proof, and last but not least how open source has been impactful during Covid-19 pandemic.

Single codebase and Cross Platform

Although Flutter launched as a mobile application development framework for Android and iOS in 2017, it was quick to expand into the arenas of mobile, desktop and web in the following year, becoming multiple device compatible. A major pro of Flutter over other similar app development frameworks is that it has a single codebase to compile applications, ie, there isn’t a need to code separately for different operating systems and devices, enabling seamless simultaneous app creation even when you’re dealing with multiple platforms and gadgets at the same time. This makes Flutter both developer and user friendly, as the content needs to be formulated only once and is compatible with most of the devices one would want to access it from.

Dart 

Flutter uses a programming language called Dart, which is a relatively simple language with a small learning curve. Its features are a little similar to other languages, but are fitted into a unique syntax and infrastructure. Therefore, developers using Flutter don’t need to invest a lot of time and effort into the process of learning the basics and starting to build applications, which makes the framework ideal for users of almost all experience standings. Due to this, Flutter is suitable even for a small business or a startup that cannot afford experienced developers in their team due to the simplicity of the programming language. 

Integrated Tools

The codebase being integrated at a single place also accelerates the speed and convenience of coding, as the Hot Reload feature updates every change in the source code - allowing developers to see the changes made in the code real time. The work culture in such a case becomes transparent and hurdle free. Tools for developer convenience also include a package called DevTools, a compilation of performance and debugging tools meant to be used for both Flutter and Dart. DevTools is in the beta release at present and is undergoing alterations.

Drupal for Mobile App Development

White background with a blue drop

While we talk of application development, an important player in the market remains our good old CMS (Content Management System), Drupal. The range of mobile apps Drupal can deliver is impressive. The constant evolution and adaptation of Drupal is what has manifested into the huge user base of the CMS, which is currently hosting over 600,000 websites

The usage statistics for Drupal throughout the years are mapped on this graph -

white graph with red and blue lines mapping drupal's growthSource : BuiltWith

Drupal also has a domineering presence across several industry verticals.

red, blue, yellow pie chart showing the presence of drupal throughout various industriesSource : SimilarTech

Accordingly, in the arena of mobile app development, Drupal has seen significant advancements over the years.

  • As an API-first CMS, Drupal makes it easy to communicate smoothly with any application. It is these APIs that link Drupal to the mobile application.
  • Drupal provides plenty of development kits, libraries, modules and sample apps to make application development easier. This simplifies the job of a Drupal developer who might be well versed in PHP, MySQL and HTML but not so much in device-specific native mobile app programming languages like Java or Swift. Elements in Drupal like Waterwheel Swift and OneDrupal Android help manifold in bridging the gap. 
  • Application development is made even easier in Drupal by seamless compatibility with app development frameworks like Vue, React, Angular and Flutter. Drupal pairs well with all of these frameworks to create fast and responsive applications both for the web and mobile. 

The primary reason for which a business wants to build a mobile app is to reach a wider audience and expand marketing avenues. With both Drupal and Flutter occupying large parts of the commercial spectrum, let’s dig in a little deeper into how these can be used together. 

Case Study : Drupal with Flutter 

Drupal’s greatest strength is its ability to mould into any customisation, and in case a customisation does not exist, creating an API for your requirement is always an option. Drupal allows for decoupling and connecting with Flutter through its web services like REST API. Recently, Opensense Labs had the opportunity to take up a project from a leading media and publishing company in Malaysia. 

The primary agendas were - 

  • Refurbishing an already existing but poorly maintained website.

The website was previously built on WordPress, but the organisation wanted to shift to Drupal CMS for improved management of the ever renewing, large volume of content and efficient multi channel delivery. 

  • Developing a mobile app containing the same data as the website, from scratch.

To reach a wider audience and improve UX, an app was to be created to reach the readers faster. This is where Flutter came in.

Processes and solutions -

To start off with, the major work to be done was migration from Wordpress to Drupal and connecting Drupal with Flutter:

  • Since the website dealt in news and media with numerous reports published daily, the number of articles to be migrated were over 30,000. Content migration to Drupal was achieved by following processes like writing custom Drush commands among others
  • Rest API was used to connect Drupal and Flutter. While Drupal acted as the powerful backend managing content, Flutter helped in building a native mobile app.

Along the way, some major hurdles with performance and scalability were addressed:

  • Being a news website, the traffic was pretty inconsistent which led to a few malfunctioning issues. To tackle this, the entire infrastructure was built on AWS which allowed for auto scaling and scheduled scaling to be used. This made sure that the number of instances were increased and decreased as and when traffic saw a spike or a decline respectively.
  • Even though the APIs were created, there were some performance issues due to the large amount of content on the site, with numerous news articles being published daily. Right use of cache tags helped improve the performance eventually.

To make the website and the application function optimally and in sync with the company’s agendas,

  • Firebase was used for enabling Push Notifications, and manual permission was given to the admins for sending notifications leaving no room for error.
  • For ads, the DFP (DoubleClick For Publishers) module was used to serve ads from Google. Interstitial ads were placed between the length of the articles for maximum clicks. A basic level of ad optimisation was also done by the team to ensure better revenue. 
  • Upvote and downvote feature for the news articles was enabled using the Voting API module.

Conclusion

Drupal and Flutter are both significant players in the software arena. We are likely to see plenty more use cases where the efficacy of both Drupal and Flutter is utilised to formulate seamless mobile applications.

Feb 16 2021
Feb 16

Every morning we get up and something big has happened somewhere in the world. Sitting in the capital of India, we get to know how the inaugural ball went on in the capital of the United States. And how are we able to get this knowledge?

It is the media and publishing industry that constantly reports all the national and international happenings to our households. From getting to know about election results to knowing the extent of natural calamities and political unrest, we know it all. 

The role of the media is all the more important today, it has essentially become the voice of the voiceless all over the world. With such a magnitude of responsibility, the media and publishing businesses need to be at their A-game all the time. 

Today, we’ll try to understand how they can enhance their online presence for a rich user experience with the help of Drupal. Before doing that, let’s shed some light on the changes in this industry and understand the consequent change in their web needs. 

What changed over the years?

Time changes everything and everyone. People change their appearances, their style and their thought processes over time. Something that may be important for them is highly likely to become trivial in the distant future. This is what happened to people’s perspective towards the media and publishing industry and the change in point of view led to a substantial change in the running and management of this industry. 

Think of a decade ago, were we as dependent on smartphones and other mobile devices as we are now? The answer is no. However today, from teenagers to the elderly, everyone is glued to their third limb, being the smartphone or smart devices in general. Look at the usage in the graph below to get a clearer idea.  

A bar graph shows the global monthly data consumption on various smart devices .Source: Deloitte.com

Once reading a news article on a smart gadget was a novel thought. However, today it is an everyday occurrence. And that is the pivotal shift that the media and publishing has had to take. The readers are more inclined to reading news updates on their phones. And that is why, this sector has had to transcend from print and paper and provide their audience with digital platforms that are easy to access anytime, anywhere and on any gadget.

What the change comes down to is the delivery mechanism. The media and publishing outlets are performing their duties much in the same way. They are reporting much in the same way. The stories that need to be told are being told and the questions that need to be raised are being raised. However, all of this is happening on digital platforms and it happened in four phases. 

A circular diagram is showing the four waves witnessed by the media and publishing industry.The four waves of the media and publishing industry. Source: Weforum.org

I wouldn’t say that the physical medium of media has become antiquated, not by any means. I still see my dad having his morning tea with a side of the front page news of The Times. However, he also gets constant updates on his phone about the world happening without having to wait for the next day’s paper. 

And that is the change that has happened, that is how the evolution of the media and publishing industry took place, with the core values still remaining the same. 

Look at this report by Statista to understand the emergence of digital media platforms. With such a substantial amount of revenue, I’d say it has come out with a bang.

Revenue statistics for digital media and publishing industry are shown in the US.Source: Statista 

What do media and publishing houses seek today for digital presence?

Like we just discussed above, the media and publishing houses have transformed a great deal in the way they relay information to their audience. Today, there isn’t just one kind of audience and you can’t just build your entire persona around that one category. From young people perusing news on their smartphones to the minority population fluent in their own regional language, the media and publishing industry has to be able to provide for the diversity they have in their audience.

With the move towards digitalisation, we are going to take a look at the needs and requirements of this sector as they are in the present day.

Ease of publishing 

The primary purpose of a media and publishing business is to provide its audience the content that they need. This purpose mandates that the site has an enhanced ease in editing and publishing content, be it blogs, articles or press releases. These content pieces should not be limited to text, images, audios and videos are as equally important as the powerful words of a news writer, and that is the first requirement of this sector today. Faster production and publication of content across multifarious channels is key. 

Friendliness towards the search engines

Now that we have published the article with ease, the next major requirement is to ensure that it reaches the audience it was intended for. If I talk about myself, I always end up at Google whenever I want to read about a major or even minor happening in the world. This is true for most of the readers out there. That is why, Search Engine Optimisation is essential today. 

Producing SEO friendly content would help your content become all the more visible to a wider audience and garner organic traffic for your site. With over 3.5 billion searches everyday on Google, I’d say there isn’t any harm in taking advantage of SEO by adding the necessary words and phrases to your articles. Everything about SEO and its implementation can be accessed here.

Amiability to social media 

Social media is a game changer for the media and publishing industry, allowing it to take its content across the globe in mere seconds. Therefore, social media integration is key, with Facebook becoming the front runner, being that it is the largest platform. 

Having a social media handle, providing sharing options on your articles and creating custom posts of your social media handles, all three of these would lead to a streamlined integration with social media channels. With over half the world population using these platforms, it is only wise.

Responsiveness of design

Next major requirement for the media and publishing industry in going digital is the need to be responsive. Websites that can only be browsed efficiently through a desktop are essentially doomed for failure. Being responsive to all sorts of mobile devices, especially the smart phones, is integral to media outlets. Accelerated Mobile Pages are a trend that more and more websites are following. These help in delivering a smooth experience of browsing for all your users across all the touchpoints. Here is your complete guide to web design.

Warmth of personalised experiences

Coming to the final requirement, which is personalisation. Every web user today is treated differently, since they have different taste. We, as web developers, become aware of these tastes through web cookies. Therefore, as a media and publishing site, you have to become aware of your audience’s likes and dislikes and provide a personalised experience for them that they end of loving. Informational noise and never-changing ads need to be left in the previous decade. Your complete guide to web personalisation is available here.

Why is Drupal great for the media and publishing industry?

Sports, FMCG, Food, FinTech, Elearning, Government, healthcare, nonprofit, travel, or whatever website you need to build and whichever industry segment you belong to, Drupal has just the right ingredients to build your digital presence. Media and publishing industry is no different.

Drupal is an open source Content Management Software that has a worldwide presence and is renowned for its efficiency in managing content. It has clientele from multitudinous trades and businesses. And with a community of over a million, it is indeed a force. It is a force that is equipped to provide digital experiences that enable you to connect with your audience no matter where they are.

I would not get in every minute aspect of Drupal, because that’ll make this blog quite lengthy and nobody wants that. Rather I would only talk about those aspects of Drupal that make it extremely compatible with the media and publishing industry. So, here goes.

Drupal eases content management and distribution 

The thing about media sites is that they are not limited to just one, they have a huge family with many subsidiary sites. The higher number of co-dependent sites means that you would have to have a lot of content to deal with. Drupal comes quite handy here, as it acts as a single home for all the sites. 

And the amount of content that results in would not be bother as well.  Be it photos, videos, audios, podcasts or graphs and analysis. Everything would be seamless in terms of production, management and distribution with Drupal. Have a look at an example of how content authoring can be performed at ease with modern solutions like Layout Builder module in Drupal core.

Drupal eases the mobile transition 

I believe I am going to be mentioning this one for a third time now, but mobile responsiveness is pretty high on the priority list so it deserves another mention. When we talk about user engagement, a modular design is key and when that design is flexible to respond to any device the engagement soars. Drupal provides a number of modules to achieve the same.  To know more, read about mobile-first approach and Drupal’s provisions for building mobile solutions at scale.

Drupal eases multilingualism

With media sites catering to a large number of audience worldwide, language can become a problem. Drupal provides multilingual support that makes publishing the same content in different languages an ease. Drupal offers translations in as many as 94 languages. More on Drupal’s multilingual capabilities here.

Drupal eases profits and lessens costs  

Drupal is equipped to make you money as well. Advertisements, promotions, subscriptions and one-purchases, all are inclusive in Drupal modules that result in media outlets being more profitable. 

Then is the fact that Drupal is open source, which means it is free of cost. There isn’t any licensing fee required to be paid. All you need to do is install and configure it and you’ll be ready to go. Learn more about the perks of contributing to an open source CMS like Drupal and being a part of a growing open source community here.

Drupal eases the security concerns   

Drupal security is one of the best in the market. With modules for authentication, password protection and encryption, your data is always going to be safe. Open Source security isn’t anything to be taken lightly and Drupal has proven that. Here is a survey to prove that. 

There is a pie chart depicting the percentage of security issues in various CMSs, Drupal being one of least of them all.Percentage of security issues in a sample group. Source: Acunetix

With this level of ease, you can become relaxed and bask in the efficiency of Drupal and become free of the burdens of running a media site that you might have to endure otherwise. However, you would have to write stellar pieces that are able to resonate with the audience and accomplish what they were set out for. That is a burden you would have to bear, Drupal wouldn’t be able to do so.

Here is a glimpse of Drupal at work with digital media houses

Drupal has indeed proven to be one of the best CMSs for the media and publishing industry. I don’t just say it for the sake of it, I come bearing proof. OpenSense Labs has worked with many media and publishing houses to build impressive experiences for their web portals with Drupal and here are some of these sites. 

Men's Health 

Men’s Health magazine is a global brand, which publishes in close to 60 countries. It required a software that would provide an ease of management for the content authors, with an adaptable content architecture that would be responsive and browser agnostic. It also required to balance the performance and images conundrum without trading off on either of these. And Drupal was able to fulfil all of these requirements and an impressive digital experience was created. 

Read the complete case study of Men’s health to know more.

Earth Journalism 

Earth Journalism Network is a leading non-profit environmental new network that aims to improve the quality and quantity of environmental reporting. With such crucial work, it required the best. Drupal provided ease in publishing and managing varying categories of content types with a heightened flexibility. Drupal also had the right kind of core and contributed features that allowed for better design scope and ability to handle enormous amounts of content. 

Here is the detailed case study of Earth Journalism Network.

Farm Journal 

Farm Journal is a leading US publication site for agricultural news with a host of subsidiary sites serving varying sectors of this industry. With such a magnitude of services, its content needs were becoming a challenge. Drupal was able to overcome this challenge with ease. Customer sites were enhanced, upgrades were made faster and convenient, the architecture was made scalable and modular in nature and most importantly, the content journey, from the editors hitting save to the consumer clicking read, was reduced to mere seconds.

To know about everything that went on in the Farm Journal project, read this case study

AgWeb 

A part of the Farm Journal brand, AgWeb was able to improve its brand identity as well as user engagement with Drupal’s help. Being an agricultural news site, AgWeb needed to improve its web performance, at the same time the site’s SEO needed to be kept intact, while improving the site’s web SERP rankings. ReactJS was also implemented as part of progressive decoupling for a better frontend experience.

Take a look at the AgWeb case study to understand the project better.  

All of these are a blatant proof of Drupal’s efficiency in this constantly evolving domain of publishing and you would be wise to choose it.

Conclusion 

The news, newspaper and article sites are growing at an impressive pace. Therefore, having a CMS in your corner that is powerful enough to let you scale in accordance to the growth rate is ideal. Drupal is just that, it can do and achieve things for a media site that other CMSs may not be able to. And we at OpenSense Labs have actually witnessed that with all media projects. So, trust me when I say that you cannot go wrong with Drupal. For any doubts you may still please feel free to contact us.

Feb 09 2021
Feb 09

A myth is a pretty powerful thing, especially if you end up believing it. Even if you don’t, it does dampen the prospects of whatever it is associated with. It’s like if someone told you that the latest smartphone, which is exorbitantly expensive, is not worth the price. In such a scenario, even if you had the means of buying it, you would end up thinking twice. And you don’t even know whether the myth is true or not. That is how powerful a myth can be. 
 
A myth, a misconception, a false belief, whatever you call it, follows as many things as you can imagine. It follows you and me, and it also follows the inanimate objects, making their abilities seem weaker than they actually are. 
 
And it is one such thing that we are going to be discussing and try to debunk the falsified claims that have been following it for a long time. The thing I would be talking about is actually a software, a Content Management Software by the name of Drupal
 
Drupal is used to build websites, websites that are feature packed and give a powerful performance, yet there have been many claims made that try to show Drupal in a bad light.
 
Today, you and I will get into all of these and ensure that all the myths associated with the name Drupal are busted so colourfully that they can never ever be claimed by anyone. So, let’s start with the most common misconceptions about Drupal.

# Drupal tends to be difficult to use

Any software or system that you may end up using, the foremost aspect that you would look out for is its usability. It might be able to provide you with a ton of features and functionality, but if you cannot figure out how to use it, all of that would be a waste. So, on the same note, let me tell you the first Drupal myth. 

The most common myth about Drupal is the fact that it is very difficult to use by all the parties involved. Developers find it tedious to work with, marketers can’t get a hang of it and the content authors and editors, well, they feel that they are way out of their element. 
 
This myth is not true at all. Drupal is a little complex to use, at least in comparison to its competitors. However, it requires that level of complexity to be able to do its job properly. For instance, Drupal provides umpteen number of modules, all of which are able to provide you with any kind of functionality that you may be on the lookout for. Selecting from these could be a daunting task, but it is also a necessary one. 

Let us look at some of the Drupal complexities to understand why they are mis-conceptualising an easy-to-use CMS.

  • Drupal’s large codebase seems intimidating, but the system only loads what you need, so the point is basically moot here. 
  • Drupal uses more memory, so it is perceived that if there is an out-of-memory error, it would become very difficult to solve, making the experience pretty complicated. 
  • Then, there is the fact that Drupal is built on PHP. Since that is a language many developers lack experience with, the myth of difficulty in use prevails all the more.
  • The last one would be the lousy UX experience Drupal provides to the non-technical users. Being a content editor myself, I would say that this isn’t true at all. I have been able to use Drupal with ease to edit and publish my content and so far the experience hasn’t been lousy in the least. 

That is my take on Drupal ease-of-use. There is an acclimating period required, but that is true of any new technology. More on the misconception of Drupal being difficult here.

# Drupal migration and upgrade tend to be an insurmountable task

Migrations and upgrades are an inevitable part of website development. There will come a point when the version you have built your site on is going to become so basic and on the verge of being obsolete that you would need to upgrade or migrate to something new and better. 
 
With Drupal, the story is the same. From the first version of Drupal that was launched almost two decades ago to Drupal 9, which is the current version, there is a stark difference that is too obvious to ignore. 
 
The myth going on is that these migrations and upgrades of Drupal are very difficult, complex and will most likely give you a headache. The truth behind it is quite the opposite. 
 
I would be wrong to say that Drupal migrations do not require any work because they do. Imagine moving from your home in India to the US, there would be work required and lots of it too. However, the work won’t be too much to make you rethink the move because the other side is too special to give up. 
 
Coming back to Drupal, the upgrades are usually seen from Drupal 7 to 8, 8 to 9 or directly from Drupal 7 to 9. All of which are possible scenarios for your site and its enhanced functionality. 
 
Drupal 7 users can first upgrade to Drupal 8 and then move on to Drupal 9. Or, they may choose the best route by going directly to Drupal 9 to ensure that the upgraded site has maximum expected life.
 
For the Drupal 8 to Drupal 9 upgrade, there are six steps involved; only 6 and not a bazillion.  

  • First, you would need to ensure that your hosting environment aligns with the platform requirements mandated by Drupal 9.
  • Then you would need to update to Drupal‘s more current versions, it could be Drupal 8.8.x or 8.9.x. 
  • Once that is done, you would need to ensure that all your contributed projects are compatible with Drupal 9 by simply updating them. 
  • When that is out of way, you would be required to build custom code that is also compatible with Drupal 9. 
  • In the penultimate step, you will be asked to update the core codebase of Drupal 9. 
  • And as the final step, all you have to do is run update.php and that is it. 

There is also a step by step guide in the upgrading section provided by Drupal to help in the transition process with all the details you may be looking for. 
 
It is true that upgrading from Drupal 7 to 8 or 9 can be pretty intricate. Drupal Community took cognisance of this matter and made sure upgrading to Drupal 9 would be the easier you can get. As a matter of fact, the upgrade to Drupal 9 has been deemed as the easiest upgrade of the decade. This in itself should have been enough to pop this myth there and then. Access this ultimate guide to Drupal 9 to know more. You can browse through our complete list Drupal 9 FAQs that answers every burning question that might have regarding Drupal 9.

# As Drupal 9 rolled out, Drupal 7 and 8 tend to be less efficient

Since we just talked about the upgrading to Drupal 9, I felt this myth that has been for a while now needed some straightening too. 

The myth is that since Drupal 9 has launched and is the most advanced and feature-packed version of Drupal, the earlier editions of Drupal, namely 7 and 8, are simply no longer viable. 

This is not by any means true. It will come true at one point of time, but that point is very distant in the future; not according to me, but the makers themselves claim so. 

  • If I talk about Drupal 8, which is reliant on Symfony 3, it would be supported by Drupal until the 2nd of November, 2021, since that is how long the life of Symfony 3 is expected to be.
  • Talking about Drupal 7, its community support was earlier marked to end by November, 2021. However, with COVID and the consequent crisis, that has been extended to by a year. So, Drupal is expected to be supported by the Drupal community until 28 November, 2022

This support is proof that Drupal 7 and 8 would still be fully functional for a couple of years, and their efficiency is not going to be marred by any way. The sites and projects reliant on them will continue to bask in all the glorified features of Drupal. Don’t believe anyone who tells you otherwise. Dries Buytaert, the founder and project lead of Drupal, takes pride in continuing to care for old software. Drupal 7 released almost a decade ago and continues to get the sort of care and attention from the Drupal Community it requires to function well. He wishes more and more software is well-maintained like Drupal is.

Another thing that I want to add is that even if the community support dies down, there is still the vendor support that lets the project be efficient. For Drupal 7 sites that support is extended to 2025. Let me also tell you that there are still many Drupal 6 sites which are performing efficiently through the vendor support. 

Yes, the end of life would come for the older versions sooner than the later versions, but that is how life in general works, don’t you agree?

# Drupal tends to be heavy on the pocket

Financial considerations are one of the major aspects to pivot someone’s intentions towards taking up a project or software. The same is true for Drupal as well, taking us to the next myth.

It is perceived that Drupal is extremely expensive, making it hard for smaller organisations to take it up as a software to build their websites.

Drupal is an open source software, which means it is free of cost, so this myth is a little funny to say the least. Yes, open source software is not entirely free or rather its implementation and maintenance is not free. It would definitely cost you to hire Drupal developers to make that happen. From maintaining Drupal modules and updating your digital properties to migrating Drupal to the most current version requires skilled developers who are not always economical. However, these costs are not exorbitant, at least not in comparison to proprietary software, with its licensing fee and other perpetual expenses. 

Then there is the support of the Drupal community, which is always there to help you in any dilemma you find yourself in. Any and all of your questions will always be answered. This also means you get to take advantage of the abundance of experience found throughout the community, you can simply build on solutions that have already been created. 

Apart from this, your non-technical staff, especially your content authors are not reliant on developers to post and edit the content. This frees up the developers, leading to savings. Finally, the migration from one Drupal version to the next is also not expensive at all. So, if you are planning to shift to Drupal 9 from 8, remember the switch from Drupal 8.0 to 8.1, the migration would be that simple. 

Now, you tell me, is this not cost effective?

# Drupal tends to lack in security

For any web application, it is extremely important to be secure. Having security issues often make you vulnerable and prone to hackers and that outcome is never going to be favourable. 

So, this Drupal myth states that the CMS is not secure at all. It is an open source software and that is reason enough to doubt all of its claimed security features. 

Let me start by telling you that Open Source security cannot be taken lightly. Also known as Software Composition Analysis, Open Source Security provides the user an opportunity to garner more visibility for his application. From examining binary fingerprints to using professional and proprietary research and corroborating it with scans is done to build elements and tools that help developers in building safer applications. 

Focusing on Drupal, it is deemed as one of the most secure CMSs in the market, not just in the Open Source market, but the proprietary as well.

A pie chart depicts of results of sample group survey for security of various CMSs.Source: Acunetix

The above image clearly shows Drupal leading the way in terms security, being the CMS with the least issues faced as per a sample group’s findings.

Let’s find out why. 

  • Drupal’s security team works with the community to tackle any security issue as soon as it arises. 
  • Drupal’s API and default configuration is equipped to handle security issues like XSS, injection and forgeries with standard solutions. 
  • Drupal provides a lot of out-of-the-box security features like secure access, granular user access control and database encryption to make it all the more secure. 
  • Then there is the fact that many prominent government agencies use Drupal to build and manage their online projects. This speaks to its security measures. 

So, no Drupal does not, by any means, lack in terms of security, rather its security is almost impeccable and really hard to breach.

# Drupal tends to be unscalable and gives a meagre performance

Despite how great your site is now, there would come a point when its present state is no longer viable with your business goals. And that is when you would need to scale your site accordingly and boost its performance. This leads us to the next myth. 

It is often presumed that Drupal is not very scalable and its lacklustre performance in terms of higher traffic load and more content growth is not appreciable by any means. 

As an answer to this preposterous myth, I just want to say that, if that were the case, why would sites like The Weather Company and NBC, which have a daily audience in hundreds of thousands use Drupal? The justification is the exact opposite of the myth. 

Drupal can handle traffic spikes, it can handle content growth and it can handle an incredibly elevated user count and it can do it all like a breeze. All you have to do is optimise Drupal to its best abilities. It provides a number of features and modules for you to work with to manage your site’s performance and scalability. Be it the Blazy module to provide integration or the Content Delivery Network to offload your site’s delivery, Drupal has you covered.

I think this misconception should be clarified now. These guides to Drupal performance optimisation techniques and scalability offerings would clear the air further.

# Drupal tends to be inaccessible

Web accessibility refers to a website or application being built in a manner that anyone can access it with ease, anyone has a special focus on people with disabilities. The World Wide Consortium has set a few guidelines that web developers have to follow to become universally accessible.
 
According to this Drupal myth, it is assumed that Drupal is not universally accessible. It is not meant to be used by people with disabilities and can cause them harm, if they were to use Drupal sites. 
 
There is absolutely no truth in this misconception. Drupal stringently follows the WCAG 2.0 guidelines and has built its features accordingly.  

  • The Olivero theme for the front end in Drupal 9 is the prime example of Drupal’s accessibility. With focus on colour, contrast and fonts in accordance to the WCAG 2.0 guidelines, it is universally accessible. 
  • The use of HTML5 and WAI-ARIA has led to better semantics of purpose and behaviour of the web pages for the screen readers. 
  • The use of alt text in images helps in making them accessible to the visually impaired. 

These are simply a few examples of Drupal’s accessibility features and values. To understand web accessibility completely, read our blog Design Considerations for Accessibility and know that Drupal follows each one of them.

# Drupal tends to be unequipped to handle large site

There are two kinds of websites, the first one is for small businesses and the second one falls under the big business umbrellas. Taking these categories into consideration, we come to the next false claim. 

Many believe that Drupal is only competent to handle smaller sites, when it comes to the larger businesses and their web needs, Drupal may fall short. 

To clarify this bizarre claim, let’s just look at some of Drupal’s clientele. Tesla, Oxford University, European Commission, NBA and the French Government are just a few names that do not need an elaboration, people already know them. With such an elite clientele, is it justified to say that Drupal cannot handle large sites? I think not. 

Drupal is well equipped to provide enterprise grade services and features that include; 

  • Impeccable user management; 
  • Impeccable content management; 
  • Impeccable admin interface; 
  • Impeccably easy coding; 
  • Impeccable technology stack; 
  • And an infrastructure that resounds all the impeccable innovations in it. 

That is a whole lot of impeccable, but that is Drupal for you.

# Drupal tends to be incompatible with mobile devices and unsuitable for mobile solutions

Today, it is the responsive sites that reign over the internet. If you have a site that is compatible with the computer and the mobile phone, you can consider yourself amongst the rulers, metaphorically speaking of course. 
 
Drupal is often understood as a CMS that is not mobile-friendly, which means the sites and applications built on Drupal are not able to support responsive designs. 
 
Again, this isn’t the case. Rather Drupal works on the ideology of building sites that are responsive and creating web applications that provide an enthralling visitor experience, regardless of the device they may be using. This means that Drupal is compatible with mobile devices as well as desktops, since it has the ability to offer a seamless content experience to every user every time. So, the myth is debunked. 

# Drupal tends to be disintegrated with third-party tools

Confining a website to just one tool and software has become a thing of the past. With more technological innovations come more third party integrations. And where does Drupal stand in all of that?
 
According to the myth, Drupal is not at the top of the integrations list. Rather it is assumed that Drupal does not work well with other tools and has an isolated digital marketing philosophy as well. 
 
And there is very little truth in this assumption. In fact, Drupal has the ability to integrate itself with a massive ecosystem of digital marketing technologies and other business applications. It allows you to have the chance of tapping into the most popular tools of the present as well as the chance to do the same in the future. 
 
Drupal also has an API-first rule, which essentially means that your content can easily be connected to other sites and applications. This means your words would resonate with a much wider audience, making them all the more powerful.

# Drupal tends to have an inflexible and uneasy content workflow

Content is basically the voice of your site, so it is wise to choose a platform that makes your voice the loudest and most clear. Does Drupal do that?
 
The myth related to content workflow doesn’t believe that. As per the misconception, it is believed that Drupal is quite inflexible in terms of content and using it for creating, editing and publishing the content is not easy at all.
 
Let me start debunking this Drupal myth with its Admin Interface. This helps you in creating the exact content architecture that you want. You get to display only the content suitable for every context. The use of Drupal efficient display mode tools and Views makes this task all more fun. You can add any media type you want, be it images, videos or pdfs. Then there is the fact that you can customise your menus to make them aligned with the user’s device. 
 
And there is more. 

  • You can create and edit in-place. You can simply browse to a page, click on the content and start editing then and there. 
  • You can edit from any mobile device, iPads, smartphones or tablets, android or iOS, your pick. 
  • You can make revisions multiple times and keep track of all of them even months after. 

Is this what you call inflexible and difficult? 
 
Modules are Layout Builder and Paragraphs are renowned for the ease they provide to editors and content authors.

# Drupal tends to be unfriendly with SEO

SEO and all that it encompasses is essential or more like life-saving for your website and its visibility on the web. Since that is what brings in the numbers, you know how important that should be. 
 
So, the myth that is doing that rounds is that Drupal is not SEO friendly. It does not have the features to heighten the visibility of your site on Google or any of the other search engines.
 
Do you think that could be true?
 
I certainly don’t and neither should you. Drupal has dedicated features and modules that help you get the best out of SEO. Take the SEO checklist module for instance. Being an SEO module, it helps you be on top of all the SEO related tasks and ensures you are reminded of them. It is always being updated with the latest SEO guidelines so that you are aware and ready to tackle all of them. 
 
From modules capitalising on your URLs to tags and onto communication and editing, Drupal will have you covered for every SEO dimension you can think of. Our blog, The ultimate Drupal SEO guide will help you get an even elaborated explanation of Drupal’s SEO capabilities, which by no means are lacking.

# Drupal tends to be incompetent as a headless CMS

Going headless or decoupling has become a trend as it allows the developers to use the different technologies available in the site building process and make it all the more impressive. 
 
With Drupal, it is often assumed that decoupling would mean more work and less benefits. You would have a lot on your plate when you decouple Drupal and the result would be a dysfunctional and mismanaged site. 
 
This is nowhere close to the truth. When you decouple, you would have a separate frontend and backend development and management; both of which will be interdependent and connected through an API. Yes, you would most definitely have to part with some of Drupal’s out-of-the-box features, but that isn’t necessarily bad. 
 
With decoupling, you would be able to build a frontend the way you want to, with whatever technology you want to. Fancy React, go for it. Have a liking for Angular, go for that. You would be using Drupal as a content repository and since Drupal knows its contextual ABCs pretty well, you will be in great hands. You can publish your content across varying channels and manage it from one place. 
When you go headless, you will get to choose from the best frontend technologies and get the best at the backend layer with Drupal. The best of both worlds for you. 
 
Now, do these features portray incompetence to you? 
 
Read about everything you would want to know about Decoupled Drupal, Decoupled Drupal Architecture, how to decouple Drupal and some of the success stories to get an understanding of how competent decoupled Drupal can be.

# Drupal tends to be efficient with multisites

Many organisations have subsidiary businesses for which they need to build multiple sites. They might want these sites to become a replica of each other, offering the same features and functionality, yet be different to each other. 
 
There is a false claim being made that Drupal cannot optimise multisites. It cannot provide the separate individual sites their own database, configuration or even the URL/ domain names .
 
Drupal offers a multisite setup that is pretty efficient and well-equipped to handle all the requirements.

  • You would be able to manage all your Drupal sites running on the same version of Drupal core, which ultimately saves you time. 
  • You would be able to update all your sites simultaneously when there is a  new release because all of them would have one codebase. 
  • You might have some drawbacks through the multisite setup, but by using Aegir hosting system, you would easily overcome them.

Inefficient isn’t a term that should go with Drupal, since it is anything but that. So, manage your sites from across the globe from your laptop while sipping coffee on your kitchen island with Drupal. I consider this pretty efficient.

# Drupal tends to be hostile to multilingual sites

Like I talked about in the previous point, sites today aren’t confined to a region, they are almost universal. An American brand is also famous in India and it gained popularity because it was able to resonate with the Indian audience at a personal level in their language and dialect. 
 
Everybody knows that Drupal can handle multilingual sites, but many believe that Drupal isn’t great at that. Translations and other multilingual features tend to be below average. And that is just a myth.
 
Translations are the most crucial for multilingual sites and Drupal offers not one nor two, but four translation modules in Drupal 8. From content to configuration and interface, everything can be translated to the local language with ease. You can install Drupal 8 in as many as 94 languages without any need for the installation of extra components. Moreover, custom translations are often packaged and deployed on several properties, so you developers have lesser language related headaches. Everything on Drupal’s multilingual capabilities can be accessed here.
 
I would not call Drupal hostile to multilingual sites, would you?

# Drupal tends to only be suitable for a few industries

A CMS builds and manages websites. Since these websites can be for any business and field, a CMS should be able to cater to their industry type. 
 
There is a Drupal myth going around that states that the CMS isn’t meant for every industry. It only caters to a few, and I am not even sure which ones account in those few. 
 
This one is probably the most ludicrous misconception of them all. I can understand that people may be skeptical about open source security, but this is just nonsensical. I mean if a CMS is able to build a site for a retail business, what is stopping it from building one for a blogger? Kind of bizarre, isn’t it?

A list of the many sectors Drupal caters to is shown.Source: Drupal.org

This is a list of industries that has Drupal imprinted on their web services. And the extensiveness of the list is clarification enough for the myth.  From publishing houses and educational institutions to government agencies and charitable organisations, Drupal serves the majority of the industries.

# Drupal tends to become a pain when it comes to support, maintenance, hiring and partnering with digital agencies

Working with Drupal on your own can become challenging. You would need support and expertise of someone who has worked with the CMS and knows its ins and outs with clarity and that is a Drupal agency. 
 
This Drupal myth states that the hiring of Drupal agencies is a blood-sucking task, which would drain you of the same. Add to this the support and maintenance of Drupal and you might just give up on site building altogether. 
 
Let me start with Drupal agencies, there are a lot of them for you to choose from. The good thing about that many agencies is that they try to outweigh each other in terms of the services they offer and you end up with everything you desire. Being a part of OpenSense Labs, I can proudly say that we rank amongst the top 5 Drupal agencies in the global Drupal marketplace.

A list of Drupal agencies is shown with their marketplace rankings. Source: Drupal.org

Talking about support and maintenance, whichever agency you may choose, you are bound to get some very convenient services in this regard. 

These are only a few of the support and maintenance features available and they won’t let you be in any kind of pain.

# Finally, Drupal tends to be incompetent with the emerging technologies

We live in a dynamic world, where everything is transitory, from human life and thoughts to the technologies we have become so dependent on. These changes are basically advancements that aim to enhance our quality of life and all of the experiences in it. So, how does Drupal come into the picture and what is the myth?
 
This Drupal myth states that the software cannot work well with all the new technologies coming on every day and its integration with them is almost impossible. 
 
Do I have to say that this is untrue? I’m sure you know that by now. Drupal and its abundant content-heavy sites mandate that it utilises the latest technologies to make the user experience even more delightful.
 
The use of artificial intelligence in the form of chatbots, cognitive search and digital voice assistants like Alexa on Drupal sites is probably the most justified clarification to the bizarrely unjustified claim. Along with these, the streamlined incorporation of Virtual Reality, with all its realness, IoT and Blockchain into Drupal sites is further proof of the myth being a colossal misconception. Our blog, From conception to reality:Drupal for futuristic websites will shed further light on this notion. 

Conclusion

Drupal is one of the very best content management systems in the market. Its features and abilities are truly astounding. Believing some false claim that says that Drupal is anything but one of the finest would be a mistake you do not want to make. Yes, there isn’t everything Drupal is great at and yes, it may even have some flaws, being perfect is almost impossible after all, but all of Drupal’s imperfections are not enough to dampen its overall appeal. 
 
So, if you have chosen Drupal to provide your site’s groundwork, rest assured that you have made the right choice. We, at OpenSense Labs, have clients from across the globe asking us to build their sites using Drupal and to this day, not a single one of them has gone disappointed. 
 
Finally, the moral of the story is that don’t believe everything you hear, at least not until you have proof of its trueness and I think I have managed to tell you all of Drupal’s truths for you to shun all of Drupal’s myths. Debunking Drupal myths was fun. 

Feb 09 2021
Feb 09

Drupal being an open source project relies significantly on its community for contributions, promotion and overall expansion. The user base adds to Drupal in terms of coding, testing, bug fixation on the software, also contributing themes, modules and distributions regularly. Acknowledging the important role that the community plays and also its requirements, Drupal comes up with Initiatives to streamline and channelize everyone’s efforts to a common high priority goal.

Drupal Initiatives are common upcoming goals in the Drupal sphere prioritised according to commercial interests and their effect on the community. Initiatives are formulated around a feature, a new module, or an alteration in any element of the software. Usually, 

  • user research, 
  • proposals by Drupal Core Maintainers,
  • advice of key community members, and
  • inputs from the board of directors

are taken into account before launching an initiative. 

How core development and strategic initiatives come about in Drupal?

To understand the functioning of initiatives better, let’s skim through the life cycle of Drupal initiatives.

Proposition 

To start with filing Drupal initiatives, the first step would be to file a proposal. Although absolutely anyone could propose an initiative in Drupal, it is recommended that certain factors be taken into consideration before the said proposal. It needs to have a proper backing of relevant data along with a farsighted vision of what the end result would look like. It is recommended that the proposed initiative should have a positive market impact on Drupal and adds sufficient value to both the software and the principles that it stands for. Discussion with the community must also take place before bringing an idea on the floor, and subsequent revisions must be done accordingly with respect to the feedback received. Lastly, an individual wanting to get a proposal approved also needs to be patient with the whole process, as in a large community like Drupal, things move forward in a pretty organic fashion.  

                                                                                                        
Prioritisation

The sites supported by Drupal are diverse and cater to a plethora of end users, therefore prioritising initiatives in such a manner that every user persona is appropriately benefitted assumes utmost importance. Hence, several Drupal initiatives might be proposed, but only a few get highlighted. This is done in accordance with Drupal.org Prioritization Criteria. Prioritising can be a tricky business as while one initiative might affect every Drupal user one-on-one, another might influence a small segment of users but at the same time be essential for Drupal’s core. Keeping all these things in mind, propositions are ‘accepted’, ‘rejected’ or ‘postponed’. The accepted proposals are then prioritized.


Roadmap

The association’s staff are tasked with weighing the impact of the Drupal initiatives against the spectrum of affected audience. Once a bunch of initiatives are finalised, they’re listed in the Current section of the roadmap. Architects are assigned to supervise the initiative, the member also acting as the lead for that particular initiative. His job is to ensure accessibility to open discussions and related information. Weekly or biweekly meetings are done between the staff liaison and the community working on the initiative all throughout its execution, and the completed draft is then submitted for review.

The time taken to get done with an initiative is highly variable. A smaller one might take a few days while a lengthier initiative can also span a few months to complete. 

For core initiatives, the process looks a little different than this. Initiatives that are identified as being of utmost importance to Drupal and the community are included in strategic initiatives by Dries Buytaert himself, who is the founder and project lead of Drupal.

For an initiative to be included in this category, it must have the following -

  • Surveys or statistics figures substantiating the validity of the initiative.
  • An underlying vision that could result in a breakthrough for Drupal.
  • Requirement of channelised resources as it is high priority.
  • Due to its larger scope and influence, need for multiple stakeholders to come together and collaborate on it.

Major Ongoing Community Initiatives

Drupal Community initiatives are projects where the user base comes together to work on several components of Drupal like contributed modules and themes or even Drupal Core. These are some major ongoing Drupal initiatives -

Composer Support in Core Initiative

Composer dependency manager for PHP does not have an official dedicated Support, although there do exist several documented ways to use it wherever necessary. Owing to the manager’s widespread adoption by a number of contributed modules, an initiative has been set up to create a Composer Support in Drupal Core. 

Bug Smash Initiative

As the name suggests, the bug smash initiative is meant to contribute towards bug resolution. It is a core issue focusing on bugs in the newer versions of Drupal that have been recently launched. Issues resolved under this initiative are tagged accordingly under the same name.

Documentation and Help Initiatives

The goal here is to improve, with the help of extensive documentation, the user experience of a Drupal evaluator, developer or site builder. The initiative also focuses on achieving a better in-house Help system by adding high utility features like a topic based help provision.

Workflow in Core Initiative

This initiative is working towards bringing upgrades in Drupal’s content workflow, preview and staging features with the aim to provide content authors and editors sufficient tools to review and deliberate upon the content before it is rolled out.

Drupal Open Curriculum

The open curriculum initiative is self explanatory - the aim here being the provision of a systematic and structured training to new recruits in Drupal. Features like in-class sessions, self learning along with training exercises are to be included, culminating with on the job learning. It is targeted towards developer entrepreneurs owning Drupal agencies with new hires learning Drupal or individuals curious about the software.

Accessibility contribution

Another really important initiative is to ensure compliance to web accessibility norms set by various governments and organisations. Greater awareness regarding accessibility by individuals suffering from certain ailments has led to widespread adoption by the players, and the Drupal community aims on pitching in every idea and suggestion to improve accessibility for its users.

Major Ongoing Strategic Drupal Initiatives

Some major ongoing strategic Drupal initiatives are as follows -

Automatic Updates

This initiative aims to solve the inconvenience that comes with having to manually update a Drupal site after updates have been incorporated in the software, as one running behind the deadline might compromise on the standard and security of a website. Hence, the community is working on automated updates to provide a safe and secure environment for pre programmed updation, and also to cut down maintenance costs of a Drupal website.

Decoupled Menus

An initiative for decoupled menus is also ongoing, aiming for better synchronisation with front end JavaScript

Orange background with black flag and text talking about decoupled menus, one of the ongoing Drupal initiativesSource : Drupal.org

Drupal 10 Readiness

The Drupal 10 readiness initiative provides a timeline for things that need to be wrapped by 2022 to facilitate the release of Drupal 10 in June, or latest by December that year (which is 2 years after the release of Drupal 9). Milestones that need to be aced are updating dependencies before Drupal 10’s release, removing deprecated APIs, helping module contributors maintain the modules’ updation, and consecutively speeding up the launch of Drupal 10. The primary components of this initiative are -

pink background with a horizontal arrow, surrounding text talking about Drupal upgradesSource : Drupal.org

Easy out of the box

Ease of use has become a matter of prominence in recent years, which is why Drupal 9 was largely focused on making the update easier and convenient to use and incorporate by the users. Another area under maintenance now is the enabling of the new Media Library, Layout Builder and Administration Theme by default in Drupal for added user satisfaction.

New Olivero Front-End Theme

Olivero is set to become the new default frontend theme by replacing Claro. As design is what truly manifests changing technologies and advancements for the end user, upgrades  in terms of modernity and functionality are essential for proper representation. The new theme is also meant to include support for Drupal’s second level navigation and the embedded media. Staying laser focused on accessibility, the theme is also supposed to be fully WCAG (Web Content Accessibility Guidelines) AA (mid range) compliant.

Conclusion

Drupal Initiatives are a good way to both bring the community together and stay afloat on the productivity factor. Some major changes in the past have been triggered by initiative action, for example, several design changes, changing Drupal’s default markup to one that conforms to HTML5 standards, making Drupal mobile first, etc Hence, initiatives have brought together people of diverse backgrounds and experiences to create something global together, affecting both the individuals personally but also the community at large. 
 

Jan 22 2021
Jan 22

The way websites are perceived has changed a lot recently. The audience has started demanding more and more from the web and web developers have to provide for all the demands. What this has resulted in is the transformation of websites for the better. 

The features that today’s sites are packed with were hardly even imaginable a decade ago. A website, a web application or a mobile application, all can do wonders for the users, satiating them with their experiences. 

So, when building a website, you have to be extremely considerate of the software you use and the technologies that accompany it as it is these that will make an astounding difference in your site’s overall appeal. 

On the same note, I will try to enlighten you about one such software and technology pair that has made websites as appealing as both their developers and users want them to be, and that is Drupal and Angular. So, let’s get right on it.

Drupal’s Essence 

The Drupal logo is seen.

In essence, Drupal is a provider of innovative digital experiences that set your websites apart from the ordinary. 

Being a content management software, Drupal can make websites that actually set standards for others to follow. Convenient content authoring, impeccable performance and outstanding security are some of Drupal’s most renowned features. Whether you want flexibility and modularity or integrated digital frameworks, Drupal can ease your needs. 

With multiple add-ons;
With numerous modules; 
With several themes; 
With various distributions; 
And with multitudinal mix and match options, Drupal’s core abilities are magnified by a landslide. 

Now, the Drupal 9 has paved the way for an even more delightful web building experience. Known to be the easiest upgrade in over a decade, it is going to take Drupal 8’s innovative streak even further. Here’s everything you will want to know about Drupal 9.

NBC, MTV UK, Amnesty International and University of Oxford are some of the elite clientele of Drupal and their websites are a true epitome of Drupal’s abilities. 

“Make something amazing, for anyone”  - a motto of a kind should have been pretty self explanatory of Drupal’s essence, but it has acquired bragging rights and rightfully so. Hence, a little more elaborated boasting was mandatory.  

Taking the Headless Route 

Drupal’s abilities, features and all that it encompasses has made it one of a kind. At the top of the list of its unique abilities is its ‘headlessness’. I know this is going to sound strange, but it is a fact and a very beneficial one at that. 

Like I mentioned above, Drupal has all the features to make a web experience up and running and quite smoothly too. Having so many modules, themes and distributions, web builders would not find any need to look for additional features in their site. The entire web project would be placed inside Drupal and it would be entirely responsible for all of the project's needs. 

However, sometimes developers want to try more and Drupal lets them. It essentially removes its head, that is the presentation layer, to make room for a different one, that is other frontend technologies, and lets the developers only utilise it for its body, that would be its backend capabilities. So, in a truly Headless Drupal architecture, you would only use Drupal as a content repository and nothing else. This is also known as Decoupled Drupal, since you are going to be separating the couple, the frontend from the backend. 

When you go headless, you will be parting with Drupal’s frontend capabilities, but the separation does not have to be final. Decoupled Drupal comes with two options for you to choose from; 

  • One is the fully decoupled Drupal or the Headless Drupal. This completely segregates the two ends of a web project. Drupal takes command of the backend, while other frontend technologies, like JavaScript take hold of the frontend; both being connected by an API for the transmission of the information. 
  • Then there is the less final, progressively decoupled Drupal. In this architecture, you are still left with some of Drupal’s frontend capabilities. This means you can combine other frontend technologies to work with Drupal and get the most for your website, without losing Drupal out-of-the-box capabilities.  

Do you benefit from the going Headless?

Drupal has numerous benefits when you use it as a whole for building projects from the ground up; however, the decoupled Drupal comes with a tad more advantages. That is why it is becoming a vogue today, with several traditional Drupal sites converting themselves into the decoupled ones. 

So, yes, you will indeed benefit from taking the headless route. 

Aids in publishing on multiple platforms 

Going Headless makes it very easy to publish content on multiple platforms, be it your primary website, social media handles, intra sites or even print and media. The write once, publish everywhere features lets you capitalise all the IOT devices and publish on them.

Aids in maximising user experience 

The growth of your online business is directly proportional to the user experience you provide. The better the UX, the higher the conversions. UX is further dependent on your site’s performance. Having two separate ends enhances it, the request time is reduced with a client-side server and your site would be nothing but speedy.

Aids in making your team independent 

When you have a separated front and backend, that means you have the power to work faster. The frontend developers will only be focused on the user interface and the backend developers will only need to worry about those needs. Your teams can even make changes on their respective layers without having to worry about impeding the work of the other. All of this results in faster work speed and increased efficiency.  

Aids in enhancing creativity 

Drupal is a robust software, yet it can be stuff sometimes. You have to follow its guidelines and set standards or the work won’t get done. This hampers the development team’s creative flair. However, by adopting other, more flexible, frontend technologies through decoupling, you can let your creativity run free. 

Aids in faster upgrades 

Headless Drupal separation of concerns makes it simple to upgrade without impeding on your site’s current workings. It also gives you the opportunity to test on a dummy web service, which acts as a mockup, aiding you further in making revisions to your site.

Aids in taking advantage of JavaScript 

The final and probably the most compelling advantage of decoupled Drupal is the use of JavaScript. JS has the ability to make websites extremely interactive, with features like destructed assignment and arrow functions in the latest version. Since site interactivity with the user has taken precedence over anything else, decoupling has become more of a need. React, Angular and Vue are some of the most eminent JS frameworks that are used when going Headless. 

To know everything about headless Drupal and its suitability, read our blog, “When to move from monolithic to decoupled Drupal architecture.”

In Comes AngularJS

Now that we have discussed one part of the title, let’s move on to the second, which is AngularJS. You may know that a major reason behind going headless is the fact that it allows the user to incorporate other frontend technologies into Drupal and get the desired web building experience and the product as well. AngularJS is one such technology. Let’s get into its details.

The logo of Angular is shown.

What is AngularJS?

We ended the headless Drupal discussion at JavaScript, so it is only wise to begin the new one with JavaScript as well. AngularJS operates on JavaScript, being an open-source front-end web framework. It helps you create dynamic web pages through its structured framework. 

HTML’s template language is integral when building web projects. However, there is one problem with its use. HTML has proven its potential for static documents, however, when dynamic views come to play, it becomes lacklustre and chaotic. Now, in such a scenario, AngularJS comes in to save you. It allows you to extend the HTML vocabulary for your project, paving way for your developers to work in an environment that is expressive, readable and fast to develop. 

There aren’t many frameworks that have the ability to solve the HTML conundrum, what they do instead is abstract away HTML, CSS and JS or they might manipulate the DOM. covering up the problem is not really a solution and AngularJS provides an extension of HTML, making it worthy for dynamic views. 

The crowning jewel of AngularJS is its ability to adapt. It can easily be modified or replaced to make it suitable for any of your development needs. Whatever your workflow and feature require, AngularJS has the ability to provide. The fact that it is completely extensive and compatible with other libraries. 

Talking about the technologies Angular belongs to, it is part of the so-called MEAN stack. The MEAN refers to MangoDB, Express, Angular and Node.js. The combination of these four accounts for a firm ecosystem that is also backed by full-stack developers.

Let's look at AngularJS’ market share to understand its prominence even more. 

A list of the top industries using AngularJS is shown.(a)A list of the top websites built on AngularJs is shown.(b)A list of the countries is shown that use AngularJS with the number of websites using it.(c) | Source: SimilarTech

All of these numbers are pretty self-explanatory of AngularJS’ popularity in the market. 

What are the benefits?

Built in 2010 by Google, which is to this date responsible for its maintenance along with an entire community of developers and companies, AngularJS is quite a technology to utilise for your project’s development. It’s numerous benefits will make you believe me even more. 

Angular is flexible 

Angular by nature, or maybe its build, is extremely lightweight and concise. What this translates into is a working environment that is so extensible that you would be able to create things you never deemed possible. 

Angular uses directives 

Like we discussed above, Angular is unique because it is able to extend HTML. And this is possible because of Directives. Through these, special behaviours are assigned to the Document Object Model, which in turn enables your developers and engineers to use HTML and create dynamic and rich content. 

Angular binds your data two ways 

It is a known fact that Angular gives your developers the power of developing at a much faster rate. Multiple views, asynchronous technique, SEO friendly development are amongst a few of the immensely impressive features of Angular. And all these are possible because it works on the MVC architecture.  Because the Model-View-Controller framework synchronises the Model and the View, so when one changes, the other changes automatically. And work gets done faster. 

Angular injects dependencies 

When developers code, all the different pieces of that code have to interact with each other. This interaction also means that they are going to be affected by each other;s changes. This scenario is defined as dependencies. 

AngularJS solves this issue of dependencies in code simply by decoupling them using injectors. A dependency injector has the ability of making individual components easy to manage, test and reuse; maybe even more than before. 

Angular aids testing 

Lastly, AngularJS also makes unit testing pretty convenient for you. It has a built-in setup that makes testing the code much simpler and faster for your developers. 

The things you can do using AngularJS are much more advanced than Drupal’s frontend capabilities. So, combining the two is going to be a partnership that will make work wonders for your web project. 

The best of both worlds

The Drupal and Angular logos can be seen together.

Up until now we have been talking Decoupled Drupal and Angular individually and they have certainly been impressive enough. Both Drupal and Angular are equipped to build projects that will cater to any and all of your needs.

When paired together, they seem to be packing a punch. Your web projects will be able to accomplish so much more. Let’s have a look at some of the most intriguing features.  

Performance that will leave you spellbound 

A site’s performance is what sets it apart from others, it is what will keep your visitors scrolling through your pages and finally clicking on that coveted Buy Now tab. So, how do Drupal and Angular together help in improving your site’s performance?

If I talk about Drupal, it provides functionality in tons. Just working with drupal can make your site perform impeccably. Now, if you combine the Angular technology with it, you will end up with a performance that would be even better. That is because you will be able to offload business logic to AngularJS as it is client-side, you would not be able to do it completely, but even some part of the offload can be extremely effective. 

Furthermore, when you go Headless and take up Angular, you would use the latter for theming and presentation, while Drupal would only be responsible for the backend data source. This would enable you to move the display logic to the client-side, helping you in streamlining the backend. The resultant site is going to end up as fast as The Flash himself, for lack of a better metaphor.

Coding that will free up your developers 

When you use Drupal to build a regular, basic website, you would not need to write a lot of code and the development work would also be quite minimal. Yes, a basic Drupal site would not be feature packed and that is where AngularJS would enter. 

AngularJS will take an ordinary Drupal site and make it extraordinary, so to speak. Angular can make sites more interactive, more dynamic and richer in experience, and complex coding would not be a prominent part of this picture. 

By using directives, HTML, plain objects and other features, the JS framework requires very little effort from your developers in terms of coding. Despite the minimal efforts, you will still end up with the interactive pages that were only possible to get with a complete JS coding. 

Logic that will clean up your code structure 

You remember we talked about the MVC architecture in the previous section? I would have to be redundant and mention it again since it serves a lot of benefits when going headless. 

The Model-View-Controller architecture works on a principle that essentially segregates itself into three parts; 

Business logic;
Controller logic; 
And model logic. 

This results in a separation of your application logic from the user interface. And why is that essential? Because it aids in making the code structure cleaner, without much redundancy and more clarity. 

Imagine if one of your developers has to leave in the middle of your project. This could become devastating for your project, but an isolated code would make it extremely convenient for any other developer to pick up the left pieces and continue with the same effectiveness as before. 

AngularJS and Drupal also work well together because the MVC framework helps in eliminating a lot of backend logic from Drupal. Consequently, your site will turn out to be both extremely lightweight and efficient.

Security that will keep you shielded

Both Drupal and Angular are backed by a massive community. This means that there all the security features are always under scrutiny and the chance of things going sideways is slim to none. 

Add to this the fact the Drupal’s security protocol, if followed to the T will provide you an assurance of safety that not many CMSs can. Further adding to this, the combination of Headless Drupal and AngularJS will enable an extra layer of security to your site because there won't be any direct server-side interaction, the browser will only communicate with AngularJS.

The result of all of this would be that your site will become immune to malicious code that the notorious hackers are known to inject in your databases. And all would be well in the web world.

Everything about leveraging decoupled Drupal and different frontend technologies can be accessed here

Summing Up 

When decoupling is considered, tapping into the available frontend technologies is the paramount concern. JavaScript is most definitely at the forefront of the developers’ mind for the presentation layers. 

Angular is one of the flag bearers of JavaScript, and Drupal is a prominent name in the CMS world. Be it dynamic sites or interactive interfaces, the possibilities of with the combination of these two powerhouses. So, when are you taking them up?

Jan 20 2021
Jan 20

People today do not like to be confined, if I talk about development teams, they would hold up flags stating the same. Since development and innovation go hand in hand and constraint is the biggest enemy of innovation, you can’t tell me they are wrong to have that notion. 

Talking specifically about web developments, there are a lot of areas to explore and a lot of technologies to help you do that. So, why limit yourself, when you don't have to? Drupal has brought such an impressive trend forward that has simply satiated the developer’s desire for innovation and that is the headless approach

Unlike before, when your entire project had to be nestled inside one CMS, Drupal now gives you the opportunity to explore new technologies to your heart’s desire. This is possible because the presentation layer and the backend content become two separate entities. Drupal acts as the content repository and a frontend technology of your liking takes care of, of course, the frontend part of website architecture.

To provide a connection between the separated development aspects of the project, enters the API. An API layer is a necessity when going headless, because it transmits all the information from the front to the backend and vice-versa. 

And the three available APIs in Drupal, REST, JSON and GraphQL, are the reason behind me writing this blog. Although the purpose of all three is the same, they are quite different from one another. Today, we would be highlighting their meanings, their pros and cons and all the visible distinctions they have. So, let’s begin. 

Decoding the APIs 

The logos of GraphQL, JSON and REST are displayed horizontally.


REST, JSON and GraphQL bring in a similar outcome when they are used for decoupling Drupal. Yes, they are different too. And we would get into the difference between REST, JSON and GraphQL soon. Before that it is essential to understand their history, origin and what they were intended for because the differences actually start from there. 

REST 

REST was developed by Roy Fielding in the year 2000, the purpose behind its development was to provide a software architectural design for APIs. In simple terms, it provided an easy path for one computer to interact with another by utilising an HTTP protocol. The communication between the two computers is not stored on the server, meaning it is stateless; rather the client sessions are stored on a client-side server. 

There are six constraints necessary to implement REST in the complete sense. 

  • It needs a separated client and server; 
  • It needs to be able to make independent calls;
  • It needs to able to store cacheable data;
  • It needs to have a uniform interface;
  • It is a layered system; 
  • Finally, it needs a code-on-demand. 

REST offers a great deal of functionality without a lot of effort. For instance, if you are working on someone else’s RESTful API, you would not need a special library or special initialisation. Yes, your developers need to design their own data model using REST, but the HTTP conventions at play make programming a breeze. 

To know how REST plays a key role in decoupling Drupal, read our blog REST APIs in Drupal.

JSON: API  

JSON stands for JavaScript Object Notation. Built in May of 2013, it was designed as an encoding scheme, eliminating the need for ad-hoc code for every application to communicate with servers, which use a defined way for the same. JSON: API, like the name says, is a specification for building APIs using JSON. 

With JSON: API, communication between the server and the client becomes extremely convenient. It not only formats the way a request should be written, but the responses also come in a formatted manner. The primary aim of JSON: API is to lessen the number of requests and shrink the size of the package, all using HTTP protocol. 

Broadly stated; 

  • JSON reduces the number of requests and amount of data being transmitted; 
  • It requires zero configuration; 
  • It uses the same JSON access scheme for every piece of data, making caching very effective;
  • It offers quite a few features and gives you, as the client, the opportunity to turn them on or off. 

To know how JSON:API plays a key role in decoupling Drupal, read our blog, JSON API in Drupal.

GraphQL 

While JSON can work alongside REST, GraphQL was designed as an alternate to it and some of its inconveniences. Built in 2012 by Facebook, it acts as a cross-platform data query and manipulation language. Its servers are available in numerous popular languages, being Java, JavaScript, Ruby, Python, C#, amongst others. 

The features of GraphQL are that; 

  • It allows users to request data from multiple resources in a single request.
  • It can be used to make ad-hoc queries to one endpoint and access all the needed data.
  • It gives the client the opportunity to specify the exact type of data needed from the server. 
  • All of these add to its predictable data structure, making it readable as well as efficient. 

It was in 2015, after GraphQL was open-sourced that it became truly popular. Now its development is governed by The GraphQL Foundation, which is hosted by the Linux Foundation. 

To know how GraphQL plays a key role in decoupling Drupal, read our blog, GraphQL in Drupal.

Now that we know the basics of all the three APIs, let us have a look at their popularity status, before beginning the comparison. 

A bar graph shows the standing of different web services against each other.A glimpse at the popularity of the three APIs. Source: State of API Report 2020

REST vs JSON vs GraphQL 

Now let’s get down to the details and understand why choosing one over the other two could be in your best interest. Let’s start with the differences between REST, JSON:API and GraphQL.

How efficient is the data retrieval?

A distinction is shown between the three APIs, REST, JSON and GraphQL, in three circles with regards to data retrieval..


One of the most important aspects for an API is the way its fetches data. It could require one or more requests. Therefore, this aspect is also referred to as its request efficiency. Getting multiple data responses in a single request has to be an ideal, so let’s see how REST, JSON: API and GraphQL here. 

REST 

The REST API is innately built to capitalise one resource per request. This works perfectly as long as you only need to retrieve a single piece of data like an article. However, if you need more than that, the number of requests you would have to type in separately would be equivalent to the amount of data you need. 

One article = one request 
Two articles = two requests
Two articles and the author information stored in a different field = Two requests for the articles + a long wait for the completion of those requests + two additional requests for the author information. 

This sums up REST’s request efficiency to the T. You require to be equipped to handle a number of requests, which can ultimately stall your user experience, making it seem to go at a snail’s pace. No sugar-coating here, there are going to be a lot of round trips. 

And the problem with a lot of round trips is a lot of extra information you do not even need. This is because there is a possibility that a REST API endpoint might not have the required data for an application. As a result, the said application will not get everything it needs in a single trip, making multiple trips the only option. It's safe to say that REST over-fetches and the verbose responses can be a problem.

JSON: API 

JSON: API does not suffer from the multiple request conundrum. One single request can give you everything you want, be it one article, two or ten along with the author’s information, I kid you not. 

This is possible because JSON: API implements a concept called ‘sparse fields.’ What this does is list the desired resource fields together for easy fetching. You can have as many fields as possible. If you feel the fields are too long and would not be cacheable, you can simply omit a few sparse fieldsets to cache the request. 

Another thing to remember is that the servers can choose sensible defaults, so your developers would need to be a little diligent to avoid over-fetching. 

GraphQL 

Coming to GraphQL, it was also designed in a similar fashion to JSON: API and is competent enough to eliminate the problem of over-fetching and avoid sending multiple requests. 

GraphQL has its own queries, schema and resolvers that aid the developers in creating API calls with particular data requirements in mind. Moreover, by mandating clear-cut additions to every resource field in every query and ensuring the developers cannot skip any of it,  it is able to avoid multiple round trips. Thereby, making over-fetching information a thing of the past. 

The only problem here can be that the queries may become too large, and consequently, cannot be cached. 

How is the code executed?

The distinction between REST and GraphQL is shown with regards to code execution.


Using an API for calls involves the execution of a code on the server. This code helps in computing, calling another API or loading data from a database. All three of the APIs use a code, however, the code is implemented varies a little.

REST 

Route handlers are utilised for execution upon a REST call. These are basically functions for specific URLs. 

  • First the server receives the call and retrieves the URL path and GET; 
  • Then the functions are noted and the servers begins finding the same by matching GET and the path; 
  • After that the result is generated, since the server would have executed the function; 
  • In the final step, once the result is serialised by the API library, it is ready for the client to see. 

GraphQL

GraphQL operates in a relatively similar manner. The only difference is that it uses functions for a field within a type, like a Query type, instead of using functions for specific URLs.  

Route handlers are replaced by resolvers in GraphQL, they are still functions though.

  • After the call is made and the server has received a request, the GraphQL query is retrieved. 
  • The query is then examined and the resolver is called upon for every field. 
  • Finally, the result is added to the response by the GraphQL library and it is ready for the client to see. 

It should be noted that GraphQL offers much more flexibility as multiple fields can be requested in one request, and the same field can be called multiple times in one query.  The fact they let you know where you performance needs fine-tuning makes resolvers excellent trackers as well. 

This is simply not possible in REST and JSON. Do you see the difference in implementation? 

How do the API endpoints play a role?

Many a time, it is seen that once the API is designed and the endpoints are sealed, the applications require frontend iterations that cannot be avoided. You must know that the endpoints aid an application to receive the required data just by accessing it quickly in the view, so you could call them essential even. 

However, the endpoints can pose a bit of a problem for the iterations, especially when they need to be quick. Since, in such an instance, changes in the API endpoints have to be made for every change in the frontend, the backend gets tedious for no reason at all. The data required for the same can be on the heavier side or the lighter side, which ultimately hampers the productivity. 

So, which API offers the solution?

It is neither REST, nor JSON. GraphQL’s flexibility makes it easy for the developers to write queries mentioning the specific data needs along with iterations for the development of the frontend, without the backend having to bear the brunt.

Moreover, GraphQL’s queries help developers on retrieving specific data elements and provide insights to the user as to which elements are popular and which aren’t amongst the clients.  

Why doesn’t REST? 

The answer is simple, REST has the entire data in a single API endpoint. Being a user, you won’t be able to gain insights on the use of specific data as the whole of it always returned. 

How good is the API exploration?

A distinction is shown between the three APIs, REST, JSON and GraphQL, in three circles with regards to API exploration.


Understanding your API and knowing about all of its resources and that too quickly and with ease is always going to benefit your developers. In this aspect, all three perform pretty contrastingly. 

REST 

REST gives a lacklustre performance in API exploration to be honest. The interactivity is pretty substandard as the navigation links are seldom available. 

In terms of the schema, it would only be programmable and validatable, if you are going to be using the OpenAPI standard. The auto-generation of the documentation also depends on the same. 

JSON: API 

JSON performs better than REST. The observation of the available field and links in JSON: API’s responses helps in its exploration and makes its interactivity quite good. You can explore it using a web browser, cURL or Postman

Browsing from one resource to the next, debugging or even trying to develop on top of an HTTP-based API, like REST, can be done through a web browser alongside JSON. 

GraphQL 

GraphQL is indeed the front-runner here. It has an impressive feature, known as the GraphiQL, due to which its API exploration is unparalleled. It is an in-browser IDE, which allows the developers to create queries repeatedly. 

What is even more impressive is the fact the queries get auto-completed based on the suggestions it provides and you get real-time results. 

Let’s focus on schema now 

A distinction is shown between the three APIs in terms of schema using three circles.


Schemas are important for the development team, the frontend and the backend equally. It is because once a schema has been defined, your team would know the data structure and can work in parallel. Creating dummy test data as well as testing the application would be easy for the frontend developers. All in all, the productivity and efficiency levels elevate. 

REST

REST does have an associated expected resource schema since it is a set of standard verbiage. Despite this, there is nothing that is specifically stated in them. 

JSON: API 

In terms of schema validation and programming, it does define a generic one, however, a reliable field-level schema is yet to be seen. Simply put, JSON is basic with regards to schema. 

GraphQL

The fact that GraphQL functions completely on schemas makes it a pro in this regard. The schema used here is Schema Definition Language or SDL. What this means is that GraphQL uses a type system that sets out the types in an API because all the types are included in SDL. Thus, defining the way a client should access data on the server becomes easy. 

To conclude this point, I would want to say that when there is immense complexity in the schema and resource relationships, it can pose a disadvantage for the API.  

How simple is to operate it? 

The operational distinction is shown between the three APIs in three circles.


Operating an API essentially involves everything, from installing and configuring it to scaling and making it secure. REST, JSON: API and GraphQL, all perform well enough to make themselves easy to operate. Let’s see how. 

REST 

REST is quite simple to use, a walk in the park for a pro developer. It is because REST is dependent on the conventional HTTP verbiage and techniques. You would not need to transform the underlying resources by much, since it can be supported by almost anything. It also has a lot of tools available for the developers, however, these are dependent on their customisation before they can be implemented. 

In terms of scaling, REST is extremely scalable, handling high traffic websites is no problem at all. To take advantage of the same, you can make use of a reverse proxy like Varnish or CDN. Another plus point of REST is that it has limited points of failure, being the server and the client. 

JSON: API 

JSON: API is more or less the same as REST in terms of its operational simplicity, so much so that you can move from REST to JSON: API without any extensive costs. 

  • It also relies on HTTP; 
  • It is also extremely scalable; 
  • It also has numerous developer tools, but unlike REST, JSON: API does not need customised implementations; 
  • Lastly, JSON also has fewer failure points. 

GraphQL 

GraphQL is the odd one out here. It isn’t as simple to use as the other two. It necessitates specific relational structure and specific mechanisms for interlocking. You would be thinkin that how is this complex? Let me ask you to focus on word specific, what this means is that you might need to restructure your entire API with regards to resource logic. And you must know that such restructuring would cost you time, money and a boatload of efforts. 

Even in terms of scalability, GraphQL does not fare very well. The most basic requests also tend to use GET requests. For you to truly capitalise GraphQL, your servers would need their own tooling. If I talk about the points of failure here, even those are many, including client, server, client-side caching and client and build tooling. 

What about being secure?

The security distinction is shown between the three APIs in three circles.


The kind of security an API offers is also an important consideration in choosing it. A drastic difference is noted in REST and GraphQL. Let’s see what that is. 

REST 

REST is the most secure amongst the three. The intrinsic security features in REST are the reason for the achievement. 

  • There are different APU authentication methods, inclusive of HTTP authentication;
  • There are the JSON Web Tokens for sensitive data in HTTP headers;
  • There are also the standard OAuth 2.0 mechanisms for sensitive data in JSON structure. 

JSON:API

JSON:API is on a similar footing to REST in terms of security. The reason being the fact that like REST it exposes little resources.  

GraphQL 

It is not like GraphQL is not secure, it is; however, the security has to be manually attained. It is not secure by default and it is not as mature as REST in this regard. 

When the user has to apply authentication and authorisation measures on top of data validation, the chances of unpredictable authorisation checks rise. Now, do I have to tell you that such an event is bound to jeopardise your security? 

How is the API design pinpointed?

The distinction for API design is shown between the three APIs in three circles.


If an API has to perform well for every use case, you have to make it do so. By creating such design choices that are a result of your understanding of the users’ needs. You cannot just go with the flow, evaluating how your users are going to be interacting with your API and getting an understanding of the same is key for your API’s design. 

REST

For REST, this exercise of deciphering the user requirements must happen before the API can be implemented. 

GraphQL 

As for GraphQL, this apprehension can be delayed a little. By profiling the queries, you would be able to tell their complexity level and pinpoint the sluggish queries to get to an understanding of user’s consumption of the API. 

What about their use in Drupal?  

The distinction for Drupal installation and configuration is shown between the three APIs in three circles.


Drupal is an important player when it comes to building websites and managing their content. With decoupling Drupal becoming more and more popular, it has become crucial to understand how the APIs perform alongside Drupal. 

REST 

Talking about the installation and configuration of REST, it can be complicated at best. The fact that the REST module has to be accompanied by the REST UI module does not ease the complexity. 

With REST, the clients that cannot create queries with the needed filters on their own, since the REST module does not support client-generated collection queries. This is often referred to as decoupled filtering.  

JSON:API 

JSON:API module landed in Drupal core in Drupal 8.7. JSON:API’s configuration is as easy as ABC, there is simply nothing to configure. JSON is a clear winner in this aspect. 

Moving to client-generated queries, JSON does offer its clients this luxury. They can generate their own content queries and they won't need a server-side configuration for the same. JSON’s ability to manage access control mechanisms offered by Drupal make changing an incoming query easy. This is a default feature in JSON:API.

GraphQL 

The installation of GraphQL is also not as complicated as REST, but it isn’t as easy as JSON as well. This is because it does mandate some level of configuration from you. 

Similar to JSON, GraphQL also offers decoupled filtering with client generated queries. A less common trend amongst GraphQL projects is seeking permissions for persisted queries over client-generated queries; entailing a return to the conventional Views-like pattern.

In addition to these three major Drupal web services, explore other alternatives in the decoupled Drupal ecosystem worthy of a trial. Read everything about decoupled Drupal, the architecture-level differences between headless and traditional setups, different ways to decouple Drupal, and the skills required to build a Decoupled Drupal web application to know more.

Concluding with the basics 

To sum up, let us look at the fundamental nature of the three APIs, which entails two aspects; simplicity and functionality. 

In terms of simplicity, REST is a winner. A second would be rewarded to JSON, while GraphQL would not and could not be described as simple, complex and that too immensely with major implementations coming your way would be a more accurate description. In terms of functionality, GraphQL does offer the most. If you choose JSON over GraphQL, you would end up parting with some of its features unfound in JSON. 

All three are powerful and efficient in what they can do for your application. The question is how much complexity are you willing to take up with that power?

Jan 18 2021
Jan 18

Websites have entered a new playing field now, at least compared to what they used to be a few decades ago. They are not one-dimensional anymore. They represent a multitude of different business agendas that are essential for growth and visibility.

Websites are not just limited to words, their world has widened progressively. From animations to social media integration, websites today can do it all. A major reason for these advancements in websites and their build is the software they are built on. And that is going to be the highlight of this blog.  

We will talk about the Content Management Systems and the Static Site Generators and shed light on their uses, their suitability and whether they can work in sync or not? So let’s begin. 

Understanding a CMS 

There is a time line showing the emergence of various open source CMSs.Source: Opensource.com

Commencing with the veterans, CMS or a Content Management System have been around for almost two decades (Drupal, one of the world leaders in web content management, was initially released on 15th January 2001). Despite being that old, the conventions they are built on and the features they have been added with over the years have resulted in CMSs being as modern as modern as can be. 

From easing the workload off of the bloggers’ shoulders to making newspaper editors happy; from catering for corporations and their digital marketing team to aiding numerous government departments online and transparent, a CMS has a wide audience. 

If I had to define a CMS, I would simply call it the one-stop destination for all your website’s content needs. It manages, organises and publishes web content. What is more impressive is that content authors can create, edit, contribute and publish on their own, they do not need to be dependent on developers for that. A CMS offers a collaborative environment to build and present websites, allowing multiple users to work with it at once. Terms like Web Content Management and Digital Experience Platform are being thrown around today and they are nothing, but a modern variant of a CMS. 

Getting into the meaning of CMS a little further, you would hear two versions of it and they are essentially its break down. 

  • First would be the Content Management Application. This makes marketers, merchandisers and content creators self-reliant. They can do the contextual heavy-lifting on their own with a CMA without the requirement of a code, so, none of the guys or girls from IT would be needed. 
  • Next is the Content Delivery Application. This is basically the foundation for your content; the back-end aspect that placed your content into templates to be further presented as one website. So, what your audiences see is provided by the CDA. 

Both of these together make a CMS whole for your use. 

Moving further, after the meaning, it is time to get a brief understanding of the various categories of a CMS. Based upon different categorisations, there are seven in all.

Based on the CMS’ role 

Traditional 

Most often, a traditional CMS is used on really simple marketing sites. I have used the term simple to describe it because it is just that, be it the layout or general functionality. You can create and edit your content using a WYSIWYG or HTML editor and it would display the content as per the CSS you have used.

With a traditional CMS, your entire site is encompassed by one software. The frontend and the backend are closely connected through it, hence, it is also referred to as a Coupled CMS. 

Decoupled 

Unlike its traditional counterpart, the decoupled CMS separated the frontend from the backend. This means they work independent of each other and a change in the presentation layer does not necessarily affect the backend repository. Through decoupling, you get the features of more than one software to base your site’s architecture on. 

Headless 

A headless CMS is more or less similar to a decoupled one. When you take up a headless CMS, your content would always remain the same, however, each of your clients, be it an app, a device, or a browser, would be obligated for the presentation of the content. 

The code in this instance is not in the CMS, rather it is an API that is used for communication and data sharing amongst the two software. This way developers can consume content through an API and content authors can start adding content at the same time. If you are looking for the ‘one size fits all’ approach, this is where you will find your answer. 

Based on cost and ownership 

Open source 

Open source CMSs are the ones that are free of cost, at least initially. You do not need to pay for any license fee for its installation; however, there can be costs that you may incur for add-on templates and more such features. 

Open Source CMSs are pretty popular today, the reason being their thriving community of developers. This results in the veterans redistributing and modifying the code, which not only leads to perpetual software improvements, but also helps the newbies in making progress. 

Proprietary 

A proprietary CMS is the exact opposite of an open source CMS, meaning it is commercial and mandates a licensing fee along with annual or monthly payments. In return for the payments, you would get an out-of-the-box system to meet all your companies requirements, continuous support and built-in functionality.

Based on the location 

On premises 

As the name suggests, this is a CMS that has a physical presence within the company’s premises. The high degree of control it offers to its users is the reason for its popularity. However, the humongous investment and the chances of human error dampen its potential. 

Cloud-based 

The name gives it away. Such a CMS is hosted on the cloud and delivered through the web. It is essentially the combination of web hosting, web software components and technical support. It provides fast implementation and deployment along with accessibility from across the globe on any device.

Why choose a CMS? 

Moving further, let’s now delve into the multitudinal features that are packed inside a CMS making it a suitable choice for you and your organisation’s virtual needs.

If I had to broadly categorise all the features of a CMS, I would end up with three major categories, which will sum up the true potential of this software. 

Content and its production needs

Producing content is the primary reason anyone takes on a CMS. It is true if you are a blogger and it is also true if you work for an educational institution and its online persona. It is the content that speaks for itself, when it comes to your site and it needs to be pristine, for lack of a better word. And CMSs help you achieve a level of control over your content production that you desire.

  • Starting with the edits, the WYSIWYG editor could be deemed as the heart and soul of a CMS. It provides you formatted text in paragraphs with quotes, superscripts, underlines as well as images and videos. Your authors would not have to work around codes for sure. 
  • Focusing on the media, images are an important part of it. Every CMS has room for them, they can be uploaded directly from your computer or archives, either within the content or you can add them in the page itself. The same is true for pdfs, animations and videos. Videos also have the option of being embedded through Youtube. 
  • Furthermore, CMSs also support multilingual and multi-channel sites. This eases the pressure off of the content authors and makes localised projects easy to run. 

Content and its presentation needs

Presentation is all about design, how it is done and how it would be showcased to the end user. There are a lot of design considerations that a CMS can help you with. 

  • A CMS would have you sorted with the right font and its size and the right colours and contrast. 
  • A CMS would have your sorted with the right responsiveness for your site. 
  • A CMS would have you sorted with the right URLs and URL logic. 
  • A CMS would have you sorted with the right templating tools to change your layout. 
  • A CMS would have you sorted with the right hierarchy for your site as well as provide the right prominence to the aspects that need it. 
  • Finally, a CMS would have your site sorted for all the right accessibility protocols to make it universally accessible. 

Content and its distribution needs

Once the content is produced, its distribution comes into play. This has a direct impact on your site's visibility. And CMSs ensure that you get the most out of it. 

  • The foremost part of distribution needs is metadata. This helps in tagging, categorising and describing your content. It includes everything from keyword insertion to identifying the distribution channels and placing access restrictions on the content. 
  • Secondly, CMSs also come equipped with automated marketing tools like analytics and A/B testing that help you understand user behaviour and help you capitalise it. You would just have to define the parameters and the automation would do the rest, be it publishing on your site or email marketing. 

Content and its management needs

Then comes the management of your content, it is a perpetual process that helps in providing an ease to the editors and developers that streamlines the builds and updates of a website. 

  • For one, a CMS helps you plan and execute the publishing of your content. You can actually schedule when and what to post and where to post it. You can also decide when something would be available for the audience to see and when it won’t be like an events’ post. Once the event has happened, it won't need to be on your site anymore and a CMS helps with that. 
  • CMSs also help you to figure out user roles and implement them. This helps in ensuring that sensitive information is only accessible to the users who have the clearance. A manager and a director are going to have different roles, so does a premium member and a regular member of your site. 
  • Finally CMS helps you in avoiding instances where you delete something important and its recovery becomes impossible. Version control and revisions are a feature that has to be in your CMS, if you want the powers to bring back the lost content. 

Apart from these main categories, CMSs are also renowned for their security, their scalability and user friendliness. There is one more thing to add and that is the fact that a CMS can go above and beyond it capabilities by integrating itself to third-parties and combining their features with its own, a headless CMS is an example of the same. Drupal is one of the most popular CMSs, when it comes to going headless. Read our blog, Decoupled Drupal Architecture to know more about it.

Understanding a new vogue: Static Site Generators 

Before understanding a static site generator, let’s shed some light on static sites, since these are what it builds. A static site is the one that is designed in a way that it remains static, fixed and constant, during its design, its storage on a server and even upon its delivery to the user’s web browser. This is the attribute that differs it from a dynamic, it never changes, from the developers desktop to the end user’s, it remains as-is.

Coming to Static Site Generators or SSG, in the most basic of terms they apply data and content to templates and create a view of a webpage. This view is then shown to end users of a site. 

Now let’s get a little technical, you know that an SSG will only create static sites, it does so by creating a series of HTML pages that get deployed to an HTTP server. There would only be files and folders, which points to no database and no server-side rendering.

Developers using an SSG, create a static site and deploy it to the server, so when a user requests a page, all the server has to do is find the matching file and route it towards the user. 

If I talk about the difference between an SSG and a conventional web application stack or a CMS, I would say that it is in the view of webpages. While an SSG keeps all the views possibly needed for a site at hand well in advance, a traditional stack waits until a page has been requested and then generates the view.

Why did SSG come along?

Static Site Generators act differently than a CMS, they are more aligned with the needs of static sites. However, their emergence has a bigger story to tell. 

Yes, CMSs are quite popular today, yet there is a drawback to that. With the rising acclaim of CMSs, some of them have become more prone to cyberattacks. The lead in security hacks goes to WordPress, with almost 90% of all hacks being experienced by it as reported by ITPRO reports of 2020. But, Drupal is considered the most secure CMS as can be seen in Sucuri’s 2019 Website Threat Research Report.

Then there is the issue of performance. CMS sites operate mainly upon their servers, meaning they do the heavy-lifting. If a request is sent, it would mean the server taking the charge of the page assembly from templates and content every time. This also means that for every user visiting your site, the PHP code would have to be run to start up, communicate with the database, create an HTTP response based on the recovered data, send it to the server and then finally, an HTML file is returned to the user’s browser to display the content after interpretation. All of this may impede the performance of the site built on CMS when compared to the one powered by a static site generator. But, it’s not like CMSes give you low-performance websites. They do have provisions for delivering high performance websites. It depends upon which CMS you go with. If web performance is your concern, Drupal can be your go-to option.

An SSG is a solution to these two conundrums, hence, it emerged with a bang. 

What can a Static Site Generator do for you?

there is clock in the middle with the benefits of a CMS written around it.

Static Site Generators solve a lot of the issues that a CMS cannot, consequently they can provide you a lot for your site’s well-being. 

SSG means better security 

In an SSG, the need for a server is non-existent and this is the reason it provides more security. As we have already established that an SSG is rendered well in advance and its ready-to-serve infrastructure helps remove any malicious intent upon your site. This infrastructure essentially eliminates the need for servers, they do not need to perform any logic or work. 

Apart from this, with SSG, you would not need to access databases, execute logical operations or alter resources for each independent view. As a result, there is an easy hosting infrastructure as well as an enhanced security because of the lack of physical servers required for fulfilling requests. 

SSG means elevated performance 

A website’s performance is concerned with its speed and request time, and SSG provides in this area as well. Whenever a page is requested, it involves a whole bunch of mechanism to get it displayed for the visitors. There is the distance it has to cover, the systems it has to interact with along with the work that those systems do. All of these take up time, shadowing your performance. 

Since an SSG site does not mandate such a lengthy iteration per visitor request, it reduces the travel time. This is done through delivering the work directly from a CDN, a distributed network of caches, which aids in avoiding system interaction. Resultantly, your performance soars 

SSG means higher scalability 

When an SSG builds a site, it is often considered pre-built. I mean that is what building all the views in advance of an actual request could be defined as, right? So, with a pre-built site, you have less work on your hands. For instance, a spike in traffic would not mandate you to add in more computing power to handle each additional request, since you have already done all the work beforehand. You would also be able to cache everything in the CDN and serve it directly to the user. As a result, SSG sites offer scalability by default. 

When should you choose a Static site generator?

Now that you know how an SSG can benefit you, it is time to understand the scenarios that would mandate taking up a static site generator and all its advantages. 

When building complex site is the goal 

If you want your website to deliver more complexity, in terms of the kind of features it provides, SSG becomes a good choice. There are many that come equipped to provide you client-side features that are ready to go. 

When creating and displaying content is the only goal

Here SSG is a suitable choice because it would generate pages and URLs for you. And these pages would give you a 100% control over what is being displayed, meaning the output would always be in your hands; content pages need that. 

When generating numerous pages is the goal 

A static site generator can create pages at a great speed. It might not be seconds, but it is quite fast. So, when creating websites that would need a lot of pages to be created, SSG’s speed comes in quite handy. 

When templating needs are complex as well 

An SSG is a powerful software, it has the ability to assess your site’s visual style and content along with its behaviour and functionality. This feature becomes fruitful, when building a website with diverse templating needs. Vue and React based SSGs would definitely help you get the versatility you need on your website, along with the standard use of concept of code reuse on your site. 

I would like to add just one more thing, and that is the fact that your team must be familiar with the static site generator that you are going to end up using. There are a lot in the market. If your team is familiar with .net, use and SSG powered with it. On the other hand if it finds JavaScript more familiar territory, go with an SSG based on that. Let your development team be a part of the discussion, when the suitability of a static site generator is being decided. 

Are Static Site Generators always the right option? 

Coming from the suitability, you would think that an SSG is a great choice. Don’t get me wrong, it is. However, it isn’t a universal software. There are instances when it may not be the right choice. So, let’s delve into these scenarios.

Not when you do not have development experience 

Static Site Generators become a tad bit difficult for amateur developers. Your developers ought to have experience to reap all its benefits. The building process is considered to be more difficult than that of a CMS, something that finding plugins for pre-built pages acn become a chore. Furthermore, there isn’t a huge community out there to help you in the development part, if you are a beginner. 

Not when you need a site built urgently 

You have to understand the urgency and SSGs are not the best of friends. From learning the build process to developing the template code, everything needs time. 

There are development scripts to be me made;
There is the complication of customised them;
There is the additional process of creating and setting Markdown files;

All of these account to more time requirements for the development process. Think of it like this, you are going to be doing all the grunt work beforehand, and that would necessitate more time. 

Not when you need server-side functionality 

When partnering with an SSG, you would be parting with some, if not many, interactive functions on your site. For instance, user logins would be difficult to create, so would web forms and discussion forums. However, there are certain options like lunr.js search and Disqus commenting to help you with your sites interactivity. I would say that these options are pretty limited.

Not when your site has to have hundreds of pages

You might think that I am contradicting myself, however, I am not. Static site generators can create a website with a thousand pages, yet the process can become tedious and awkward. For a thousand or so pages, the content editing and publishing would be cumbersome. Along with this real-time updates could get delayed and like I mentioned before build times rise consequently.

Not when website consistency is a priority 

Lastly, SSG sites offer a lot of flexibility. That should be a good thing, however, it does have a side effect and that is on your site’s consistency. This is because anything that is found in the Markdown files can be rendered as page content. Consequently, users get the chance to include scripts, widgets and other undesired items. 

Can a CMS and an SSG work together? 

Yes, a CMS and an SSG can work together and pretty efficiently at that. However, that partnership is only possible in a headless CMS. This is because a headless CMS gives room for other frontend technology to come and play and in this case that technology is found in static site generators. 

A headless CMS is pretty versatile, choosing a static site to go as its head could help you get most of the benefits that both, the static site and headless CMS, come along with. This partnership indeed has a lot to offer. Let’s find out what that is. 

Two hands shaking can be seen on the left, with the benefits of a CMS and static site generators' partnership.

Proffers easy deployment via APIs

SSGs are quite straightforward to use, especially with an API, which is the connecting force between the SSG and the CMS. Pulling data from an API for generating and deploying a static PWA to any web host or Content Delivery Network is a breeze. 

Proffers ease to the marketing team 

When you work only with an SSG, you would face difficulties as it puts a lot of boundations on the marketing team. This isn’t a problem when you partner with a CMS. 

Proffers easy editing and workflow 

Conventionally, SSGs do not have a WYSIWYG editor or workflow capabilities for the tracking and collaboration of content. You might think that it is only needed for dynamic sites, but that isn’t the case. Static sites also need that. Since CMSs have that capability, they become ideal for content before actually running the SSG; the perfect contextual partnership. 

Proffers easy updates to sites 

With a CMS, you can easily change and update the content. With an SSG, the same changes can be pulled up through the APIs and a new static site can be generated every time they are incurred. All the developers have to do is set a tool up for content pulling and generation. As a result, your site would always be up-to-date and the users would not need to be processed whenever they visit your site. 

To check out some examples of how CMS and SSG can come together, read how Drupal and Gatsby can be leveraged for developing blazing fast websites. You can also go through the benefits of going ultra-minimalistic with the combination of Metalsmith and Drupal.

Conclusion 

In the end, all I want to say is that both a CMS and an SSG have their own set of features and capabilities that make them excellent at what they do, making their users more than happy. However, when it comes to getting the best out of both of them, there is only one kind of CMS that can help you reap the benefits of this dynamic. It is up to you to decide whether you want to use them together or individually.  
 

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