Upgrade Your Drupal Skills

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

See Advanced Courses NAH, I know Enough
Jul 07 2020
Jul 07

Low-code development replaces the traditional method of hard coding and allows us to create our own applications without any help from the IT developers. It requires minimal hand-coding and enables faster delivery of applications with the help of pre-packaged templates, drag and drop tools, and graphic design techniques.

From leading low-code development platforms like Mendix and Outsystems to Acquia Cohesion (suited for Drupal websites), the low-code approach has been making waves as a great option for easy application development.

A square divided in four with small dark blue circles

I am sure after reading the above lines you are left confused, that if low-code is an easy way out then why does the title talk about low code not being the right code. Well, if anything looks too good to be true, it’s not always that great. Let me tell you why!

Functionality-first and user needs later

Even though low code is a great help in making the lives of developers easier, it is unfortunate that it puts user experience at stake. A design-led approach or a progressive approach becomes harder to achieve with low code. Functionality over the need of the user never ends well.

Low code, as we know, saves time. And hence is said to be efficient. Whereas the truth is that it is efficient only with respect to time. The applications made on low code are hardly optimized for efficiency. If you want your web app to run smooth and fast, low code is not the go-to option for you.

No technical requirement: a myth

Low code is easy and can be done without including the technical team: True
Low code does not require any technical skill: false

For anyone of us to start working with the low code, the understanding of the development of low code is the first and the least requirement. It takes time to learn and understand the process. So, before one starts using the tools, it is important to ensure that they have the basic technical skills that are required.
Limited functions 

In a low code development tool, the number of functions that you can implement is limited. It is definitely a quick way to build applications but in case you want to try out something different, you do not have many options.

Also, once an app is created on low code, it is not very easy to add custom code or any other required functionality to it.

Does it help in cost-cutting?

When it comes to low code, the cost is both a draw and a drawback. 

Because of its flexibility, low code is easier to use and requires a small set of skills. So, you don’t have to specially hire someone and pay a hefty amount to do that.

Although it is easy to drag and drop building blocks that fulfil your requirements, once you need a special feature that is unavailable, you will need custom code. Merging the custom code can cost a lot more than a completely customized solution as a whole.

When a company starts, it starts small, and hence it is advised to have a provision in its low code contract for ramping up in the future. If not, the company has to face major downfall before they are even able to start properly.

Is it secure?

Low code has been giving rise to the question: Is it secure enough?

When you build an application using low code, it requires your complete trust. You don’t have control over data security and privacy and no access to source code which makes it difficult to identify the possibility of any sort of vulnerabilities.

Using low code to produce code that does not adhere to established best practices could violate an organization’s compliance measures. Doesn’t matter if the resulting application is secure.

Vendor Lock-In Risks

Vendor lock-in is one of the major limitations of low code development.

In the case of the teams that use low code, vendor lock-in can create poorly documented or even undocumented code that is difficult to maintain outside of the platform.

Hence, it is important to understand each vendor’s policies before licensing any tool and ensure that you know whether or not you are able to maintain applications outside of the platform.

Conclusion

Low code is indeed a useful tool but it comes with cons you can’t ignore. Platforms that have been using low code will only tell you that it’s faster and easier but lack of options and functions, security risks, and other major drawbacks make us rethink if it is actually the solution that we want for an enterprise application.

Jul 06 2020
Jul 06

Technology is changing at the speed of light. Fuelled by the democratisation of innovation, the tempo of change and adoption is multiplying. Today, 5G is a major talking point in the industry. IoT is changing at scale. Data is becoming the centre of the IT universe with digital twins, spatial computing, artificial intelligence, deep analytics and new applied versions of technology all being dependent on data platforms. And, Hyperloop is leveraging magnetic levitation and big vacuum pumps to let those bus-sized vehicles zip along at speeds approaching Mach 1. In a world, where disruptive technologies are changing the ways we see everything around us, what happens to the existing technological solutions? Continuous innovation is the biggest mantra that can help them sustain in the long run and evolve with changing technological landscape. This is exactly how Drupal, one of the leading open-source content management systems, has remained powerful after almost two decades of existence. Introducing Drupal 9!

Drupal 9 logo with Drupal TM written in the centre, drop-like icon and a bluish background


Since Dries Buytaert open-sourced the software behind Drop.org and released Drupal 1.0.0 on 15th January 2001, it has come a long way. It has weathered headwinds. It has grown rapidly. It has powered small and medium businesses to large enterprises around the world. Supported by an open-source community, which is made up of people from different parts of the globe, it has kept on becoming better and better with time. Drupal 9, the new avatar of Drupal, with intuitive solutions for empowering business users, cutting-edge new features that help dive into new digital channels, and easy upgrades, is the future-ready CMS. Amidst all the changes that are happening in the digital landscape, Drupal is here to thrive! Websites and web applications, built using Drupal 9, will be much more elegant!

The excitement in the air: Launch of Drupal 9

When the Drupal 8 was released back in 2015, it was a totally different world altogether. The celebrations were in full swing. But, as a matter of fact, Drupal 9 launch in 2020 wasn’t a low-key affair either. In spite of the Covid-19 pandemic, the Drupal Community and the Drupal Association made sure that the virtual celebrations were right on top. The community built CelebrateDrupal.org as a central hub for virtual celebrations and enabling the Drupal aficionados to share their excitement.

A tweet with drop like icon on top left, Drupal written beside it and a statement in the centre showing excitement over Drupal 9 launch


Even since Drupal 9.0.0-beta1 was released, which included all the dependency updates, updated platform requirements, stable APIs, and the features that will be shipped with Drupal 9, it raised the excitement levels to the sky-high. The beta release marked Drupal 9 as API-complete. Eventually, on June 3, 2020, the world saw the simultaneous release of Drupal 9.0.0 and Drupal 8.9.0.

[embedded content]


Drupal 8.9 is a long-term support version, or the final minor version of Drupal 8, which will receive bug fixes and security coverage until November 2021 with no feature development. On the contrary, Drupal 9 development and support will keep on continuing beyond 2021. Drupal 8.9 includes most of the changes that Drupal 9 does and retains backwards compatibility layers added via Drupal 8’s release. The only difference is in the Drupal 9’s updated dependencies and removal of deprecated code.

Two building made up of bluish rectangles explaining Drupal 8.9 and Drupal 9Source: Drupal.org

If you have an existing Drupal site, opting to update to Drupal 8.9 is a perfect option. This will make sure maximum compatibility and the least possible alterations required for the Drupal 9 update. Or, if you are creating a new Drupal website, it gives you the option of choosing between Drupal 8.9 and Drupal 9. Going for Drupal 9 would be the most logical option as it gives you forward compatibility with later releases.

Traversing the world of Drupal 9

[embedded content]


First things first - with the onset of Drupal 9, a rebranding has taken place as well. The new Drupal brand represents the fluidity and modularity of Drupal in addition to the Drupal Community’s strong belief system of coming together to build the best of the web.

Different Drupal 9 logos with drop like icons and the word 'Drupal' written


If one asks what exactly is Drupal 9, all you can say is that it is not a reinvention of Drupal. It is a cleaned-up version of Drupal 8. So, what’s new in Drupal 9?

Drupal 9 has not only removed deprecated code but updated third-party dependencies for ensuring longer security support for your website’s building blocks and leverage new capabilities.

Since the adoption of semantic versioning in Drupal 8, adding new features in minor releases of Drupal has been possible instead of waiting for major version releases. To keep the Drupal platform safe and up to date, Drupal 9 has revised some third-party dependencies:

  • Symfony: Drupal 9 uses Symfony 4.4. But, Drupal 8 uses Symfony 3 and the update to Symfony 4 breaks backwards compatibility with Symfony 4. Even though Symfony 3’s end of life is November 2021, Drupal 8 users get enough time to strategise, plan and update to Drupal 9.
  • Twig: Drupal 9 will also move from Twig 1 to Twig 2.
  • Environment requirements: Drupal 9 will need at least PHP 7.3 for enhanced security and stability. If Drupal 9 is being run on Apache, it will require at least version 2.4.7.
  • Database backend: For all supported database backends within Drupal 9, database version requirements will be increased.
  • CKEditor: Soon, CKEditor 5 will be added in Drupal 9.x and CKEditor 4 will be deprecated for removal in Drupal 10.
  • jQuery and jQuery UI: While Drupal 9 still relies on jQuery, most of the jQuery UI components are removed from core.
  • PHPUnit: Drupal 8 requires PHPUnit 8.

Drupal 9 comes with the same structured content-based system that all the Drupalers love about it. Layout Builder in core enables you to reuse blocks and customise every part of the page. Built-in JSON:API support helps you develop progressively and fully decoupled applications. BigPipe in core ensures fantastic web performance and scalability. Bult-in media library helps you manage reusable media. There is multilingual support as well. You get better keyboard navigation and accessibility. Its mobile-first UI would change your mobile experience forever. The integrated configuration management system could be used with development and staging environment support.

Therefore, other than those provided by the updated dependencies, Drupal 9.0 does not include new features. It has the same features as Drupal 8.9. Drupal 9.x releases will continue to see new backwards-compatible features being added every six months after Drupal 9.0.

Migration to Drupal 9

Infographics showing timeline of Drupal 9 with yellowish background and a flowchart at the centre


While Drupal 9 is definitely the way to go, one needs to know certain things before upgrading from Drupal 7 or Drupal 8 to Drupal 9. Drupal 7 and Drupal 8 are not completely lost yet. They are here to stay for a while.

Drupal 7, which was slated to be end-of-life in November 2021, will now be getting community support till November 28, 2022. The decision comes after considering the impact of the Coronavirus outbreak and that a large number of sites are still using Drupal 7 in 2020. On the other hand, Drupal 8, which is dependent on Symfony 3 and since Symfony 3 will be end-of-life in November 2021, will, as a result, see the end of community support on November 2, 2021.

Symfony 4 will be end-of-life in November 2023. With Drupal 9 using Symfony 4.4, it is bound to stop receiving support at the end of 2023. (There is no official confirmation on dates yet for Drupal 9 EOL.) If that happens, Drupal 10 will be released in 2022 which means it will be released before Drupal 9 becomes end-of-life.

bluish background, icon resembling tool at the centre and 'Essential Drupal 9 upgrade tools' written below it


To upgrade to Drupal 9, the know-how of upgrade tools is essential:

  • For migrating your content and site configuration, Core Migrate module suite is perfect. 
  • The Upgrade Status Module would give your details on contributed project availability.
  • In case of Drupal 8 websites, the Upgrade Rector module would automate updates of several common deprecated code to the latest Drupal 9 compatible code.
  • In case of Drupal 7, the process of scanning and converting outdated code on your site can be handled by Drupal Module Upgrader.
  • Using drupal-check and/or the Drupal 8 version of Upgrade Status in your development environment helps you ensure whether or not a Drupal 8 update is also compatible with Drupal 9. You can also make use of phpstan-drupal from the command line or as part of a continuous integration system to check for deprecations and bugs.
  • You can use IDEs or code editors that understand ‘@deprecated’ annotations
Three drop like icons with numbers 7, 8 and 9 written inside each of them respectively and arrows connecting them


The best option is to upgrade directly from Drupal 7 to Drupal 9 as this ensures that your upgraded site has maximum expected life. When your site requires a functionality provided by modules that are available in Drupal 8 but not yet in a Drupal 9 compatible release, you can also migrate to Drupal 8 first (Drupal 8.8 or 8.9) and then eventually move to Drupal 9.

While updating from Drupal 8 to Drupal 9, it is important to ensure that the hosting environment matches the platform requirements of Drupal 9. You need to update to Drupal 8.8.x or 8.9.x, update all the contributed projects and make sure that they are Drupal 9 compatible. Also, you need to make the custom code Drupal 9 compatible. Once set, all you need to do is update the core codebase to Drupal 9 and run update.php.

Future of Drupal 9

It’s very important to make Drupal more and more intuitive for all the users in the coming years. One of the foremost achievements of Drupal 9 is the streamlined upgrade experience. Upgrading from Drupal 8 to Drupal 9 is a lot easier than moving from Drupal 7 to 8. And, it will continue to be a smoother process when the time comes to migrate from Drupal 9 to Drupal 10.

Drupal 9 will continue to receive feature updates twice a year just like Drupal 8 did. For instance, the experimental Claro administration theme is being stabilised. The new Olivero frontend theme is already being developed and is being optimised for accessibility and tailored to frontend experiences. It is specifically being designed for marketers, site designers and content editors with a lot of emphasis on responsive design. Automated Updates Initiative, which began in Drupal 8, is also in the works.

There’s an awful lot of development going on behind-the-scenes. The upcoming releases of Drupal 9.x would definitely come packed with exciting new features. We are waiting!

Conclusion

Drupal is awesome because it’s always on the cutting edge. It has always been a CMS that provides extensibility, flexibility and freedom. Drupal’s foundation has always been in structured data which works really well in today’s demand for multichannel interactions. Having one of the biggest open source communities, it has the support of thousands and thousands of people adding more features to it, enhancing security and creating new extensions.

The large community of Drupal embraces change right away as the big developments happen. That is exactly why Drupal has been able to offer fantastic web experiences all these years. Drupal 9 is the result of its community’s commitment to enabling innovation and building something great.

Undoubtedly, Drupal 9 is the best and most modern version of Drupal yet. It marks another big milestone in the realm of web content management and digital experience. It’s time for you to start planning a migration path if you are still on Drupal 7 or Drupal 8. If you are starting out a new website project in Drupal, there shouldn’t be any ambiguities over choosing Drupal 9. Contact us at [email protected] to build the most innovative, creative and magnificent website ever using Drupal 9 or to migrate from Drupal 7 or 8 to Drupal 9.

Jul 02 2020
Jul 02
Ecommerce icons around a Drupal icon


Evolving technologies and marketing strategies have changed the way shopping is experienced. With time, the charm and challenges of eCommerce have increased. How do you plan to overcome these challenges?

As an online brand, you have your challenges when eyeing expansion and opportunities. To achieve the right numbers it is important to engage with customers and sell quality products, all through the right platform.

Talking about the right platform, you can always trust Drupal. Drupal is a content management system with hundreds of modules and themes ready to drive your business online. Drupal adds the magic that your website needs.

The State Of Digital Commerce

Drupal provides amazing features for your eCommerce website, but before jumping to that, let’s take a glance at some stats and understand where the eCommerce industry is heading.

According to Statista, online sales reached $2.5 trillion for the global eCommerce market at the end of 2019 and represented 14% of its global market share. The same data says that by the end of 2020, global commerce sales are predicted to reach $4.2 trillion and the representation will increase to 16%.

Blue colored graphs on a white background showing retail ecommerce salesSource: Statista

The way that people have been shopping online has changed. Keeping up with trends is important for the growth in the retail landscape of 2020. The future looks bright for eCommerce in the coming time.

Personalization is the key if you want to earn the trust of your customers and give them an experience that makes them come back to your website again. Contactless payment has become the shopping trend and has been continuing for a long time. People prefer paying online instead of cash on delivery. So, providing diverse options for payments is important to keep your customers’ experience a happy one. Subscriptions are an ongoing trend that has helped brands get a lot of long term customers. Similarly, Chatbots have been a great help in enhancing the experience of the users. Experts have predicted that 80% of businesses will be using chatbots by the end of 2020. Voice search has become popular with time. 26.1% of consumers have made a purchase on a smart speaker in 2019. 

To leverage all these ongoing trends, and drive sales of your product online, you need a robust and future-ready eCommerce website and Drupal is ready to help!

Why Using Drupal Brings You A Lot Of Benefits

One of the most comprehensive open-source CMSes available, Drupal, is the perfect fit for eCommerce businesses. It gives you the perfect way of modeling your content, integrated marketing, payment, and fulfillment tools, which helps in bringing in a bigger audience. All the features of Drupal are accessible to merchants of every size.

There are so many brands out there using Drupal for their online business. Here are a few of them:

Honda Brazil

The website of Honda Brazil, built using Drupal, gives the users an engaging experience with easily accessible information.

Home page of Honda Brazil's Website


Timex

With the help of Drupal, Timex, a famous American Watchmaker, is able to provide its customers a seamless, engaging, and consistent online experience.

Home page of Timex's Website


Lush

Lush, with its website powered by Drupal, has seen dramatic spikes in both online and traffic sales.

Home page of Lush's Website


Puma

Puma, one of the leading sports brands, has its website built on top of Drupal.

Home page of Puma's Website


Why do such great brands choose Drupal for their online business? Let’s look at the reasons that show why Drupal is the best fit for your eCommerce website:

Commerce Kickstart

It’s a distribution for the quickest way to get up and running with Drupal for eCommerce features. If you are launching an online store, commerce kickstart is a great resource that will get you up and running with the production environment. 

Commerce Kickstart is made for modern PHP lovers and is available only for Drupal 7. The categories in this distribution include shipping and payment providers, data migration, search tools, product catalogs, etc.

Drupal Commerce

Drupal Commerce is a dedicated solution for your eCommerce needs. It is basically a set of modules for Drupal that enable the host of eCommerce features. Drupal Commerce being a framework itself, focuses on the solutions that can be built by using it. In simpler words, Drupal Commerce brings to your website the basic functions like order, product details, cart item, and payment options.

There are many features of Drupal Commerce that are further extended with the help of modules. Here are a few of them:

  • Modules like Commerce Stock and Commerce Inventory make inventory management easy. 
  • Commerce shipping is Drupal commerce contributed module that is used in cases where the shipping address and the billing address is different by making use of the customer profile.

Essential modules for an e-commerce site

There are plenty of Drupal modules that can be added to your eCommerce site and will help you in building intuitive and powerful websites. Here are some of the modules provided by Drupal for eCommerce:

  • Commerce Shipping takes care of the shipping rate calculation system for Drupal Commerce. It is used with the combination of other shipping method modules like Commerce Flat Rate, Commerce UPS, etc.
  • The Currency module helps your website with currency conversion and information and does the work of displaying the price of the product.
  • Commerce Stripe makes sure that the customers can pay securely without having to leave your website.

Essential themes for an e-commerce site

The first thing that attracts a user when they visit your website is the appearance of your website. Drupal provides amazing themes for your eCommerce websites which come in handy.

  • eStore is Bootstrap based and easy to install and is designed in a way that it solves any eCommerce website’s needs.
  • Flexi Cart is a global theme that makes sure that your products sell fast and easily online.
  • Belgrade is a Drupal Commerce template specially designed to create business websites.
  • SShop is among those Drupal 8 themes which are responsible for providing the users with inbuilt support for Drupal Commerce.

Content-Driven Commerce

Content marketing is the most popular way and for sure gets you the best SEO results. A good story behind your brand will definitely drive sales for you. If the content on your website is engaging, the users will keep coming back to your website.

The stories can be anything that relates to your product. For example, if you are selling lipsticks, you can write an article that says which shade is the perfect one for your different colored outfits.

It is really important to decide the kind of content you want to post on your website. Your content can include blog posts, ebooks, guides, tips, hacks, etc.

Drupal covers the need for content-driven experience. No matter what the case may be, content types are at the core of Drupal that include, mobile editing, in-place authoring, easy content authoring, content revisioning and workflows, and modules for multimedia content.

Headless Commerce

Headless Commerce, which acts as a great catalyst to upscale content-driven commerce, gives immense flexibility to create a great shopping experience for the users. It is future-focused and stays relevant. JavaScript interface communicates with backend Drupal via REST API. Also, in Decoupled Drupal, there is a separation between the presentation layer and eCommerce backend.

Headless Drupal commerce comes with a lot of benefits including high speed, interactive features, and freedom in front-end changes. These features provide a great shopping experience to the customers online by providing a content-rich experience.

Read our article on the implementation of Decoupled Drupal Commerce and React Native to learn more about the benefits of a headless commerce approach.

Performance

It is important to take into account the speed of your website. It is seen that a site that loads in five seconds has 70% longer average conversions. A slow website will deter your efforts and investments. 79% of the shoppers who faced the slow- loading issue say that they don’t return to the websites. These bounces bring a direct effect on revenue generation.

To maintain a top-notch web performance, Drupal comes packed with plenty of offerings. Some of them include:

  • Blazy module helps the pages load faster and saves data usage if the user is not using the whole page.
  • CDN module helps with the integration of Content Delivery Network for the websites and mitigate the page load time and rapidly deliver the web page components
  • In case, your server hardware is reaching its limits, Drupal gives you the option to upgrade the server hardware for a faster way of scaling.

Mobile Ready

If your website runs smoothly on mobile devices, it will be able to run better on other devices too! Creating user scenarios will help you understand what kind of content the user will appreciate on their mobile. This approach will help you design the important elements required for your website.

Mobile compatibility has become an irreplaceable feature for any eCommerce site. In today’s world, everything needs to be mobile-ready. Drupal’s websites not only wow the clients by their looks but also by their mobile responsive design. Drupal websites are easily accessible on mobile and tablets.

Multilingual

The world is on the internet, and with so many people using similar platforms and so many brands expanding globally, multilingual websites are the sine qua non! 

China has the highest number of internet users which is a massive 772 million. Although the maximum number of people on the internet prefer English as their language, 10 other languages that account for 90% of the top 10 million websites.

World stats on a white backgroundSource: Internet World Stats

Drupal is the best choice for your multilingual website. It provides numerous languages to choose from and 4 core modules specially designed for language and translation support. This feature by Drupal has shown great results that include higher conversions, rise in SEO, unrivaled translation workflows and has also been a great help in widening the audience. It also allows the detection of the user’s preferred language by identifying users’ IP address, sessions, browser settings, etc.

Personalization

Every eCommerce brand wants to make sure that the content created by them leaves a mark on the users’ minds. And it has become a necessity today because there is a lot of competition out there. Hence, personalized content makes the user experience better and helps create trust between you and the customer.

According to an Adobe report on personalization, 92% of the B2B marketers say that personalization is important.

This is the marketing opportunity that no eCommerce business should miss out on. Tapping the different demographics and varied audiences not only improves your market reach but your bottom line as well. 

Following are examples of modules that can aid your web personalization efforts:

  • The Smart Content module gives real-time anonymous personalization for the users. It also allows the site administrators to display different content for anonymous users based on browser conditions
  • Acquia Lift Connector module helps organizations in delivering personalized content and experience across all platforms and devices by merging content and customer data into one tool. 

SEO

E-commerce websites are buried with huge data. While for a consumer, it might be a desirable situation, for a marketeer it increases the burden of implementing SEO on every page and indexing every product. 

Drupal has various modules that help in improving the SEO of your eCommerce website. Some of them are:

  • Pathauto is an SEO module that ensures that the URL of your website is search engine friendly. It converts complex URLs to simpler ones.
  • Metatag module is a multilingual module and controls all the metatags on all the web pages.
  • XML Sitemap module provides you the resilience to exclude or include a few pages on your Sitemap.

Security

With the increase in cases of hacking and security breaches, basic security do-it-yourselves are not sufficient. The security breaches affect your brand image and your market shares and stock price. According to a report, more than $3.5 Billion was lost to Cyber Crime in 2019. 

Drupal has a dedicated team that regularly works on the security side of it. It is frequently tested for issues and bugs. Drupal also provides various security modules for your eCommerce website. Some of them are:

  • The Password policy module provides the password policies that help users to create a strong password. The password entered by the user is not accepted until it meets the constraints set by this module. 
  • Security Kit module provides various security- hardening options. This helps in reducing different risks coming from different web applications.
  • Two-factor authentication module is a second step for your security check, where a set of codes is defined for a user to be able to sign in. 

If you open a webpage from your mobile device and at the same time open it on your PC/laptop, you will be forced to close one of the pages. The session limit module does the same work of limiting the number of sessions by a user at the same time.

To Sum Up

The substantial development in the concept of ‘eCommerce’ has kept the online brands on their toes. And this is where Drupal provides its unmatched services for your eCommerce platform. 

Be it building your eCommerce website or migrating to Drupal, we at OpenSense Labs will help you do your job smoothly until you get a desirable finish.

Feel free to contact us at [email protected] to drive sales on your website!

Jun 12 2020
Jun 12
An arrow moving upwards with SEO and 2020 written on it's side


Your website is the centre of the marketing world. No doubt SEO is very important for any business that operates online. Ensuring that a search engine is easily able to understand your content is the first step towards ensuring your visibility in search engine results.

Drupal is perfect for SEO. A Drupal website will help you launch your website and drive customers in as soon as you launch. Drupal provides many built-in SEO friendly features. One of the greatest features of Drupal is that it is super easy to customize.

The SEO essentials
 

module word cloud


Following are the most important pointers to tick-off when considering to boost search engine rankings of your Drupal website:

Checklist essentials

SEO Checklist

The SEO checklist module does not add any sort of functionality to your website but it helps as a reminder to all your SEO related tasks. This module will make sure that you are maximizing SEO for your site. It is updated frequently with the latest SEO techniques. If you work on a lot of websites, this module is for you!

Real-Time SEO For Drupal

This module does your work of optimizing content for your website by including keywords in a fast and non-spamming way. Also, this module works best with the Metatag module. Real time SEO for Drupal modules will check if your posts are long enough, if you have written the meta description and whether or not it contains keywords or if you have used any sub-heading for your post.

Require On Publish

This module is required only when your content has to be published or is already published. Require on Publish can be used when there are options like tags or SEO information on your content that don’t generally need to be filled until the content is published.

URL Essentials

Redirect

If you want to handle duplicate content, the Redirect module will do it for you. It helps in integration with Drupal’s page cache to optimize redirects and performance. 

Pathauto

This module makes sure that the URLs are search engine friendly. Search engines like Google and Bing encourage the use of cleaner and URL friendly websites. Pathauto converts complicated URLs to cleaner and clear URLs.

Easy Breadcrumb

Easy Breadcrumb is a plug and play module that uses the current URL and the current page title to automatically extract the breadcrumbs segments and its respective link. 

Menu Breadcrumbs

This module provides substantial benefits for both users and the search engine. Menu breadcrumbs will let you know where you are in the navigation hierarchy and also there is an anchor text in the breadcrumb which links it to the appropriate URL. 

Footnotes

The Footnote module will automatically create tallied footnote references into an article or post. It provides an optional feature that identical footnotes are collapsed into one as if they had the same value.

Link Checker

A broken link will put a bad impression on the search engines. The Link checker module keeps checking for broken links periodically by checking the remote sites and evaluating the HTTP response code. It will also extract links from your content when saved.

Menu Attributes

This module is helpful in your SEO strategy if you want to non follow any menu item to mould the flow of page rank. Menu attributes module is also helpful when you want to give your menu item an ID so that you can easily select it using jQuery. 

Tag Essentials

Metatags

This module provides a global setting which controls the meta tags on all pages. Metatags module is also multilingual which is great for your website!

Hreflang

Hreflang is a simple module that adds tags that are used by search engines to serve the correct regional URLs in the search results.

Schema.org Metatag

This module is an extension of Drupal’s Metatag module to display structured data in the form of JSON LD in the head of web pages. Schema.org Metatag module helps you define default structured data value for all content types. 

Power Tagging

This module helps you customize your content from Drupal nodes easily and provides multilingual tagging. It helps you tag your content in bulk at once with the help of Bulk-tagging. Power tagging module suggests tags which the users can curate or index collections of Drupal content.

Similar By Terms

If you want to enable the keyword tags on content then Similar by terms module is the right one! It also allows you to create your own views and it will also interpret content automatically through thesaurus even if synonyms are used.

OG Tags

OG tags are designed to make sure there is good communication between your site and Social media platforms like Facebook, LinkedIn and Twitter. Once, you are able to connect your site correctly, it will become easier for you to control the tag lines and images that will appear on social media platforms. These tags make content more catchy on social media feed and will also tell you what your content is about in seconds.

Validate The Information

Make sure all the information that is displayed on Facebook and Twitter is correct and displayed in a nice manner before people start sharing it. 

OpenSense Lab's facebook page


Communicating With The Search Engines

Sitemap

The Sitemap module gives you an overview of your site and displays the RSS feeds for all the categories on your website.

XML Sitemap

This module is a directory of your website which your website definitely needs! XML Sitemap module makes it easy for Google to crawl and index the website. This module provides you the flexibility to include or exclude some pages from the sitemap of your website.

Simple XML Sitemap

This module is a replacement of XML sitemap for Drupal 8 but it has a different function from XML Sitemap. Simple XML Sitemap is a simple module with almost no bugs. You can use this for a newer sitemap standard and more powerful standard.

Cron

This is a task scheduler that helps in automatically executing tasks and does not use any manual involvement. Cron always keeps running in the background unless all the jobs are set to off.  

If you want your XML Sitemap to stay updated and clean, Cron will do it for you by checking for updates and rebuilding XML sitemap.

Google Analytics

The Google analytics module tracks what type of links are tracked and what files are downloaded from your pages. It provides Site search and Adsense support. Changing the URL fragments can be tracked as page views. 

Editing Essentials

Linkit

This module provides an easy interface of internal and external linking by using an autocomplete field. The Linkit module is your solution to internal linking and has a user friendly UI.

Editor Advance Links

This module checks that all the webpages have a unique title, class, ID, logo and primary image.

Speed And Security

Speed and security are the two main factors that affect the SEO ranking of your webpage. Sites that are quick and secure get rewarded by Google. A faster site will always rank higher than the others! 

Headline, Logo and Primary Image

The first thing that a visitor notices on your website is the home page. So, it is important to keep the home page clean with three essential elements. First up is the logo. It is important to have the logo on the homepage to make sure that the user identifies your brand the next time he notices your logo somewhere. The second one would be the Headline. A creative headline that defines your brand. And the third would be the Primary image along with the headline. 

OpenSense Lab's website homepage


Enable Search 404 module

This module helps in improving your website's overall experience. When you search for something on the web, this Drupal module gives you search results related to your query instead of showing ‘page not found’. 

SEO Trends 2020

Domain Authority

Domain authority is a website ranking score that predicts how well a website will rank on website results. This score is used when you want to track the strength of your website. 

Google estimates expertise, authoritativeness and trustworthiness which is also called E-A-T. E-A-T is a predominant ranking factor. Google wants to feature content that is written by experts in their field.

Google focuses on the off site signal to figure out your site’s E-A-T. After creating an amazing website, you need to make sure that it is cited and mentioned by other trusted websites and reliable sources. The mentions don’t just mean link mentions, they can be anything like a simple tweet talking about your blog. Expert mentions matter a lot and help you gain a better reputation in Google’s eyes.

Voice Search

OK Google, how do you think voice search will affect my website’s SEO?

As per the OC&C Strategy Consultants, 13% of all the houses in 2018 had a smart speaker and this number is expected to rise to 55% in 2022. 

Voice search statistics on a white backgroundSource: Wordstream

Google tends to give you the voice search answer from the top 3 results. After searching, Google chooses the page that usually has both the question and the answer. This is one of the reasons that make FAQ pages important for your websites’ search engine rankings. Google tends to use the featured snippets. 

Featured Snippets

Featured snippets are the results that are featured on the top of Google’s search results. These snippets aim to answer the query of the user right away. If your content is featured as a snippet in search results by Google, it means that you are getting additional brand exposure. 

There are three types of featured snippets: Paragraph, List and Table. According to GetStat the most featured snippet out of the three is the ‘paragraph’ type’.

A table showing types and number of total snippets

According to Ahrefs reports on 2 million featured snippets, 12.29% of their search results had featured snippets.

A pie chart showing amount of search queries with featured snippets Source: Ahref

Visual Search

Visual search aims to impact the future of SEO, let’s have a look how. 

Like voice search, visual search begins with taking a picture. Google Lens has been used 1 billion times till now. Apps like pinterest get almost 6000 million visual searches per month.

A pintrest search result page with flowers


Visual search has been useful for shopping, translation, recipes, identification of plants, product and a lot more.

With so many apps using this feature, it would not be very surprising to see it rise as an essential part of search. So if you want your product to show up as a visual search result, Image SEO is the right answer! 

Video SEO

According to Cisco, around 80% of online traffic will be made by online video. Even though there are uncountable videos on the internet, Hubspot says that 43% of people want more video content.
 

6 Blue semi circles on a white background Source: Techcrunch

Search Intent

If you want to rank your website, you need to understand to create content with search intent in mind. Search intent is why a search was made, what was the intent behind the search. Were they looking for a purchase? Or any information?

So your first intent should be choosing the right keyword. If you want to rank the highest in the search results, you need to be the most apropos result for the query. 

Click-Through Rate

It is an important concept in Search engine marketing. Getting more people to see your ad or snippet and getting them to click your ad will improve the success rate for your website.

It is important that your meta tag descriptions are 100% original and will make users click on your website. 

Backlinks

Building backlinks is still the most effective way to enhance SEO rankings and traffic. Which will require amazing content. If you want other websites to mention your link on their websites, you must have some quality content to deliver! 

According to a study by Ahref, top ranking pages tend to get followed backlinks.
 

A gra[hical representation of top ranking pages by backlinksSource: Ahref

Research Content

Bloggers, journalists and writers love data. It is important to show some stats, survey or industry study so that the users stick to your website for future references.

This is a lot of work and requires a lot of time but it’s always worth it! 

Comments And Community

Google wants to make sure that you have an active website with an active community and that’s what makes comments important for you. Comment can play a great role in the overall quality and ranking of the webpage. Although Google doesn’t have any kind of negative effect on your websites if you don’t have community involvement. 

Zombie Pages

Zombie pages, as the name suggests are the pages that are more or less like the zombies that we see in the movies. These pages are neither live nor dead. They don’t give any purpose to the website.

A few Zombie pages are never a problem until they turn into hundreds of them and pull down your entire site’s SEO. These pages can demean all your efforts on taking your page rank higher.

The first step to get rid of these pages is to identify. You need to delete the HTML files and get rid of them from XML Sitemap. 

Conclusion

The foundation of any SEO is quality content and links. You just need to have the right modules and the right guidance. Drupal is the best choice when it comes to content management systems.

Every year new trends keep coming and change the way information appears on the internet ensuring that the users get the required information in a matter of minutes! And if you follow these ongoing trends, your site will definitely see a boost in its search engine rankings.

OpenSense Labs has always been keen to provide the best solutions for its clients and prospects. To improve your presence online reach us out at [email protected]

Jun 05 2020
Jun 05
A man walking on a word cloud


Writing is an exploration. You start from nothing and learn as you go.
- E. L. Doctorow

When you think of a writer, the first thing that would come to your mind is someone who writes novels, blogs, or poems, or maybe scripts. That’s where we go wrong. Today, content is required in every part of the web. Not only does it help your audience create a relationship with your brand but it covers every single aspect of the business. Upkeeping your content will help you upkeep your brand.

Most of the designers don’t see writing as a skill that is required for them. UX designs are not complete without writing. It is important for them to communicate in order to influence. 

Writing Can Be Hard

Writing is hard even for writers. There are times that you have to write about things that you don’t believe in or things that you don’t know about. The more you accept that it is a tough task, the more it becomes easy for you. 

Even though writing is hard, it doesn’t have to be painful. In school, we were asked to write essays which had a specific word count which made most of us assume that writing is a painful and unpleasant experience. 

A writer's job is to help in selling a product, but a designer who writes does more than that. He is responsible for the writing along with the design.

Essential Tips For A Designer To Improve Writing 

With the apps and websites becoming more complex, the need for clear guidance within them has grown. Words convey meaning, and writing in a concise manner helps the users to understand the message your design and content is trying to send. 

Writing will help you become a better designer and a better thinker. In a way, writing is similar to designing. In writing you have to decide which ideas you need in the content and which ones to remove. Similarly in designing, you look for features that your design needs or features that need to be removed from it. 

Writing in a clear and concise language helps the users to understand your content easily and get the desired information. Here are some ways that will help:

A half visible typewriter on a brown colored background with essential tips for a designer to improve writing written on it


When a user searches for something on the web, they usually search for keywords. So, it is important to use clear and front-loaded heading to make it easier for users to reach your webpage. 

Use short sentences that give a clear message. Long and complicated sentences make the readers work harder to understand what they are reading. They would want you to get straight to the point instead of confusing them with complex words and sentences that are not needed. If you do this, it shows that you respect the readers time and attention.

Too many lines can confuse the users so it’s always better to use bullet lists wherever possible. Try to keep it short and clearly emphasize the points that you are trying to make. 

It is crucial to prioritize your content. When a user visits your webpage, he should be able to get the important information in the beginning and continue to read if they want to understand more of the content.

An inverted triangle showing the priority of the structured contentSource: The Ready | Medium

Reasons why writing makes you a better designer

Now that we know of a few tricks to make our writing clear and concise, let’s quickly look at how consistent writing makes you a better designer:

Thoughts

A man sitting on a chair and thinking


When you make a mistake or repeat a thought in your writing you will remove or change it and run your thoughts around it to get better ideas. Writing is great exercise for your mind and it helps you to stay organised and logical in your thinking. 

Growth

A man walking on a graph

Another benefit of writing is that it makes you a better listener which is a crucial skill for designers. The more you read and explore the world of writing, the more you become involved with creativity.

Creativeness

A man with books, bulb, pencil floating around him


Writing makes you creative! A designer with great writing skills brings out more creativity in his designs. Keeping a small notepad to make notes when you read, talk or observe something helps you gather ideas for designing. 

You can try the pen and paper magic. Writing things down using a pen and a paper benefits your brain. Writing everything down, whether it’s during a user interview, or you’re conducting research or testing, helps you remember and understand better.

Clarity

A woman standing on a ladder and cleaning the mind with a broom


Having clarity in your writing improves your understanding with the users. It not only helps you in supporting your reasoning but also to answer any sort of objections made on your content. 

It is important that the readers understand what you write. Your writing should be so clear that even a reader who is new to the subject is easily able to understand it. After you are done writing, you can ask a non-designer to give it a read so that you are able to get an idea if the audience will be able to understand your content. 

Leadership

A man talking giving a presentation in front of the audience


Writing makes you a better leader. When you start writing, you research the particular subject.  More and more writing will help you get clearer thoughts and explain your concepts better to your readers and listeners and support your reasoning. 

Conclusion

It is important to write friendly content so that when a user engages with your website he feels like he is engaging with a human rather than computers.

You can always keep trying and find resources to improve your writing skills. Read as much as you can. It is important to explore to keep your thoughts moving and enhance your creativity both as a designer and writer. 

Jun 03 2020
Jun 03
Employees of OpenSense Labs posing for the camera


It’s not just another day. June 3, 2020 marks the 4th year anniversary of OpenSense Labs. If it wasn’t for the unprecedented situation caused by Covid-19 pandemic all over the globe, the OpenSense Labs Team would have headed out for a luncheon and taken part in some exhilarating and adventurous activities.

It’s the times like this that make us come out better and stronger. The OpenSense Labs Team has always found a way to stay together, help each other out, work collaboratively and bear the fruits each day. Even though the Covid-19 pandemic has made us stay indoors, we have kept on marching ahead. We have always believed: Wherever We Are, We Are One.

A small customised workstation at our homes beside the window is not that bad either. As we sit down, reach our hand out, lift a corner of the curtain with our fingers and white light floods the desk, hope for the return to normalcy becomes firmer. As we move into our 5th year, our resolve to get bigger and weather headwinds along the way becomes more strong.

Humble beginnings

It feels powerful to put the experience down in words. It’s like trapping it in a jar and it can never fully leave you. For Vid (CEO, OpenSense Labs), the humble beginnings of the organisation is a reminder of all the hard work that went into it. It’s something that drives him to keep moving forward.

 a laptop placed on the table against the backdrop of mountains and trees


It was the time when he was on a break and contemplating the future roadmap of his professional life. What better place than the open hillsides and deep woods to start the foundation work of a new startup! Working alone against the lovely, idyllic, and picturesque backdrop can be inspiring. The wings of the rushing wind seem to be bearing you onward. The voices of the air are singing to you.

At a place like this, with thrilling chlorine-blue sky stretched taut and featureless like silk, woods all green and golden, hills looking glorious in the flashing sunlight, Vid drew the definitive blueprint for an organisation that would go on to become one of the best Drupal agencies in the global marketplace. Today, he proudly looks at OpenSense Labs’ invaluable contributions made to the development and promotion of Drupal. Vid still remembers the days that went into the planning of an organisation of this scale. They will linger long upon the retina of his memory.

The first office

two people sitting on the chairs and working on the laptopFirst day in the office in 2016

The birth of a refreshing idea accompanied itself with the task of setting up an office premise. But, how much of workspace would three people require to start the proceedings? Well, a small room with a table and chairs for three would suffice. So began the journey of OpenSense Labs and it saw significant growth in a short period of time. Soon, it was time to move to the bigger office.

Open-source innovation with Drupal

Employees of OpenSense Labs posing for the cameraFirst year anniversary in 2017

By the time, we celebrated our first anniversary, our team had already grown in number and we had moved to a bigger workspace. Today, into our 5th year, we now have 50+ talented individuals helping the organisation move by leaps and bounds. From Drupal development to unique staff augmentation offerings, Drupal Commerce to web performance optimisation, web personalisation to Drupal 8 upgradeDrupal 8 migration to support and maintenance, we have made the foray into everything Drupal. We utilised our Drupal expertise and various open-source software projects, yielded great results with our open-source thinking, and triumphantly carried out small to large scale projects.

Blue background, Drupal written on top


Our fourth year anniversary also coincides with the launch of Drupal 9. We are looking forward to providing ambitious digital experiences with an all-new Drupal.

Building an amazing organisational culture

Photos of Elon Musk, Quadro Nikola, linus torvalds on the wall


Envisage yourself looking at the faces of Linus Torvalds or Elon Musk or Quadro Nikola while trying to give your best in the project you are working on. That’s exactly what you get here at OpenSense Labs’ office. Posters of these influential persons give you enough motivation to pour in everything that you have got and give your best shot.

We always strive for creating a company culture that embraces and promotes mentorship. When new guys join the team, a designated mentor makes sure to look radiantly pleased to hear their questions. They survey their thoughts that seem to be shuttling through all the coils inside their brain like fast, frantic centipedes. It’s almost like opening their skull, unspooling their brains and sifting through it, trying to catch and pin down their thoughts. We feel it’s important for senior pros to understand the newbies’ minds and make them feel comfortable and do their best.

The friendly and positive environment makes you feel at ease. There is a strong sense of tranquillity felt in the office premises. Even a time-sensitive project, that can sometimes be a high-pressure job, can be dealt with easily.

And, being a part of the OpenSense Labs family makes you want to celebrate your birthdays in the office. There is always someone who would throw cakes on your face. Someone would open a bottle of wine (with a crest of white spilling over the lip of the bottle) and pour a glass for you.

We make sure that you always get an ample amount of opportunities to learn new things and try newer avenues. When opportunities do knock on the door, everyone makes sure that they sweep them into the palm of their hand, close their fist around them and pocket them. For instance, whenever a DrupalCon or a DrupalCamp is held in India or anywhere else in the world, we encourage everyone to present a session in such national and international conferences.

Collage with three images where people are posing for the camera, identity cards in closeup and a man with a chart paper can be seenOpenSense Labs at global conferences. From left to right: DrupalCamp Goa 2019; DrupalCon Amsterdam 2019; DrupalCamp London 2019

Annual retreats are something that we look forward to every year. Everyone seems to be in a jolly mood during the bus journey. Different playlists being flipped through and finding one everyone on the bus seems to be enjoying. Music bleating from the speakers at night while everyone takes a quick nap preparing themselves for the exciting day that lies ahead.

Employees of OpenSense Labs posing for the cameraFirst annual retreat

As you reach your destination, the sky dims into a cooler blue and silver clouds lie on the rim of the horizon. You look forward to dancing all night under the night sky. The bonfire illuminates the features of jubilant individuals in the darkness. As the sun rises again, you can’t wait to play a match of cricket. It’s even more wonderful to witness light rains. You cherish the moments when grey stone darkens to black and rain moves over the grass and whispers on the slick roof tiles.

number of individuals forming a circle(a)drone shot of people playing cricket in a ground(b)

Visuals from the recent annual retreat in February 2020

We have always believed that the employees are the pillars of strength for any organisation. So, we do everything we can to contribute to the happiness of our employees for the extraordinary contributions that they make towards the organisation’s growth.

Post-Covid-19, the world hasn’t been the same. With the people world over trying to stay connected and bond over digital platforms, we too have kept ourselves connected through virtual bonding sessions. As a matter of fact, we have played virtual games even before the Covid-19 pandemic. So, it hasn’t been difficult to organise online activities and interact with our colleagues. The kind of camaraderie that we share with each other is phenomenal. Which is why our pre-Covid-19 and post-Covid-19 work atmosphere has only changed on the map. Our Delhi office remains vacant. The Team has got distributed and has been working remotely since the outbreak of this pandemic. Nevertheless, our success rate hasn’t gone down a bit.

India map, austria map, germany map, and sri lanka mapOpenSense Labs Team, distributed within and outside India, working from home since the outbreak of Covid-19 

Thank you

If not for the hard work of each and every individual of the OpenSense Labs’s Team, we wouldn’t have reached all the milestones and come this far. The launch of Drupal 9 on the fourth year anniversary of OpenSense Labs means one thing: It’s the beginning of great things to follow. We will keep prioritising digital innovation, build remarkable websites and web apps with Drupal 9, and keep getting better at everything that we do.

May 28 2020
May 28

Vardoc, a Drupal distribution, is a knowledge base system, a wiki system, and a document management system designed to host a massive amount of content in a structured and easy-to-find format. With Vardoc, your content can be easily structured, and scheduled. It allows you to personalize your content easily and contribute your expertise in the knowledge base.

You can build a connected organization, product, or knowledge area to allow everyone involved to find the answers they seek and contribute their expertise in the knowledge base with the help of Vardoc. Think of it as a wiki site of your product, user manuals, or organizational processes with an easy structure, collaborative tools, and a friendly design.

Vardoc page open on the screenAn insight into Vardoc's elements 

Who can benefit from Vardoc? 

Let’s get to the part where we understand who this system is for. The agencies who want to document their software, product documentation sites and website based interactive user manuals can benefit from Vardoc. It also works a great deal for documentation of Open Source projects and inter-organisational processes. Vardoc is cost friendly and saves the usual development time.

What makes Vardoc wonderful?

Search

A by default powerful search which searches through the vast repository of the documents and provides the relevant results. The search mechanism is already set and tailored for the knowledge base system by prioritizing headings and titles more than the content's body.

Editorial features

The distribution supports editorial features which help keep the documents up to date. The editing mode is also tailored for quick review and vetting of information. Vardoc’s media library is full of interesting features that provide an appealing way to display media libraries. Vardoc also allows one image to have many previews with the help of image cropping and settings present within the CMS. And, it provides simple and easy ways to create and manage new and existing pages respectively.

Taxonomy

Being a knowledge base, the website at its core provides powerful features to structure the framework in which the documents are to be stored. This gives the user the power to tailor the structure and present the data in a hierarchy which best suits the organization.

User Management

To control and regulate the engagement of the website the admin will have full control of their roles and permission. You don’t need to worry about losing the important experience that is needed when a team member retires or leaves. Vardoc helps you to engage users from various departments to use the information that is needed in one space.

Customisable themes

It is essential to have proper theming on your website. You can brand your website by modifying the starter theme with some easy-to-make and quick CSS changes.

SEO

When potential users are searching the web, make sure your website is there to be found. On Vardoc you are immediately optimized for search engines when you update your sitemap.xml, create and set customized URL paths and custom page titles, and include specific keywords.

Accessibility compliance

The Vardoc based website already complies with the accessibility requirements (WCAG 2.0) for various user groups.

Social media Integration

Out-of-the-box social media integration which enables governments to link their social handles to the website.

Compatible

Vardoc provides a front-end design to work with all the latest versions of all the commonly used web browsers. Vardoc makes sure that you are able to reach your audience across all devices and web browsers. It is completely optimized for mobile and other devices to access whenever and wherever you want to.

Multilingual options

Vardoc provides access to several languages with localized and translated content, date formats, country flags, modern fonts etc.

Analytics

Vardoc’s real-time analytics feature allows users to measure and monitor the site activity in real-time through google analytics professional integration. 

Summing Up

It is much cost friendly and saves the industry-standard development time. It has everything under one roof. Organisations may find it easy to decide but depending on their current website’s dynamics, our resource involvement depends. 

Vardoc is currently available for download for Drupal 8 and has stable releases that are covered by security advisory policy. For more information on its Drupal 9 readiness, check here.

OpenSense Labs has always been keen towards finding the appropriate solution for clients and prospects in general. Feel free to reach us out at [email protected] for help.​
 

May 27 2020
May 27
Four people holding a rainbow like flag with clouds and sky in the background


Usually, the restrooms are marked as ‘men/male’ or ‘ladies/female/women at offices, restaurants and other public places. Have you ever imagined yourself being in a state of utter confusion while deciding which restroom to use? No? Well, this is an everyday issue in the life of trans genders and gender-nonconforming people. The sad truth is that they fear harassment and keep running into such unnecessary barriers which makes their life harder. No wonder a report on gender and sexuality by J. Walter Thompson Innovation Group had some staggering revelations to make.

Graph showing the views of Gen Z on trans and diversity


With the world gone digital, web designs are one of the barriers in the life of these people. While filling a form or signing up for something, the options for genders are most likely to be male and female. Rarely, we find websites with either no gender options (when not required) or other preferable options to choose from.

In order to provide the best user experience, you need to understand how the facet of their lives intersects with your website. For that, it becomes important to educate ourselves about the LGBTQ terminologies and issues so that you develop a sense of when and what is appropriate to say or ask. If you want to increase the lifetime value of your customers, you need to make your website more trans-inclusive which will enhance the user experience for everyone.

Getting things right

Using gender inclusive language and designs means writing or speaking in a way that does not discriminate against a particular sex or gender role. Moreover, it promotes gender equality and stands against gender bias.

Designers should not limit the gender options to male and female, and definitely not make it mandatory! In fact, gender should not be asked where it is not needed. And wherever required, the gender options should not be limited.

Key Considerations for gender-inclusive design

Key considerations for gender-inclusive design


Before asking for the gender of a person, make sure you have a good reason behind why you need that information. And when you are sure that it is needed, make sure you give more diverse options to choose from. ‘Prefer to self identify’ or ‘add your own’ are great additional options. 

When people are not identified as male or female, they do not like being referred to as ‘he’ or ‘she’. Hence, you can ask for pronouns, so they can be referred to correctly during their experience with your website or app.

Images representing different body sizes, genders on the websites and ads allow room for representation. You can hire models for photoshoots. If you cannot have your own photoshoot, you can use the trans-inclusive stock photo collection launched by Broadly which is free for wide use.

If you ask needless questions or limit the options for the users to select, you lose value in the eyes of the users. Designers should make sure that they put in options that do not perpetuate gender stereotypes. 

There should also not be any sort of restrictions to make changes. Once, someone creates a web address, username or complete profile, they should be allowed to make changes if required. The users should be made aware that their information will not be shared with anyone. And if there is some kind of information that needs to be shared, let the users know. This will make them feel safe and build trust.

It is important to have a name change process. It is likely that you have one for marriage related name changes already. Create a process that allows anyone to change their names without any legal documents.

Many websites and applications incorporate gender in their designs and products even though the product is gender neutral. Like, clothing, wine or toys etc. Brands should evaluate an alternative and see what else can be done. Several OTT platforms ask for gender while signing up which is not really needed.

 A purple background with Two gender options written on it: Male and Female
Zee 5, an Indian OTT app, while signing up had male and female as the only two options while asking for gender. Snapchat settings pageSnapchat profile setting menu does not ask for gender.

There are a lot of gender options and so it is not possible to use all of them. And even if you want to, you will have to change the control you use. For example, consider this screenshot.

A personal details page of a form with multiple gender optionsSource: keepitusable

Conclusion

We all want to be treated with dignity and respect regardless of our gender, religion, or where we come from. So, make sure that these diverse groups feel at home when they visit your website. Eliminating gender inequality is the future of design. 

So tell us, are you ready to ‘trans-form’ your website?

May 10 2020
May 10

“A pessimist sees the difficulty in every opportunity; An optimist sees the opportunity in every difficulty.” 
- Winston Churchill

On the left side: On a blue background, a man sitting with his laptop and working in the day time. On the right side: Black background, a man playing his DJ equipment at night time.


In a world where everyone is running after success, only a few take the advantage and grab the opportunity that life gives them, to achieve it. The ones who are ready for every kind of challenge, are the ones who achieve success. Capitalizing that opportunity is where the key lies! 

At OpenSense Labs, we have someone who believes that when opportunity knocks, grab it, and success will find its way. Deepak Sagar, known as Sagar, who is currently a Drupal developer with us, has a very interesting story. He went on from being a DJ in his initial college days to a developer later on. His story will definitely inspire you to have a keen eye for every opportunity that knocks your door.

"Partying is like work for me"

Tuba: So, the first thing that I'd like to know is, how was your life as a DJ and why did you choose DJ-ing?

Sagar: My Life as a DJ is not over, I'm still a DJ. There is a story behind why I chose to become a DJ. During my graduation, a DJ came to my college to play in the college fest. And I went up to him and asked him general questions about his DJ-ing equipment and his response triggered me to learn about the equipment. He said, ‘you won’t understand, let it be.’ It’s a short story, but I felt really bad at that moment and started learning DJ-ing from my cousin who is also a DJ. There were a lot of ups and downs as a DJ in the beginning. I got some work for 2 months and then there was a long gap until I got another job. Now, partying is like work for me.

A person working on his DJ equipment.


Tuba: You are still a DJ, how do you manage both your office life and DJ life?

Sagar: I leave for the office in the morning and after I'm done with the office, I go to the club I work for. I leave for office at around 9:30 AM in the morning and leave the office around 7:00 PM and directly go to the club and leave the club around 1:30 AM and sleep around 3:00 AM and then again the same routine from the next day.

Tuba: Now the big question, why the transition from a DJ to a developer? What triggered your interests towards Drupal?

Sagar: I had nothing to do during the day. I worked as a part-time DJ at a club at night. Vid (CEO at OpenSense Labs) and Devanshu used to visit that club very often. One day, I was just having a casual conversation with them where I told them that I had nothing to do during the day and was looking for something. They asked me to come to their office the next day. I went there, and since that day I tried my best to learn everything about Drupal. I started with them in September as an intern and joined full time as a Frontend Developer in January. I was completely new to Drupal and I had no idea about it or CSS or HTML before. It took time to understand but slowly things came inflow. 

Tuba: And what would you say about your post-Drupal experience?

Sagar: Drupal is a life-changing experience for me. A new opportunity that came in my life and I gained an interest in it. There is something about Drupal that I can't explain. It's the same as your first love, it's almost the same feeling. I guess this is the right example. [Laughter]

Tuba: So what are your plans for the future now? I mean, is it always going to be both the things together?

Sagar: Although both things are going in the flow right now, there is going to be a time where I'll have to choose between the two. So when it comes to choosing, it's going to be hard. But I guess I'm going to choose to be a DJ because it is my first love. [Laughter] Also, there is no scope of a DJ in India. People here think of a DJ as someone who would play music at weddings and nothing more. Not a lot of people value this profession here. So if someday, I get an opportunity from a different country where people value it, I’ll go for it. And about development, that can be done remotely also. But for DJing, I'll have to be present in that place to play. 

Tuba: Great! So let's talk about the two moments - one was when you decided that ok, let's learn Drupal and the second when you became a professional developer.

Sagar: As a DJ, it's all about working at night mostly. So I decided that let's do something in the day time, and this opportunity knocked my door and that's when I thought of giving it a try. I have not lived my life in a planned way ever. It has always been sudden decisions that have led me to where I am. I had no plans of being a DJ. It was a sudden decision and it was the same with development also. I had no plan and no idea about it. But it was a great opportunity and I did my best to learn and I'm happy being a developer now. My life-changing moment was when Vid and Devanshu and also Vinit offered me to come to the office. They welcomed me to the office very nicely. Vid used to discuss and solve all my problems for me. 

Tuba: Thank you so much for your time, Sagar. I was really excited to know the story behind your journey. And I believe, that after reading your story, many would be inspired to do more to reach their life goals.  

Think, Believe, Dare, and Dream! Say yes to all the opportunities that come your way and figure out the required plans later. You need to be visionary enough to recognize the opportunity that comes your way. This is the message that Sagar's story has conveyed and we hope that it proves to be the turning point in the lives of our readers! 

May 03 2020
May 03

Time and again, we are reminded of the adage: “There’s unity in diversity.” Contemplating this deeply would make one realise the vastness of this statement. Depending on the region of the world you operate in, diversity may connote issues of religion, race, nationality, ethnicity, class, gender, age, sexual orientation or physical ability. It may constitute all of these or none of them. To formulate a perfect diversity and inclusion (D&I) strategy that is really global in nature, one has to understand the culture, politics, economics and relevant legislation within the regions. Taking diversity and inclusion global is not about the distribution of certain programs but about creating a movement that holds D&I as a fundamental tenet.

Black and white photography of a white person and a black person holding each others' hands to represent diversity and inclusion


Defining, leveraging, and measuring diversity and inclusion is of great relevance. More than ever, businesses, governments, nonprofits and other institutions have been putting a lot of emphasis on the adoption of a global mindset in order to remain viable and relevant in the global marketplace of this day and age. Diversity and inclusion practitioners have been perpetually engaged in assisting people from all backgrounds to hear and be heard, understand and be understood, and work in unison with higher levels of productivity.

Open source communities have been at the forefront of this work. Building a diverse and inclusive community is increasingly becoming a top priority of open source enthusiasts. Drupal, one of the market leaders in the world of open source content management systems, is also backed by a strong and growing community that embraces the principles of D&I. From workplaces to open source communities, the D&I factor has been very impactful. To understand how the open source community, the world over (Drupal, in particular), is grabbing the plate full of diversity and inclusion strategies with both hands, we need to look deep into its immense necessity and importance.

Richness of diversity and inclusion

Diversity is a powerful term and calls for empowering people. It emboldens the idea of respecting and appreciating what makes a person different from another. Exploring the differences in a secure, positive and nurturing ecosystem is the basic principle of diversity.

When you talk about inclusion, you talk about a sense of belonging that a person, no matter what socioeconomic status or ethnicity or race or any other criteria he or she belongs to, feels in a community. People feel valued and respected which makes them put their best put forward and lend immaculate performances.

Illustration showing four icons resembling holding hands, fist pump, people sitting around a table, and a bulbSource: Deloitte

It’s the leadership group that can make a massive impact. Every individual leader, both intellectually and emotionally, needs to buy into the value of belonging. In other words, you can call it empathetic leadership. It’s a critical starting point. It makes a person, who is part of the leadership group, remember the times when they were excluded, shamed, or interrupted. Tuning into empathy can make a person understand the feeling of being excluded or making others feel excluded. When you have a strong leader, who embraces D&I principles, practices them, and enables others to choose this path, you can expect behavioural changes to kick in and culture reset to happen. According to Deloitte, following characteristics, interrelated and mutually reinforcing, defines a good leader.

Illustration showing a circle encircling a human with different icons resembling people on the circleSource: Deloitte

The importance of diversity and inclusion at the workplace has already been realised by top companies and necessary steps have been taken. If you look at the financial sector, for example, D&I remains a higher priority according to a global CEO survey. This, they believe, would eventually pave the way for newer talents.

Bar graph with orange coloured vertical bars and red backgroundSource: PwC

As one of the largest media networks, BBC has chalked out a clear-cut plan of making diverse thinking and inclusive action as its elemental parts.

Tabular column in violet colour with text and numbers written about diversity and inclusionSource: BBC

Another industry giant, Nestlé, has also made discernible commitment to embed diversity and inclusion across everything that it does with a primary focus on culture, innovation and society. Action plans for creating a gender balance, promoting cultural agility, empowering different generations at the workplace, supporting people with disabilities, tackling discrimination against LGBTQ+ community, and so forth, have been increasingly emphasised upon and put to work.

[embedded content]


Open source communities embracing D&I

Technology that has taken birth with the help of homogenous groups has shown to be negatively impacting the women in the past. Amazon had to scrap an AI recruiting tool as it showed bias against women. Back in 2014, menstruation was not included as a health metric in Apple’s health tracking app. And, a story on Vice stated how the prospect of fully artificial heart implants seemed exciting for men and not for women as they were not designed to fit women. Therefore, while building open source software, diverse participation can ensure equitable outcomes.

While building open source software, diverse participation can ensure equitable outcomes.

The importance of diversity and inclusion has been coming to realisation and large organisations have already been trying to make sweeping changes to make their workspaces more diverse and inclusive. 78% of organisations, according to a report on ZDNet, are running all part of their businesses with open source software. So, in addition to organisations, open source communities need to imbibe the principles of D&I.

A building in blue and red with statistical information on diversity and inclusion written around itSource: ZDNet

It’s true that anyone who wishes to license an open source project has to agree, among other things, to not get involved in any discriminatory action. However, it is easier said than done. For example, in a GitHub survey, which is the world’s leading repository of open source code, over thousands of open source users and developers across the globe were asked questions on a range of topics. Of that randomly selected cohort, 95% of the respondents were found to be male, 3% as female and 1% as non-binary. 

Let’s put it this way: Only the scanty vestiges of the day have come in through the open door. In spite of a faint shimmer of light in the hall, the doorway yawns impenetrably black. Open source has work to do. A lot needs to be done because the obstacles faced by the under-represented groups in the open source fraternity are piling up. The position, they are finding themselves in, can’t be addressed through a single lens or strategy.

In spite of a faint shimmer of light in the hall, the doorway yawns impenetrably black.

The positive sign is that the open source world has shown tremendous improvement and has been proving their commitment to D&I. To start with, there’s a collective of people called Open Source Diversity that is working on driving more D&I initiatives in free and open source software communities. It has laid down the basics that can help make an open source project more friendly and inclusive. For instance, the Open Source Diversity prescribes the usage of the Contributor Covenant. This is a code of conduct for open source projects that is created to overtly welcome everyone to contribute to open source software.

Mozilla, in 2018, to promote D&I within their ranks and their work, prepared an action plan for making the code review process more egalitarian and subvert unconscious gender bias.

The Linux Foundation takes a lot of pride in being an open, friendly, and accessible community for new participants and doesn’t leave any stone unturned to show the world the proof of that.

Illustration with blue background and statistical information on diversity and inclusion inside itSource: The Linux Foundation

Open source meritocracy, where there is recognition and decision-making on the basis of work or talent that a person can contribute to the project, is something that Tor firmly believes in and likes to put to practice. This is why it started the Global South Initiative to improve diversity, inclusion and equity in the work that it was doing and get more people from the ‘global south’ to be involved in the Tor community.

GitHub, to cultivate a culture of inclusion, provided training to its managers on the best practices of promoting inclusivity and established a recurring dialogue between its Leadership Team and its Inclusion Advisory Council.

The Apache Software Foundation has ambitious plans too. It wants to become the most equitable open source foundation in the world.

In a bid to promote nonprofits that are dedicated to education, inclusiveness and skill-building for under-represented groups, IBM even awarded $50,000 to Girls Who Code for the latter’s terrific work on increasing the number of women working in computer science.

Drupal’s contribution to promoting diversity and inclusion

It’s more strategic than arbitrary when it comes to the efforts of the Drupal Community to promote D&I. There has been a year-on-year statistics aggregation happening to check how Drupal’s development is being sponsored.

In an in-depth analysis report of 2018-2019 edition, characteristics like gender diversity and geographic diversity were analysed. The data showed discernible gender imbalance in Drupal and underscored the need to continue fostering D&I in our community.

bar graph with blue and green vertical bars showing diversity and inclusion statisticsSource: Dries Buytaert's blog

When measuring geographic diversity, it was seen that Europe and North America continued to contribute more and more to Drupal but the contributions from Asia were declining year over year.

https://dri.es/Source: Dries Buytaert's blog

Before exploring Drupal and its various efforts of creating a sense of belonging among its community members, let’s go across the pond and check out WordPress Community’s efforts.

With a clear hegemony over the market share, WordPress, as an open source CMS, is powering the most number websites around the world. (Drupal wins on the security front.) It’s the big players in the open source CMS market, like WordPress and Drupal, who need to show the way forward. WordPress has been working on making its community more diverse by driving some splendid initiatives. They have developed a workshop, for example, that trains women and other people from traditionally underrepresented groups in technology. They help them out to present sessions at conferences. The sole aim is to see more underrepresented groups as speakers and bring about a real change in the speaker roster for their annual conferences. WordPress has also been very supportive of its LGBTQ+ community and has been celebrating Pride Month every year. In short, WordPress is doing great work.

There’s a reason why we talked about WordPress (a competitor to Drupal). When it comes to the question of diversity and inclusion, open source communities work together to increase the number of participants and contributions from marginalised and underrepresented groups. Jill Binder, who has been at the forefront of major speaker diversity improvement programs within the WordPress community, helped the Drupal Diversity and Inclusion Contribution Team with its efforts.

Blue coloured heart shaped icon that represents the logo of diversity and inclusion team of Drupal


DDI is an independent collective within the Drupal Community that champions a number of initiatives to foster a welcoming and inclusive culture everywhere Drupal exists - from events to online meetups to workplaces. Jill helped DDI organise a speaker diversity workshop in September 2019 to help people from underrepresented groups to prepare for submitting talks to global events.

To make sure prospective and existing community members are treated with respect, Drupal has instituted a community-wide code of conduct. Drupal’s Community Working Group’s documentation includes clear guidelines for:

  • Handling the conflict between you and another contributor
  • Escalating the conflicts to this Community Working Group if an issue feels unresolvable
  • Reporting the cases of harassment no matter if you are the victim or an observer of it

To make the Drupal project accessible to a diverse user base, it has a Core Accessibility Gate which has to be passed before any patch can be shipped.

With a majority of demographic surveys requiring users to conform to restrictive identity fields and alienating underrepresented groups, the Open Demographics Initiative wanted to develop forms that are more inclusive. In addition, it wanted to give people more authority over the data they think is right to be revealed. Therefore, the Drupal Association planned to implement Open Demographics Initiative’s recommendations on Drupal.org. It collaborated with the Open Demographics team for adding the recommendations to the user registration process on Drupal.org.

Dries Buytaert, the founder and project lead of Drupal, firmly believes that “everyone deserves the opportunity to contribute”. He encourages Drupalists to inspire and enable a new, diverse group of people to contribute to Drupal through Drupal Core Mentoring. He also advises leveraging the Drupal Apprentice Initiative by TalentPath that can help businesses in building a diverse talent pipeline through apprenticeships.

Major events like DrupalCons and DrupalCamps gather a range of citizens of the Drupal ecosystem to learn, share and collaborate together. The perspectives, vigour and diversity of experiences these participants share make these conferences invaluable. These Drupal events ensure that everyone, no matter who they are or where they are from, is invited to attend.

Tweet showing coloureful droplet like icon on top-left and text below about diversity and inclusion in Drupal event


These Drupal events have made it a priority to include D&I as an important element to be tracked, measured and improved. For instance, DrupalCon Seattle 2019 saw an increase in the number of sessions submitted from underrepresented groups.

White background and statistics in numbers written inside it about diversity and inclusion in Drupal communityWhite background and red strips on top with statistics on diversity and inclusion in Drupal community written inside itSource: DrupalCon Seattle 2019

Final note

Open source community carries a great potential to transform society for the better. The more diverse and inclusive an open source community is, the stronger, vibrant and ambitious it is in its approaches. Drupal is making giant strides. A lot of positive signs have emerged in the recent past to make the Drupal project better.

Drupalists have to constantly work on making the Drupal ecosystem a place where people from all walks of life can participate and contribute their knowledge and skills.

OpenSense Labs embraces the principles of diversity and inclusion and ensures that it sets an example of an organisational culture eloquent of wonderful diversity at the workplace. Ping us at [email protected] to explore the wonders of promoting and embracing D&I.

May 03 2020
May 03

This is part two of a two-part series on different ways and benefits of contributing to an open-source project. In the first part, we looked at the perks of contributing to an open-source project. In this article, we will explore Drupal project, one of the largest open-source projects with a thriving community, and the ways to get involved with it.

Don’t we all want to leave our mark on this world and to know that our life matters? I’m sure all of us want to leave a legacy that means something to people. By legacy, I mean putting a stamp on the future, and making a contribution to coming generations. 
In one of the scenes of Dead poets society, John Keating, who is an English teacher, discusses with his students about the meaning of life. During his lesson, he quoted from Walt Whitman’s poem, Oh Me Oh Life, as follows:

“Oh life! of the questions of these recurring, Of the endless trains of the faithless, of cities fill’d with the foolish. What good amid these, O me, O life? Answer: That you are here — that life exists and identity, That the powerful play goes on, and you may contribute a verse.”

Illustration, symbolising Drupal contribution. consisting of a blue coloured Drupal logo, shaped like a droplet, being carried on a palm


The poem explains that life is like a play, in which anyone who has ever lived gets to contribute one verse. Later, Keating questions the students: “What will your verse be?” 

Your legacy will be that you contribute to the verse! 

Similarly, when you contribute to an open source project, you not only contribute to its growth but also to yours. You leave your mark in the project that you contribute to, inspiring hundreds of other contributors. Drupal allows its users to freely modify and integrate the work into their projects. It gives you ways to freely plan and exchange ideas with like-minded people in their community. It also offers immense opportunities to contribute and leave your mark. Drupal.org is home to thousands of contributors and it's where users find the projects and succor they need to make Drupal better everyday.

Why Drupal?

Now that we know how much value a contribution holds, let’s talk about why we should specifically choose Drupal over any other CMS.

Have you wondered about the one similarity between the websites of The Economist, NY Government, Arizona University and Mint? 

Well, these websites are a product of Drupal open source content management system (CMS) framework. 

PHP is an open source script code, which is freed from any licensing costs and a choice of developers from a few years. Drupal is written in PHP code, and, therefore, it saves money when it involves developing a web site using it.

A blue coloured droplet shaped icon with Drupal features being written inside it


Drupal is very flexible due to its modularity. Which means, you can easily extend it. It is capable of managing and creating a wide variety of content and this has proved to be one of its greatest selling points. Hence, Drupal enables a flexible design platform to create content rich websites for different markets like commerce or media. 

Another major reason to choose Drupal is its scalability. It’s used by NASA and Oxford University because it’s highly scalable and great at accommodating content growth. Even if you plan to deliver the best digital experience to your customers, it will all go in vain if your site is hit with a lot of traffic and goes down. No matter how much traffic you receive, Drupal can handle it.

In addition to being one of the best tools for creating websites, the greatest strength of Drupal is that it is one of the largest open source communities. The open source community proffers voluminous public documentation, chat and mailing lists, well-developed discussion board parallel to an air of affable online culture.

Drupal ensures that its users get rapid responses from a dedicated security team along with a large professional service provider ecosystem and Drupal's community, which is one of the largest developer communities in the world. The goals of the Drupal security team include resolving reported security issues, helping the infrastructure team to keep the Drupal.org infrastructure secure and providing documentation on securing your site. 

According to the Imperva’s report on The State Of Web Application Vulnerabilities in 2018, Drupal reported less number of security vulnerabilities in comparison to Wordpress. While Wordpress reported 542 security attacks in 2018, Drupal reported 107. 

A bar graph with yellow, blue, violet and red coloured vertical graphsSource: Imperva

Drupal also makes content authoring easy. The tools that Drupal provides makes it easier for the content creators to do their jobs. Drupal allows the creators to edit and write the content in place. Even if you are away from your laptops/PC’s, mobile editing comes to the rescue! You can very easily edit and approve content from any mobile device. Content revision is another tool that comes in handy to keep a track of all the changes made in the content and by whom.  

Drupal has made building multilingual websites faster and easier. Full translation of every part of the site is provided by four core modules in Drupal. Every part of the interface can be customised according to your language and needs. 

Drupal 8 comes with 94 different languages and they can be installed without any additional components. Also, the diversity in languages makes it hassle-free for the site administrators!

Doesn’t matter what device you’re using, Drupal helps in building responsive websites and provide a seamless content experience anytime, anywhere. 

In order to make Drupal content ready for delivery to site apps and free from presentation, Drupal lets you decouple the back and front-end where needed.

Frank Nagle, in his research at Harvard on the hidden benefits of giving back to open source, found that those who contributed to open source projects gain more productivity and knowledge of the software they use everyday. So, the more you contribute to Drupal, the more you learn about it.

Your contribution is visible to anyone around the world and can learn your name and admire your skills and also might be the one to help you land your dream job! 

Statistical outlook on the development of Drupal

Drupal, being an open-source project, does not have employees to deliver improvements and support. It depends on its varied community of individuals who work diligently to push the project forward by working on not just web development and user support but also many other contributions and interests that comprise, marketing, helping to review issues, organizing user groups and camps, maintaining documentation and speaking at events.

To start doing your bit, you can start by making an account on Drupal.org. Follow the steps and you will be ready to start contributing in no time! Now, let’s look at some of the key stats related to the contributions made to the Drupal project.

The project pipeline

According to Drupal Business Survey 2019,  the Drupal project pipeline has shown significant growth or stayed the same in 2019 as compared to last 2018. 

The win rates of Drupal projects have also remained the same. The future of Drupal looks moored in the coming years, based on the response of 2019. 

The survey also stated that out of the total 118 businesses that, 111 contribute to Drupal and 7 don’t. 

Pie chart with blue coloured regions to show who's contributing to Drupal and the overall percentage of Drupal contributionSource: Drupal.org

In total, the Drupal community worked on 3,474 different Drupal.org projects in 2019 compared to 3,229 projects within the period of 2017-2018 which is an 8% year over year shoot up!

Credits

Every contribution made to Drupal is valued, whether they're code contributions, or non-product and community-oriented contributions such as organizing events, giving talks etc.

The credit system has proven to be more accurate in conceding types of Open Source contribution and is both pragmatic and important.

The initial ideas for giving credits were proposed in 2014 by Dries Buytaert, the project lead and founder of Drupal. He wanted to start a page on Drupal.org that would show which organization contributed to Drupal and the number of times the contributions were being made. Credit is a very powerful motivator for individuals and organizations. 

Later, in the spring of 2015, Drupal added the credit feature for people to credit their work. The credit feature has played a very important role in increasing the scalability and development of Drupal. 

According to Dries Buytaert's report on Drupal.org’s contribution data  for 2018-19, Drupal.org's credit system received contributions from 8,513 different individuals and 1,137 different organizations which shows a significant growth in comparison to the report of 2017-18.

Bar graph with orange and yellow bars to representing who's contributing to Drupal


The majority of work is done by a relatively small number of contributors. These contributors put a large amount of time and effort into developing Drupal and its projects. One of these contributors includes Gaurav Kapoor who is a Drupal Architect at OpenSense Labs.

Volunteer contributions proved to be very important to Drupal, even though there are almost four times as many purely sponsored credits as compared to Purely Volunteer credits. 

The community captured more number of non-product contributions because of the large jump in volunteer credits. Even though the ‘sponsored credits’ grew more in number in comparison to ‘volunteer credits’, the relative number of ‘volunteer credits’ seemed to make a jump!

Bar graphs with blue and green horizontal bars to show Drupal contribution dataSource: Dries Buytaert's blog

Diversity and inclusion

Supporting diversity and inclusion within Drupal is supremely important for the health and success of the project. Drupal welcomes all kinds of contributors ranging from programmers to designers and writers to mentors.

The Drupal diversity and inclusion team tries to recruit teams from places where the people from diverse backgrounds collaborate. Drupal contributors have become more diverse but need more efforts to be put in for widespread reach of D&I principles among its members. And when a team has diverse members, it makes better products for more people! 

According to the data contributions that were recorded in Drupal.org’s contribution data for 2018-2019, only 8% were made by contributors who do not identify as males which is a 1% increase in comparison to last year. 

Bar graph with yellow and orange bars to show who's contributing to Drupal


One of the reasons that Drupal suffers from a lack of diversity is that not everyone has an equal amount of free time to make contributions. Research shows that women still do more unpaid work in comparison to men, for example, household chores, child care etc. This makes it difficult for women to contribute on an unpaid basis. 

When geographic diversity was measured, it was observed that individual contributors were from six continents and 114 countries:

Bar graph with yellow and orange bars to show who's contributing to Drupal


Contributions from Europe and North America have increased. Asia, South America and Africa together account for 6.3 billion out of 7.5 billion people in the world and hence, pose great opportunities for Drupal. 

Different ways to contribute to Drupal

Coding Is The New Literacy

If you are the one who likes to fix issues, developing is for you! So many coders believe that coding should be open. Developers’ contributions can be in the form of both contributed modules/themes and patches to core. When you find a bug in the project, you'd want to have a look on the source and patch it yourself. 

When you contribute to an open source project like Drupal as a developer, you ensure that Drupal can do what the contributor needs to do in his next project.

The Drupal core issue queue contains a substantial amount of unresolved issues, and demands the assistance of more volunteers to address these issues deftly. 

Mentoring: Effective Way To Contribute

Every contribution holds value and mentoring is the most effective way to contribute. When you mentor as a contributor, you not only help the individual but also the entire Drupal community. 

Drupal core mentors inspire, enable, and encourage new core contributors by working on the core tools, process, and community for a hassle-free experience for the new contributors. 

And not just that, the gratitude you earn by mentoring someone is beyond everything! 

Interacting With The Community

When you join Drupal as a new contributor, you would like to interact with someone who shares the same interest as yours, someone who has experience in contribution. Drupal has a community of thousands of passionate individuals around the world. It also offers some tools that are used to keep in touch with them. There are support forums on Drupal.org where you can put your queries and get your doubts cleared by other members of the forum. Find like-minded individuals who are working on the same tasks as yours on Drupal Groups. It is an online space where hundreds of groups come together to plan projects and work on them and also to organise local meetups or discuss anything for that matter. The Drupal community is also very active on IRC and Slack.

Running Drupal Tests

There is so much more in open source than just coding. Testing is one of the ways to contribute and there are so many things to test for and so many ways to help in Drupal (like reviewing patches).. For helping Drupal with testing, you need to have a keen eye for detail or just a knack for breaking things. Good testing directly contributes to the stability of the platform and is a preeminent way for individuals of all backgrounds to make a valuable contribution to the project.

Translating Drupal to Your Language

People get involved in Drupal from around the world. Drupal supports many languages, and there is always a need for contributions in translation. If you are the one who knows multiple languages, you can contribute by helping to maintain Drupal core or contribute to module translations. All the translations are managed on the Drupal.org translation server. You can start contributing by logging in with your Drupal account and join the relevant language team. 

Designing and Usability

If you are into design and graphics, you can help with a lot of projects who need work in their logo designs, icons and other graphics that are visually appealing. Being a designer, you first need to find yourself a project whose goals you understand and relate to. A designer needs to focus and make sure that they understand users' needs. There is Drupal’s usability group where you can create, discuss and plan great Drupal UX designs

Making A Donation

There are so many people who want to contribute but don't have the time. So, if you want to say "thank you" to the folks who have put hard work into making Drupal what it is and ensure that Drupal's infrastructure stays healthy and strong, you can consider a monetary donation! Donations are also a part of the contributions that take Drupal forward in many ways. During the uncertain times, like the current Covid-19 pandemic, Dries Buytaert has pledged $100,000 in individual contributions to the Drupal Association. After a week of taking this pledge, 29 organizations of the Drupal community pledged another $100,000. Now, for every $1 you donate, Drupal gets $3. To donate to #DrupalCares visit the donation page of Drupal association.

Marketing Drupal

Marketers love the various marketing tools as they help them get better analytics and also effectively streamline their work benefits. Drupal provides easy integration with marketing automation tools which is a plus for marketers! Marketers can freely produce convincing and more powerful campaigns in their native languages. Drupal marketing group for the branding and marketing committee is open for all the marketers out there!

Organizing An Event

You can do your bit for Drupal by organizing events in your area. There are many types of Drupal events, starting from the colossal and comprehensive DrupalCons that are organized by the Drupal Association, to smaller local DrupalCamps and local Drupal Group meetings. DrupalCon unifies experts from around the world who create progressive digital experiences that include keynotes & sessions for leaders, developers, and end-users, summits & training industry-focused to elevate your skills. Drupical displays all the Drupal events and you can also check out local Drupal groups and stay updated on what events are taking place.

Conclusion

There are many benefits to contribution: from individuals gaining knowledge and expertise, to organisations building stronger more productive teams, to the broader open source community as a full. Drupal is continuously growing in government, higher education and the enterprise state.

Even the smallest of contributions count on Drupal. The feeling when you see your name appear on a project is beyond words. 
So, are you ready to leave your legacy? Ping us at [email protected] to be a part of the growing number of Drupal contributors.

Apr 24 2020
Apr 24

This is part one of a two-part series on different ways and benefits of contributing to an open-source project. In the first part, we will look at the perks of contributing to an open-source project. In the second part of this article, we will explore the Drupal project, one of the largest open-source projects with a thriving community, and the ways to get involved with it.

We are all looking for online learning platforms to enhance our skills. We are also sometimes confused if it is ok to be investing online. Well, that’s where open source projects come in. 

Open source enables us to innovate and grow with the digital pace. 

Multiple words like Open source, Drupal, Contribution, contributor etc are stacked togethe


Companies don't just seem to be using it but also contributing to open source projects to steer growth and revenue. Contributing to an open source can be a rewarding way to build your experience and skills.

According to Red Hat's the State of Enterprise Open Source survey, which was published in April 2019, 99 percent of IT leaders believe that open source software is important to their enterprise IT strategy.

As outlined in his influential essay on the subject, Why Open Source (which itself draws from David Wheeler's seminal paper, Why Open Source Software), Ben Balter states: "Open source isn’t a fad, or a bunch of hippies get in California passing around tie-dye laptops like they'd illicit substances. Open source is how modern organisations and increasingly more traditional organisations build software."

Contributing to an open-source project

To see what it means to contribute to an open-source project, let’s take a look at the Firefox project. There are many fun and impactful ways to get involved with Firefox.

You can make both technical and non-technical contributions to Firefox. Technical contribution includes coding, documentation and designing whereas the non-technical contributions include helping in the user forums, replying to queries and also reviewing contributions. 

The Firefox browser has thousands and thousands of lines of source code and information on how to use those codes, for example into a web browser. Anyone who wants to contribute to Firefox can make changes to the source code and then build a customised version of it. They can then send the customised version back to the main project maintainers. 

There is so much more in an open-source project than coding, which includes the user interface, user experience (UX), usability.

The open source community needs you

The open-source community needs contributions from diverse set of people.

Developers

There are a lot of developers who believe that coding should be open. The code will be exposed to everyone naturally and makes them focus on making it readable. 

Lots of open source contributors start by being users of software they contribute to. After you find a bug in an open source software you use, you'll want to have a look at the source to work out if you'll patch it yourself. If that’s the case, then contributing the patch back is the best way to make sure that your friends (and yourself after you update to the subsequent release) are going to be ready to enjoy it.

Designing

A Designer’s perspective to look at a project is completely different from others.

They make sure that everybody performing on the project understands users’ needs and stays focused on them because the community makes decisions. Open source projects need designers as much as any other contributor. 

If your niche lies under designing, you can always contribute to user experience and help a lot of projects who need help. 
It is very important for a designer to find a project whose goals they really support and understand. 

Writing

Writers are very valuable to the open-source community. Because, the members have to contribute and communicate remotely and more often than not, in a non-native language. 

Documentation, especially on open source projects, is never up-to-date.

Although, it is one of the easy ways to contribute to any open source project. 

It is a part of the open-source projects which is often overlooked. The topics should be very easy for the writers. Text assets and translations also present an easy entry.

For instance, Drupal provides all sorts of writing and editing of documentation including community documentation, help pages within the core Drupal software, blog posts and more.

Contributing to Drupal as a writer will help you gain experience in technical writing and editing. 

It’s ok to not code

Whatever your reason is to avoid coding, there are always plenty of other contributions you can make! 

There’s a lot of administrative work too. So, coding is optional. For the coders, who don’t want to code, they can help users on forums, reply to issues, translate tutorials, review contributions and much more which is as important in the open source community as coding. You can always write a blog post or publish your designs which is as important as any other contribution if you find the right project. You can also get involved in marketing, which is often lacking in open source projects. If you are able to contribute to it, you benefit the complete project and the community behind it.  

Then there is the legal part which majorly concerns the large projects. There are many lawyers who have volunteered their time for open source projects, primarily. 

You do not have to be worried or scared if you’re not capable of doing the above-mentioned things, the least you can do is report errors that you find in a project. And remember, every contribution is valuable. 

Now that we know that contributing to an open source can be a great way to augment your skills, let’s talk about the benefits of being an open source contributor.

Benefits 

A puzzle-like illustration with words like open source, gratitude, learn, opportunity and reputation written on them


Contributing is fun

It will be a project that you have chosen, so you can enjoy it a bit more. When you contribute to an open source project, you get to know new people who are working on the same project. You can learn from them, and exchange ideas with them. You might also get to use stuff that you probably can’t in your day job.

You increase your proficiency

It might be challenging at first, but you will slowly be able to identify and contribute to creating working solutions.

Contributing to an open source project can be a great exercise for someone looking for a career change. In an open source project, it doesn’t matter if you are a senior developer or a doctor or even a gardener. All that matters is the quality of your contribution. You will gain some valuable experience, once you prove yourself in an open source project.  And once you prove yourself in an Open Source project, you will have gained some valuable experience. You will be an established member of a community with a track record that anyone can check.

Contributing builds reputation

Behind every great open source software, there is a community that aims to make it even more popular. The advantage here is that you can improve your skills and get inspiration and support from like-minded people. If you are a freelancer, you can also increase your chance of being hired by professionals. Contributing to an open source project also increases the visibility of your other channels. 

The visitors on the project that you contribute to can learn about your youtube channel or find your LinkedIn profile and offer you a job.

By contributing to an open source project, you are actually creating a real-life resume that anyone can verify. You don’t have to contact your former employer or client. 

You might also get a paid offer if you’re really good at what you do.

You find new employees

If you do something creative, publish it as an open-source project and there might also be a chance that someone would want to work for you.

Helping them is helping yourself

Another advantage is that you gain gratitude when you contribute to a project. 

The thank-you notes and the reviews you receive are always worth your time and efforts. And it feels great when you see your name appearing in a project. And let’s not forget, the experience is the best CV.

Conclusion

Contributing to open source projects is free, it can be distributed and it can be modified. 

You can always get out of your comfort zone and experiment with your skills. If you are a doctor and want to code, do it. If you’re a coder and you want to design, the open source world is your canvas!

And if you value the idea of contributing to open source, you are worthy of earning recognition, and being a respected member of the community.

Ping us at [email protected] to know how you can be a part of a growing open source community.

Feb 27 2020
Feb 27

The Pulse of the profession 2020 report revealed that nearly 11.4% of investment gets wasted because of poor project performance. Businesses, who often undervalue project management as a strategic competency for driving change, see their projects failing miserably. Managing a project can turn out to be a slippery slope when an organisation doesn’t have a solid grasp of all the moving pieces.

Glove with different coloured stones fixed on it to represent the infinity stones of Drupal development


When it comes to managing a website development project, with so much at stake and so much in flux, adhering to best practices becomes immensely important. Drupal development is no different. From site-building to theming to backend development, doing everything right during the Drupal development process can be a formidable task. Every stage of the Drupal website development process should be taken care of in order to get the desired result. We call these stages as the Infinity Stones of Drupal development.

In Avengers film series, Infinity Stones are said to be the group of gems that can grant an unprecedented amount of power to their owner. Marvel Cinematic Universe timeline is packed with instances where these Infinity Stones are mentioned. The Drupal world has its own set of gems that, when put together in the right manner, can lead to better project delivery. These are the essentials that have to fall in place during the development period to ensure the best yield.

Requirement gathering and analysis (Reality Stone)

A red stone on left, tasksheet icon on right, reality stone written at centre


The Reality Stone helps its owner in manipulating matter. In Drupal development, the requirement gathering and analysis phase acts as the Reality Stone.

Here, you receive inputs from all the stakeholders such as customers, salespeople, industry experts and developers. All the relevant information is gathered from the customer to build a solution that meets their expectations.

For instance, by setting up a meeting, a lot of things can come to an agreement between client and vendor. A plenitude of factors, that will majorly affect different parties involved with the project, can be figured out. Questions like what’s the budget, what will be the deadline, who will be the end-user, what’s the purpose of the building this website and other such questions could be raised and discussed. This stage helps resolve any ambiguities that might become a problem later on.

Architecture and design (Mind Stone)

a yellow stone on left, pencil icon on right, mind stone written at centre


Using Mind Stone, an artificially intelligent peace-keeping program called Ultron was built. This powerful stone allowed its owner to control the minds of others. The architecture and design stage of Drupal development is equivalent to Mind Stone. Once you have gathered the requirement from all the stakeholders, the next stage involves the process of understanding what was exactly in the mind of stakeholders and deriving a functional architecture out of it. All the stakeholders can then analyse the design specification and offer their feedback and suggestions. 

In this stage, several important questions can be pondered over like which of the core and contributed modules in Drupal can be utilised, should you go for Drupal 7 or Drupal 8 that will eventually decide the complexity of upgrade path to Drupal 9, should you go for headless approach etc. Any mistake that happens during the process of gathering stakeholders’ inputs and preparing the design and architecture plan would lead to cost overruns and project failure.

Development and implementation (Power Stone)

purple stone on left, desktop icon on right and power stone written at centre


Someone, who has acquired the Power Stone, would receive a colossal amount of energy that can even be used to destroy an entire planet. Development and implementation stage is the Power Stone of Drupal website building process. Here, developers put in all their energies into the actual development process i.e. to turn visualisation into reality.

Implementation phase begins on the basis of the design document. The design is translated into source code. A surfeit of code reviews takes place. The coding process follows the best practices of Drupal development like creating a clean content architecture by including all the fields and content types in the content structures; or choosing limited content types and fields to make things easier for content creators; or creating separate issues and patches to update the existing code and so on.

Testing (Space Stone)

blue stone on left, gear icon on right, and space stone written at centre


In Marvel films, there is a stone that is hidden inside a blue cube called the Tesseract. The Space Stone, as it is called, gives its owner the power over space. You can create a portal from one part of the universe to another. The testing phase is your Space Stone of Drupal development.

Testing phases begins once the coding gets completed. To find out every possible defect, testers have to open all the portals and do their magic. They have to keep a note of all the errors that they find during their intensive search in all of the portals. From preparing test cases to displaying the scope for more improvements in the user interface, user experience and speed, testers make a list of all the defects. These are then assigned to the developers to get them fixed. Regression testing is performed until the end product meets the client’s expectation.

Deployment (Soul Stone)

orange stone on left, rocket icon on right, and soul stone written at centre


Capturing and controlling others’ souls would call for a Soul Stone. The deployment phase is the Soul Stone of Drupal website creation process. This is the phase where you have got the final output after countless hours of hard work and are ready to see the result. You have got complete control over the resulting website.

The Drupal website, that has been built after all the requirement gathering and coding processes, is deployed in the production environment (or first UAT (User Acceptance Testing) is done based on the client’s needs).

Maintenance and improvement (Time Stone)

green stone on left, nut and bolt icon on right, time stone written at centre


Doctor Strange uses the Time Stone to trap a villain in a time loop and stop him from destroying the Earth. Whether you need to rewind or fast-forward the time, the Time Stone has got you covered.

The maintenance phase kicks in once the deployment is taken care of. This is the Time Stone of Drupal project management. In case any issue springs up during UAT tests or in the production environment, the developers can quickly rewind and check back the processes involved to find out where the error lies in. The improvement becomes easier as you go from incipient stage to the deployment stage or vice versa, find out the exact areas that are in need of enhancement or are under the threat of production downtime and act on it accordingly.

Project management (The Infinity Gauntlet)

The fancy golden glove, that Thanos wears with all the infinity stones fixed on it, is The Infinity Gauntlet. In Avengers, the Gauntlet, holding all the Infinity Stones, is the most sought-after thing. With all the stones united in the Gauntlet, its owner wields a massive amount of power. Project management is key to Drupal development and plays the role of Gauntlet. Like Thanos, with the snap of a finger, the project managers will be able to deliver the Drupal projects with ease if they ensure all the stages of Drupal development are followed accurately and effectively. Project managers are pivotal as they enable the application of knowledge, skills, tools and techniques to project activities so that the end result meets project requirements and ensures client satisfaction.

End thoughts

If Thanos, with his Gauntlet and the Infinity Stones on it, can become the most powerful being and go about destroying the universe, the Drupal project can benefit from its Infinity Stones too. The Infinity Stones of Drupal Development, starting from the requirement gathering and the designing to the deployment and the maintenance, if followed efficaciously, can make the process of creating a Drupal web property smoother and quicker.

With the presence of timely and efficient project management, everything falls in place. OpenSense Labs takes utmost care in adhering to best practices whilst developing a Drupal site. Ping us at [email protected] to know how we can bring all the Infinity Stones in its places and build an innovative Drupal website for your organisation.

Jan 31 2020
Jan 31

Access and security are collateral concerns born out of the world of the internet. When a website is under development, a major chunk of time and effort goes into making it secure from all sorts of malicious activities. Taking the threats and data breaching affairs into account, every platform has a protocol to follow. For the security and usability purpose, every website has certain permissions granted to view, edit, or delete the content on the site. For example, open source CMS like Drupal provisions various modules that let you configure the user access. 

a man sitting in front of multiple screens

What is user access?

Every website has a tech team working on the development of the site while they assign certain roles in the process to each individual. Similarly, user access is the possession of a particular role on the website that allows the user with specific permissions. The user access is determined by the site owners who assign the roles to the users with a login Id and password

In this blog, we will be talking about the user access permissions in Drupal 8 and understand how it works with the available modules. 

Permissions management in Drupal 8

With a lot of different functions and features, the permissions in Drupal 8 work in a little different way. From viewing published content to changing the state of functions and features, permission control access in Drupal is assigned as a role. There are 3 default roles as follows:

  • Anonymous: Visitors who are not logged into your site.
  • Authenticated: User with an account who’s login is authenticated with a minimum set of permissions that are given to all logged-in users. 
  • Administrator: Users who can do everything on the site and change the functionalities.

Limitations of permissions management in Drupal 8

These default roles are quite limited in themselves. They do not define the access in detail and require modules to further strengthen the access control. Following are the limitations:

  • The roles you create yourself or the authenticated user role do not receive the permissions given to anonymous users.
  • There’s no granular control at various level.
  • In case of a lot of custom modules where the contributed modules introduce important functionality, the piece of code requires more hold of access levels which isn’t available.

Thus, we need user access modules that will grant broader access control and permissions.  

Top Drupal 8 user access modules

Here is a list of the most popular user access modules for Drupal 8 depending on the functionality you want for your website:

#1 Node View Permissions

Apart from allowing the combining of other user access modules, the Node View Permission module adds two types of permissions to all content type, namely, "View own content" and "View any content".

#2 Menu Admin per Menu

As the name suggests, the Menu Admin per Menu module permits and restricts access to only Administer menus and menu items to add, modify or delete menu items. It gives access to certain sections of the menu without giving access to the full admin panel.

#3 Block Content Permissions

You can gain the control access to administer block content types (custom block types), administer block content (custom block library) that lets you create, update, or delete specific types of block content with this module. However, the Block Content Permissions module doesn’t remove the block permissions from "Custom block library - Blocks" views page

#4 Protected Pages

Every website has multiple pages with different types of content and not every information can be shared with every user with a role. Thus, the Protected pages module allows the admin to protect certain web pages with a protection password. Further, you can also ser session expiry time, bypass permission and global password settings to strengthen the security feature. 

#5 Permissions by Term

Based on the taxonomy terms, you can restrict the access to specific content on the website. The permissions are applied to the user roles and work well for nodes, views, menus, etc. The Permissions by Term module also aids in linking the taxonomy terms with specific accounts. 

#6 Vocabulary Permissions Per Role

Within the taxonomy access, you can set up permits only for content editors to work with a particular taxonomy vocabulary without hampering the “administer taxonomy” permissions. The Vocabulary Permissions Per Role module gives you control over the number of users with permissions and access. 

#7 Override Node Options

You can now set permissions for each field on the node form within the Authoring information and Publishing options fieldsets. The Override Node Options module can also let your make certain fieldsets collapsible.

#8 Block Region Permissions

Control access to block management within each region of your website’s theme with the Block Region Permissions module. The module grants access to see the following:

  • Region's header, message, and blocks on block layout page
  • Region in region selector fields on block layout page
  • Region in region selector field on configure and place block pages
  • Can update or delete blocks placed in region

#9 Workflow

A contributed module, Workflow allows you to create workflow states for various node types. Further, it allows transitions between states like updating from “Draft” to “Published” and similar per role. It enables you to set up the Workflow to alter states from form, page, comment, a special block, and a special workflow tab.

#10 Content Access

As per the role and author, the content access module lets you manage the permissions for content types. You can specify custom view, edit and delete permissions for each content type or enable the content access settings. Thus, it allows customization of access for each content node. 

Conclusion

These modules are more than a boon for your Drupal website. They impart the highest of security walls for the users and helps your website remain safe from third-party users. The modules are designed to make sure that the user roles and permissions are not misused by the users and they optimize the development process for the team. 

To know more about the power of Drupal, drop us a line at [email protected]

Jan 28 2020
Jan 28

Almost all sites have some terrible content that needs to be migrated. As a lot has changed since the 90s, HTML is a thing of the past. Now, we require more than just a static site to win the online world. 

A huge portion of the content has been vested in the power of the internet. Studies show how a major chunk of revenue in terms of traffic is gained via sites and the quality of content on the sites. While we were focusing on the workings of the site, the game is in the court of ‘How well you present the content’ now. Addressing these changes, migrating your static site to a CMS is the best option. 

Often viewed as a complex and time-consuming task, migration is the real devil. However, there’s light at the end of the tunnel. Once executed, migration woes reap greater business benefits.   

Let’s understand how. 

two women amid discussion against office background

Static Content

When a site uses HTML, CSS and a little bit of JavaScript/jQuery for development, it becomes a static site in technical terms. The content on static sites remain the same across pages and seems more like a database than being of representative value to an organization. It does not take into account factors like the inputs of the visitors or user experience.

Dynamic Content

As the name suggests, a dynamic site is more complex yet user-friendly. It has elements like product pages, descriptions and more that helps in fetching the valuable feedback from the users. It has more elements to interact with and gives a visually better experience to the viewers. 

Difficulties with static content

Often we are suggested of using static content for smaller projects and depending on the requirements, it makes sense too. However, there are a few complications that can arise with it:

  • The initial workings of an HTML were not meant to manage complex arrangements of files. It was only for small budget websites with limited content. 
  • Making edits to the project like adding a new item to a navigation bar requires shuffling between too many HTML files. 
  • Similarly, if you want to make any change to the static content, you need to go through an entire process of the HTML files. 

Things to consider while moving the static site to a CMS 

In order to make sure that the transition to dynamic content is manageable, mobile-responsive, and accessible, consider these pointers beforehand: 

  • The amount of content (pages, images, posts, JavaScript files) you want to migrate 
  • If you want to retain the existing domain name 
  • The current URL structure 
  • Compatibility of modules of CMS with external services 

With these are in check, the next part is taking care of the requirements of migration: 

  • Evaluate the current website 
  • Import the structure, content and design from the static site 
  • Set up the CMS environment 
  • Back up of both the HTML and CMS 
  • Deal with broken links and other migration issues 

Why Migrate?

The subsequent important question to answer is - why at all should you take the pain of migrating your static site? 

Here’s why: 

  • You can easily manage the ever-growing content with a CMS and do away with the HTML pages. 
  • The two elements - Content and presentation - get separated and thus can be dealt with individually. 
  • The SEO gets sorted with a CMS as it addresses Meta Tags, URL Patterns and Sitemap.
  • The site owners and editors have full control over the display and architecture and do not remain dependent on developers 
  • The workflow of the content becomes better 
  • Uniformity for the entire site can be maintained 
  • Open Source CMSs like Drupal are more scalable for your business

Why switch to a CMS? 

Even if we are convinced that we should migrate, why CMS is a wise choice for it? Here’s why:

Your website, your terms 

Elements like uploading an image or content on a web page is a task with static sites built on HTML. Having a CMS like Drupal allows you to update and edit the content of your website without requiring a web developer. It will empower you to build a dynamic site with a better user experience that you can customise easily. 

HTML not required

Drupal as a CMS comes with a WYSIWYG editor (What You See Is What You Get). Thus, using a CMS to create blog posts, content on a new web page or make changes in the placement becomes super fun and easy.  

Easy redesigning of the website

The workings of the CMS separates the design from the content. In case you want to change the look and feel of the site, the old design can be replaced without hampering the content. 

User-friendly 

Even for the end-user, a site on CMS is much organized. It generates more traffic, thus more revenue from the audience. As a user-friendly platform, it gives easy access to the users for customizing the site. 

Drupal Migration Tools that can help

  • Core migrate API: Provides a framework for migration from Drupal 7 to Drupal 8 only.
  • Migrate Plus and Migrate Tool: Provides an option to migrate content from CSV, JSON, Excel and XML Files.
  • Migrate File: Movement of media resources to Drupal.

Conclusion

With these issues in mind, moving to a CMS seems to be a wise option. If you are planning to build a site majorly based on content or design, choose a CMS to have a hassle-free site and enjoy the editor experience for yourself. Open source CMS like Drupal gives you the freedom to design your own content without the hindrances from the development team. 

Still, confused? Reach out to our experts at [email protected] and know more about the CMS services.  

Jan 06 2020
Jan 06

The templating engine of Drupal 8 has seen a massive turnaround. Unlike Drupal 7, there’s Twig in Drupal 8 instead of PHPTemplate. Twig is basically a templating language for PHP i.e a tool used to output variables inside HTML. Fabien Potencier, the creator of the Symfony framework, gave life to Twig. Contrary to Drupal 7, you cannot call the regular PHP functions in your templates in Drupal 8. The way forward, in Drupal 8, is to create filters and functions.

Icon resembling human wearing blue shirt standing in front of a white board explaining Twig Extension in Symfony and Drupal


Twig extension gives more flexibility to process nearly anything inside the twig. Twig can be extended in many ways such as tags, filters, operators, global variables, and functions.

One of the major plus points of creating a twig extension in Drupal 8 is in the view.

Drupal 8 views can often be more challenging in the case where you want to perform operations on the value or need to process the content in the field. When you need to write code often, try to reuse it rather than writing it from scratch every time.

You must use a filter when you want to transform the data you want to display. Imagine you have a title that you always want to be capitalized. For example, twig has the capitalize filter that allows you to transform any text into its equivalent in uppercase.

I came across Twig Extension during one of my E-commerce projects where I had to print dynamic currency name. Drupal Commerce allows only 3 characters long currency code and they have also implemented their own Twig Extension to convert Price object into equivalent price format. So to handle this case where I have to show currency name with more number of characters, I had implemented my own Twig Extension. Similarly, there are several other cases where these Twig Extension can be very handful.

Let’s see an example where we will create a filter that will allow us to count the number of words in the article. The process of creating filters and functions is exactly the same as normal Twig. Also, you can use word count to display the reading time of the article or any other use case as per the requirement.

The main difference between regular Twig and Drupal 8 Twig is that, in Drupal 8, you must create a service definition of the class you are creating and the class must also belong to a namespace, otherwise it will not be registered as a Twig filter in the Drupal environment.

This example assumes you have a module called:

twig_word_count_extension


This will be the basic definition of the inn service.

twig_word_count_extension.services.yml
services:
  twig_word_count_extension.twig_extension:
    class: Drupal\twig_word_count_extension\TwigExtension\TwigWordCountExtension
    tags:
      - { name: twig.extension }


The key tags are also absolutely necessary and that is what Drupal tells you what this class is supposed to do (that is, register it as an extension of Twig).

And now the source code that should be placed in the path defined in the class service definition key.

<?php

namespace Drupal\twig_word_count_extension\TwigExtension;

use Twig_Extension;
use Twig_SimpleFilter;

class TwigWordCountExtension extends \Twig_Extension  {
  /**
   * This is the same name we used on the services.yml file
   */
  public function getName() {
    return 'twig_word_count_extension.twig_extension';
  }

  // Basic definition of the filter. You can have multiple filters of course.
  public function getFilters() {
    return [
      new Twig_SimpleFilter('word_count', [$this, 'wordCountFilter']),
    ];
  }
  // The actual implementation of the filter.
  public function wordCountFilter($context) {
    if(is_string($context)) {
      $context = str_word_count($context);
    }
    return $context;
  }
}


Clear your caches and now, if everything goes according to plan, you can use the filter in your templates.

{{ "shuffle me!" | word_count }} {# Return 2. #}


Note: If these twig extensions don’t have other service dependencies (i.e. if you don't inject services in them), the performance is not affected. However, if these extensions have lots of complex dependencies, for example, say those making database connections or perform heavy operations, the performance loss can be significant.

To avail help from our experts for your Drupal projects, you can check out our suite of services. You can also talk to us at [email protected].

Feb 17 2019
Feb 17

A metalsmith sees potential where others might see trash. In his vision, a plastic bag can become a ring, the zipper can turn into a bracelet and brass platters can be metamorphosed into a striking hollow vessel. In the digital spectrum, there’s another Metalsmith which can shape a great web presence for your organisation with its amazing web development capabilities.

A metalsmith working in a room full of metal objects


A combination of Metalsmith and Drupal even more fruitful with Drupal’s spectacular backend that can be used to feed data to all sorts of clients and Metalsmith’s exceptional capabilities as a static site generator.

Forging an understanding

Flowchart showing boxes to explain metalsmith's working principle as a static site generatorSource: Werner Glinka | Twin Cities Drupal Camp 2018

Metalsmith is not aimed at particular project types such as blogs. It supports a wide array of templates and data format options. It offers a simple plug-in architecture and is easy to get started. It uses a modular structure. Its lightweight nature and fewer dependencies make its a magnificent solution.

Metalsmith is an extremely simple, pluggable static site generator - Metalsmith.io

Static site generators create HTML code locally on the developer’s computer and all the required components are stored in a well-structured directory characterised by the strict separation of layout and content. That means a static site generator produces static build files for their deployment to a web server wherein the files are developed from source files. This is exactly the reasoning on which Metalsmith was built. Metalsmith is more than just a static site generator as everything is a plugin and Metalsmith core is an abstraction for manipulation of the file directory. It can be used for building a plethora of use cases like a project scaffolder, or an ebook generator, or even the technical docs.
 
Its working principle is simple. It takes the information from the source files of a source directory and it, then, writes the manipulated information to the files into a destination directory. The manipulations can be the translation of templates, replacement of variables, grouping files, moving files among others.
 
All the manipulations are done by plugins. Only thing Metalsmith has to take care of in its core is to offer an underlying logic of how the manipulations are confronted with and for a defined interface for the plugins. Moreover, source files are, in the nascent stage itself, converted into JavaScript objects so that plugins only do the modifications to the JavaScript objects. Moreover, Metalsmith is divided into a core and several plugins that minimises the intricacy by giving the user complete authority to use only those plugins that are needed and disseminating the task of maintaining the Metalsmith core to the Metalsmith community. Being programmed in Javascript, the need for another language like Python or Ruby is eliminated and it also has a simple plugin-interface thereby offering a simple workflow.

Metalsmith with Drupal

Twin Cities Drupal Camp 2018 had a session that demonstrated how a headless Drupal 8 installation serves content to a local Metalsmith-based static website build process. Drupal 8 turned out to be a fantastic backend CMS for serving data to all kinds of clients. Here, simply put, the local environment is the Metalsmith process uploading anything onto the Github. Once uploaded, Netlify loads it into its own process and publishes it.

Cat-shaped icon at top, green coloured square icon at right, glass with straw at bottom, and a droplet icon containing number 8 Source: Werner Glinka | Twin Cities Drupal Camp 2018

Server data are leveraged for building pages dynamically at build time with the assistance of Metalsmith as the static site generator and the Nunjucks template engine. As a result, the merits of a static website as well as the magnificent backend data governance of Drupal is obtained. Drupal is only utilised for governing content in the backend and is then used to serve the content to the build process through an API.

Conclusion

Metalsmith, along with Drupal's great prowess in content governance, can be a great solution for building static sites.
 
We believe in empowering the digital firms and making their digital transformation dreams come true with our suite of services.
 
Let us know how do you want us to help you build an astounding web presence at [email protected]

Feb 14 2019
Feb 14

Communication is the heart of all human interactions and the media is like the blood pumping all the necessary ideas and expressions. 

Media provides the essential link between the individual and the demands of the technological society.
-Jacques Ellul

We as individuals view hundreds of advertisement each day. Digging through that phone and eyes glued to those tabs. People like us have produced a substantial rise in marketing tactics. 

Marketing tactics such as social media, videos, search engine optimization, mobile paid media, and marketing of the emails have simulated the need for good quality content. What our minds’ decide to pay attention to depends on the interest and how compelling the advertisement or piece of content is.

Image of a blue cloud that says content under which 28 lego humans are standing and rain is showering upon them through that cloud

It is necessary for organizations to realize their target persona, and serve up content that will bust through the clutter and hit homes with their customer.

Drupal Media can serve up this task beautifully and can do almost anything by gracefully blending digital assets in it.  

You ask how?

I say - let’s find out!

The Evolution of Media Management in Drupal 8 

Drupal 8 Versions When was it introduced? What was offered? Drupal 8.2 5th October 2006  Basic out-of-the-box media handling  Drupal 8.3 6th April 2017 This brought enhanced media handling in Drupal 8. Migrating Drupal 7 File Entities to Drupal 8 Media Entities Drupal 8.4 4th October 2017 Introduction of a new Media API to the core. For site builders, Drupal 8.4 ships with the new media module i.e base media entity Drupal 8.5 7th March 2018  Supported remote video using the oEmbed format. Drupal 8.6 7th November 2018  For the content creator, richer image and media integration and digital asset management.

Media Type and Best Solutions to Handle Them

Media type as we know has been generally categorized with the data content such as an application, audio content, image text message, a video stream and so on. Media type conveys the applications that in return tell them what type of application is needed for the process. Media Types like Pictures, graphics, icons, video are handled beautifully with the help of Drupal modules. 

Media types can be handled with the help of some practices :

  • Media Module Maintenance 

Modules maintenance in Drupal can be achieved with the help of distinct features and functionalities. Status report screen (which checks a variety of issues), cron (that automates the task of a website in “N” hour), caching and deployment, are some of the pieces to the whole module maintenance picture.

Media module provides a “base” entity for assets. This allows users to standardize Drupal site interactions with media resources. Local files, images, youtube video, tweets can be treated with the help of a media module. 

  • Building Distributions 

If you are setting up a Drupal site then it would typically mean being involved in downloading and configuring various contributed modules (media and non-media). To make the whole process easier there are a variety of “Pre-configured” versions of Drupal that can be downloaded and used for a specific site. These pre-configured versions of Drupal are called distributions. With these “full-featured” distributions you can easily and quickly set up a site for the specialized purpose.  

  • Site Building 

Drupal 8 comes with the most popular text editor modules and image uploader modules. These both provide the users with basic HTML controls and the power to edit the content. Text editor modules like paragraphs grant the user with a cleaner data structure. The scope of making mistakes is next to null due to the module known as the environmental indicator that helps in correcting mistakes. 

  • Custom Development 

Drupal is a collection of modules and distribution. With more and more organizations looking to build an engaging digital experience for their stakeholders, the Drupal CMS has made custom developments in its platform. The version brings significant changes in modules that help in better user experience and efficiency of the website. 

Media expectations as a content author and Site Builders  

State of Drupal 2016 survey which 2,900 people attended and participated in got the top two most requested features in terms of content creator persona.

The top two features which were adequately demanded were

  • Richer media 
  • Media integration

Thus, “media initiative” for Drupal 8 was introduced that provided with extensible base functionalities. For the media handling in the core the support of the reusable assets, media browsing, remote video with the extensible cleanliness of contributed modules were made. 

In Drupal 7 the media module was jam-packed with many functionalities. Now in Drupal 8 it has been recreated and introduced into separate modules. The three major modules which beautifully handles the media entities are named as:

Media Entity 

To store media assets, media entity modules were introduced. This module provides a base entity for the media, a very basic entity which refers to all kinds of media objects. Media entity also presented a relation between Drupal and media resource.  

Entity Embed

WYSIWYG embed support(within the text area) is allowed by the entity embed module in Drupal 8. The core consists of an editor and a filter module. This module allows a site builder to construct a button which leads an editor with the text area, hence the name “entity embed”.

Entity Browser

The entity browser module provides flexible and generic entity browsing and selection tools. It can be used in any context where one needs to select a number of entities and do something with them. The inline entity also provided with the integration of the media.

Site builders want that every type of media usage should be easily tracked and be presented to them. These three modules help them in achieving this task.

Third Party integrations for media solutions 

DAM (Digital Asset Media)

A digital asset is any text or media that is formatted into a binary source and includes the right to use it. All the digital files that do not include this right are not considered digital assets. Digital assets are categorized into images and multimedia, called media assets, and textual content and the management of these types of assets is known as Digital Asset Management. Modules like Acquia DAM, Bynder, integration module, EMBridge, S3 file sync, Q bank, Asset Bank, Media Valet, Elvis contribute to the integration of DAM and Drupal media. 

Image of a laptop with a chart picture on the screen and five sub-images are connected around it via dots

CDN (content delivery network)

CDN is a globally distributed network of proxy servers. It integrates offload static assets like images, videos, CSS and JS.

CDN like Cloudflare offers image compression and is great for content delivery network services. CDN provides several advantages over serving the traffic directly:

  1. Assets can be cached in a proxy which is geographically closer to the end users that usually leads to high download speed.
  2. Each page response is shared with the origin server and the CDN.
  3. Some of the CDN’s provides with page optimization service which further enhances the performance and also the user experience. 

To make the integration easier Drupal has a CDN module that would help in speeding up the process and make it more agile. 

Image of the cloud saying CDN, where it has three parts on the left side of the cloud-connected with dots and same is on the right side too


External Storage 

It is not uncommon for large files and folders to get into the way of website speed. Large files are not usually cached resulting in every request to load the website slow. Drupal modules like the S3 file system, storage API, AmazonS3 contributes highly to integrate external storage. These modules manage the storage and the files in its API by providing an additional file system to your Drupal sites. 

Image of a silver tube that is indicated by two back and forth arrow pointing files sign

Infrastructure 

One of the most prominent examples of integrating infrastructure is Cloudflare. It is one of the biggest networks operating on the Internet. People use Cloudflare services for the purposes of increasing the security and performance of their websites. 

A number of various solutions implemented at customers' facilities are rather large today. Often the subsystems of seemingly unified IT landscape are either loosely connected to each other or the interaction between them is ensured by file and data transfer via e-mail or from hand to hand.

When content becomes media 

Content on your website would start acting like media because let’s face it the content repository or the content that is stored in the database of the digital content is an association set of data management, search and access method allowing accessing of content. It includes

Content Pooling 

Content pooling involves the storing of the learning material in form of objects, meta-data as well as the relation which is there between them. It is the grouping up of the resources together (assets, resources etc) of the purpose of maximizing profit and minimizing risks, content pooling is done. 

Content Syndication 

Content Syndication is the building up of a suite of Drupal site that needs a way to consume content from a central Drupal source. The CMS provides a number of splendid tools to simplify content creation and moderation. The users can create content once and make it available everywhere. Push content and media items at any sites to publish them on any targeted remote site. 

Deploy

This module of Drupal 8 allows the user to easily stage and preview content on all Drupal sites. It automatically manages dependencies between entities and is specially designed for rich API which can easily be extended. 

Contenta CMS 

The main agenda of Contenta CMS was to make the content happy. It is a community-driven API first distribution for Drupal 8 which provides users with a standard platform alongside the content. Contenta CMS is all about easing the pain of its users. It builds decoupled applications and websites. 

Beyond version 8 

Drupal 8 was launched without the support of the media library. Thus, the addition of the media library is planned to be launched in Drupal 8. The developers have been currently working on adding a media library to Drupal 8 so that the content authors can select pre-existing media from a library and easily embed them in their posts. Once the media library becomes stable, the content authors can deprecate the use of the old file upload functionality and make the new media library the default experience.

Instead of working on Drupal 9 as a separate code base, it is planned to be launched in Drupal 8 which means that new functionalities are being added on the backward compatibility code along with the experimental features. For contributed module authors, Drupal 9 is working on compatibilities (Before the release of Drupal 9 the users are allowed to update their media module for the new media library) 

Image of a line showing 2019, 2020 and 2021 that has a pointing arrow at the starting. The version are written at the top of a line with a blue background Source: Dries Buytaert's blog

Conclusion

As the world is getting more and more involved in the act of media, the need for handling it has become really important. 

Media is important because it allows the people to transmit information to a larger audience, over a greater length of time. The importance of the media today is immense. Never before in mankind's history have the media had such an influence. 

Yes, Drupal has come a long way in this sector. Contact us on [email protected] to know more about the media handling in your Drupal sites and the services which are provided by us.

Feb 11 2019
Feb 11
Wisdom doesn’t automatically come with old age. Nothing does - except wrinkles. It’s true that some wines improve by age but only if the grapes were good in the first place. 
-Abigail Van Buren

A reflection of the life experiences adds generously to the whole box of one’s wisdom because let’s face it, being wise and savvy can come from anyone and anywhere. So yes, famous quote “Age is just a number” has done justice to the whole scenario of erudition. 

Just like natural misconception “ bigger the better” proved right by small agencies handling bigger projects. Gone are the days where large enterprises use to rule in the market kingdom bagging all the big projects. Today, small agencies are winning big-name accounts and cool projects far more often. And the trend is forecast to continue.

Two fish bowls, one small and one big with water where a fish is jumping from small bowl to the bigger bowl


For the Drupal agency with big aspirations deciding on the projects to opt for can be a bit of a task sometimes, but attaining the trust from CxOs of big organizations that is even bigger than the projects itself. 

Thereby, solving this issue of handling and winning - here are some of the ways which would help you to seize those big projects in your vanity. 

First things First - How to meet big clients?

Just because you are a small agency or organization, it would not mean your clients to have to be small. Landing on the large organization not only boosts up the small business revenue but also increases efficiency among your team members and organization.

  • Use client reference to introduce your process

Big companies may seem like a grand entity, but you should not forget that they are constituted of hundreds and thousands of individuals who have the power to make the decisions.

So it is really important for your research to be up notch and accurate that tells you who to contact within the company you've targeted. Some of the sources or references may help with this. Apart from this some companies also present details of at least one of the senior employees on their websites.

But you need to be really creative to figure out exactly who the right person is. Look out for out some of the company’s publications or newspapers mentions seeing whose name comes up.
Not only this but you can also tag along with people who would introduce you to big tech giants.

  • Indulge in cold calling

Telemarketing and cold calling continues to be an essential discipline that is really useful for the sales role. In many business sales organizations, the old school “door knocking” might not be that productive, and when it comes to big organizations especially with large territory assignments, cold calling becomes the hero for everyone. Prospecting via phone calls continues to be a great compliment to your overall employment setting and lead generation projects.

  • Be an expert and then try to be a solution to their needs. 

If you want the big giants to trust you with the projects then a sense of “What the work means to you”must be established with a clearer vision for the future. In fact, according to the Employee Job Satisfaction and Engagement survey, nearly 77% of employees said it was important to their job satisfaction and engagement to have a clear understanding of their organization’s vision and mission.

Start with your team 

Now that you have big names in your vanity start by developing strong team hold and skills. Starting from:

  • A team of Generalists 

Generalists are the people who have a particular skill but are flexible enough to mold themselves in any situations and are ready to learn a new skill. In the case of Drupal websites, a generalist should be able to handle both backends as well as frontend. 

In other words, having a person as a generalist would be beneficial for your organization. He/She would be able to effectively handle many tasks. 

 Image of 5 people. The middle guy is magnified with the help of magnifying glass which is held by a hand
  • Services are important 

Focus on the set of services and assistance which you would be providing to the vendor. Your team would become a specialist with time and experience. Treat a big enterprise like royalty. 

The big giant enterprise is like the customer for you who are always expecting great services and will not put up with the waiting for the poor responses from their representatives. 

Be honest with your projects and their goals. If your customers find that you are dishonest with your services, they will lose faith in you and may even spread negative feedback about your business.  

  • Categorizing your projects

To ensure that the complexity of the project is achieved, categorize the project into the following:

Small projects: These can easily be tracked just by getting updates A project is classified as small when the relationships between tasks are basic and detailed planning or organization is not required.

Charter required projects: These are projects that require some level of approval other than the first line manager, but do not include significant financial investment. A summary of major deliverables is usually enough for management approval.

Large projects: The project network is broad and complicated. There are many task interdependencies. With these projects, simplification where possible is everything. 

  • Planning 

Planning a project helps in achieving objectives and deadlines on time. It pushes the team members to keep working hard until the goal are conquered. Planning also helps in creating a network of right directions to the organization.

Increases efficiency: Planning helps in maximum utilization of all the available resources that you would be using. It supports to reduce the wastage of precious resources and dodges their duplication. It also aims to give the greatest returns at the lowest possible cost. 

Reduces risks: With having such large projects there are many risks associated with it. Planning serves to forecast these risks. It also serves to take the necessary precautions to avoid these risks.
 
Facilitates coordination: Often, the plans of all departments of an organization are well coordinated with each other. Similarly, the short-term, medium-term and long-term plans of an organization should be coordinated with each other. 
 
Aids in Organizing: Organizing intends to bring together all possible resources, Organizing is not possible without planning. It is so, since, planning tells us the number of resources needed and when are they needed. It suggests that planning aids in organizing in an effective way.
 
Keeps good control: The actual administration of an employee is compared with the plans, and deviations (if any) are found out and corrected. It is impossible to achieve such control without the right planning. Therefore, planning becomes necessary to keep good control.

 Image of text saying plan in red color with two robotic hands

 

  • The scope of the Project 

Perhaps the most difficult part of managing a large project with a small team is the difference between a task and an actual project. In order for small project teams to be successful with large projects, the manager should always know the status of the project and the scope at which it is being achieved. 

  • Excellent Relationship with the vendor

The most important part of managing big projects with small teams is to establish a meaningful relationship across the organization.

A solid relationship is a path that may lead to the difference between a project that becomes actualized and one that remains in the conceptual area. If the business doesn't concentrate on a product or the service that is important to reach your clientele, you require a vendor that does it. 

Next comes the Methodologies 

Large organizations usually handle classical methodologies which involve a lot of unnecessary documentation. Thus, for small agencies, some methodologies help largely in handling large projects 

Agile was developed for projects that require both speed and flexibility. The method is split down into sprints- short cycles for producing certain features. 

Agile is highly interactive, allowing for fast adjustments throughout a project. It is mostly applied in software development projects in large part because it makes it simpler to identify issues quickly 

Agile is essential because it allows making changes early in the development process, rather than having to wait until testing is complete.

A circular infographic with six parts that says test, evaluate, meet, plan, design and develop

It is a variation of an agile framework which is iterative in nature which relies on scrum sessions for evaluating priorities. “The Scrum assemblies” or “30-day sprints” are utilized to limit prioritized tasks.

Small teams may be gathered to concentrate on a particular task independently and then coincide with the scrum master to assess progress or results and reprioritize backlogged tasks.

Image of a circular infographic with five parts saying commitment, focus,openness, respect, and courage

 

  • Waterfall 

This is a basic, sequential methodology from which Agile and similar concepts evolved. It is commonly practiced in many industries, especially in software projects.

Waterfall has been an excellent project management methodology for years now and used by most of the project managers. This methodology is sequential in nature and is used by many industries, mostly used in software development. It consists of static phases ( analysis, design, testing, implementation, and maintenance) that are produced in a specific order. 

  • Critical Path Method 

CPM is an orderly, systematic method that breaks down project development into specific but related actions. 

This methodology can be used to build the preference for a project’s activities to assess risks and allocate resources accordingly. This method encourages teams to identify milestones, assignment dependencies, and deadlines with efficiency. 

A Critical Path introduces to a sequence of critical projects (dependent or floating) in a project that tells the extended succession of tasks that have to be made on time in order for the project to meet the deadlines.

Culture is Fundamental to Succeed

How do you explain to your client that the team won’t work this week for DrupalCon, DrupalCamp or any other events happening around?

You can only explain it by being clear with your thoughts and ideas. The community here plays a vital role in everything. 

Explain to your team members that it is beneficial for them to improve Drupal as a platform and introduce them with the team culture. Help your team member create pages in drupal.org and give credits to them of their creation on patches and modules. 

Closing the project 

Yes, it is possible that project closing might look like an insignificant and unimportant task in your project management journey, but, in fact, it is a critical part of producing a successful project. To help you get this step right, here are 4 things you need to know about how to close a project effectively.

Trace Project Deliverables: It is an effective closure means that you have completed all the deliverables to the satisfaction of the project’s sponsor

Reward Team Members: As your project comes to a close, always make sure to acknowledge, recognize and appreciate the contribution of your team members

Closeout Reports: A detailed close-out report should contain details about the process used during the project, the mistakes, the lessons learned, and how successful the project was in achieving the initial goals

Finance: Big clients are usually slow in payment, try to indulge in an agile budget for large projects. 

Turning From Technical provider to strategic solution partner 

As with any investment portfolio, an organization’s investment in Run, Optimise and Innovate initiatives must be balanced and aligned with the organization’s risk tolerance and the role expected of IT. If an organization considers itself to be more conservative, it is expected to see a higher ratio of Run to Optimise and Innovate spending. More progressive organizations will have more Optimise spending, and “leading edge” organizations will have more Innovate spending.

Conclusion 

Yes, Goliath, the Gittite, is and would always be the well-known giant in the Bible. He is described as 'a champion out of the camp of the Philistines, whose height was six cubits and a span. 

Befriending with the Goliath not only gave the sense of power to anyone with him but was also granted with security. 

Hunching on to large enterprises with big projects is like the very first step to success. Right steps and maintenance would to that success anytime soon. 

Opensense labs development methodologies work specifically on the approaches that involve Drupal development, enhancing efficiency, and increasing project delivery. 

Contact us on [email protected] to accomplish those large projects which you always desired off. 

Feb 10 2019
Feb 10

The night watchman can get a new image as an alert guard if he senses correctly that something does not look right. Imagine a man dressed like a stockbroker and carrying a soft leather briefcase and a valise. His walking style is sort of tentative and squirrelish which is not the way a stockbroker walks. On being asked for an ID by the watchman, he scurries off towards the entry gate of a building and drops his valise on to the floor before being finally captured by the watchman who later finds out that he was trying to rob someone from the building.

A security guard posing for the camera in a broad daylight


Much like the night watchman and his brilliance in judgement that makes sure that the building is kept safe from any such robbers, there is another solution in the digital landscape that helps in writing browser tests easily and safely. NightwatchJS is an exceptional option to run browser tests and its inclusion in the Drupal core has only made things easier for the Drupalists.

Understanding NightwatchJS

Logo of nightwatchjs with an icon representing an owl


NightwatchJS is an automated testing framework for web applications and websites. It is written on NodeJS and uses the W3C WebDriverAPI (formerly known as Selenium WebDriver) for performing commands and assertions on DOM elements.

Nightwatch.js is an integrated, easy to use End-to-End testing solution for browser-based apps and websites, written on Node.js. - Nightwatchjs.org

As a complete browser (end-to-end) testing solution, NightwatchJS has the objective of streamlining the process of setting up continuous integration and writing automated tests. It can also be utilised for writing NodeJS unit tests. It has a clean syntax that helps in writing testing rapidly with the help of NodeJS and CSS or Xpath selectors. Its out-of-the-box command line test runner propels sequential or parallel test runs simultaneously by group, tags or single. It, also, has the support for Mocha runner out-of-the-box.

NightwatchJS has its own cloud testing platform called NightCloud.io in addition to the support for other cloud testing providers like SauceLabs and BrowserStack. It governs Selenium and WebDriver services automatically in a different child process and has great support for working with Page Object Model. Moreover, with its out-of-the-box JUnit XML reporting, it is possible to incorporate your tests in the build process with systems like Jenkins. 

NightwatchJS in Drupal

JavaScript Modernisation Initiative paved the way for the addition of NightwatchJS to the Drupal core (in version 8.6) as the new standard framework for unit and functional testing of JavaScript. It makes sure that alterations made to the system do not break expected functionality in addition to the provision for writing tests for your contributed modules and themes. It can be included in the build process for ensuring that regressions hardly creep into production.

You can try NightwatchJS in Drupal 8.6 by adhering to the instructions given on GitHub. It exhibits how to test core functionality. It also instructs on how to use it for testing your existing sites, modules, and themes by giving your own custom commands, assertions and tests. It is worth considering to check out Nightwatch API documentation and the developer guide of NightwatchJS for creating custom commands and assertions.

NightwatchJS tests will be run by Drupal CI and are viewable in test log for core developers and module authors. And for your own projects, tests can be run easily in, for instance, CircleCI, that can provide you access to artefacts like screenshots and console logs.

Conclusion

While Drupal 8 has extensive back-end test coverage, NightwatchJS offers a more modern platform that will make Drupal more familiar to PHP and JavaScript developers. 

Offering amazing digital experience has been our biggest objective and we have been doing that with a suite of services.

Contact us at [email protected] and let us know how can we help you achieve your digital transformation dreams.

Feb 10 2019
Feb 10

Virtual private servers are fantastic for running your own cloud applications and gives you the authority over your private data. Potentially, your private data may be leaked when you communicate via services like text messaging. One way to ensure greater privacy is by hosting your own messaging system. This is where Rocket.Chat comes into picture.

person typing on laptop computer


Rocket.Chat has the provision for an actual open source implementation of an HTTP chat solution that provides convenience and gives greater freedom at the same time. It can be a marvellous solution for remote communications, especially for open source communities.

Rocket Chat: A close look

[embedded content]


The official site of Rocket.Chat states that it’s an open source team communication software which offers an alternative to remote communications by replacing the likes of email, HipChat and Slack. It aids in improving productivity via efficacious team communication and team collaboration. It helps in sharing files with the team, real-time chatting or even leveraging audio or video conference calls with screen sharing. Being an open source solution, It gives you the option of customising, extending or adding new functionality to meet your expectations.

Rocket.Chat is an open source team communication software which offers an alternative to remote communications by replacing the likes of email, HipChat and Slack

 

Logo of rocketchat with an icon representing rocket


With Rocket.Chat, you can do away with cc/bcc and make use of Rocket.Chat channels and private groups thereby bringing in more transparency in the team communication. By utilising @username, you can include relevant participants in order to apprise them swiftly. When you need to inform about an important matter to all the members of a group, @all can be used. Participants can join or leave anytime using the full chat history. Moreover, Rocket.Chat offers a secure workspace with restrictions on username and greater transparency for admin. You can be a part of leading blockchain propellants like Hyperledger, Brave, Aragon among others in migrating from Slack and Atlassian to Rocket.Chat.

Essential features

Following are some of the major features of Rocket.Chat:

  • Unlimited: Rocket.Chat has the provision for unlimited users, channels, searches, messages, guests and file uploads.
  • Authentication mechanism: It offers different authentication mechanisms like LDAP Group Sync, 2-factor authentication, end-to-end encryption, single sign-on and dozens of OAuth providers.
  • Real-time Chat: Its Live Chat feature allows you to add real-time chat widgets to any site or mobile applications. This brings more efficacy in team communication and also ensures top-notch customer service.
  • Message translation: It utilises machine learning for automatically translating messages in real-time.
  • Use across platforms: It can be leveraged for all the platforms with its web, desktop and mobile applications, LiveChat clients, and SDK( Software Development Kit).
  • Marvellous customisation: You can alter it to meet your requirements. Incoming and outgoing WebHook integrations can be added to it. The personalisation of user interface can be performed by overriding any of the built-in styles. You get to extract the benefits of its REST API, LiveChat API or Real-time API.

Rocket.Chat in Drupal

The Rocket.Chat module, available for both Drupal 7 and Drupal 8, helps a Drupal site to integrate Rocket.Chat. It constitutes a base module that holds the configuration and the LiveChat module that includes a block for enabling LiveChat widget on a page which can be controlled as a block.
 
The maintainers of this module recommend running Drupal and Rocket.Chat behind a TLS (Transport Layer Security) proxy or web server that has TLS capabilities. Also, HTTPS and HTTP crossovers should be taken care of. Moreover, enabling the LiveChat on Rocket.Chat instance allows you to use LiveChat feature.

Conclusion

One of the quintessential aspects of open source communities is remote communication. Rocket.Chat offers a great alternative to the likes of Slack and gives you the plugin to enable in it in Drupal.
 
We have a strong inclination towards the provision of digital innovation and have been doing that with our expertise in Drupal development.

Contact us at [email protected] to understand more on Rocket.Chat and transform your team communication and collaboration.

Feb 09 2019
Feb 09

Ever attended an art gallery and witnessed how modern artists use canvas to speak their thoughts?

By looking at the art and paying attention to their creation a lot of “Ohhs” and “Ahhs” and expressions of awe with wonder tells us whether it has sufficiently aroused the engagement or not.

But at the core of this practice, the whole idea of thinking an endless number of ways in which visitors attend an art gallery always sustain in the mind of an owner. 

More visitors means more conversions, which results in better progression. 

Customer experience and engagement - 2 things thrived by every art gallery owner.

Right?

Image of 7 people in an art gallery looking at the painting in front of them


Today most marketing teams are structured to drive traffic towards websites that seek to generate traffic and hopefully even more profit. 

Yes, it might be an oversimplification of the trend, but that’s the standard marketing playbook. That’s where Conversion Rate Optimization (CRO) comes in. 

But, What exactly is CRO?

Let's discover. 

Everything about CRO

In internet marketing, conversion optimization, or conversion rate optimization is a system for increasing the percentage of visitors to a website that converts into customers, or more generally, takes any desired action on a webpage. The whole process involves understanding how users move through a particular website, what actions they are taking, and what's stopping them from completing their goals. 
 

images of ROI, targeting, usability, A/B testing, multivariate, credibility & landing pages in the middle there is conversion rate optimization


Importance of CRO 

  • Pay per click

The general idea of pay per click advertisement was that it targeted the audience fast by selecting options of what they could see. And you would agree on the fact that nowadays “pay per click” (Google Adwords) prices have hiked up to an extent where it is evident that it is directly affecting the conversions. Also with the increase in digital devices and people getting indulged in technology more businesses have become digital. 

  • Enhancing online competition 

Now that more people are becoming tech-savvy, competition among retailers has increased a lot. Some of them are simply eating away small retailers. That means if you want to convert your visitors into customers, you need to have a website that should be easy to use and easily customizable.  

You can take the help of Drupal as your website platform. It is one such CMS that allows you to set up your website easily and customize it as desired. 

Conversion Optimization has the benefit of allowing you to stay ahead of the curve in terms of competition, by providing you with insights on what's going on with the competitor's website.
  • Combating the rising cost of digital marketing

Let’s face it pay-per-click isn’t just the only thing which is rising in the market. Digital marketing in this area is giving good competition to any sort of “traffic source” ever known. 

The whole point of marketing is to direct the users towards your website.  But how would you make sure that most of them actually make a purchase?

This is where CRO comes to the rescue.

By increasing the number of page visitors who make purchases, CRO helps in improving the conversion rates by simply compacting the cost of digital marketing
  • Streamlining the business 

A website that is continuously being optimized looks more legitimate than the ones which are not doing that job. 

Why?

Well maybe due to the fact that the ones which are not being optimized are not providing a clearer path to the landing pages. Clear landing pages for an online retailer means having an inventory that can easily search or getting a clearer view of the categories. 

  • Saving a large amount of money 

So how can spending a large amount of money on your website result in saving money? 

You’ll find that spending less money on each customer would actually produce more money. Maybe you are not necessarily saving a lot, but you are definitely making a lot more. 

Which eventually balance out both. 

  • Improving the efficiency and layouts 

If you are working with an affiliate organization or the marketers, you would find out that many online retailers find CRO to be a good way to get news out about their products, through a platform that already has an engaged audience, CRO makes your website more valuable to your affiliates, and to any other marketing platforms.
When a higher number of users who click-through to your webpage actually makes a purchase, your affiliates, pay per click advertisers, social media marketing campaigns, etc., make more because you are making more.  

Common misconceptions related to CRO 

There are some businesses that see CRO be an unnecessary expense, an expense that doesn’t really move their business ahead.

Whereas most of them see it as a golden bolt for their marketing woes, a key for high traffic and more leads. 

Using it or not usually it is better than having misconceptions that lead to misguiding and wasting of resource and time. Among which some of them are:

  • CRO is a single skill 

One of the biggest misconceptions among business is an entrenched belief that CRO is a single skill set. In other words, CRO is a broad practice that encompasses a wide range of skills. To be effective at conversion rate optimization, you require three skill sets:

Copywriting: Whether you can write a persuasive copy or not would have a great impact on conversion rates.

Design: Starting from UI/UX to its choice in graphics depends highly on the rate of conversions.

Analytics: It is important to have someone with special and necessary skills to analyze your result. 

  • It is all about best practices

Running or stumbling upon blog posts and articles that tell you the best practices on boosting up your conversion rate has become standard now. 

And going ahead and implementing those practices as written on the write-ups is conventional. But do these tricks really work?

The truth is that there are no particular one-size-fit best practices that can lead you to the path of better conversions. Your focus should always be on removing barriers that hinder with the flow of conversions.  

  • Making small changes that lead to big and better rewards
     
Image of two poster having a girl divided inside a square. The first is having short content with 102.5% green up arrow and the other is having big text with 22.7% red down arrow

 

The above pictures clearly describe that how changing the content length affected the conversions and resulted in 90% more clicks. 

Going by this case study, you might be tempted to find the silver bolt where making a minor change reaped into great news. 

In truth case studies like these are entirely misleading and provides you with only partial information. They don’t tell you that:

How long the tests were done?

Whether the traffic remained constant throughout the testing period?

What all changes were made on the website?

  • It is all about split testing 

Most people think that CRO is all about split testing site elements. 

The truth is that CRO is all about measuring your customer's actions and remove the convention barriers. 

To do this start by basic user needs and understanding the psychology of the customers. This model would help you to focus on the things that should be worked on:

A pyramid with five sections where the text is written as functional, accessible, usable, intuitive and persuasive

 

  • Focusing on CRO alone builds a successful business 

Due to the immense love showered on CRO and per digital marketing, it is believed by the companies that they are winning the game of online business. 

True, that CRO might increase your conversion from 1% to 2%, which yes has a great impact on sales, but to reach those heights of success you need to take a closer look on traffic, brand, and customers. 

So What is the Structured Process in CRO?

  • Defining your conversion actions 

The conversion actions can be defined based on the business goals and then they can be implemented on web analytics. Promoting and producing content in one of the actions which should be implemented as soon as possible. The content technique would require you to do be indulged in practices like:

  1. Targeting email marketing
  2. Marketing automation 
  3. Producing demo
  4. Live events
  5. Case studies

The content at this stage revolves around customer-relationship management through segmentation. When you segment your audience based on age, gender, geographical position, professional role, etc., you are better equipped to offer them targeted content that interests them

  • Understand the prospects

A better understanding of the prospects helps in better converting of offers. This is the stage where you look for indirect customers acquisition and brand awareness.  Begin by mapping out the current situations and forming a clearer idea on your target audience, objectives, market, KPI’s and the current result. Knowing in advance that where you stand and what you want to achieve provides you with more context.

  • Research and Analytics

Once you have the insights into your current situation and objectives, it is the time for you to analyze them. In the analysis phase, you would want to employ web analytics and the other sources of information to form a hypothesis that can then be tested. It could include the heatmaps, tests, insights etc.

This would make sure that your insights are based on the actual behavior of the users and not on the basis of superstitions.

  • Implementing a challenger and Testing the hypothesis 

For implementing a good challenger you need to choose a suitable testing method and then run a test. It involves the turning up of backlogs and matrix into a measurement plan. This is one of the most crucial parts of CRO. 

Examining the hypothesis on basis of multiple tests results in a good number of visitors and websites. 

  • Validating 

After setting up and running the tests, you analyze the results. This generates insights that you then subsequently test. CRO is a continuous process of learning and refining. After setting up and running the test, you analyze the result. This then generates insights that can have a subsequent test. 

Testing for CRO 

Conversion Rate Optimization Test are the ones that refer to the various types of testing methodologies. They are used to identify the best possible version of a certain site that brings in the most valuable traffic.

  • Principles of CRO 

Speed

Back in 2009, Google conducted experiments which described that slowing down the search results page by under half a second resulted in 0.2% to 0.6% fewer searches.

These results now might not sound like big numbers, but for Google (which processed roughly 40,000 searches every second ) the number resulted in 14,400 fewer searches every minute and according to Google itself, people have become more impatient. Thus making speed an important factor
 
Singularity 
 
A single take away “Less is more” is just about right mantra which should be followed by every website owner. 
Many landing pages contain multiple offers.
 
They shouldn’t.
 
Why?
 
Having just one and improved campaign clicks help in increasing the conversion rates

Identification

Identifying your audience and their aspirations/desires mean high conversions. In other words - what they want, what matters to them, and what sources of frictions are for them all comes under the section of identification.  

To identify the people you must know them. After all the reason how sales and marketing would see those conversions is only when you identify your own customers. 

Landing Pages

Take an advise and do not clutter your pages or emails to “what if” moments. 

What if the user is to like my page?

What if more audience like the information that is being served on the page? 

What if they want to read my testimonials and case studies? 

If the goal of creating a particular page is to get likes and visitors to subscribe it, then all you should do it is focus on it. Thus, your landing pages should be as precise and simple as they could be. This gives a clearer idea to the audience and your customers on what you are selling. 

  • Testing Methods 

A/B testing

Businesses want visitors to take an action (conversion) on the website and the rate at which a website is able to drive, this is called its "conversion rate."

A/B testing is the practice of showing 2 variants of the same webpage to different segments of website visitors at the same time and comparing which variation drives more conversions. 
 
The one that gives higher conversions wins!
 
The metrics of conversion is different for every site. For commerce, it might be a sale product whereas for B2B it might generate qualified leads. A well planned, data-driven A/B testing makes your marketing plan more profitable by just narrowing it down to its most important elements by testing them and also by combining them. 

Note that every element on your website should influence visitor behavior and conversion rate should be A/B tested. 

\Image of two laptops where one is A having a 23% reb bar sign on the screen and the other is having 37% green bar sign on the screen


Multivariate Tests 

In a multivariate test, you identify a few key areas/sections of a page and then create variations for those sections specifically (as opposed to creating variations of the whole page in an A/B split test). So for example, in a multivariate test, you choose to create different variations for 2 different sections: headline and image. A multivariate testing software will combine all these section specific variations to generate unique versions of the page to be tested and then simply split traffic amongst those versions.

Multivariate testing looks to provide the solution. You can change a title and an image at the same time. With multivariate tests, you test a hypothesis for which several variables are modified and determine which combination from among all possible solutions performed the best. If you create 3 different versions of 2 specific variables, you then have nine combinations in total (number of variants of the first variable X number of variants of the second). 

Flow chart of multivariate test. Starting from buying now & then getting divided into two parts, one part says original other says variation

 

  • Some Testing tools 

Now we know that Conversion Rate Optimization (CRO) focuses on simple tests that allow you to compare and contrast layouts, call to action, a design feature, content and even personalized marketing feature to nudge your conversion rate into new.   

Therefore here are some wicked yet sweet CRO tools that would help you with the testing.

Optimizely: Optimizely tool requires a single line of lightweight code that can be added to any website. The user would then have the power to change any on-page elements on the website.

Google Analytics: Most of the website has this tool in-built on the platform. It is one of the most popular testing tools. Google Analytics tool would help you to split your traffic into two pages that you have developed and would let you know which version is best for testing. 
  
Visual web optimizer: This tool specifically helps in figuring out how your testing windows will be after you plug in a few variables. Visual web optimizer is great for the company project and client work. 

Adobe Target: Adobe target is a popular enterprise tool that combines the taste of targeting testing and personalization. It walks you through three step workflow where you first create a variant, then target a variant base and lastly customize your goals 

Appitmize: It is the testing tool that focuses entirely on mobile optimization and is a perfect choice for mobiles and business. It offers full control over the visual editor and rapidly creates new variants and targets. 

Conclusions 

Now we know that the most important goal for an organization is to create conversions. Creating conversions is the reason how you can measure your progress and growth. 

Opensense Labs is aware of the fact that how important it is to apprehend the visitor’s preferences and their interests. Therefore our services on Drupal personalization and CRO bundles us together to our clients and helps in accelerating the conversions.

Ping us on [email protected] and let us take that road to handle in your success and hurdles. 

Feb 08 2019
Feb 08

Today, our interactions with the digital world have surpassed the human interactions so much that the need for the user interface to be appealing and friendly plays an important role in terms of progression. 

Government websites are no different.

The first connection which they have with their citizens is more likely to be an engaging website. One of the most essential tools for meeting the needs of your people or citizens. 

So, it has to be the best. Right?

Image of a .gov text where the dot is red in color and the text is blue in color


Creating a functional website with easy navigation not only help officials do better in connecting with their constitutes but also ensures that the public stays well informed all the time. 

Drupal is one such platform which helps you achieve all of this in one go. 

How is Drupal in Government sector performing?  

Drupal is gaining popularity in government sector all over the world. The solidity and flexibility of the platform is the primary reason why the government is moving its online portals to Drupal. Government websites like the white house, Federal IT Spending Dashboard, Data govt. has specifically chosen Drupal for its efficiency. The reason why most of the govt. Websites are choosing Drupal over any other platform is also due to the facts that it is:

Drupal has an excellent track record when it comes to solving and maintaining security issues. The security team (Drupal Community) that works together with other councils watches and ensures that its users are getting the best security practices

The fact that The White House entrusts Drupal as its platform is enough to prove that it is highly secure CMS. There are several security modules that make it a highly reliable platform. Modules like:

Login Security: Drupal sites that are available in both, HTTP and HTTPs provides the user with a lockdown in the login page, and submits the other forms securely via HTTPS. Hence, it prevents passwords and other sensitive user data from being transmitted.

Password Policy: This module forces a user to forcefully create a strong and powerful password. 

Captcha: It is the response test which is specifically constructed for determining the user. To check whether the process is being done by a human and not by a robot.

Security Kit: It provides Drupal users with various security hardening options. This doesn’t let the website compromise the data and information to the hackers and other foreign users. Security Kit presents particular mitigation for cross-site request forgery, cross-site scripting, and clickjacking, among other issues.

Two-factor verification: The two-step verification is a procedure that implicates the two-step authentication method, which is performed one after another to verify the requesting access. 

Image of a lock, shield, monitor and a cloud placed on a blue background. The text on the image is Drupal 8, A secure way for web development
  • Accessible

Government websites are those kinds which are used by everyone, and by everyone, I mean the visually impaired too. Each citizen should be able to access the government website quickly and seamlessly and according to WACG 2.0 (web content accessibility guidelines), every website should provide equal standards to all the people.
Drupal is one such platform which adheres to each and every WACG guidelines with its different modules and provides accessibility to everyone. 

Alt text: This is one of the most important modules when it comes to providing accessibility to a website. With this module, the search engine understands the text of an image or a page and screen readers read it loudly to the user.

Content accessibility: This module checks all the type of fields where the user can enter formatting. Below the content section of the accessibility page, the user is provided with the option to turn the tests on or off using the tab that would appear below the page. 

Accessibility in WYSIWYG: This type of module integrates the accessibility configuration with the WYSIWYG or CKEditor modules, which provide the user with a new button while they are editing the content that checks the work for accessibility issue. 
 

Image of the blue Drupal drop which has stick images of a person on a wheelchair and a person spreading its arms

 

  • Economical

The government budget for software developments cannot be compared to the budget of large enterprises for the same purpose. The government needs to opt for a high-quality solution that does not cost a fortune. High development and maintenance costs may be considered as an obstacle to finding high-quality website solutions.

Thus, Drupal meets these and many other requirements are the reason why the government chose it as there CMS. The Drupal development price is relatively low when it is compared with other CMS in the market. 

Another great feature of Drupal8 is its perfect scalability. The CMS is suitable for both small survey website as well as the content-rich websites with gigabyte information. 

At the same time, Drupal is capable of handling high traffic issues and problems. Web solution built on this tool is available even when the traffic volume jumps sky high. A great example of the same is UNESCO and CERN web channels. These Drupal-based websites offer a great user experience and thousands of people use it on daily basis. 

  • Easily Customized

When we say government websites we automatically imagine something grey, black, white or something really boring. But one has to remember that these website services both political and non- political purposes. Thus, user interaction and engagement then here becomes a crucial aspect. 

Better user engagement is made possible with Drupal and its modules. The administrator can add blogs, articles, write-ups that contributes highly opportunities and solutions. Not only this but Drupal also gives its user the power to personalize their website according to their needs and requirement, making it a flexible and reliable CMS. 

  • Has superb integration capabilities 

A powerful web solution should integrate seamlessly with third-party applications. Publishing tools, data repository, and other features belong to the list of necessary interactions. 

The integration capabilities offered by Drupal is enormous. It provides numerous options so that the user is able to integrate any type of third party service. 

Drupal Distribution: DeGov to the rescue 

DeGov is the first Drupal 8 open source distribution focussing entirely on the needs of the governmental organizations. It is intended to provide a comprehensive set of functionalities that are commonly used only of the applications that are related to government. 

What DeGov is not?

The DeGov distribution is not a commercial CMS ( developed as well as owned by a single company, and the users usually need to buy a license) and it is not a finalized product. Meaning, DeGov is not a ready solution. The reason is that there are a lot of functionalities and ideas in backlog and hence it is a daily work off process. 

DeGov is an idea to realize the benefits in the public sector with the idea of open source. 
 
Image of the logo of Degov in form of a circle where the text is DeGov in the middle

Use case related to DeGov

DeGov has 6 use cases and extends its valuable functions to meet certain scenarios. 

  • Publishes information for all the websites that are government based organizations of all level.
  • Service-oriented E-government portals, that closes the gaps between the users/ citizens and administrator.
  • Citizen engagement portals to decline and discuss online.
  • Open311 portal for civic issue tracking.
  • Open Data portal for publishing and creating communities data

Intranet and Extranet of government employees.

An infographic with 6 parts describing the use case of DeGov.

Beneath the Canopy of DeGov

DeGov is the sub-profile of the lightning distribution. 

Lightning allows you to create sub-profiles that are entirely based on default lightening distribution profile. Creating a sub-profile enables you to customize the installation process to meet specific needs and requirements. 

By combining DeGov and lightening distribution, it delivers configuration that is specialized to start new projects. Building on top of Lightning, DeGov leverages in a true open source manner that allows focussing on functionalities for the public sector. 

Which problems does DeGov solve?

Editor 

DeGov solves the issues that are all related to complex backends, missing workflow, multi-language as a pain, missing modernity etc. It allows the editors with highest design flexibility in the maintenance of the website as well as simple editing of the content. 

With the help of “Drag and Drop” function, you can easily structure your page even without the help of programming. Predefined page type helps in easy maintenance. In the central media library, all types of media are managed no matter what form or type it is (pictures, PDFs, videos, posts)

DeGov distribution also helps in easy integrating of the social media. Likewise, you can allow the users to easily share the content in form of articles, blogs, and other write-ups. DeGov uses the privacy- compliant integration of social media share buttons. 

Customers and clients 

DeGov solves the issues that are related to the features and high ownership with old and propriety technologies.  It a user-friendly web front with attractive designs. It is responsive and thus adapts to any device and its size.  The use of HTML/CSS makes a website accessible. Likewise, the page can be made translated into several languages. A language switcher and an automatic screen reader translate the workflow easily. 

DeGov websites receive a powerful search function for the website content as well as the documents. This is particularly convenient for the authorities: The administrator search engine and NRW  that is connected to the service so that users can also search the content outside their area of responsibility. 

Companies and developers 

It solves the issue related to high-cost updates and the functionalities that are related to it. The distribution is based on opensource software, as a result, you pay neither for the license nor you purchase it.

Drupal is used in numerous projects thus the basic functions and the functionalities are constantly updated and expanded from time to time. This fixes all the bugs and vulnerabilities quickly. 

Implementations with DeGov

Websites

The DeGov distribution has the ability to release, federal and state portals, as well as internet sites for ministries, authorities, districts, and municipalities. The web pages and the target group-specific portals (or topic pages) can be created easily by DeGov. 

Participation Portals

With participation portals to let the citizens participate in decisions and proposed measures, DeGov distribution has opened doors in terms of communication. Here you can notify, discuss with users, gather valuable suggestions or create polls. From participatory budgeting through bills to constructing methods - portals obtained by DeGov give citizens as a voice.
 
E-Government Portals

DeGov distribution is a great way to implement entire eGovernment portals. Less stress is laid on the editorial content than whole specialist procedures. In this way, DeGov allows the digital processing of administrative processes. The project Gewerbe.NRW was implemented with the help of DeGov distribution.

Why DeGov with Drupal 8?

DeGov modules are Drupal modules which are carefully fit together. This means that the whole system benefits largely with its functionalities. The reasons why Drupal 8 should be with DeGov is because:

  • It is based on Symfony and it uses composers.
  • It is Git accessible for config files.
  • It is cloud-ready and runs like a modern PHP solution 

Better projects with DeGov

Image of a table having the list of all media types

A case study on Gewerbe-Service-Portal.NRW

The new "Gewerbe-Service-Portal.NRW" has been providing citizen friendly services by allowing company founder in German federal state North Rhine-Westphalia (NRW) to electorally register a business from home. Its main aim was to provide aid of a clearly arranged online form, commercial registration and that can be transmitted to responsible citizens.

In addition to the business registration, the portal provided with information to the topic “foundation of an enterprise”. Furthermost all the users had access to Einheitliche Ansprechpartner NRW. Also, the online service supported specialized staff in taking up a service occupation.

The portal was developed on the basis of the content management Drupal-based system DeGov and nrwGOV. They chose Drupal because of that fact that it was cost-effective and new technologies could be adapted to the Drupal community. Apart from this Drupal provided with:

  • Higher safety and better quality
  • Independence
  • Comprehensive option
  • Accessibility

The portal aimed at providing more flexibility to the entrepreneur that is eligible to start there own business by saving time through digitization. The electronic forwarding and processing of the application by authorities ensured effective processing within applications. The result was effective and user-friendly communication between the citizens and authorities. Whereas in the near future the Gewerbe-Service-Portal.NRW will develop a comprehensive service platform so that the administrative process could be carried out at home.

In the Nutshell 

So how important is the government website to you?

The answer might have been crystal clear by now. 

As important as it is to have a website, maintaining it a whole different task. Yes, Drupal is making it easy for you by its functionality and distribution.  But the definite art of maintaining it is as important as creating it. 

Ping us on [email protected] our services would not only get the best out of Drupal but would also but would also help in enhancing your development and industrial standards.  

Feb 01 2019
Feb 01

The number eight in bible signifies resurrection and regeneration, a digit that implies “New beginnings” 

Just like the resurrection of Drupal which loudly announced its new inceptions as a content management system, and its ability to connect with Saas CRM like Salesforce. 

Salesforce is like the heart for most of the business that has allowed them to handle there sales data at one stop and given highest priority in terms of customer’s growth. And now that it has a tighter integration than ever before, Drupal 8 can do it too 

Image of Drupal logo in the bottom with a speech ink bubble that says salesforce


So instead of wasting any more of your time and beating around the bush, let's explore the paths that lead down its integration and the key considerations that are involved in it. 

Benefits of Integrating Drupal and Salesforce

Managing Territories

When you have a team of salespeople small or big, how would you manage that which territories or which areas each of them is going after? 

Definitely with the help of Salesforce that would monitor and track almost anything that you can imagine of. Instead of managing those old school spreadsheets, a CRM like Salesforce can help you track and monitor all the tasks. It saves your time, resources that arrives while managing small and large scale teams. With the help of this CRM, you have the power to do many things such as:

  • Better management of lead processing and territories.
  • The leads can be assigned to the users according to according to the data that have business sense.
  • Instant email notifications can help in rep up the sales of the customers and prospects immediately.
  • It can help you attain better efficiency. 

Tracking competitors and managing opportunities 

In this competitive world, it is important to track and manage your competitors. You can do this thing with the help of Salesforce CRM. 

It diligently ensures that each and every opportunity is followed up on and not forgotten through the various in-built tools and responses faster to any client that enquires about your services or products which shows ultimately to your customers that you care about their business.

Forecasting

A good CRM system gives you the ability from a business point of view to track exactly what is happening but also accurately forecast the growth or decline of your business. For forecasting, salesforce can also provide you with:

  • Calculate the forecasting including all the information from the sales team.
  • Differentiate between booked and recurring venues 
  • Customize forecast based on the parameters that make sense to the business.

Managing Orders

The Salesforce CRM allows you to truly manage end to end customer relationships. You can see everything from the first time when you engage with a client to when they place an order and beyond. 

The best part about Salesforce CRM in terms of managing order is that it can easily turn an estimate into order and beyond with a single click of a button and customized or automated reports based on what you need to see

Architectural approaches

There are different architectural approaches to have you think about data flow that provides for different requirements and satisfy different needs. Architectures like:

Technology Description Strengths Weakness Real-Time Push Sends data immediately on the entity and creates,  updates and deletes Fast, limited, update lag, avoids UX, can avoid race conditions  Less durable and reliable  Cron Based Sync Identify records requiring sync on the cron Handles large volumes well, can be stopped and start as needed Slow, lags and risk the update conflicts Work Queue Single point of integration receives data and action Reliable, performant and has a shorter time lag Large changes create backlogs, the risk of update conflicts

Real-Time Push

With the real-time integration, the Drupal objects are exported to salesforce immediately. You get the feedbacks indicating whether the item failed to export and the data is available in Salesforce or not. This can be a great option if you need the data to be in the salesforce as close as possible.

Cron Based Sync

Earlier in Drupal 7 the asynchronous push left hiccups concerning error handling (which involved debugging and troubleshooting) optimization, API calls etc.

Now in Drupal 8 salesforce cron based push service has been introduced to construct database queues, normalizing queue items, optimizing queue operations and implementing error handling. 

The Cron based sync has helped Drupal’s core API schedule synchronization from salesforce to Drupal. 

Work Queues

With the queue-based batching system running in the background, it allows many objects to be sent to the salesforce as soon as possible. Instead of the objects being sent to the Salesforce at the same time. In this architecture, instead of the objects that are being sent to the salesforce as soon as it is created, edited, deleted it goes into the queue where it waits to be exported to other items. 

The queues items are then picked up on the configurable schedule and then exports to the Salesforce in batches. Batching the data helps in synchronization and helps to increase the performance by using fewer API calls.

Approaches suitable for integration

There are many ways to move your data from the website to another application. Drupal and Salesforce out of which is the easiest and allows integration in almost all projects. Here are some approaches which are suitable to integrate Drupal and Salesforce.

Simple web forms

Salesforce lets you create simple HTML web form (Web-to-lead or web-to-case)  that generates lead or case records in Salesforce when they are submitted. 

Anyone of the Salesforce administrator can create these forms and then paste them in Drupal for the users to complete it. 

 Image of a file with blue outlines pointing towards a blue salesforce cloud


While not all of the things are addressed in every circumstance, there are specific situations when this method is a good solution: 

  • A basic idea on the user data or inquiry information into Salesforce is needed.
  • There is no or little expertise in web development. 
  • Something quick and easy is needed. 

Third party form service 

There are an ample number of form services like Formstack, click and pledge and Wufoo that have the power to pass the data to Salesforce. In this, you can either embed the form in Drupal or let the user click through the platform.

Image of a desktop with file image in it with two bi-directional arrows pointing towards and backward salesforce cloud


This method is suitable when the following conditions are applied:

  • When there is a need to pass both user and transaction data into Salesforce. 
  • There is no need to move the information in both the directions. 
  • You may want users to log in to submit a form or return to the form and provide more information later. 
  • You want sophisticated solutions that don’t really need to be customized

Salesforce Suite

The Salesforce Suit is the collection of all the Drupal modules that allow synchronization of all the data and the information that is between Drupal and Salesforce in single or both directions. This suit also has the ability to provide a mapping tool that can be used to define the integration which is field-by-field and object-by-object.

 Image of the Drupal logo that is pointing towards and away from the blue salesforce cloud


Salesforce forms

The simplest way to hook Drupal up (or any other website) with Salesforce is by simply linking over to a form that is created by the Salesforce. Any data that the user is entering gets dumped directly to the salesforce and Drupal is not involved in it.

This type of method is good for a lead generation or simple application form. One of the biggest advantage in using salesforce forms is that it is not only cheap and easy to use, but there are zero setups that are done on Drupal side besides providing a link to the form.

Salesforce mapping 

There might be instances where you might have content that constitutes in both Drupal as well as Salesforce and is needed to stay in sync. Salesforce mapping does that task for everyone. 

Salesforce mapping keeps the version of the data at both ends, whatever happens to one happens to the other version too. 

Rules can also be made to add, delete, push or pull data.  

Drupal logo on the left upper side of the page, on the right upper side is the salesforce logo. Below both the images are two rectangles stating user profiles and support tickets

 

  Cost Direction   Complexity Simple Web Forms Free  One direction inbound to Salesforce DIY Third Party Form Service Low One direction  DIY or Developer Assistance Salesforce Suite Moderate To High  Bi-directional  Developer Assistance Salesforce Mapping High Double-entering the same content in two places Developer Assistance Salesforce Forms Low  Natural  DIY

Integrating with different Directions

  Integrating with One Direction Integrating with two directions Useful when When you have to pass user data, transaction data, and specific node types  When data is entered directly into Salesforce  To keep Integration Simple  Modern  Advantage This approach limits complexity and therefore liability and errors. Fewer duplicate records are created in Salesforce. User Experience No updates required to impact UX  Users need sophisticated interaction such as the ability to view offline data you have entered  Use Cases Donation forms, Event registration Donation forms, Event registration 

Drupal modules are here to ease the integration with Salesforce 

The Drupal Salesforce Suite module is a testament to both the ingenuity and passion of the Drupal community and the flexibility of Drupal as an enterprise platform. As a contributed module, the Salesforce Suite for Drupal enables out of the box connection with Salesforce, no matter what your configuration is. It supports integration by simply synchronizing Drupal entities (eg users, nodes) with the Salesforce objects (organization, contacts)

The Drupal community, as a matter of fact, has been contributing a lot to this part. It has come together to sponsor the development of the suite of Salesforce integration modules that can deal with a variety of business needs. To rewrite the module, the community gathered time and the resources, taking full advantage of the advances that were made in the Drupal and Salesforce platforms. To put it all together it now has been rearranged into a modular architecture exposing core functionality via an API enabling other systems, E.g., Springboard, Jackson River’s fundraising platform 

Most importantly the Drupal suite module has authorized Auth 2.0 to its highest access control 

For the non-technical users, the Drupal entity and Salesforce object mapping system has provided them with the power to configure the data maps between any objects in any 2 systems. Not only this but the synchronization between any Drupal entity and Salesforce object, E.g., Drupal users, donation receipts has been made easy. It has presented its users with a lightweight wrapper around the SOAP API, which has more capabilities for some use cases, using the same OAuth authorization 

Examples of the Use case of Drupal and Salesforce Integration 

SpringBoard 

A packaged distribution of Drupal for non-profit organizations, Springboard, Jackson River’s innovative solution (for online fundraising and marketing), needed to accept online donations and wanted to use Drupal to power other user touch points such as petitions, email registration and more. Springboard presented a robust integration queue for bi-directional sync of data between Drupal and Salesforce.com CRM.

RedHen CRM 

RedHen CRM has been designed for the needs of membership organizations and associations, the RedHen framework is extensible and flexible and can be leveraged to produce a broad range of CRM solutions. For instance, RedHen could be used as a light-weight sales pipeline management tool for small businesses. RedHen CRM could also be leveraged as an integration point between Drupal and much larger, enterprise CRM solutions such as Salesforce. 

Case studies on Cornell University 

The university offers hundreds of opportunities to the students including the ones that are living aboard. But to take the advantages of the opportunities the student had to navigate a full maze of departments and websites. Thus, to solve this issue Cornell University Experience Initiative (CUEI) came up with a plan to bring out a “Netflix” like experience to the students that provide customizable user guide making it easy for the students and the opportunities. 

An organization known as Pantheon was chosen. They wanted to maintain there content with Drupal but also wanted to manage student application and data with Salesforce CRM. The whole team chose Message Agency as their partner to help conceptualize how Drupal and Salesforce would work. Message Agency is also an architecture of the Salesforce Suite, a set of Drupal modules that allows integration of these two powerful solutions.

Screenshot of the home page of Cornell University’s official website


There are interested students who come to the site to find things and explore. For that task, Drupal does a really good job, but when it comes to actions and customization Salesforce wins in it. This created a whole new paradigm of student’s communication and interaction. 

The technique of centralizing information also provided Cornell with opportunities where each department had their individual page or site with content strategies. But before the website went live the CSEI team tested the user experience with the most trusted stakeholders: Cornell Students

The feedback which they received was overwhelming. They granted with positive reviews telling that how great and well organized the website was. Not only this but Pantheon also evaluated the site’s performance under the traffic load by providing complexity and image-heavy design 

The Future 

The wide raps of what Salesforce and Drupal make possible has given us a vivid idea on how the sales can be increased and raised among the marketing organizations. If you take one view away from all of the above, it should be this: there's definitely an integration that will work for your organization's needs and budget, but it might not be as efficient as integrating Salesforce and Drupal.

If you are able to get a Drupal-Salesforce integration deployed to your operation and organization, there is no doubt on the fact that you will enjoy streamlined and optimized business processes in the short and long term, thus boosting sales and also making the entire process much more comfortable and effective. The flexibility and customizability of Salesforce could prove to be troublesome when it comes to the consistency of your back-end.

Conclusion 

Drupal installations are all unique because of the different modules and customizations that they use, so integration has to be set up in a different manner by an expert.

If you already have a Salesforce instance set up, we'll be happy to explore the appropriate integration options. If you're new to Salesforce, we can work with your Salesforce developers to make sure your data is structured in a way that minimizes the integration effort and costs. 

Ping us at  [email protected] now for the required services related to the whole topic.

Jan 31 2019
Jan 31

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

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

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

Image of 6-star trek characters drawn upon a big bundle of new species


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

What the initiative focuses on?

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

  • Software components licensed under EUPL-1.2

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

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

Image of a circle which consists of an inner blue circle. Inside the blue circle there is EUPL text drawn around golden stars
  • Open Source Strategies 

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

Equal treatment in the procedure 

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

Contribution to communities 

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

Clarifying legal aspects

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

Good Communication

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

A circle that says open source strategy which is overlapped by four circles in all the four direction

 

  • Web Services Architecture Overview 

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

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

A software system whose main purpose is to publish and maintain data by using hypertext-based principles. 
 
A blue circle that says retrieving Processing Interpreting with three Unicode arrows around it. Image of data, information, and humans are made in between it

 

  • Open Source Projects 

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

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

Screenshot of the PHP projects that are under EUL license

 

Screenshot of the Drupal projects that are under EUL license


OpenEuropa Coding Standards

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

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

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

Development Environment

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

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


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

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

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

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

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

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

Automated Testing for functionalities

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

User Stories

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

Unit Test 

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

Can Drupal components be tested as well?

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

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

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

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

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

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

Minimum Stability Required

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

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

Experimental modules in the alpha state

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

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

OpenEuropa Release Cycle

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

MAJOR

Incompatible API changes, very rare and planned in

MINOR

Adds backward compatible manner functionalities and bug fixes
 
PATCH 

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

Release Preparation and testing in Drupal

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

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

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

Release Support 

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

Conclusion 

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

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

Contact us on [email protected] for any queries and questions to the related topic. The professionals would guide you with the same and provide you with adequate services.  

Jan 28 2019
Jan 28

Visualise yourself getting involved in a social experiment (and you are oblivious of your involvement). You are walking down the street and find cash on the sidewalk. You get drowned in different thoughts as to whether casually pick it up and slip it inside your pocket or just plod away as if you haven’t seen anything or just take it and give it to someone needy. Supposing you have chosen the second option, you, then, realise that it was a social experiment as some guys come towards you appreciating your character.

Illustration showing a human brain with eyes on right and several small white boxes consisting of small icons representing house, car, cup, bowl, emoticon, piechart on left


Sometimes life gives you such opportunities without even giving you some sort of prompt where you are automatically tested for your behaviour. Speaking of an automatic test, there is a different sort of automated test involved in the digital scene but has a lot of significance. Adding test coverage to your website and application can be very fruitful. For instance, you can ensure that requirements are met and avoid regressions from happening. One of the many approaches for testing is Behaviour Driven Development (BDD). As one of the leading open source content management systems, Drupal enables you to imbibe automated testing through tools like Behat in your website.

Diving into Automated testing

Automated testing is a process that involves pre-scripted tests which are run automatically. Their function is to compare actual results with expected results that help in determining if the application works as expected. It can help in executing iterative tasks and regression tests to verify if an application works correctly after the newly implemented alterations.

Automated testing is a process that involves pre-scripted tests which are run automatically.

On the contrary, manually testing involves quality assurance specialists who need to verify that the applications are working properly by following conditions written in test cases. In spite of its primitive nature, it is still very significant in cases like wearables and mobile devices that may need field testing in a physical environment.

Infographics showing different icons inside several yellow-coloured circles with each icons representing clock, spider, tick mark, desktop, curved arrow sign to explain benefits of automated testingSource: Gear Inc

Automated testing saves a lot of time by reducing the time to run repetitive tests which, in turn, saves money. It vastly enhances your test coverage. Lengthy tests that are, most often than not, avoided in manual testing can be run unattended. It also improves precision by performing the same steps precisely whenever they are executed and never misses from recording detailed results. It can simulate tens and thousands of virtual users interacting with a network, software and web applications. Moreover, shared automated tests can be leveraged by developers to detect problems quickly before sending to QA.

Automated testing in Drupal

Drupal 8 core testing framework comes with numerous automated testing options. To ensure the quality and reaction of code on edge cases, testing can be performed in different layers:

  • To test class methods, you can write Unit tests which constitute the process of testing the discrete parts or units of a software project. PHPUnit can be leveraged in this case.
  • For testing module APIs, you can write Kernel tests which are basically unit tests on steroids.
  • You can also adopt functional testing where software testing is performed for detecting the actual performance of an application’s functional requirements. Functional testing is great for accuracy, interoperability, compliance, security and suitability.
  • There is also the possibility of utilising an external framework like Behat with scenarios in gherkin syntax.

Power of Behat

Logo of Behat with the word 'behat' written in black colour and an icon representing number 8


Behat is an open source Behaviour-driven Development (BDD) framework, as stated in the official site of Behat, and helps in supporting the process of delivering software that matters via perpetual communication, deliberate discovery and test automation. BDD is a way of building software through continuous interaction with stakeholders in the form of examples like what help would a particular software be offering to them and you for attaining your goals.

Behat is an open source Behaviour-driven Development framework.

Behat was created for PHP and is a spectacular PHP library to the core with its codebase leveraging a superabundance of Symfony components, strictly adhering to coding standards, and comes out on top in major static analysis tools. Moreover, Behat has superb extensibility as almost all of its functionality could be enhanced or replaced via a magnificent extension system.  

Behat for Drupal

There is a provision for a Drupal extension that offers an integration layer between Behat, Mink Extension and Drupal. For the starters, this Drupal extension can be enabled using Composer followed by the creation of behat.yml file in the projectdir. You also get to add your features files to the features directory of your repository that contains human-readable steps to test something.

By describing the behaviour of a site in plain but stylised language followed by the process of turning that description into an automated test, Behat and Mink come in very handy. These functional tests enable the site builders to ensure that the added value that is created while building a Drupal website keeps on behaving as per the expectations even after alterations are done to the website like security updates, changes to custom code among others.

This Drupal extension helps in setting up test data using Drush or the Drupal API in addition to defining theme regions and test data that appear within them. It also assists in clearing cache, logging out and other such significant steps. Moreover, it is an astronomical solution for detecting and discovering steps offered by contributed modules and themes.

Case study

Global Canopy Programme wanted to retrieve the news syndicated from a plethora of public sources, govern it through an internal application followed by resyndicating it to numerous public-facing sites. For this, it leveraged the power of Drupal with the help of a digital agency to build this application called Forest Desk. They followed the paradigm of BDD that was beneficial for each piece of functionality and could be embedded in the Scrum process.

Behat was meritorious for testing whether the functionality has been built correctly. It turned out to be an essential tool for testing comprehensible action on a website like clicking links or hitting submit buttons. Behat’s knowledge could further be extended using custom PHP code thereby leveraging it to understand RSS which is the format for syndicating content on the web.

Behat’s knowledge could further be extended using custom PHP code thereby leveraging it to understand RSS which is the format for syndicating content on the web.

The RSS standard was utilised for syndicating data and Drupal’s Feeds module was very beneficial in consuming this standard from remote websites and modules like Views helped in repackaging it for consumption by other sites. Furthermore, the Adminimal theme offered an immaculate administrative design.

For developing each feature, once its scenario was specified in Gherkin syntax, Features module was leveraged. This helped in altering the configuration and save the changes and return to the previous state of configuration in case any BDD test no longer works.

Conclusion

Behat is a great tool for enabling superfast and efficacious automated testing in Drupal development.

Offering stupendous digital experience with our suite of services to our partners has been our supreme goal.

Contact us at [email protected] to get the best out of automated testing through this wonderful tool - Behat.

Jan 27 2019
Jan 27

Girish Mathrubootham launched his startup Freshdesk, a software-as-a-service (SaaS) venture, with Shan Krishnasamy in a small conference room of his friend’s office. Its staggering growth in a short span of time coerced them to move to a suburb and convert a warehouse into an office. Subsequently, they went on to have a proper office. With a humongous rise in stature, they had to literally break the walls to expand its workplace. ‘Breaking the walls’ represents the swift growth of this SaaS-based firm.

Top view of workplace showing people sitting in front of computers


Such is the significance of the SaaS model that it can enable the enterprises to emphasise on business outcomes rather than working around technical limitations. SaaS clients relish the quicker and flexible deployment and frequent automatic updates to increase the pace of innovation. SaaS standardisation simplifies Research and Development and uncloaks new collaboration and sharing potential. SaaS-based business applications promise faster time-to-deploy and an agile, incremental approach for attaining business goals. Drupal, as an open source content management framework, can be very beneficial for building SaaS. Before exploring Drupal’s power in building SaaS, let’s traverse the origins of SaaS briefly.

Origins of SaaS

Infographics showing the timeline of SaaS with a line at the centre, greyish background and cloud icons on the rightSource: Process Street

An interesting compilation by Process Street delineates the history of SaaS and takes us back to mid-twentieth century. It states that IBM was the 1960s SaaS company and IBM 360 Model 67 provided processing power to many organisations. Computers were not as powerful as we have today but this allowed them to have the data and power hosted in a different physical location to the one they are being used in.

The ‘70s and the ‘80s are touted to be the time period when pre-SaaS architecture grew. This was the time when first ever CRM (Customer Relationship Management) called ACT! was developed. This was also the time when Great Plains Software emerged in the market which was later acquired by Microsoft and turned into Microsoft Dynamics.

SaaS-based firms like Salesforce, NetSuite, and Intacct established themselves in the 1990s. Moreover, inefficacies in Application Service Providers (ASP) gave further push to the growth of SaaS. As a matter of fact, Salesforce was the gamechanger in the SaaS business. Eventually, SaaS has gone on to become a proven business model and it is one of the most sought after solutions among the enterprises today.

A quick look at SaaS

flowchart with different icons representing laptop, desktop, smartphone, houselock, certificate to explain SaaS, PaaS, and IaaSSource: Microsoft

Gartner defines software as a service (SaaS) as software that is owned, delivered and managed remotely by one or more providers. The provider delivers software based on one set of common code and data definitions that are consumed in a one-to-many model by all contracted customers any time on a pay-for-use basis or as a subscription based on use metrics. Biggest SaaS organisations today include the likes of Salesforce, Microsoft, Google, Adobe, Amazon, etc.

Software as a service is a software that is owned, delivered and managed remotely by one or more providers.

SaaS helps you in gaining access to intricate applications. You do not have to buy, install, update or govern any hardware, middleware or software for offering SaaS apps to the users. Complex enterprise applications like ERP (Enterprise Resource Planning) and CRM are made cost-effective by SaaS. This is advantageous for the organisations that have the dearth of resources to purchase, deploy and handle the required infrastructure and software themselves.

By paying for only what you use, you wind up saving superabundance of money. Furthermore, you can run most SaaS apps directly from the web browser without having to download and install any software albeit few apps that require plugins. It streamlines the process mobilising your workforce and with the data stored in the cloud, you can access the information from any internet-connected computer or handheld device.

Drupal for SaaS

Suppose you already have a SaaS product, you can use Drupal to build the website and market your product. Drupal’s tremendous features for content governance and e-commerce can be an astounding solution to take your product to an unprecedented reach. 

Can I use Drupal to build a SaaS? Yes, you can also build a SaaS solution utilising the powerful capabilities of Drupal. Governments are required to confront a plethora of social determinants that affect healthcare outcomes and overall spending. An agency talked about building a Drupal SaaS solution in a session hosted by Drupal 4 Gov for connecting citizens with services.

[embedded content]


The State of Idaho innovatively compiled both government and community services through a single platform and simplified the process of assisting citizens to avail the right sort of services through its ‘Live Better Idaho’ program. Drupal turned out to be an astounding choice for building this platform because of its immaculate content workflow, extensibility and interoperability. Amazon Web Services was also leveraged for its great scalability.

Drupal turned out to be an astounding choice because of its immaculate content workflow, extensibility and interoperability. 

Civiserv, a Drupal-based citizen portal which is focussed specifically on powering the delivery of social and health services by state and local agencies, came in very handy for building ‘Live Better Idaho’ program. Offered as a SaaS product, it comes as a configurable virtual assistant that helps to bridge the gap between target audiences and the services that they need the most.

A lot of developmental effort was put into creating means testing. To improve personalisation factor, user accounts were integrated that allowed users to set up accounts and preserve their searches and favourites within the site. In addition to this, email signups and text alert functionalities were added so that notification was sent to the user whenever new content is published or any new event is added. For efficacious tracking, reports could be seen to find out the number of referrals that were being generated or the most popular service among users.

The session also presented a demonstration which showed the platform having simple navigation of services under different categories like financial, healthcare, food and nutrition among others. In addition to this, a conventional search box could also be utilised for finding the relevant services. The means testing was demonstrated through the ‘Tell us about yourself’ option where you need to enter particulars like your age and monthly income and the results pop up showing relevant services. The results could be further narrowed down by choosing particulars like ‘within 5 miles’ or ‘Teen: 13-17 yrs’. 

What lies ahead for SaaS?

graphical representation with pink background and a black line with white dots on it to represent usage of SaaSSource: FinancesOnline

SaaS will be powering almost 80 percent of the business workflows by 2022 as can be seen in the graphical representation below.

Moreover, Wikibon’s 2018 Cloud Markets and Trends report states that the largest segment of the cloud industry is SaaS and will grow to $346 billion at a CAGR (Compound Annual Growth Rate) of 25.9%.

A report on Transparency Market Research states that CRM is registering the highest demand for SaaS solutions. ERP and the collaborative solutions segments will pick up the pace by 2022. The increasing trend of e-commerce, infrastructural growth and increasing customer support services will accelerate the use of SaaS solutions. HCM (Human Capital Management) is slated to be registering quickest growth in the demand for SaaS solutions at 32.90% CAGR in the forecast period of 2015 to 2022. The rise in the need for smart and talented workforce in organisations across the world is the reason behind this growth.

Conclusion

SaaS is great for digital businesses as it fosters a quicker, more agile approach to application deployment and is an integral component of any digital transformation project that is prevalent in a plethora of application portfolios.

Drupal can be a quintessential solution for delivering a SaaS offering with its fantastic content workflow capabilities.

We are perpetually committed to delivering an amazing digital experience to our partners through our suite of services.

Ping us at [email protected] and let us know how can we help you achieve your digital transformation goals.

Jan 27 2019
Jan 27

As children, we have all come across chapters which were all about Human Rights. Right to express your own opinions, right to educate, right to equality and right on not to be mistreated. 

To deny people their human rights is to challenge their very humanity. 
-Nelson Mandela

The way these rights have been allowing everyone to live in dignity, freedom, equality, justice, and peace can easily be correlated to the four rights of open source and web that is following the similar responsibility. 

When I talk about open source or open web I am precisely talking about freedom to use, study, share and improve. In short the ability to use the internet to build and make something. 

Image of different letters with open in it


Open Source and Open web might have the same rights, but these terms as a whole have a very different meaning. 

Past of the Open Source and Open web

Open source and Open web have played a vital job in the IT business. From frameworks to the biggest supercomputer, and from the handset in your pocket to the product working the sites, both these things have made a mark in the lives of its users.
 
The saga started during the 1950s when an eager figuring master and corporate research fabricated and imparted the product to its source code which was simply tuned in to the general thought of information trade.
 
Though the web was initially figured and delivered to draw in the interest for computerized data sharing between the researchers in colleges and foundations around the globe. There are fields in which it has made its stamp. New methodologies in fields as various as data (Open Data), legislative issues (Open Government), logical research (Open Access), training, and culture (Free Culture). 
 
In the late 1970s – mid-1980s, the main programming licenses showed up. That is when programming items ended up secured by copyrights and trademarks.
 
In 1983, Richard Stallman started the GNU project to make a working framework with its source code which was accessible and open. The free software foundation was built up. 
 
In the late 1990s, Linux started the enthusiasm of various organizations and government associations. A great deal of site-based new businesses was built up in those days which drove up interest with the expectation of complimentary web servers, in the primary line the Apache HTTP Server.
 
As the product business has developed, working frameworks developed into increasingly unpredictable and present-day applications. 

Open source and Open web Presently and Ways in Which they are different

  Open Source Open Web  Definition  The original source code is made freely available. Parts of the web that are public and viewable by everyone  Constitutes of Source Code, Derived Works, Integrity of the source code etc
Ability to publish, code, access 
  Why is it important? It promotes the development of powerful software tools. Presents with a more informed public, civic participation, opportunities to learn

Definition 

Open Source 

The term "open source" refers to something that people can modify and share because of the fact that its design is publicly accessible. It allows its users to copy, modify, or delete parts of the code under their own choice. The user is able to work functions of the open source on their own program where there is no consequence. "Source code" is the part of the software that most of the computer users don't ever see; it's the code computer programmers can manipulate to change how a piece of software—a "program" or "application"—works. 

Open Web 

Open web refers to the public side of the web. That can be easily accessible to people.
The public side of the Web. There are parts of the Web that are public and viewable by everyone and others that are private. The countries that do not restrict their citizens from viewing content on the Web. For me the Open Web is about the ability to openly do three kinds of things:

Constitutes of

Open Source 

Open source doesn't just involve the accessing of the source code. The distribution terms of open-source include the following criteria:

  • Source Code: The program must include the source code, and must allow distribution in the source code in a compiled form. Where some form of a product is not shared with source code, there must be well-publicized source code for no more than a reasonable reproduction cost, preferably downloading via the Internet without charge
     
  • Distributed Works: Different licenses enable ps the programmers to change the software with several conditions attached. When you modify the source code, open source needs the inclusion of what you should alter.
     
  • Distributed revision control systems: When many developers in different geographical locations change the data and files, these systems let the different versions and updates.
     
  • Bug trackers and task lists: Open source allows large-scale projects to control the issues and keep a track of their fixes.
     
  • Testing and debugging tools: Open source automates testing during system integration and debugs other programs.

Open Web 

Open Web is all about the experience and the ability to do three types of things:
Publish: The content and the applications on the web in open standards allow the users to declare and publish the data online. 

  • Code and Implement: The web standards depends totally on the content and the applications which depend on it.
     
  • Access and Use: The content, code, web applications, and the implementations can be accessed and used easily.

Why is it important?

Open Source 

Open source is great because it promotes the development of powerful software which is increasingly reliant on. It has encourages things around. Things like: 

  • GitHub and Open Source 

Adding to the open source can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. GitHub has been providing open source software to its users to use and explore. This helps in successful delivering of the projects. Developers have the power to create and control open source software with the help of Github. They can create a project that interests them to see its progress as it happens. They don’t have to build everything from scratch or make copies of their favorite projects, an experiment in private repositories, and tailor tools and features to meet the needs.

Image of a black cat beside which GitHub is written


Drupal is an open source content management system (CMS) that powers an estimated 2% of all websites. One of the greatest benefits of using Drupal CMS is the fact that it is open source. That means according to the Drupal websites anyone can download, use, work on, and share it with others. Drupal allows continuous digital innovation at leading organizations like weather.com and NBCUniversal. With Drupal, marketers, and web developers can build and maintain great web, mobile and social experiences. 

Drupal as an open source software has long-term viability. Selecting technologies means committing to solutions that will support an active, growing business over the long term, so it demands careful consideration and foresight.

Image of 8 yellow circle defining open source practices


Open Web 

An open web is a movement which goes up against some of the largest platform companies of the world that have control over our data, in short, it means positive progress of things like:

  • A more informed public 
  • More civic Participation 
  • More opportunities to learn and connect with each other 

The open web is decentralized 

The decentralized web or Dweb could be an opening to take charge of our data back from the big tech firms that have been spying and beholding on it from quite some time now. A big example of it is Facebook which recently got under the radar of security issues.

Determining the best type of software depends on the business needs and objectives. The best way to compare is to look at some of the biggest differences between the two types.

Are open source and open web at risk?

Open source and open web are losing in its genre. Open source does have restrictions and risks that comes under the drama. Social issues such as data protection and privacy, political issues such as net neutrality and copyrights have been compromised through things like automation of fake news, the use of CMS to take out a step in future and the idea where there is no information of the people who are being interacted. 

  • Open Source Software Security Risks

Open source security vulnerabilities are really lucrative opportunity for the hackers. Once discovered by the security research community, open source vulnerabilities and the details on how to carry out the exploit are made public to everyone. This provides hackers with all the information that they need in order to carry out an attack. 

  • Open Source Software Licensing Compliance Risks

Every open source software component, along with its dependencies, comes with a license. When we use an open source component in our project, we are agreeing to a set of terms and conditions that we must comply with. This can become murky territory for anyone who is not well versed in the ins and outs of open source licensing.  

  • Open Source Software Quality Risks

While an organization invests many resources in the quality assurance of its proprietary code, it appears many development teams marginalize or overlook checking an open source component’s quality. Obviously, we all want our final product to be stable and consistent under pressure.

So now the question is- how to solve it?

Google is presenting all of the company's open source projects under one roof. Any company considering releasing some of its code under open source licenses might want to take a gander at Google's new website, Google Open Source. It's not a repository, for source code you'll still have to go to GitHub or the company's own Git service, but more of a catalog of Google's open source projects, with each listing including information such as how the company uses the software, its license and so on.

Google is no newcomer to open source. In its early days, it built its infrastructure on the back of freely available software, like Linux, and has been a major contributor to the open source canon ever since. Kubernetes would be an example of a project it 

Future of Open Source: How can it win?

Today, open source is the default. Every major technology starts there, whether that’s a cloud, AI, mobile or containers. To win the Open source you can follow three methods:

  • Start blogging 
  • Increase in the User experience 
  • Define 

As the Internet continues to expand in new ways, so do innovations and revolutions. Anyone can contribute to open source projects. And, today we're seeing open hardware, the Internet of Things, and the Maker movement takes hold and changes the way we are solving problems and shaping the world.

Google Amp Project and Open Web

The AMP Project is an open-source initiative that is aiming to make the web a better place for all. The project enables the creation of websites and the ads that are consistently fast, beautiful and high-performing across devices and distribution platforms. Moreover, the sites that have adopted AMP have seen encouraging gains in site performance and conversions (which presumes a correlating better site user experience). These and other noted benefits have led Google to begin with the working toward the technologies utilized by AMP and folding them into open web standards.

A blue background with a mobile phone where a meter is drawn on the screen and google amp is written on its side


Business Eco-System and Open Source 

We have seen open source growth and changes in different approach on how to build a business model. Technology has changed a lot, thus the innovation has been taking place in open source projects to an extent. Overall, the world of software would be much different without open source software. 

Wrapping Up 

Open Source has become dominant on the web over time. Today over 90% of the CMS market is open source. In fact, it’s nearly the de-facto license model for the all-things web. To say that the internet is an open source would not be an exaggeration, it’s that dominant. 

At Opensense Labs, building a successful service model is no task and we are always ready for the challenge. We bring features and capabilities into a new direction with all the abilities of open source. Ping us on [email protected] to build an open source project that would form a building block for your futuristic applications. 

Jan 25 2019
Jan 25

When I say that a mere thank you to the development of site building tools won’t be enough, would you agree with me?

You might, you might not. 

But imagine a building that is under construction. Without the use of the right raw materials and tools (like cement, bricks, metal rods, labor etc) the task of constructing and maintaining it would be difficult to achieve. 

Right?

An image of a building that is under construction where a crane is uplifting metal rods and a bulldozer is situated at the right side with a construction sign of left.


In the case of Drupal website, modules play a similar role, like that of the site building tools. 

We can witness a myriad of modules to build and maintain a Drupal website. These modules build a foundation to the website structure that continually adds the "bricks" to make a sound and holistic site.

But, the main question is - Which modules are the right one to build and maintain a website? 

Site Building vs Frontend vs Backend

  Site Building Frontend Backend Refers to the Supporting of all the digital marketing efforts.   The client side of the application   The server side of the application  Constitutes of Web design and development for the site building process. The part which the user can see and interact with Everything that happens behind the scene  It covers Site hosting, Themes, multi-domain, HTML, CSS etc  The visual aspect of the website. The server requests. The web server communicates with the database. Serves in Helping an effective communication with the audience.  Creating user-friendly pages. Maintaining application and database.

Things you would need to build a website 

When you are constructing a Drupal website, there are a lot of things which are needed. As important as it is to write your HTML and CSS codes, several other factors contribute highly to the whole process. Factors like:

Blue Background with four square in four different directions, each pointing to each other in an iterative form. The boxes state web hosting service, modules, time savers and environment respectively


Web hosting service 

When you upload your files on the cloud, only those people are able to access them whom you have granted the authority to. 

Well, think of web hosting as the same. Your website is the file and is essentially being put on the internet for the people to be viewed. Instead of sending complex website files to every person you can simply provide with your website URL and they can easily view it all. 
Web Hosting allows you to put all your website content for people to view them. Instead of sending those files to people, it allows you to host them online. Having web hosting means that all your potential readers will be able to view your content at anywhere at any time.

5 black clouds with a blue cloud in the center saying web hosting. 7 dotted arrows are emerging from the cloud. The arrows say email, software, files, websites, database, servers, backup respectively

While choosing a hosting service, you must consider 4 big factors:

  • Uptime: Uptime percentage shows how much time your site will be up and running. Note that weak server and unstable network connections can often push your site offline. Banking on a hosting company with reputable uptime score, preferably above 99.5% is the key to your site success. 
     
  • Page load speed: You should choose a host that loads faster than 850 ms, which is the current average. Factors like a fast hard drive, locating essential resources easily, dedicated and enhanced resources contribute highly to the page load speed. 
     
  • Customer support: This is an important aspect for your web hosting. Your provider should have a good, responsive, solid reputation in their support department. Most of the providers offer multiple levels of support like emails, toll-free phone, live chat and much more. 
     
  • Price: Everyone wants a web host that is affordable and reliable.  In short, choose the one that you can manage. Make sure that the web hosting organization which you chose has an in-house support department. Compare all the features with each provider in your list and then make a decision. 

Modules 

Drupal is like a blessing to its users. It has a loyal, supportive community that contribute highly to the whole section of modules. It provides its users with excellent modules to the system. All these modules are the set of PHP, CSS and javascript files that present with unique features and functionalities. 

Different Drupal modules would add different functionalities to the website

Drupal 8 core provides modules for functionalities such as.

Functionalities  Modules  Managing User Accounts  Core User Module Managing Basic Content Core Node Module Managing Fields  Core Fields, Field UI modules, Core Modules providing Field Types  Managing Navigation Menus  Core Menu UI  Making Lists, grids, and blocks from the existing content  Core Views, Views UI Module 

Time Savers 

Timesaver is a turnkey timesheet management application designed for businesses of all sizes. The simple and intuitive design lets your administrator set up the system quickly and lets employees use the system with minimal training. The configurable timesheet entry periods would allow you to tie in the pay hours to the timesheet system. It not only provides an easy to use manager workflow that accesses, approves, edits and lock the employee's time but also allows the administrator to configure the task of customers, projects, activities with ease. Some of the amazing features that are granted by time savers are:

  • It provides the users with easy to use interface. A robust, yet easy interface allows the users to easily began the timesaver system.
  • Starting from the entries to the approvals and ending from rejections to locks, the timesheet system is configurable to suit your needs and requirements.
  • Keeps the sensitive information private and secure. It only allows employees and their delegates or supervisors to view entries. 
  • There are pre-built excel reports that allow customization easily.
  • It easily creates new customers, projects, activities, and tasks.
  • Granting the users with AJAX enabled output that helps in streamlined timesheet entry, reporting, and approvals. 

Environment 

As you read it, from functionality to appearance to navigation and code integrity, a lot goes into creating a good website. In other words, the environment that is around the project plays an essential role in the construction of a website. A good environment would not only result in excellent conversions, but it would also bring out the best end result. It totally depends on the factors which involve:

  • Size of the project: It is an important factor in terms of planning and devising. This is particularly important in a multi-project environment where simultaneous project competes for funds and human resources. Small project methodologies would never fit in the one which has a larger preceptive. Thus, making the size an important factor. 
     
  • Size of the company: Building an adequate empire of your organization plays a vital role when it comes to the environment. The size of the company not only contributes to the growth of a company but also helps to gauge the health of the culture around. Size of the company is underpinned with many other characteristics like discipline, development, management, experience etc.
     
  • Level of skills and knowledge of the team: The importance of quality team members and skilled colleagues matter a lot when it comes to the environment. High-grade and skilled team members mean efficiency and management. This not only boosts the other people around but also helps in completing the goal on time.

Things you would need to maintain a website 

Now that you have created a Drupal website and owned it, there are responsibilities which would rise with it. Maintaining on regular basis is one of them. 

Everyone wants that their website should run smoothly with heavy traffic and incredible conversion rates. 

Using a proper website maintenance program can help you achieve it all. Here are some of the things which you can use to maintain it.

Status report screen 

Drupal provides a feature called Status Report which checks a variety of important issues regarding your site's health, including permissions of the folders that Drupal needs to access. Modules that aren’t working because of other modules or libraries that are not installed will also be printed here. This type of report is even important when debugging issues or technical support issue arises. The report is provided in simple plain text format to minimize problems which arise in cutting and pasting up of files.

Cron 

The term Cron refers to the automated task that a website runs on every “N” hour. Cron should definitely be run on your Drupal site in order to keep it healthy. It helps with scheduled tasks like clearing the cache, running jobs like e-mails, reminders etc that can be configured automatically to execute tasks without any manual involvement. 

A properly configured Cron job manages a variety of task.

  • It helps in updating the index of the site content which is used by the search module.
  • Queues feeds are updated with the help of the Aggregator Module.
  • It checks the available updates for the Update Manager module 

It performs routine maintenance task for the System Module.  

Screenshot of Cron listing in Drupal

Caching 

Caching is the strategy that improves the efficiency of accessing existing information types. Any information which is in the raw state can be cached into its non-raw state. During the processing of HTTP requests, the information from a different source can be stored in different bins. These cache bins then each is stored in different configurable backends. 

By default Drupal enables two modules for caching:

  • The Internal Page Cache Module: This module caches pages for anonymous users in the database. Pages that are requested by anonymous users are stored the first time they are requested and then they are reused for future visitors. 
     
  • The Internal Dynamic Page Cache Module: This module aims to speed up the site for both anonymous and logged in users. 

Deployment 

Drupal deployment is designed to allow the users to easily stage content from one Drupal site to another. In other words, when you are working on a Drupal site it is a good practice to use one or more different environments to develop or test your website without affecting the live site’s availability to the world. The changes which are made in the code or the configuration which of the developed website are then deployed with the help of the automated process. This helps you to create various content types or modify the configuration of the front page. You can then deploy those changes without resorting the replicated changes on the live website. 

How can Drupal help in Building your Websites? 

Drupal 8 is a great system to use, instead of trying to code or pay the third party to build the website, Drupal tends to deliver all the elements for an online presence. 

Like good buildings, Drupal website can be very solid, beautifully designed and convenient in every way. After you have installed Drupal and selected a suitable web host, it’s time to start building the website. 

Drupal 8 comes with the most popular text editor module as well as image uploaders which provides you with basic HTML control and tools when writing content. Text editor modules like paragraphs give you cleaner data structures so you can give more editing power to your end-users, and if you are worried about your mistakes - Environmental Indicator would help you with the correction of all your errors. It would create multiple environments which would make navigation easy. 

The CMS also provides site builders and administrators with a powerful user interface to create custom automated workflows on a website, without any coding, using "reactive" rules. Site builders can use the rules module to react when something happens on a site and conditionally manipulate data or execute any logic necessary. 

Once you have created the data on your website would need elements to arrange it. Panelizer module would allow you to arrange the fields in your content such that no fields are stacked on top of each other. In short, it would allow you to attach panels to any type of node in the system and customize your content.

Copying files folder to the development and downloads the files from a specified server have been easy with the help of stage file proxy. It is a general solution for getting production files on a development server on demand. With the help of backup and migrate module you can dump some or all of your database tables to a file download or save to a file on the server or offsite. Therefore, all your current data in your database related to the users can be masked with the help of Mask User Data (GDPR)
 
There is a devel module in Drupal 8 that is a valuable tool for constructing and coding websites. Devel is usually used for low-level development of a site. This module also features Drush integration and provides with several custom Drush demands. ( Drush is a shell interface with is helpful in managing Drupal right from the cloud server command line)

Once you are done with the production of your website profiling your site is extremely useful not only for debugging and performance testing but also for learning that how a site handles a request. WebProfiler helps in doing such a task. Its bundle is a comes with Drupal module that for Symfony which helps in collecting the information about each request that is made to your application and allows you to visualize it on the browser. 

A circular infographic of the modules in Drupal with 7 sections each having different colors

How can Drupal help in Maintaining your Websites? 

Now that your website is up and running, you would need to maintain it now and keep an eye on every aspect. This includes appearance, performance and other aspects as well. Fortunately drupal comes with a set of contributed themes. These themes help in the appearance of the site. It allows you to change your look and feel of the website. The PHP template engine has been replaced with the all-new twig template. All themes files are the HTML.twig. It also had made modification in the syntax, .info files become .info.yml files that use the YAML syntax.
 
Drupal is also known for offering excellent multilingual capabilities, ensuring that your website is accessible to the widest possible audience. Modules like local (integrated with the core), content translation (integrated with the core), internationalization, variable contributes to the multilingual aspect of the website.

And if you are thinking that Drupal can't get better than this then think again.  It also comes with multi-domain capabilities. Multi-domain allows you to span one site across multiple domains. You can configure which domains to use for different parts of your site including which protocol that section uses.

Drupal is for everyone. From developers to marketers, it has extended its horizons. The instantly installable and no programming requiring modules come with customizable shopping carts and products which are showcased pertaining to a theme. With it, one can create taxes, discounts and charges heads and even give opportunities for subscriptions and recurring payments. Make the top e-commerce modules to receive donations too.

Wrapping up

Depending upon the requirements and keeping in mind both the security and scalability of the website, Drupal is and has always been a very powerful and flexible platform. True, that it presents us with secure and reliable modules and keeping in mind certain features and factors - Drupal has won many hearts. 

Hence, to have the best website experience you need the best organization. Opensense Labs has been harboring strong relations with its partners and providing them with ample solutions and digital services

Contact us at [email protected] to get the best digital experience.

Jan 25 2019
Jan 25

Suppose you wish to create a thriving vegetable patch. 

What would be your starting steps?

You would read the instructions, plant seeds and provide them with a proper environment (sunlight, water, time).

Correct?

You wouldn’t just throw seeds around and order them to grow - “Hey you, become a cabbage right now”

Image of a vegetable field where two people are working on it


Same is the case with a team. Nurturing a healthy team culture is really important for the growth and development of an organization. When your team is “in the zone”, being productive and on time, you acknowledge that phenomenal feeling. 

It’s like a sweet cocktail of emotions -  excited, challenging, safe and successful. Pumped up for the entire day and energized to do the work. Happy team members tend to achieve the desired goals at a faster pace than the ones which are not looked upon. 

And this is how you can achieve it.

Personal Development Plan

The first step to help the team members achieve their personal goals while contributing to the company’s goals is implementing the Personal Development Plan.

Personal Development Plan shows the team members all the opportunities in the company and helps them to set a clear but ambitious goal for the future. The process of achieving this goal in a transparent corporate culture is motivational.

A Personal Development Plan helps you to think about your future in detail and helps you in getting there with the specifics. 

The process of building your plan can take a considerable amount of time but it is an excellent idea to increase the efficiency and performance of the company. The process includes some important factors which are: 

Clearing your vision

To start with the Personal Development Plan you have to study beyond the end. Think about your future life and how it can be in the time span you choose for yourself, and now take a step back and review yourself. 

What are the areas that would make you feel successful? Or how can you determine your efficiency and values?

Now map them by putting everything you would want. After you have the primary key fields for your development, you would have a clear vision of the areas you have to focus on. 

Areas of improvements

Now that you know what you want, you next have to figure out that what are the means of going towards your goals. Prepare a list of skills you need to develop and the projects which you can start working on. Write down your areas of weakness and strength. This would help you to think about the regions which need improvements and the areas which should be lightly focused on.

Establishing goals 

Now that you have a crystal clear direction let’s get down to the details. The primary agenda is to get down to specific actions for the future. Start by setting up particular projects and the resources which would be needed to complete those projects. 

This would give you an idea about the things that are needed to be done and the ways in which it is supposed to be completed. You can even tie up your personal development plans to the annual goals. 

Reviewing and Adapting  

To make sure that your goals are being achieved, it's important to review them. Reread your vision, check out the values mind map and then focus on what needs to be done. If you feel that some projects no longer make sense to you, don’t hesitate to remove them from your plan. Also, don’t hesitate to adapt to the plan which has been added with new interests and outcomes. Your personal strategy would grow the way you do.

A pyramid with five different colors horizontal sections. Five arrows are drawn in the left side of the pyramid. Starting from the bottom the arrow says purpose, values, goals, habits, and reflection

Feedback Survey 

Happy employees are more productive than the ones who are just sloping around at the workplace. And how can you make an employee happy? 
Definitely, by asking them about their needs, because let’s face it, it is difficult to predict the wants and requirements of your employees as you aren't a psychic.

So how would you do it?

By conducting feedback surveys. 

Feedback Survey helps the employers to receive meaningful and constructive feedbacks which are crucial for the growth of an organization. It creates a positive working environment which not only delivers happiness to the team but grants them with an added level of satisfaction.  

Feedback encompasses many aspects like work and team performance, Skills, and competencies, an employee’s well being, strategies etc 

It is all about helping employees and organization with personal effectiveness and excellence by creating opportunities for the employees and boosting the company with satisfactory culture environment. 
 

White background which has three pictures of faces in a row. One is sad, one is ok and the other is happy. Below the face are three square boxes. A hand is marking on the smiling face with a pencil

Questionnaires 

So now that you know how much feedbacks are important for the growth, it is important to know that what all questions should be put in front of the employees to get the best result. 

Employees don’t like the proverbial my-way-or-the-highway boss, control freak, or the micromanager. So how do you avoid being a bad leader to your team? 

It’s all about the right questions.

The real questions can dramatically improve an employee’s morale, output, and quality of work. Asking the questions is perhaps the only way to be a truly effective work manager. The following list of questions can effectively build and boost team performance. 

Personal and Company related Questionnaires 

There is no doubt to the fact that each one of us has a value system, which holds our everyday decisions. Also, the organizations that we work in, base their daily activities on a certain value system that they use. However, questions of how much do our personal values coincide with the prevailing/existing values of that of an organization can provide you with adequate research. Questions like:

  • What’s your biggest accomplishment this month?
  • What should we do differently?
  • Is there anything that the company can help you with?
  • What process can be fixed or improved?
  • What inspires you to succeed every day?

Self-assessment

A focused employee is a reliable employee and what can be the best way to review your work than self-evaluation. Self-assessment allows for management and their workforce to engage in a helpful dialogue about career development and goals. Some of the questions which can be put for self-assessment are:

  • What’s your biggest challenge right now?
  • What resources would be helpful to you right now?
  • Anything in your work world that’s less than stellar/causing frustration or delays?
  • Looking back to the week is there anything that could have been done better?

Future Goals

Growth creates opportunities for your people to develop their skill, attract the best talent for your company, and create wealth for you and your investors. Therefore, to achieve that growth it is important to have new ideas and notions for the future. To know that you can put up questions which include:

  • What are the things that your work environment should have to improve the performance of the organization?
  • What additional training or education can the organization provide to bring out better results?
  • Where do you see the company in 10 years?

Presenting results and structuring the follow-up talks 

There are good meetings and then there are bad meetings. Bad meetings drone on forever, you seem to never get an idea about the accomplishments and the goals. Whereas good meeting leaves you with solid plans and structure on how to achieve them. Thus, if you structure your meeting plans, preparation, execution, and follow-ups around these following factors then an effective result can be witnessed for your organization.

Achieving the meeting’s objective 

An effective meeting serves a useful purpose. This indicates that in after conquering those objectives you would tend to get the desired results. With the end result clearly defined you can plan the content of the meetings, and determine the people who should be present.

Minimum time and more productivity 

Time is a precious resource and no one wants that their time should be wasted. With the amount of time that we spend in a meeting, you tend to owe it to yourself and the members which are there in the meeting to have a clearer vision on what has to be achieved and that what all is possible. The time that is wasted in a meeting is time wasted for everyone which means less efficiency and less productivity. Assigning particular topic of discussion to various people is a great way to have qualitative progress. 

Structured Process 

Now that you have the agenda prepared, you need it to circulate among the participant and get their feedback and inputs. If there is something that a team member needs to add then a lot them with the task. After the meeting is over take some time to debrief and determine that what went well and the areas which need improvement. Evaluate the meeting effectiveness based on how well you met the objectives. 

Image of 8 people sitting in a meeting. Above then are the pictures of piechart, settings, clock, blub etc each depicting teamwork and its benefits

Conducting Basic Coaching Conversations 

You can help your reporting employees improve their current performance, or in case of already effective ones, you can boost them to another level of effectiveness by having basic coaching conversations. Performance is a powerful tool when it comes to coaching team members. 

Note that the goal of performance coaching is not to make the employee’s disheartened, nor it is to help to provide a show on how much the HR professionals or manager know. The main goal of coaching is to work with employee’s to solve performance problems and is done to improve the work of the employee’s. 

Thus by using these following steps, you can provide effective support to your reporting employees. 

  • Show confidence in the willingness and ability of employees.
  • Describe and explain the performance problem and behavior of the employee.
  • Determine how to remove the four common barriers: time, training, tools and temperament.
  • Discuss the potential solutions.
  • Agree on a written action plan that includes the employee, the manager, and the HR. 
  • Set a date and time for the follow-up.

Possible challenges that can be faced 

Advancing and using effective employees performance is quite difficult and challenging. This is especially true if your company uses a workgroup or team structure and you want to assess the quality of the team's performance. The challenges can vary from employee’s belief to trivial coordinating issues. There can be a number of challenges that can be encountered among which some are:

Low interest in filling out surveys 

Everyone wants a 100 percent response rate for the betterment of their organization. The level of participation in filling out survey forms can be either extraordinary or not at all. Two main reasons where an employee might not participate could be because:

  • Many employees through several surveys and no change seems to come to the results.
  • Fear of being judged or misinterpreted. 

Poor feedback or no feedback

National Business Research Institute shows the importance of the annual employee survey. It explains that employee engagement increases the overall profit margin up to 6% and results in five times more shareholder return. 

Clearly, most businesses and professionals appreciate the importance of surveys. Poor feedbacks results in misguidance and lowers the growth of an organization. 

Postponed results

Delay in the results exchanges a negative impact on a company. You should not forget that in a project everything and everyone is related to each one that is present under one roof. It is like a chain which is iterative and should be agile. One step missed, the whole goal suffers. Postponed results may occur because of reasons like

  • Inadequate estimations (budgets, timeframes, human resources)
  • Task complexity
  • Unexpected events
  • Organizational strategy prioritizing some projects over other due to strategic objectives.
  • Bad coordination among team members 

Wrapping up 

When you involve appropriate team members in the resource allocation process, you create a spirit of collaboration on important decisions. Plus, you tend to get more accurate results and outcomes. 

If you are looking for a better way to improve performance across your organization, Opensense Labs services are there for you.  Contact us on [email protected] and help your business grow and flourish more. 

Jan 24 2019
Jan 24

“That’s a beautiful view!”, you exclaim when you witness the sunset while standing on a beach with waves touching your feet. That is when you come out of the rut, leave behind the humdrum life of city and ‘really’ feel a natural beauty. There is another view in the digital landscape that will make you exclaim, “wow!”, and that is Vue.

two people standing near the sea shore as the sun is setting on the horizon


Vue.js is fantastic for developers to build applications faster and make it more attractive and user-friendly. In combination with Drupal, one of the leading open source content management systems, Vue JS can be a brilliant option for web development needs.

A trip down memory lane: JavaScript frameworks

JavaScript framework is great for creating modern applications. There is an interesting piece from freeCodeCamp on JavaScript’s development and how it came through.

Browsers that we see today are did not have the sort of functionalities until the early 2000s. They were much less powerful and, performance-wise, there was no feasibility in creating intricate applications inside them.

Introduction of Google Maps and Gmail, that ran inside the browser, started bringing in the much-needed change. Asynchronous network requests were made a reality by Ajax. Eventually, development started happening on top of the web platform while the platform itself - that constitute browsers, the web standards, the browser APIs, and the JavaScript language - was being worked upon by engineers.

First major projects developed upon JavaScript were libraries like jQuery and Mootools that offered a nicer API for interacting with the browser in addition to the provision for solutions to bugs and inconsistencies among numerous browsers. Then, Backbone, Ember, Knockout among others burst onto the scene as modern JavaScript frameworks followed by React, Angular and Vue which have gained popularity in recent times.

The rise of VueJS

Logo of vuejs with a green coloured V alphabet


VueJS is one of the popular JavaScript frameworks. The official site of VueJS states that it is a progressive JavaScript framework that is used for developing user interfaces. In complete contrast to monolithic frameworks, it is incrementally adoptable and its core library emphasises on the view layer and can be easily incorporated with other libraries or existing projects. It is an astounding solution for intricate single page applications when leveraged alongside modern tooling and supporting libraries.

The usage of VueJS has seen a tremendous rise over the years as represented in the graph below.

Graphical representation showing red, blue and green lines to show usage statistics of VuejsUsage statistics of VueJS | Source: BuiltWith

VueJS scores heavily when it comes to high traffic websites. Organisations in need of a web development solution that can scale well during a high spike in traffic are opting for VueJS as can be seen in the graphical representation below.

Graphical representation with dots inside a square showing market share of vuejs


Meritorious features of VueJS

Following are some of the benefits of VueJS:

Smaller in Size

A JavaScript framework triumph depends upon its size. Size of the JavaScript framework is directly proportional to its usage. With that being said, VueJS is very beneficial with its small size. The size of the VueJS framework is around 18-21KB which means it does not take much of your time while downloading and using it. Small size has no effect on the speed as it is fast and snappy.

Easy development

Adding Vue to an existing web project is quite easy and you can begin coding very swiftly without the need for knowing anything about JSX, ES2015 or build systems to get started. Familiarity with HTML and JavaScript in addition to reading their guide can assist in building something basic within a day that is very advantageous for a fast-paced development team where you are required to pick up something very quickly.

Moreover, it has a simple structure which is great for both small and large scale template development and saves a lot of time as a result. You can even trace the blocks with errors due to its simple structure.

Easy integration

It facilitates developers while integrating with existing applications which makes it a great prospect for developing new web applications and changing the pre-existing applications. The integration is possible because it has components for everything.

Exhaustive Documentation

The documentation of VueJS is very detailed, simple to understand and constitutes several code examples. It has a growing community of developers that can assist when needed.

Immense flexibility

It is simpler to write an app with VueJS swiftly and run it straight from the browser. Or you can even develop an intricate application leveraging ES6, JXX, components, routing, bundling among others. You can even write a template in HTML or in JavaScript or you can use JSX. You get the liberty to structure the application in a way that suits you.

Model-view-viewmodel architecture

Its MVVM architecture (Model-view-viewmodel) helps in facilitating two-way communications for easy management of HTML blocks.

Implementing VueJS with Drupal

Like VueJS, Drupal is very scalable and has been powering high-traffic websites around the world. It also has been outperforming other leading content management frameworks in this criteria.

Graphical representation showing dots inside a square to show Drupal's market share


The blend of Drupal and VueJS, which are both preferred for their scalability, can be a remarkable option. 

One of the ways of utilising VueJS with Drupal is the development of single page application as we have discussed in an earlier blog. It involves the installation of Drupal 8 on the local system followed by the creation of custom content types, adding views, and enabling REST API.

Then, you can start building front end with VueJS and create single page application. This would involve setting up of Vue project with Vue CLI. Once this is done, the addition of Vue router and Vue resource is performed. Vue router, the official router for VueJS, deeply integrates with VueJS core is similar to the angular router (of Angular JS) and react router (of React JS). Vue resource is the plugin for VueJS that offers services for making web requests and govern responses. Then, you can start modifying main.js file to use Vue routers and Vue resources and modify the app.js to work with the router followed by setting up of app components and routers.

Use case

Arbetsförmedlingen, Swedish Public Employment Service, benefitted from the amalgamation of Drupal and VueJS. Drupal Europe 2018 had a session that talked about how a video platform that was built for the Swedish government.

[embedded content]


The platform used podcasts, video on demand and live broadcast for the dissemination of their content. They needed a new platform where these different sorts of media could be imported and metadata could be added for easily grouping them and filtering them out.

Drupal was the ultimate choice because of its great content management system, robust multilingual support, user management, and open source platform. Being lightweight with a production-ready build, VueJS was chosen as the desired JavaScript framework. Its compatibility with twig was a bonus. So, development recipe constituted Drupal, the combination of VueJS and twig and an API endpoint.

RESTful Web Services and Serialisation modules were enabled that gave the ability to create normal views as REST export and Axios, a promise-based HTTP client that has an easy-to-use API and can be leveraged in both the browser and NodeJS, was used for the consumption of data. Theme structure comprised of the twig, JS and CSS. Pluggable VueJs components were utilised and event handling configuration was shown through ‘Load More’ button.

Conclusion

The amalgam of Drupal and VueJS can be a rewarding solution that can help fulfil your digital transformation dreams.

We are devoted to providing ambitious digital experience to our partners through a suite of services.

Ping us at [email protected] to get the best out of Drupal and VueJS amalgamation.

Jan 22 2019
Jan 22

Instances of advanced search can be seen through different things. Take space research for instance. In their perpetual effort to explore Universe and search for Earth-like planets or a star that is similar to our Sun, Scientists wind up discovering interesting things. NASA’s Hubble Space Telescope was used to spot a star called Icarus, named after Greek mythological figure, which is the most distant star ever viewed and is located halfway across the universe.

A man standing at night time under an open sky full of stars


On the other side of the spectrum, Apache Solr is making huge strides with its advanced search capabilities. Enterprise-level search is a quintessential necessity for your online presence to be able to thrive in this digital age. Big organisations like Apple, Bloomberg, Marketo, Roku among others are opting for Apache Solr for its advanced search features. Amalgamation of Drupal and Apache Solr can be a remarkable solution for a magnificent digital presence.

Planting the seed in 2004

John Thuma, in one of his blog posts, stated that tracing the history of Apache Solr would take us back to the year 2004 when it was an in-house project at CNET Networks used for offering search functionalities for the company’s website. It, then, donated it to the Apache Software Foundation in 2006.

Later, the Apache Lucene and Solr projects combined in 2010 with Solr becoming a sub-project of Lucene. It has witnessed an awful lot of alterations since then and is now a very significant component in the market.

Uncloaking Apache Solr

Logo of Apache Solr with the word 'Solr' written on left and an icon representing Sun at the top right


As an enterprise-capable, open source search platform, Apache Solr is based on the Apache Lucene search library and is one of most widely deployed search platforms in the world.

Solr is a standalone enterprise search server with a REST-like API. You put documents in it (called "indexing") via JSON, XML, CSV or binary over HTTP. You query it via HTTP GET and receive JSON, XML, CSV or binary results. - Lucene.apache.org

It is written in Java and offers both a RESTful XML interface and a JSON API that enables the development of search applications. Its perpetual development by an enormous community of open source committers under the direction of the Apache Software Foundation has been a great boost.

Apache Solr is often debated alongside Elasticsearch. There is even a dedicated website called solr-vs-elasticsearch that compares both of them on various parameters. It states that both the solutions have support for integration with open source content management system like Drupal. It depends upon your organisation’s needs to select from either one of them.

For instance, if your team comprises a plentitude of Java programmers, or you already are using ZooKeeper and Java in your stack, you can opt for Apache Solr. On the contrary, if your team constitutes PHP/Ruby/Python/full stack programmers or you already are using Kibana/ ELK stack (Elasticsearch, Logstash, Kibana) for handling logs, you can choose Elasticsearch.

Characteristics of Apache Solr

Following are the features of Apache Solr:

Advanced search capabilities

  • Spectacular matching capabilities: Apache Solr is characterised by the advanced full-text search capabilities. It enables spectacular matching capabilities comprising of phrases, grouping, wildcards, joins and so on, across any data type.
  • A wide array of faceting algorithms: It has the support for faceted search and filtering that enables you to slice and dice your data as needed.
  • Location-based search: It offers out-of-the-box geospatial search functionalities.
  • Multi-tenant architecture: It offers multiple search indices that streamlines the process of segregating content and users.
  • Suggestions while querying: There is support for auto-complete while searching (typeahead search), spell checking and many more.

Scalability

It is optimised for the colossal spike in traffic. Also, Solr is built on Apache Zookeeper which makes it easy to scale up or down. It has in-built support for replication, distribution, rebalancing and fault tolerance.

Support for standards-based open interfaces and data formats

It uses the standards-based open interfaces like XML, JSON and HTTP. Furthermore, you do not have to waste time converting all the data to a common representation as Solr supports JSON, CSV, XML and many more out-of-the-box.

Responsive admin UI

It has the provision for an out-of-the-box admin user interface that makes it easier to administer your Solr instances.

Streamlined monitoring

Solr publishes truckload of metric data via JMX that assists you in getting more insights into your instances. Moreover, the logging is monitorable as the log files can be easily accessed from the admin interface.

Magnificent extensions

It has an extensible plugin architecture for making it simple to plugin both index and query time plugins. It also provides optional plugins for indexing rich content, detecting language, clustering search results amongst others.

Configuration management

Its flexibility and adaptability for easy configuration are top-notch. It also offers advanced configurable text analysis, that means, there is support for most of the widely spoken languages in the world and a plethora of analysis tools that makes the process of indexing and querying your content flexible.

Performance optimisation

It has been tuned to govern largest of sites and its out-of-the-box caches have fine-grained controls that assist in optimising performance.

Amazing Indexing capabilities

Solr leverages Lucene’s Near Real-Time Indexing capabilities that ensure that the user sees the content whenever he or she wants to. Also, its built-in Apache Tika simplifies the process of indexing rich content like Microsoft Word, Adobe PDF and many more.

Schema management

You can leverage Solr’s data-driven schemaless mode in the incipient stage of development and can lock it down during the time of production.

Security

Solr has robust built-in security like SSL (Secure Sockets Layer), Authentication and role-based authorisation.

Storage

Lucene’s advanced storage options like codecs, directories among others ensures that you can fine-tune your data storage needs that are applicable for your application.

Leverage Apache UIMA

Enhancement of content can be done with its advanced annotation engines. It incorporates Apache UIMA for leveraging NLP (Natural Language Processing) and other tools for your application.

Integrating Apache Solr with Drupal

Drupal’s impressive flexibility empowers digital innovation and gives the power to the users to build almost anything. It has the provision for integration of your website with Solr platform. Drupal’s Search API Solr Search module provides a Solr backend for the Drupal Search API module.

Drupal’s Search API Solr Search module provides a Solr backend for the Drupal Search API module.

To begin with, you need to have Apache Solr installed on your server. This is followed by the validation of the Solr server’s status using Terminal. It is succeeded by the installation of Search API Solr Search module using Composer.

Once the installation of Search API Solr Search module is done, the process of configuration of Solr ensues. This involves the creation of collection which is basically a logical index linked to a config set.

Interface of Apache Solr showing the process of creating collection with Sun-shaped icon at top-left and list of option on the right Source: OSTraining

Then, Drupal’s default search module is uninstalled for negating any performance issues and the Search API Solr Search module is enabled. You can, then, move on to the process of configuration of the Search API. Finally, you can test the Search API Solr Search module.

Interface of Drupal's Search API Solr Search module showing search box at the centre and search results below it.Source: OSTraining

Case study

The Rainforest Alliance (RA), which is an international non-profit organisation working towards the development of strong forests, healthy agricultural work landscapes, and burgeoning communities via creative collaboration, leveraged the power of Drupal to revamp their website with the help of a digital agency.

Homepage of Rainforest Alliance website with an image of a forest in the background and an icon representing frog at top-left


RA has built a repository of structured content for supporting its mission and the content is primarily exhibited as long-form text with a huge variety of metadata and assets associated with each part of the content. It wanted to revamp the site and enable the discovery of new content on the site with the help of the automatic selection of related content. It also required the advanced permission features and publishing workflows.

Drupal was great because of its deep integrations with Apache Solr that enabled nuanced content relation engine.

Drupal turned out to be an astounding choice for fulfilling RA’s requirement of portable and searchable content. It was also great because of its deep integrations with Apache Solr that enabled nuanced content relation engine. Solr was leveraged for powering various search interfaces. Furthermore, Drupal’s wonderful content workflow features made it a perfect choice.

Solr offered ‘more like this’ (MLT) functionality that was more robust than just tagging content and showing other content with the same taxonomy terms. Search API Solr Search module, which provides a Solr backend for the Search API module, was utilised for providing the interface to govern the servers and indexes. Then, with a custom block, MLT was leveraged for assisting the process generating related content lists.

Page manager module, in combination with Layout Plugin and Panels modules, was used to build specialised landing pages in the form of specialised page manager pages with many of them having their own layouts. Different modules were utilised from within the media ecosystem of Drupal were very beneficial in administering images, embedding videos, and so on. Entity Embed, Entity Browser and Inline Entity form were magnificent for a great editorial experience for content teams.

Conclusion

Apache Solr is a great solution for enabling enterprise-level search and can make a world of difference in combination with Drupal for your digital presence.

We have been empowering our partners in their efforts digital transformation dreams with our expertise in Drupal development.

Ping us at [email protected] to extract advanced Solr features with Drupal.

Jan 22 2019
Jan 22

Elasticsearch has been meritorious for The Guardian, one of the most reputed news media, by giving them the freedom to build a stupendous analytics system in-house rather than depending on a generic, off-the-shelf analytics solution. Their traditional analytics package was horrendous and was extremely sluggish consuming an enormous amount of time. The Elasticsearch-powered solution has turned out to be an enterprise-wide analytics tool and helped them understand how their content is being consumed.

Homepage of Ophan, The Guardian's Elasticsearch solution, with three images showing a girl standing in front of a building, people standing in queue, and a man sitting on floor with laptop


Why is such a large organisation like The Guardian choosing Elasticsearch for its business workflow? Elasticsearch is all about full-text search, structured search, analytics, intricacies of confronting with human language, geolocation and relationships. Drupal, one of the leading content management frameworks, is a magnificent solution for empowering digital innovation and can help in implementing elastic search. Before we look at Drupal’s capability in implementing elastic search ecosystem, let’s unwrap Elasticsearch first.

Unlocking Elasticsearch

Logo of elasticsearch with an icon shaped in the form of alphabet E in yellow, blue and green colours

Elasticsearch is an open source, broadly distributable, RESTful search and analytics engine which is built on Apache Lucene. It can be accessed through an extensive and elaborate API. It enables incredibly fast searches for supporting your data discovery applications. It is used for log analytics, full-text search, security intelligence, business analytics and operational applications.

Elasticsearch is a distributed, scalable, real-time search and analytics engine - Elastic.io

It enables you to store, search and assess the voluminous amount of data swiftly and in near real-time. In general, it is leveraged as the underlying engine/technology for powering applications that have sophisticated search features and requirements.

How does Elasticsearch work? With the help of API or ingestion tools like Logstash, data is sent to Elasticsearch in the form of JSON documents. The original document is automatically stored by Elasticsearch and a searchable reference is added to the document in the cluster’s index. Elasticsearch API can, then, be utilised for searching and retrieving the document. Kibana, an open-source visualisation tool, can also be leveraged with Elasticsearch for visualising the data and create interactive dashboards.

Elasticsearch is often debated alongside Apache Solr. There is even a dedicated website called solr-vs-elasticsearch that compares both of them on various metrics. Both the solutions accompany itself with support for integration with open source content management system like Drupal. It depends upon your organisation’s needs to select from either one of them.

For instance, if your team comprises a superabundance of Java programmers, or you already are using ZooKeeper and Java in your stack, you can opt for Apache Solr. On the contrary, if your team includes PHP/Ruby/Python/full stack programmers or you already are using Kibana/ELK stack (Elasticsearch, Logstash, Kibana) for handling logs, you can choose Elasticsearch.

Merits of Elasticsearch

Following are some of the benefits of Elasticsearch:

  • Speed: Elasticsearch helps in leveraging and accessing all the data at a fast clip. Also, it makes it simple to rapidly build applications for multiple use cases.
  • Performance: Being highly distributable, it allows the processing of a colossal amount of data in parallel and swiftly finds the best matches for your search queries.
  • Scalability: Elasticsearch offers provision for easily operating at any scale without comprising on power and performance. It allows you to move from prototype to production boundlessly. It scales horizontally for governing multiple events per second while simultaneously handling the distribution of indices and queries across the cluster for efficacious operations. 
  • Integration: It comes integrated with visualisation tool Kibana. It also offers integration with Beats and Logstash for streamlining the process of transforming source data and loading it into Elasticsearch cluster.
  • Safety: It detects failures for keeping the cluster and the data safe and available. With cross-cluster replication, a secondary cluster can be leveraged as a hot backup.
  • Real-time operations: Elasticsearch operations like reading or writing data is usually performed in less than a second.
  • Flexibility: It can pliably handle application search, security analytics, metrics, logging among others.
  • Simple application development: It offers support for numerous programming languages comprising of Java, Python, PHP, JavaScript, Node.js, Ruby among others.

Elasticsearch with Drupal

For designing a full Elasticsearch ecosystem in Drupal, Elasticsearch Connector, which is a set of modules, can be utilised. It leverages the official Elasticsearch PHP library and was built with the objective of handling large sets of data at scale. It is worth noting that this module is not covered by security advisory policy.

An illustration showing a magnifying glass on left and Drupal logo in the form of a water droplet on right

Elasticsearch Connector module can be utilised with a Drupal 8 installation and configured so that Elasticsearch receives the content changes

Elasticsearch Connector module can be utilised with a Drupal 8 installation and configured so that Elasticsearch receives the content changes. At first, you need to download a stable release of Elasticsearch and start it. You can, then, move ahead and set up Search API. This is followed by the process of connecting Drupal to Elasticsearch with the help of Elasticsearch Connector module which involves the creation of cluster or the collection of node servers where all the data will get stored or indexed.

Interface of Elasticsearch connector drupal module with message fields and checkboxes


This is succeeded by the configuration of Search API. It offers an abstraction layer to allow Drupal to push content alterations to different servers such as Elasticsearch, Apache Solr, or any other provider that has a Search API compatible module. The indexes are created in each of those servers with the help of Search API. These indexes are like buckets where the data can be pushed and can be searched in different ways. Subsequently, indexing of content and processing of data is done.

Case Study

The website of Produce Market Guide (PMG), a resource for produce commodity information, fresh trends and data analysis, was rebuilt by OpenSense Labs. Interpolation of a JavaScript framework into the Drupal front end using progressively decoupled Drupal helps in creating a balance between the workflows of developers and content editors.

Website of Produce Market Guide showing search results on left side and list of images on right side with a group of people standing together and fruit cut into pieces kep on plate


We rebuilt the website of PMG using progressively decoupled Drupal, React and Elasticsearch Connector module among others. 

To do the mapping and indexing on Elastic Server, ElasticSearch Connector and Search API modules were leveraged. The development of Elastic backend architecture was followed by the building process of the faceted search application with React and the incorporation of the app in Drupal as block or template page.

The project structure for the search was designed and developed in the sandbox with modern tools like Babel and Webpack and third-party libraries like Searchkit. Searchkit is a suite of React components that interact directly with your ElasticSearch cluster where every component is built using React and can be customised as per your needs. Searchkit was of immense help in this project. 

Logstash and Kibana, which are based on Elasticsearch, were integrated on the Elastic Server. This helped in collected, parsing, storing and visualising the data. The app in the Sandbox was built for the production and all the CSS/JS was integrated inside the Drupal as a block thereby making it a progressively decoupled feature.

Following the principles of Agile and Scrum, it resulted in a user-friendly website for PMG with a search application and loaded the search results faster.

Conclusion

The world is floating over a cornucopia of data. There is simply no end to the growth in the amount of data that is flowing through and produced by our systems. Existing technology has laid emphasis on how to store and structure warehouses replete with data.

But when it comes to making decisions in real time informed by that data, you need something like an Elasticsearch for searching and analysing data in real-time. Drupal can be a wonderful solution for implementing Elasticsearch ecosystem with its suite of modules.

We have been steadfast in our goals of empowering digital innovation with our suite of services.

Contact us at [email protected] to reap the rewards of Elasticsearch and ingrain your digital presence with advanced search capabilities.

Jan 21 2019
Jan 21

You’ve been living in a house for a while now and you are still fond of that place. But its no longer exactly what you need, and you are dreading for a change. 

You think of rearranging and modifying a few things. Maybe paint the room walls in vibrant colors or set up brand new furniture. And voila, it feels like home once again. 

A similar situation can be analyzed with the websites also. 

Websites are redesigned to keep up with the online trends. Sometimes it is done merely because the owners learn over time that the site design is not ideal for their purpose.

A lady standing on the left side of the room, thinking, where 5 big white sheets have furniture drawn on it and clipped to the background


Coming back to the redesigning, people face scenarios where their house gets really old and is on the verge of collapsing. These type of situations demands them to move on to the next one exactly like the way a website owner does when he/she witnesses an end of its life cycle.

So what are these things? Is there a term for it? Is it a process? and what are the methods involved in it? 

Let’s see what exactly the terms are.

Introducing Upcycling and Upgrading 

It is true that a full rebuilt of a website is time-consuming and an expensive task just like a full rebuilt of the house is. In such situations you are only left with two options - either modify it to necessary changes or hop onto a completely new site.

If you choose the option which simply involves a refreshing appearance of the site or modifications in some parts then Upcycling is the hero for you.

To reuse the existing materials and create a product of higher value or quality than the original object or materials is termed as upcycling. 

In technical terms, Upcycling is an incremental approach to relaunch an existing website that is done to keep up with online trends, or maybe because of technical debt, or the reason where you have a well-established website and you have no plans of reconstructing it as a whole.  

Another option is to bring a website to cutting edge technology that is done for optimal results and an increase in revenues and profits. In other words Upgrading. 

Comparing Upgrading and Upcycling 

  Upgrading Upcycling When to do it? Can be performed when you start witnessing the end of a life cycle. Can be performed at any stage of an existing project Why to do it? Because the website contains bugs and is prone to hackers. To give the website a new appearance and improve the user experience. Rate of Investment You can see your investment as quickly as possible  The ongoing maintenance and upkeep are where you start to see your investment.  Performance Performance measurement takes several months and can be achieved with the help of different metrics Can be measured with the help of conversion rate and other metrics.  How to do it? Add more content, create multiple landing pages, go mobile friendly Allow to innovate and bring newer design versions for the relaunch of the whole site.

When to do it?

Upcycling

If you have low cash but have time and some creativity in your mind you can reclaim almost anything and repurpose it. In other words, any website can be repurposed or redesigned at any stage of an existing project with existing website infrastructure. 

For a well-established web system that has been operational for several years, and doesn’t want to spend time and money to do a full rebuild, upcycling is for you. This brings improvement in editorial experience, user experience, front-end etc. 

Upcycling is also adopted due to the reason of investments. Implementation of investments is quick and easy.
 
An image of a laptop where 7 different homepages are placed in vertical order on the screen

 
Upgrading 

Computers and other electronics cannot be upcycled after they have come to an end of their life cycle, they must be upgraded to keep up with the technological advancements. Similar is the case with the websites. Websites are upgraded when it lacks functionality and speed, search engine fails to detect it or when it fails to meet lasting impressions. Upgrading a website is like a do-over of your brand.

Upgrading a brand new websites kills an enormous amount of time and leaves an organization with immense cost.

The reason why it faces such issues is evident, it is started from scratch and therefore requires deep research and analytics.

Why to do it?

Upcycling

Websites owner have plenty of reasons to transform their website. It might be due to the reason where they want a fresh appearance of their website, or because of the technical debt, or simply because they want to improve their user experience. 

Upcycling is the answer for all.

Though upcycling might de-prioritize the motto of “Big Bang Launch”, it meets one primary goal which is to reduce time to market for big website improvement.

Upgrading

Is your website prone to hackers and bugs? Is it preventing website visitors to find their way to your website’s content? - then it is time for you to upgrade it. Upgrading your website includes four main factors: Design, Marketing, Usability and Time. 

Design: It is the appearance of your website that reflects the business message which you are trying to portray. The design represents the collection of things like mobile responsiveness, compatibility with the browser, image resolutions

Marketing: Once the website design is done and the content is established, it is the time to promote it. Marketing involves all the SEO updates, measurement of effectiveness and a call-to-action (A button or link that is placed on a website to drive prospective customers to become leads by completing action on your landing page)

Usability: It is the term which describes the ease with which a particular website or a project is used. Usability helps in decreasing bounce rates and contributes to the performance. 

Time: A fresh website is a perfect way to save the admin’s time. This directly affects the customer service also. 

Rate Of Investment (ROI)

Upcycling 

ROI or rate of investment in Upcycling depends on the two factors sequentially:

  • The cost and
  • The results of a website. 

Cost is termed as the price of the website, which varies widely depending upon the budget and funds of the organization. Generally, the price of the website relates to the total time taken to create it. Factors such as project management, design, programming, team, content, CMS etc determines the cost of a website. 

Whereas the result also contributes to being an important factor in the whole journey of ROI. The website ROI may literally be negative if the site doesn’t produce the desired results which in return gives a loss in the cost. Factors affecting ROI are the cost of creating and maintaining the website, traffic, conversion rate, website lifespan etc.

When both these things, cost, and the result going overboard (and done right) it can generate so much demand that you would witness a steep increase in the website conversions. The ongoing maintenance and upkeep are where you would start to see your investment. 

Upgrading

Once you have taken a leap and invested in the reconstruction of your organization’s website it’s time to begin the calculation concerning ROI. While it is difficult to predict the precise ROI for a brand new website, it would definitely result in a host of benefits.

Benefits that might include an uptick in search engine ranking and a steady generation in the interest of potential buyers and customers. Though there are no dry methods to measure the ROI, there are different ways to track the success and determine whether you are meeting your goals or not.

Tracking the web activities, Monitoring search engines and calculating cost are some of the unique ways to do it. 
 

Image of a computer screen where a crane is placing a square block on its screen. On the left side there is an image of a truck and a mobile phone, on right there is an image of a cup and a mouse

Performance 

Upcycling

Website owners who walk down the path of redesigning a website would agree with the fact that there’s a single most important metric that determines the success of a website: i.e Conversion Rate 

A conversion rate is the percentage of visitors to a website that completes the desired goal for the total number of visitors.

A high conversion rate is an indication of successful marketing and web design. It means people want what you are offering and that they are able to understand it. The whole point of redesigning a website is to improve the performance of it. 

Apart from conversion rate, there are certain other metrics which when optimized well would lead to better conversions and performance of your site. Metrics like:

  • Number of session per user
  • Pages per session 
  • Less bounce rate 
  • Per clicks around your website 

Upgrading

Let's assume that your organization has a great unique idea, you also proved that the demand of this must have “new product” you are selling is going to rock the market. You launched a beautiful website, and you wait for the rise in the performance graph.

Crickets. No traffic.

No traffic means no money and now you are in a dilemma that how would you mend it? Thus to improve it 4 important factors are required.

Backlinks: Backlinks are the incoming hyperlinks from one web page to another website that transfer equity to a website. Backlinks are the most significant factor that determines a site’s search ranking. The link-building strategy should be started as early as possible because it can take months for Google to update a rank. 

Content is the king: Google wants to see that your website should be dynamic and active for it to rank. Having a blog section on your website would do the task. You have to publish content frequently to give your customer a reason to return back.

Keywords: New websites have a hard time competing for top keywords, thus it is best to start with long-tail keywords. Keywords would allow you to attract the targeted audience who are looking for exactly that thing which you might be selling. 

How to do it using Drupal?

Upcycling

The Auraria Library main website is a great example of how upcycling can be achieved with the help of Drupal. The website was powered by Drupal 6, and it was beginning to see its end life. They needed an infrastructural upgrade with the highest priority. In 2016 a project team was established to kick off the journey of revamping the website. 6 months later the website was redesigned with a cloud-based, mobile friendly and localized ready content management system - Drupal 8.

Drupal 8 was chosen due to the fact that the organization enjoyed its scalability, flexibility and rapid availability with impressive community-driven service. Therefore, when a decision was to be made to select the CMS platform, they chose Drupal as their own. 

Thus by keeping longevity in mind, a swift change from Drupal 6 to Drupal 8 ( skipping Drupal 7) was made. 

Due to urgent migration, the project team implemented 80/20 law to break down the development objective into multiple releases. By doing so it not only enabled the possibility of a short first development cycle and helped in launching the website within six months but also bought them with the time to wait for highly contributed D8 modules to mature. 

User experience, increase in ROI, responsive designs, brand engagement, infrastructure improvement, and on-time delivery were the key objectives of the whole project. 

An image of a hot air balloon with a Drupal 8 logo on the head. Two girls are pulling the balloon from the left as well as right respectively. Another girl is trying to climb it

Upgrading 

Upgrading a website using Drupal involves several steps. First, you need to define the source site (make sure core modules like Migrate, Migrate Drupal, Migrate Drupal UI are enabled), then you need to review the pre-upgrade analysis. The upgrade of Drupal 7 to Drupal 8 should be done so that Drupal 8 site is empty. There might be a chance that conflicting IDs are detected, a warning about the conflicting IDs will be shown.

This warning can be dealt with two ways. One is where you ignore it and lose your data and the other one is where you abort it and take an alternative approach.

Now is the time for the upgrade. Depending upon the size and type of content the upgrade accordingly takes the time. 

A cylindrical image having D6/D7 as the text. An arrow points towards another cylinder which says empty D8 site. The arrow has to Migrate content and configuration as its text

Why Choose Upcycling Over Upgrading?

Now that you have read all the points and came to this section, a slight idea would be twirling around your mind on what is best for your website.

To give you a clear vision, let’s put it in simpler and accurate words.

To upgrade is to break something down and create a new product from the base material. This might sound great for consumer goods and other relatable things, but not always great for a website. Upgrading is a good choice for organizations that have the time and the money to invest in the whole construction, and also if they are starting to witness its end. For the well-established websites: not a good choice. 

The goal of upcycling is to add value without degrading the product. It is the concept of creating something new out of something old with as little effort as possible. Upcycling is the right choice for all the Drupal-based websites as it uses the features of Drupal 8 in a way that increases the conversions of the website. 

Upcycling and Decoupling 

If a website has a couple of complex backends logic that the website owner doesn't wish to rebuild but is eager to relaunch the frontend, upcycling is the solution. Relaunching the frontend as a decoupled site with Drupal themes and then integrate it with the backend makes more sense. 

Whereas if the backend really needs a major push, but you want to keep the existing frontend without the need of reconstructing it, upcycling could work for that too, after the backend is decoupled. 

Decoupling your entire architecture will enable the website to upcycle individual parts and bring great value to all the end users. It would highly contribute to things like

Infrastructure: Gets the most out of the existing content and website composition. 

User Experience: Improves user experience, design, and front-end without the need of waiting for any launch.

Investment: You are able to witness your investment as soon as possible. 

In the Nutshell

At the end of the day, we want our website to flourish in terms of performance and make improvements to reach the desired bars. 

Upcycling is like a blessing for all the website owners. At Opensense Labs, we help our clients with the transition of their website. Our services not only provides with splendid modifications but also takes care of all your needs and demands. Ping us at [email protected] 

Jan 10 2019
Jan 10

Website owners are often trapped inside an imaginary bubble where they make conclusions like “There are more valuable sites in the web world, why would mine be targeted by the hackers?” 

And Alas the bubble is busted when they observe that hackers have attacked their site because let's face it- they would never discriminate between any choice they are getting. They want a website to attack, and they have it.

For opensource CMS like Drupal, WordPress, and Joomla, the scenario is the same. As popular as these platforms are, they are the targets of all sorts of attacks. Cybercriminals discover the security loopholes and hack your website in no time.

A picture of a head of a man which is black in color who is wearing a grey hat which is on red background


Which leaves us with the assumption that these platforms ( which together conquer 68.5% of the CMS market) must be providing some form of protection. 

And yes, the assumptions are true.  

Birth of SIWECOS 

SIWECOS project or the “Secure Websites and Content Management Systems” project is the security project which is funded by the German ministry of Economics that desires to improve the security of the CMS based websites ( which of course includes Drupal, WordPress, Joomla, and many others)  

 Image of the logo of SIWECOS with an illustration showing a magnifying glass superimposed over concentric semicircles

The project was designed to help small and medium-sized enterprises (SMEs) identify and correct the security loopholes that they witness on their websites. It focused on concrete recommendations of action in the event of damage and also taking care of sensitizing SMEs to cybersecurity.

The utilization of the vulnerability scanner in the project helped SMEs to regularly check the server system and made them acquaint well with the vulnerability that might occur in a web application. Not only this but a service for web hosts were also presented which actively communicated with acute security vulnerabilities and offered filtering capabilities to prevent cyber attacks. 

The end users were also protected with potential data losses as well as financial losses. 

Initiative-S 

The aim of SIWECOS in longer run was to increase web security and raise a proper awareness of the relevance of IT security for SMEs. Thus, Initiative-S came out as a ray of hope for the support of the small and medium-sized enterprise. It was a government-funded project which was built by the initiative, the association of the German internet industry echo. 

The association built a web interface called “clamavi”. This was done for the users to grant them with the ability to enter their domain and conduct a malware scan of the source code once per day. Thus the website check of Initiative-S was integrated into the new project of SIWECOS. The proven Initiative-S technology now supplements the portfolio of the new SIWECOS service with a check for possible malware infestation.

logo of initiative-s where an arrow is pointing towards the magnifying glass of SIWECOS logo that is superimposed over concentric semicircles

Importance of the Project 

As mentioned, the whole project revolved around the security of the CMS platform, Since the time it was started, the project took 2 years to complete. The mission was to introduce the end users with:

  • Importance of security in cooperation and provided the end users with individual notifications and recommendation on security issue of a website.
  • Increase in web security for a longer period and to identify and address security vulnerabilities of their website.
  •  The project helped ordinary users patch more quickly. Patching is the application of updates (patches) to existing code that either increase the functionality or correct patch vulnerabilities.
  • It also scanned registered user websites. If any security vulnerabilities were found then the person in the field of IT security was contacted directly.
Screenshot of the homepage of SIWECOS website which shows the features of the security maintained in a table


What does SIWECOS have in General?

SIWECOS, in general, had three things 

Awareness Building

It is the detailed version of the introduction and the process on how to subscribe it. They reached out to the end users that not only included the site owners but also the ones that have to maintain it later. The major purpose of the awareness campaign was to influence the behavior of the users since improvements cannot take place without changes in their attitudes and perceptions.

Skinning Service

The whole scanning system in Skinning Service is based on an API which is an open source that is embedded inside. It gave the end users with score count between zero and hundred to give them an idea on how secure or insecure the setup is.

Behind the score, there were five scanners which were used to check malware in the HTML code. Scanners like:

  • HTTP Header Scanner

Ensures that your server conveys the browser to enable security features.

  • Info leak Scanner

Verifies if the site exposes security-relevant information.

  • TLS scanner

Checks the HTTPs encryption for known issues, outdated certificates, chain of trust etc

  • Initiative S Scanner 

This scanner checks the website for viruses or looks for third-party content such as phishing.

  • DOMXSS Scanner

This scanner verifies that the website is protected against DOMXSS attacks. 

Web Host

The companies that power the service behind the website are likely to be called as web hosts. Web hosts team generally should have all the basic technical knowledge, security awareness and should have an active communication of filter rules to defend against attacks.

The need for Filter rules - to limit the circle of recipients. 

Firewall rules made it easy for experienced attackers to build and exploit the website as they want. Thus, by filtering incoming and outgoing network traffic (based on the set of user-defined rules) there was a reduction in unwanted network communication.

Another reason to use web host was server-side protection. The server- side was protected against all these attacks on the web pages that were installed in the web hoster. This was done to protect web page operators.

Partner in the Project

SIWECOS project included four partners mainly that contributed highly to the project. The four partners were:

Eco

Eco or electronic commerce is the largest association of the internet industry in Europe. The association sees itself as the representation of the interests of the internet economy and has set itself with the goal of promoting technologies, shaping framework conditions and representing the interests of its members. The Eco group includes all the internet industry and promotes current and future internet topics. 

The awareness building section was mainly done by eco association because of the fact that they were really good at marketing and networking. 
 

Image of a square that is divided into two parts where the upper part has eco written on it and the below section has a red background where words are written in the German language

RUB 

The Ruhr-University Bochum, located on the southern hills of central Ruhr area Bochum, is one of the partners in the whole project. It has one of the greatest and most proven track records in the general IT security industry. They were included in the project with the agenda of building a scanning engine that gave the business owners feedback about potential security problems on their site such as SSL misconfiguration or vulnerability to cross-site scripting attacks.

Image of a square which is divided into two parts the left side is white in color where RUHR university is written in German and the right side is blue in color with RUB written in white

HACKMANIT

Hackmanit GmbH was founded by IT security experts that were from Ruhr University Bochum. They have an international publication of XML security, SSL/TLS, single sign-on, cross-site scripting, and UI redressing. The priorities of the company were designed by high-quality penetration testing, hands-on training, and tailor-made expertise. The organization has in-depth knowledge about the security of web application, web services, and applied cryptography. The team offers a white box and black box tests which protects the application from the effects of all sorts of hackers attack.

Image having HACKMANIT with an underline as it’s text. HACK is written in red color MANIT in black

CMS Graden 

The CMS garden is the umbrella organization of the most relevant and active open source content management system. In other words, the security team started with CMS planning in 2013 by making a shoutout to the CMS community to join the team. Surprisingly, there were CMS platforms which were interested. Thus, by 2013, there were 12 open source CMS systems in one place. 

CMS garden also contributes to a series of plugins for different open source CMSes that provides feedbacks from within the CMS management interface so that the site owners have the ability to act immediately when they encounter with any security vulnerability. 
 

 A stick image of a flower with 5 buds on it besides which CMS garden is written in black. The E in the garden is drawn in stick letter in green color

In the End 

Website attacks and cyber attacks are rapidly growing. These attacks cost the organizations millions of dollars, subject them to the lawsuit and ruin their lives. 

SIWECOS is like a shield for all the websites and the CMS platforms, it protects them against cyber attacks and hackers of all sort, helping in keeping up with the security and protection against vulnerabilities. 

We know how important web security is to protect your online identity and personal information. If you’re concerned about your web security for your business, or other network issues, our services can help. Contact us on [email protected] the professionals would guide you with all your queries and questions and help you leverage security for your website.

Jan 06 2019
Jan 06

Unequivocally, 21st century is considered as an innovative era, and there is no doubt to the fact that having a website contributes largely to the innovation. 

Owning a website is like owning a business card, it is an essential segment that shouts “I am a professional, who is open for business”. So, if you have a website, it would typically be the very first interaction for an individual that would create an impression for your potential client. 

When it comes to a law firm website, these potential clients always look for reliability and confidentiality. They need a strong shoulder to lean on, and nothing works better than Drupal. 

An image 6 Law Book palces vertically to each other where a law hammer is placed beside it


If you ask - Why Drupal? 

Well, mainly because a law firm website would always wish for safety against hackers and smooth performance over high load. Drupal creates a solid and reliable impression when it comes to both these sectors. 

Drupal is a Good Option for Your Law Firm Website

According to a survey conducted by “Legal Trend Reports”, nearly 37 percent of the population search for a lawyer online. Which means that for succeeding in an industry it is important to have an attractive, robust and secure website.

And this is how Drupal does the task. 

Builds Togetherness with the Community 

Drupal is a free and open source content management system with an active community constantly creating free elements for the website in the form of modules, themes, and distributions.

The large community grinds Drupal like a valuable gem to absolute perfection by constantly keeping its hand on modern innovations.

The open source platform is supported by an active community of more than 1 million members who are constantly trying to make it more flexible than other platforms in the market. The CMS has been providing immense support to its users by presenting a helping hand in form of creating documentation, sharing networking opportunities, granting them with valuable modules etc.

An image of a crowd in an auditorium where the left side is having a big balloon of Drupal logo


Headless Drupal awarding you with user interaction 

Whether you call it “Decoupled” or “Headless” content management system, using Drupal as your central content service can power up your entire application and device ecosystem.

The mantra of the web development strategy “Write once and publish everywhere” has been grabbing the eyes of several law firm website owners.

The concept of decoupling also implies the managing of different content layers separately, with an agnostic presentation layer. To be precise, it is the communication between backend and the frontend via API.

Rocky mountain victim law center (RMVLC) is a great example of this methodology. The website houses a program which is known as the Legal Information Network of Colorado (LINC). On the basis of a series of questions, this web app provided people with exact legal information and resources. The goal of this program was to empower victims of crime. A better way to make them understand their legal options in the aftermath of victimization. The victims were presented with the advantage to answer a series of questions about the mishap which resulted in a custom list of actionable resources.

Although Drupal gave the power to the application to manage content on the backend. Ember.js (an open source, free JavaScript client-side framework used for developing web applications) was also used in the front end to provide the user with a highly interactive experience.

The Decoupled Approach allowed LINC to leverage the strengths of both - frontend as well as backend 
Image of six people holding arms of each other where LINC is written at the top of the picture and the full form is written at the bottom of the picture

Access your website anywhere 

When we talk about “better user experience” - mobile compatible websites has turned out to be an important factor for marketers, organizations, corporates, and advertisers

This is because according to FindLaw studies, nearly 72 percent of mobile users say that it is important for a website to be fully optimized for mobile use. That means that the website should be accessible to people in any device. 

Drupal is the CMS which provides the users with multiple themes that are mobile responsive and layout centric. The platform has replaced PHP template with all new Twig template in its latest update which not only makes it easy and flexible for the users to use but also provides them with fast, secure, and manageable website. 

Thereby, Drupal's responsive designs have helped websites to respond to each visitor’s needs by adapting its presentation based on the size and capabilities of the device which is being used. 

Image of a phone and a computer placed vertically to each otherThe website of JCWI, which aims to provide justice to all the immigrants, is built on Drupal

Mastering Multiple sites 

Large law firm websites consist of many committees and promoting any desired initiative on the main website for an individual attorney could be a big hassle. Therefore, the only solution to the whole scenario is to have an individual website or a blog that is separate from the main website yet a part of it. 

Therefore, Drupal contributes largely to simplify the management of the websites with the help of the multisite feature. It allows you to serve multiple sites with the help of single codebase. The requirement is only to maintain one copy of Drupal core and, of course, the contributed modules. In other words, it brings about a manageable code across multiple sites and brings agility while launching new sites. 

A great example of the multisite feature is the Legal services corporation which provides legal assistance to low-income citizens. The website is a collection of six other sites with the main agenda of providing easy maintenance to the LCS staff while they update the website. Therefore, Drupal was chosen based on the fact that it powers multisite functionality and consisted of one Drupal installation. Not only this but the site also leveraged multilingual support and was compliant with Section 508 of the US Rehabilitation Act. 

Image of the homepage of Legal Service Corporation website

Decoding Multiple Languages 

As an attorney, it is possible that you might practice in an area where your client speaks different languages. A translator in such a situation becomes an important factor in the whole journey of communication. 

Similar is the case with the audiences that are surfing online. It is necessary to add a multilingual capability to your law firm website due to the fact there is a diverse audience that does not have English as their preferred language. The multilingual feature here not only makes it easy for those users to understand your website content, but it also doubles your chance of being spotted in the Google search result.

Drupal is one of those CMSes that emerges out as a sword for all the website owners with a power of multilingual feature. It grants them with a striking number of over 90 languages that has a built-in translation core.

Apart from translating your content, Drupal also translates all the fields, forms and error messages. The new version of Drupal consists of 4 inbuilt multilingual modules.

Managing Language

This module lets the user pick the choice in which they desire to change the website. It consists of 96 languages in its bar. The language configuration has been streamlined to the user. It assigns languages to everything, from taxonomy terms to administrative language. 

Interface Translation 

It provides the user with a central directory to manage the interface. It has a built-in translation UI for simplifying the content. By allowing the automated downloads and updates, the users easily translate the interface. 

Content Translation 

This module is applicable to all the contents. It allows the user to translate everything, from taxonomy to pages. Like the translation in the interface, the default language of the content can be configured flexibly.

Configuration translation

The things that come with a configuration of the website can be translated with the help of this module. These things include views, blocks, panels, field panels or the text for that matter that can be formatted and be easily translated.

New York County District Attorney’s Office website is built on this multilingual feature of Drupal. The district attorney CY Vance Jr. is the leader in the criminal justice reform who proposed a compelling vision for moving the Manhattan District Attorney's Office with the main agenda of prevention of crime. His objective of the project was to easily reach people with the continuous publication of the content that served as an information portal for the District Attorney.

Drupal was an ideal CMS as it provided with a great platform to build complex websites and was helpful in integrating interactive web services. The key agenda was to reach as many people as possible.

Screenshot of the main page of The New York County District Attorney’s Office website

How Can We Forget Security?

In 2016, Panamanian law firm Mossack Fonseca faced a leak of over 2.6 terabytes of data highlighting the risk around data security and the need of companies to protect their client's information.

This clearly indicates that security plays a crucial role for all law firm websites. Visitors want assurance over their data. They want that it should be secured and private. 

Drupal is the CMS that is well known for its security. It presents its users with careful testing of all modules which is done by the Drupal experts. The password is encrypted and the community reviews the modules on go. With security modules like security review, two-factor authentication, paranoia etc, the vulnerabilities or loopholes that compromises a website, are largely taken care off. Not only this but, Drupal also meets the Open Web Application Security Project (OWASP) standards which are actively screened to prevent continuous future risks. With the selection of Drupal as your platform, your website is continuously reviewed by the Drupal Security Team. The CMS makes sure that the security vulnerability is reported to them.

Module, Themes, and Distribution 

Drupal has special modules, themes, and distributions which are specifically created for the law firms. 

The law firm creates and shares attorney profiles with potential client quite frequently. This might be a time-consuming and might also slow down the entire process as there can be a number of attorneys lined up for your firm. Thus, to improve the performance and save time for the same, Drupal comes with a module known as profile generator that allows you to find profiles quickly.

The law theme is a free professional mobile-friendly theme for the law website. It is a responsive, mobile first theme for Drupal 8. It consists of features like configurable slideshow, 13 block regions, social media integration, clean HTML5, and so on.

The law firm distribution, which is also known as pre-configured Drupal version containing the core of the entire system, is a set of modules, themes, and libraries. They make the site creation easy and swift. 

This is also a fully responsive distribution that features a homepage with a slider, a section for legal industry events, a photo gallery, a section with YouTube videos rendered in a structured way, and much more.

Give full attention to the page load time 

Having a faster page load speed isn’t only increasing your Google ranking, but it is also contributing to customer satisfaction. Faster page navigation means that users may see more page views each time they visit your law firm website.

Conducted on the behalf of Akamai, Forrester Consulting found out that, 47% of the customer expect to wait no longer than 3 seconds for a web page to load.  With the usage of specific modules and methods, Drupal manages to reach marketing goal faster. Modules and methods like:

Caching your pages

Drupal 8 is such an understanding CMS that it enables caching by default for anonymous visitors. The user has the ability to select the maximum limit of the page caching based on how quickly the content of the website changes.

Compress images (CSS and Javascript files)

Google is really fond of fast loading sites. Advanced CSS/JS Aggregation module aggregates and compresses the CSS and Javascript files to make the site run faster.

Content Distribution Network (CDN) 

The role of a CDN is to store websites on a server, and the CDN module in Drupal provides easy CDN integration to all the Drupal sites. It changes the file URLs so that the file is downloaded from a CDN instead of the server.

Google Analytics

Drupal also provides its users with web statistics tracking system called Google Analytics. The module allows the users to add statistics features like single/multi/cross domain tracking, monitoring the links that have to be tracked, monitoring the files that are downloaded, supporting site search, Drupal message tracking etc

Content is the King 

Note that if your website content does not engage the user then it might not be serving the purpose even if your website consists of great web design. Poor content tends to lose the audience. 

Drupal allows its user to edit and customize content without the need of modifying the entire website. With the help of intuitive modules like ctools, field group, paragraphs, entity API etc, the user can build their own content types that have their own set of fields. 

According to content marketing institute, 89% of B2B organizations are using content marketing as their strategy of marketing business. 

A pie chart on the percentage of B2B marketers using content marketing) (Image source: Content Marketing InstituteSource: Content Marketing Institute

And Drupal is the platform which lets you deliver personalized content and contributes vividly as a content manager. 

Drupal would not only contribute to the editing and deleting part of the content but it would also help you to future-proof it. Machines are able to read the content by reviewing the metadata of a website. The metadata structure which is also called as the schemes provide context to the content of a page. Which means that when the search engine views the page they are not only repeating the content but also serve with additional guidance. Drupal 8 uses Schema.org for tagging. Not only this but Drupal has also changed its migration path to provide its user with semi-annual updates which save time, money and a lot of energy 

You just can’t ignore the cost factor 

If you are choosing the best CMS for your law firm website then it should be 100% free and should have the ability where the user can easily install it without the hassle of purchasing any license or recurring fees. 

Drupal comes with the option of choosing from the variety of open source modules that can be used for developing a website adhering to your preference. 

In the Nutshell

It is evident that Drupal has become a very popular platform for lawyers and law firms, especially among related marketing professionals, and for a good reason, this powerful and versatile CMS offers exactly the right tools and visibility potential to both the existing audience as well as to the new ones. 

Opensense Labs has sound experience in building such websites and provide services that help you modify your website. It would be our honor to help you develop a dream site that would not only benefit you in every aspect but would also bring about a planned and systematic architecture for your law firm. 

Ping us on [email protected] Now. 

Jan 04 2019
Jan 04

F. Scott Fitzgerald’s ultra-modernist novel about jazz-age America, The Great Gatsby, has been regarded as one of the best books ever written. It has fascinated the readers by creating a sort of aftermath of wonder. Enter the digital age, there is another ‘Gatsby’ which is getting a wondrous reception and is in the reckoning for being a great tool when it comes to web development.

Cover page of the Great Gatsby book with illustration showing eyes and lips


The emergence of the static site generation, where views are rendered in advance for mitigating the burden on APIs and other backend systems, is proving to be a remarkable solution for great web performance. Gatsby, as a static site generator, can dramatically metamorphose the web performance. It can be a magnificent option in combination with Drupal as the backend for building an enriching single page applications.

No wonder Kyle Mathews, the founder of GatsbyJS, tweeted in 2017:

A tweet from Gatsby founder Kyle Mathews with his photo on top left and his name alongside the photo


GatsbyJS: Explained

Graphical representation with red, blue and green lines depicting usage statistics of Gatsby JSGatsby Usage Statistics | Source: BuiltWith

Currently, GatsbyJS is on the rise when it comes to its usage as can be seen in the graph above. So, what is it? GatsbyJS, an open source static site generator, stitches together the best of ReactJS, Webpack, routing, GraphQL and other front-end tools into one very enjoyable developer experience.

Logo of Gatsby JS with a Capital G written in white inside a violet coloured circle


Gatsby leverages powerful pre-configuration for developing a website. It has out-of-the-box capabilities for spectacularly fast page loads, data prefetching, asset optimisation, code splitting, server-side rendering, service workers, and intelligent image loading.

Features of Gatsby

Flowchart with white and yellow coloured boxes showing the workflow of Gatsby JSSource: Gatsbyjs.org

Following are the reasons that should be considered while choosing Gatsby:

Well-architected plugin system

With Gatsby, content is written as React components and is rendered at build time to the Document Object Model (DOM) as static HTML, CSS and JavaScript files. With a rich data plugin ecosystem, the static content rendered can be sourced from a plethora of sources and formats constituting markdown, CSV (Comma-separated values), and from content management systems (CMS) like Drupal.

Magnificent Scalability

Gatsby can scale to the entire internet as it builds the site as static files that can be deployed with ease on numerous services. It helps in letting go of intricate deploys involving databases and servers, their time-intensive setup costs, maintenance among others.

Performance and Progressive Web Apps out-of-the-box

Gatsby enforces best practices and optimises your site by default. When the build process runs, static HTML files are created for individual pages to offer swift initial load times.

When the page is loaded by the browser, Gatsby boots up React and navigates around your site as if you were navigating through a single page application with near-instant transitions without page reloads.

Gatsby prefetches adjacent/related page content in the background which nullifies any chances of delay when the user clicks on a link. The client-side experience is awesome with JavaScript enabled as there is no loss of content or navigation if the user has JavaScript disabled.

Gatsby can offer offline support as well with the addition of a single plugin thereby making your site into a full-blown progressive web app (PWA).

JAMstack setup

A paradigm shift has been occurring in the web development arena with JAMstack setup taking the centre stage. The amalgamation of client-side JavaScript, reusable APIs, and prebuilt Markup is the future of web development. Gatsby can be a stupendous JavaScript framework for a JAMstack-powered web application.

Merits of Integrating Gatsby and Drupal

Drupal is great for its provision of intricate page layouts or content modelling with numerous sections per page. It is an amazing solution for the teams with multi-stage content creation and assessment processes. Decoupled Drupal is an astounding solution for building enterprise-grade websites and has the deep-rooted support of Drupal Community leaders. 

Leveraging the benefits of Drupal with Gatsby is an amazing approach towards getting an enterprise-level CMS for free in addition to modern development experience and the merits of JAMstack such as security, scalability and performance. One of the great examples of implementation of decoupled Drupal and Gatsby can be seen through the demo site of Umami Food Magazine which is powered by Contenta CMS, headless Drupal distribution, and GatsbyJS.

Incorporating Gatsby in a decoupled Drupal setup enables you to access the impressive content architecture and access workflow capabilities of Drupal 8 in addition to the splendid UI creation and performance toolset of Gatsby. Moreover, both Drupal and Gatsby are open source, have a huge and active community presence and a wonderful ecosystem of add-on modules or plugins. To add to that, the built-in web services of Drupal 8 streamlines the integration process.

Demonstration

An illustration showing a laptop and a rocket taking off with smoke billowing out its rear end


To integrate Gatsby to a new or existing Drupal site, gatsby-source-drupal plugin is added to the Gatsby site. Gatsby-source-drupal plugin is a source plugin that is used to pull data into Gatsby from Drupal sites and it does so with the help of JSON:API module. It is followed by configuration of the plugin with your Drupal credentials and hosted URL. You can, then, access the Drupal data with the help of GraphQL queries.

A digital agency exhibited a demonstration that pulls Drupal content into a Gatsby site. It had a Drupal 8 site already installed and created a content type named Coffee with three fields: Title, Body and Image. Drupal was made into an API server with the installation of JSON:API and JSON:API Extras modules. For accessing the JSON API resource list, anonymous user permission was given.

This was followed by building process of Gatsby site called coffees.gatsby by making sure that the node and npm are installed on the computer. Then, the content was fetched from the Drupal server. For this, a simple page was created to display all the coffee types from the Drupal site.

Then, gatsby_source_drupal plugin was used to read Drupal content from the default endpoint /jsonapi. GraphQL was utilised to query all the coffee nodes from Drupal. Finally, the Gatsby site was published by simply copying or pushing contents in /public to the server.

Conclusion

Gatsby is an incredible static site generator that streamlines the process of creating blazing fast websites. Gatsby extracts data from sources like Drupal and then uses that data for generating static pages at build time. The data sourced from numerous backends can even be merged. This technique helps in extracting the benefits of both static sites like speed, ease of deployment etc. and the content management systems like the easy update process, user-friendly editorial interface etc.

Coming together of Drupal and Gatsby renders incredibly fast static pages and then merges that with traditional React for user authentication and personalisation.

We are committed to the provision of ambitious digital experiences with our expertise in Drupal development.

Contact us at [email protected] to get the most out of Drupal + Gatsby integration.

Jan 03 2019
Jan 03

Digital transformation is at the helm of every enterprise to keep up with the rapid technological advancements. The New York Times, a leading international news media, leads by example in such changing times. It is not just known for its premium content but also for the astronomical presence both in the print and the digital medium. React has been at the forefront of its digital evolution to make its site faster and easier to use for both the readers and the developers alike.

Home page of The New York Times with a box containing code snippet at the bottom


Large organisations like the New York Times are leaping forward with their inclination towards best-of-breed web technologies like React. Any front-end technology React would require a RESTful service-based backend for storing data and implementing business logic. This is where Drupal makes a big impact with its RESTful services that are built into its core. Before we move onto the exploration of the amazing duo of Drupal and React, let’s explore React.

React: The Incipiency

The first signs of React can be traced back to 2010 as stated by RisingStack. React kicked off as a JavaScript port of XHP which was introduced by Facebook into its PHP stack and was open sourced. XHP majorly accounted for reducing cross-site scripting (XSS) attacks.

React was introduced in 2013 and was made open source.

The biggest obstacle with XHP was that dynamic web applications needed numerous round trips to the server which could not be achieved by XHP. This paved the way for ReactJS. FaxJS was the early prototype of React which came into the limelight in 2011. Ultimately, in 2013, React was introduced and open sourced.

Since then, React has swiftly gone on to become a popular choice (as can be seen in the graph below) because of its declarative style and the dearth of assumptions about your tech stack. Today, React has a large ecosystem comprising of top-of-the-line libraries, conferences and jacked-up demand for developers with React skills.

Graphical representation with red, blue and green lines showing usage statistics of ReactReact Usage Statistics | Source: Builtwith

The World of React

React is a JavaScript library for building user interfaces - reactjs.org
Logo of React with three ovals intersecting each other and the word ReactJS written beside it


ReactJS is a JavaScript library created by a Facebook engineer named Jordan Walke. It is a declarative and a component-based solution for building web applications. It is great for the following reasons:

Provision of declarative views

With its declarative views, your code becomes simpler and foretellable while debugging thereby allowing you to develop interactive UIs and design streamlined views for each state in your application. In case of any alterations in the data, React can let you efficaciously update and render the right components.

Facilitation of writing components

Passing rich data through your app and keeping the state out of the Document Object Model (DOM) is possible as the component logic is written in JavaScript instead of templates. React helps in creating encapsulated components for managing their own state which can, then, be composed for making intricate user interfaces.

Focused and easy-to-learn

Unlike Angular or Vue.js, ReactJS is a library and not a full-featured framework. It emphasises on one thing and doing it properly. It is consistently leveraged in association with other JavaScript libraries. So, there is a shorter learning curve vis-à-vis understanding React in comparison to other comprehensive libraries. It does not assume anything about your existing tech stack which helps in developing new features in React without having to rewrite existing code.

React for mobile app development

React Native is advantageous for its portability and the ability to reuse components, real-time reload and modular architecture, open source and generous ecosystem.

React + Drupal

As an open source content management system, Drupal has witnessed a staggering growth over the years (as can be seen in the graph below). It offers a magnificent suite of tools for data modelling, editorial workflow implementation and the coding custom application logic. It has spectacular support for JSON API or GraphQL web services which makes it a splendid choice as the backend for a React application.

Graphical representation showing red, blue and green lines to depict usage statistics of DrupalDrupal Usage statistics | Source: Builtwith

Whether few of the elements on an existing web page has to be enhanced or a fully decoupled single page application needs to be created, the duo of Drupal and React can do it all. Implementation of Drupal and React together can be performed with a fully decoupled or headless approach; and progressively decoupled approach.

Decoupled or Headless Drupal with React

With the powerful web APIs, Drupal simplifies the creation of headless applications. Several lighthouse applications have been created with Drupal as the backend and powerful demo systems and starter kits like Reservoir and Contenta have burst onto the scene.

In a headless approach, Drupal is leveraged as the backend for a frontend application built in React. Usually, headless applications are utilised for showing content and the editing of content is still done in the backend. But React can also be used for the creation of wonderful editorial experience. With Drupal’s powerful REST APIs, integration of a decoupled editing system can be done. Drupal Europe 2018 had a session that demonstrated how to create an enterprise-level editorial experience for Drupal 8 with the help of React.

[embedded content]


It exhibited a decoupled application with React that can let you edit content directly in the frontend. Leveraging React to the fullest, a modern editorial experience was created with in-place editing, context-sensitive editing, drag-and-drop content placement and creation and a lot more.

Progressively Decoupled Drupal with React

To strike a balance between editorial needs like layout management and developer’s desires, progressively decoupled Drupal allows you to interpolate a JavaScript framework into the Drupal front end.

OpenSense Labs has revamped the website of the Produce Market Guide (PMG), a resource for produce commodity information, fresh trends and data analysis, with help of progressively decoupled Drupal and React among others.

Website of Produce Market Guide showing a search box at the top and the search results below it


ElasticSearch Connector and Search API modules were utilised for the creation of mapping and indexing on Elastic Server. The development of Elastic backend architecture was followed by the building process of faceted search application with React and the integration of the app in Drupal as block or template page.

The project structure for the search was designed and developed in the sandbox with modern tools like Babel and Webpack and third-party libraries like Searchkit, which is a suite of React components that communicate directly with Elasticsearch cluster, turned out to be of great help with its fully customisable solution.

Logstash and Kibana, which are based on Elasticsearch, were integrated on the Elasticserver for collecting, parsing, storing and visualising the data. The app in the Sandbox was developed for the production and all the CSS/JS was incorporated inside the Drupal as a block thereby making it a progressively decoupled feature.

The project, that followed the principles of Agile and Scrum, resulted in a user-friendly website for PMG with a search application. It loaded the search results faster.

Conclusion

Drupal and React together can help enterprises to leap forward in the digital space. Drupal’s RESTful services-based backend and React with its amazing capabilities as the frontend can prove to be a remarkable solution.

We remain steadfast in our goals of fulfilling the digital transformation endeavours of our partners with our suite of services.

Contact us at [email protected] to build a Drupal website using React as the front-end technology.

Dec 27 2018
Dec 27

Ah! those days, when copies of movies were sold in the form of DVDs, fast forwarding and rewinding through the scenes made us feel that the power is all in our hands. 

But with the evolution in technology and internet presence  (in terms of marketing a film), the need for a movie website has come a long way after witnessing a growth in streaming services.  

An image of an apple laptop in grey and black background with chairs placed on the keyboard


Setting up a movie website means understanding the goals of building it in the very first place. Be it a teaser website, production blog, or a distribution site - depending on the demand of the audience, web development is brought into action.

And nothing does a better task than Drupal. Often preferred by brands that deal with a high volume of traffic, this  CMS platform would offer you effective features and functionalities for your website.

What Does Drupal Offer Your Website With?

Choosing a Content Management System for your website is like choosing the cast for your movie. And Drupal proves to be the CMS which give the best of “all worlds”. It would provide you with an ample number of functionalities and fulfill all your customer's needs. 

Starting from:

Content Authoring 

While you are creating your movie website, there might be instances that would lead you to a situation in which you wish to edit your content or any particular page. It may be a change in the movie title or modification in the synopsis.

Drupal 8 features bring about an unusual power into the hands of content authors. With modules like WYSIWYG CKEditor, drafting and editing content have become a piece of cake.

The use of client-side editors to edit content, installing and integrating choice editor has been made even more simple. It includes HTML editors (i.e WYSIWYG), pseudo-editor (to insert markup into text area) and  flash based applications (for production of animation)

The WYSIWYG module also presents you with an abstraction layer for other Drupal modules to integrate with the editor which implies that Drupal modules can expose content editing functionality, indifferent of what editor has installed.

A GIF on how to add and edit content on Drupal


New Theme Engine

Just like resolutions are important for deciding the quality of a movie, a theme also plays a vital role in your website. When an individual visits your movie website, the very first thing which would attract them would be its theme. An interesting and impressive theme would never backfire when it comes to user experience.

Theme engine combines data with templates from themes and shows the final HTML result to the user 
A flowchart with orange, black and blue-colored boxes showing how the theme engine combines data with a template and shows a substantial result pageSource: Github

Drupal 8 includes a brand new theming engine called Twig, which is PHP-based, flexible, fast, and secure. It helps in creating a beautiful and functional website that has a much simpler syntax. Offering features like template inheritance, automatic escaping, variable filters, and macros to improve the development workflow. 

Responsive Designs  

According to Statista,  52.4 percent of the global web traffic is originated from mobile devices (making it half of the population) which clearly implies the importance of responsive designs. 

Responsive Designs would improve user experience which would in return portray a positive impression for your movie website. If your fans are able to easily access your website, it would more likely to increase the numbers in terms of traffic and bring out a good number of conversion rates even in the future.

Drupal 8 is mobile first in its approach. All the built-in themes that come with Drupal 8 are responsive, along with an admin theme that adapts to different screen sizes. This would allow different users to access your website at different places on various devices. A module like Breakpoint, which comes with Drupal core, resizes the website and images according to the device.

Nordisk Film Cinema is a great example of this. They wanted a responsive and a visually engaging website with cutting-edge functionalities. This was demanded so that the current and future website users have the power to easily navigate the site regardless of the device they were using. The requirement of the responsive site was also because many visitors use their smartphones to buy tickets on the go. Thus Drupal was the best choice for them. 

Four mobile screens placed horizontally where the right part of one phone overlaps the left part of the succeeding phone


Security 

While you are funding for the construction of your movie website, you expect it to be secure and safe from hackers and potential viruses. Drupal has a very good track record when it comes to security, and has recognized process for investigation, verifying and publishing security problems. When it comes to security, Drupal vulnerability statistics clearly depicts security attacks that have considerably reduced over the years.

A bar graph of vulnerability by year and typeSource: Etondigital

You can easily enhance the security of your website with help of Drupal security modules like captcha (response test to determine whether a user is a human or not), password policy (enforces restrictions in users passwords), security kit (protects the website from cross-scripting, cross-site requesting, click jagging etc), two-factor authentication (provides extra security with code authentication on mobile) 

Not only this but Drupal design meets all the security standard of the Open Web Application Security Project (OWASP). Hence, Drupal core, being highly secure, builds sites that can be patched within minutes. This lowers the risk of broken features or any error to a minimum.

Migration 

Entertainment Weekly was one of the sites that were stuck managing content across ten different WordPress VIP blogs and a large legacy Vignette site. They needed to incorporate their digital content and implement a rapid publishing solution to lower the time between publishing and going live.

An agency was approached to help migrate content and integrate editorial workflow onto a single Drupal-based solution. Migration of more than 20 years of content was all needed to be considered for the creation of the platform. Drupal was chosen because of the fact that its core consisted of the migrate module that provides API and base implementation for importing up of data. 

Similarly, at any instance of time, you might feel a need to migrate from one site to another, and that is the reason why Drupal is the hero for you. The core migrate module in Drupal 8 provides APIs and base implementation for importing data into Drupal.  

A screenshot of entertainment weekly website


Web Hosting 

It is important to buy a web space to build your movie website in order to get it live and active on the internet. 

This is only possible with the help of web hosting. Drupal 8 provides you with many web hosting options. Which are safe to use and efficiently handles your site traffic.

So, if you want to make a better choice when it comes to web hosting companies, you can choose:

  • Pantheon
  • Liquid Web
  • InMotion
  • Bluehost
  • Site5
  • Pair
  • Omega8.CC
  • Drupion
  • Green Geeks
  • Black Mesh  

Manages Configuration

Configuration Management is an important factor of any CMS platform. In Drupal 8 configuration data is stored in files, separated from the site database, and has configuration management built into it at the file system level. Carrying configuration elements from local development to the server has been made really easy with Drupal 8.

The contributed module in Drupal 8, i.e Config Filter helps in built-in configuration management capabilities by providing an API to support different workflow which filters out or modifies configuration changes as being pushed to the configuration. 
Config Split is an another contributed module in Drupal 8 that builds on top of Config Filter that allows a difference in configuration between various environment.  

Managing configuration would allow you to establish a consistency in terms of performance and also eliminate the time to build out additional resources without worrying about the user prone errors. 

Configuration Management System in Drupal can manage things like:

  • Modules setting and states 
  • Content Types
  • Block Types
  • Permissions
  • Views
  • Theme Settings

Content Architecture 

We have reached a point where the old drupal hymn “create content first and see it later” is not enough to succeed with the content editors. Hence, Drupal is competing and replacing other CMS when it comes to content architecture. Content Editors expect full flexibility on how to create, display, approve and publish content. Modules like panels and panelizer, a distribution like panopoly and demo framework have helped in the modification of panorama in Drupal.  

One of the most important steps of building your movie website is deciding how to structure your content architecture. There are ample numbers of ways in which you can build out complex content type in Drupal 8. Here, every piece of content is an entity that stores different types of content.

Your movie website would have entities like the cast, edition, categories, review, collection and so on.

Flow-chart on different types of entities

Drupal modules like views contribute largely to the whole structure of the content architecture. With this Drupal 8 feature firmly integrated with the core, the creation of pages, blocks, admins have been made easy.

Menu module in Drupal core is the static hierarchy of the content. This module allows the administration to customize the websites navigation menu. You can easily add new menus and edit the existing ones. Apart from these two, Entity reference field or link field explicitly allows the addition of link from one content item to another. 

Accessibility 

In addition to providing subtitles in multiple languages for a worldwide audience, understanding the need of closed captions and audio description have broadened the customer base to include hundreds and millions of people worldwide who have hearing loss and vision impairments. 

Making a movie accessible is not only a choice but a legal requirement as well.

Accessibility for the visually impaired community is a really important factor for creating any website. Drupal 8 has excellent support for industry standards like WAI ARAI, and with the help of screen readers and other assistive technology, Drupal is ensuring accessibility at a much bigger level.

 An image of a laptop where two hands are presenting it and on top of it is the diagram of settings, an eye, and ears placed horizontally


Performance 

We all are aware of the three-second rule implemented on a website. Even the smallest change in a website page results in the modification of the traffic noticeably. Hence, speed immensely contributes to the strength and the performance of the website.

Drupal 8 caches all the entities, and helps in the speed and streaming sector to optimize the performance as it is needed. With modules like varnish and redis this task is easily achievable. These modules allow the developers to optimize the site load performance for the end-user significantly.

Drupal 8 core also consists of a module which is the Big Pipe that loads the dynamic pages quickly by loading various section of the webpage in parallel. It is done so that the end users do not have to wait for the Document Object Model (DOM) to be completely ready to start an interaction with the website. Drupal allows the user to tinker with the core. A programmer can twist out a lot of performance boost from a Drupal website. It primarily caters to the enterprise market, hence the websites are well suited and handled with a large volume of data and thousands of pages. It should be noted that a well managed Drupal website rarely goes down or slows down the procedure. 

Multilingual and Multisite Capabilities 

Drupal’s multisite feature allows the user to share a single Drupal installation site core. This is specifically useful for managing the code since each upgrade only needs to be done once. Every site would have its own database and it would also have its own configurational settings. If you have a complex site or a very different site to manage then Drupal multisite is the best option. 

Drupal is also capable of supporting and managing multiple language out-of-the-box. Which means support for the translation of the content as well as for the translation of the back-end user interface of the CMS itself. Having the support of the multilingual website means more audience. With the addition of only four modules in Drupal 8 for language support, all the monolingual and non-english website are easily translated. 

A screenshot of the homepage of Turner Broadcasting General Entertainment


A great example of this would be Turner Broadcasting General Entertainment multi-site which is built on Drupal platform. The site consists of entertainment brands like Cartoon Network, Boomerang, CNN etc. Drupal was primarily used because of its multilingual and multi-site capabilities. It successfully built enterprise-level CMS websites, and scaled to a high level of traffic and maintained availability and performance.

Getting Noticed 

Once you have a website, you need to get it noticed so that people will start visiting it. In other words, if the website ranks high it would definitely get noticed. Drupal has some set of modules which does the task pretty well. Modules like Pathauto, Meta tag, Site verification, Path Redirect, and Google Analytics help in creating URL paths and optimize search engines. 

Drupal automatically operates and generate path identity for the content without asking the users to specify the path identity. These identities are based on pattern system that uses token with the administrator.

 An image of the Pathauto module saying hello world with a shade of blue on the screen
  • Path redirect

Drupal allows the user to redirect from one path to another path utilizing HTTP redirect status. This would prevent the user to encounter with error 404 if the path was changed or redirected at some instance. 

An image of the Drupal module known as path direct
  • Site verification

Drupal is such a user-friendly domain that it allows them to verify the site and domain ownership for a search engine. There are two types of methods which support verification - the addition of meta tags or uploading a particular file. 

Drupal automatically grants the users with structured metadata or meta tags. These elements help the website with ranking and displaying of the site in the search engine outcomes. 

An image consisting of a pen with a list of meta tags in blue and red color
  • Google Analytics

Drupal is one such platform which supports web analysis. It presents the users with class web analytic capability, these capabilities make Google analytics an excellent tool for monitoring SEO results. 

Community 

Drupal community constantly updates and builds modules to expand the platform for compatibility and security reasons. In other words, Drupal is one of those platforms which checks for errors and makes it certain that the site is protected all the time. 

Drupal association has a team that looks after the security of Drupal and its module. Thus, your movie website is surely in good hands as there are people watching it all the time. By providing with several customer support features that are built in the service. Features like:

The user can post a question or a query which is answered by the professionals once it is seen by them.

  • Slack and online chat

The user can chat with the Drupal community which is maintained by them and handled by them.

  • Community documentation

The user can read the online documentation which is written and maintained by the Drupal community. 

There is an ample number of user guide and manuals which presents the users with remedies and solutions. 

Case Study 

Cambridge film festival is one of the oldest and most prestigious cultural events in the East Anglia region. Drupal was chosen to build the website. It was selected because it maps the content-rich film data into a CMS that gave them an opportunity to build a powerful film search.

Screenshot of the homepage of Cambridge film festival


As a key part of the festival’s marketing strategy, the new website was used to raise awareness, increase audiences and attract the world's best filmmakers.

Focusing on the user experience (UX), it was built fully to have a responsive website which can be viewed across all devices. It was also essential to make searching, sharing and booking online via the mobiles and tablets easy.

Although Drupal 8 was still in the process of development during the introduction of this project, the breadth of functionality and flexibility in the core was taken into consideration.

While building the theme for the Cambridge Film Festival, the advantage of the new Twig theming system was also taken. Individual pages were built in a more styled and modular way, the Twig debug mode did a great job of guiding them through the process, making file name suggestions that offered a range of options for theming elements either globally or individually.

The film search utilizes the View module as well. Using Views made the complex relationships easy to set up, and the also advanced caching which meant that even though the view was quite complicated, it loaded very quickly under most circumstances.

Wrapping Up 

Just like every movie has a happy ending ( if not then that's not the ending), bringing your site to a position where the world watches it and appreciates it is what you desire for. And attaining this task is the big climax to the entire scene. 

Thus, to grab those standing ovations working smart is the key. At OpenSense Labs, we actually sense the need of you producing a user-friendly site and thus provide services that contribute highly to your journey of constructing the website. Thereby, call us at [email protected] to build the desired movie website. 

Dec 18 2018
Dec 18
“Sometimes I would buy Vogue instead of dinner. I felt it fed me more." 
— Carrie Bradshaw from The Sex and the City

Consumer instincts have changed with time and so have market tactics. Today, the global brands not only selling the product, but they are also building a journey with the shopper, an impression that stays longer than the product (no pun intended). 

When shopping online it’s about knowing every little detail, almost like visiting the market and buying the product. Shopping is no more just about checking out the product and adding it to cart.

It is here that the commerce meets content.

And that is why everything has a story. This author, the perfume she wears, the website, images, rock, paper, scissors… everything.

Can Drupal provide the commerce organization the storyboard that they are looking for? And what about the conversational UI that is booming in the commerce industry? Can Drupal stand up to the expectations of its customers?

decorational image with a leaf, a pair of shoes, bag, sunglasses and lipstick

 

The Content-Driven Commerce. What is the Concept About?

Despite the fact that we have been experiencing content and commerce together since the start of marketing, content-commerce has never, until now, existed as a concept in itself. 

The best example of content-driven commerce are print magazines and that is what the retailers and business corporations have been trying to imitate online, today. 

An advertisement does that. Why aren’t we focussing there?

In 2013, Lab24 - an American market research firm - carried out a study that revealed that people had some serious trust issues with advertising. 

  • 76% of people believe that ads are “very exaggerated” or “somewhat exaggerated”.
  • 87% think half or more cleaning ads are photoshopped.
  • 96% think half or more weight loss ads are photoshopped.

Building a personal repo is more important than just throwing content in the form of ads. Meaningful content puts a filter on such garbage advertising also bringing rewarding results!

The fact that businesses can no longer ignore customers’ desire for content, purpose, is what has been changed in the market.

And yet, more often than not, online shops still resemble soulless product catalogs.

The story of Coco Chanel and her perfume No 5 is very beautifully presented in the series of 5. 

[embedded content]


With the help of blogs, user-generated content, and rich multimedia, brands are not only able to stand out from the crowd, but also provide a curated commerce experience to their customers. 

However, product-centric their content may be, it still establishes an emotional connection with customers through inspirational stories that pave the road to successful commerce.

Understanding the Concept with Timex

The famous American watchmaker Timex and its 22 sites are built on Drupal. The iconic brand offers intuitive navigation and engaging mix of product, social, and editorial content. This website infuses content in the entire shopping experience, doing an amazing job of featuring useful imageries and text that is relatable to customers.

homepage of timex with one digital watch from two different angles


Timex needed to ensure a unified brand experience on all its sites while also delivering digital content relevant to local markets - allowing the addition of new product content when and where needed.

Drupal ensures that the content generated in the U.S. is localised as per the location and published to local markets according to their needs. 

Not only does it enable the team to deploy content across regional websites rapidly while remaining on-brand, but it also supplements them with an ability in fueling the company’s international growth.

Why Opt For Drupal When Building Content and Commerce?

Helpful content, and not discounts, should be the centerpiece of awareness. And that’s exactly the role that content is meant to play in commerce.

With the Lab24 statistics, it is clear that - while all the e-commerce platforms aim to serve their users with a better experience, without leveraging the power of storytelling it is not possible. 

As the admin to an online store, you need to select and add the various content types that you are looking for. Be it blogs, testimonials, customer reviews, or product description, Drupal has it all for you. 

Drupal is unique in its ability to easily integrate into ambitious commerce architectures in precisely the manner the brand prefers. Drupal can be integrated with other e-commerce platforms giving rise to a hybrid solution. The third-party platforms can typically interact with the users either through the glass as in the case of a headless commerce solution or it can work side by side. 

In any case, Drupal can cover the need for the content driven user experiences with the homepage, marketing-driven landing pages, blog content while commerce features such as the product detail, category landing pages, and the cart and checkout flow can be handled by the e-commerce platform. 

Whatever the case maybe content types are at the core of Drupal. 

  1. 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.
     
  2. 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.
     
  3. In-place Authoring: The WYSIWYG editor in Drupal to create and edit content in-place. 
     
  4. 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. 
     
  5. 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.
     
  6. 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. 

With multimedia content, your commerce-based site better serves the need for integrated, unified and hiccup-free user experience. In addition, you can also push content outside from your website to other channels.

As marketing horizons are expanding to social media it is important to deliver highly relevant and personal content via video (YouTube), stores, TV, etc. Brands no more can afford to continue to deliver disconnected and uncoordinated across a variety of different channels.

comparison of old and new gif

 

But Trust the Case Studies

homepage of benefit san francisco with a pink block and a bald girl smiling


The new content-centric website is an integrated, robust online store managed with SAP Hybris and Drupal. As the marketing department’s needs became more sophisticated, the content management system offered by Hybris was no longer able to adequately manage the store’s front end and content experience. 

Benefit Cosmetics is known for their colorful personality, irreverent voice, and unique dilemma based shopping experience. And so is the content that mirrors the seamless provide a seamless shopping experience. Benefit’s marketing and content teams are now able to maintain the brand’s unique design aesthetic while customizing content for users’ needs. 

The new platform leveraged commerce for over thirty countries. To ensure the sanity of the translations workflow, with Translations.com.
 

  • Strand of Silk
homepage of strands of silk with three women in indian ethnic wear


Strand of Silk website required a smart blend of commerce and content, such that the content generated by the editor and user can be easily linked to the products on the website. 

Various other e-commerce only solutions were evaluated, but Drupal was selected because of the ability to easily combine e-commerce and content - a trend that was seen as the de-facto requirement in the near future for e-commerce sites. 

The Rise of Content, Commerce, and Conversation

Content and commerce were coming together for a long time. But conversational commerce is catching up really fast. For consumers, a conversational experience is a way for them to learn about the product and services.

Informal exchange of ideas by the spoken words. 

Shoppers are looking for easy interactions like conversations, which are also casual and convenient. Conversational commerce as it catches up will be the guiding experience moving forward. 

The idea of conversational UI, shouldn’t be limited to a chatbot. The old trick still works. Content still rules. Although the new techniques and technologies can change the way we are doing things we can’t abandon the channels.  

As messaging platforms have become so universal and common, they are also easy to build. 

two mobile devices sending text messages


There can be many ways the model works. It can be one-to-one and one-to-many. Sending messages to the customer who has applauded their service on Facebook, comes under the one-to-one approach. 

But if a new shopping store sends a custom message to a targeted audience segment living in the area it comes under the one-to-many approach.

Add to the scene, the boom of voice assistants. Amazon Alexa and Google Home do actually assist the consumer in finding products, stores, events and much more. 

The Drupal community has been focusing on the bot frameworks and other cognitive services that can be used to develop bots for different use cases.  it all started with a framework called Open Source Bot Builder SDK for Node.js which is used for building bots. 

Further several bot frameworks like Facebook Messenger (wit.ai), Google Dialogflow, IBM Watson, Microsoft Bot Framework and open source conversational AI like Rasa are considered for the integration. 

The main idea was that the bots will enable search and explore the products by incorporating Drupal Commerce APIs. On the basis of message-based interaction, bots can also enable simple Add To Cart and Review Cart functionality among others and can offer relevant actions while looking for a product.
 

Whatever perspective you acquire, integrating content into commerce is easier said than done. The product has to be worthy, content authentic, and the transaction without a breach. Providing a seamless experience to both retailers and publishers, Drupal is the bridge you need. 

Connect with us to build a seamless, content-commerce experience. Drop a mail at [email protected].

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