Aggregator

Tag1 Consulting: Modern testing: part 3

3 weeks 6 days ago
Testing is becoming an essential keyword and toolkit for developers and development teams who seek to architect and implement successful and performant websites. Thanks to the unprecedented growth in automated testing tools and continuous integration (CI) solutions for all manner of web projects, testing is now table stakes for any implementation. That said, many developers find automated testing to be an altogether intimidating area of exploration. Fortunately, when paired with a development culture that values quality assurance (QA), you can focus on adding business value instead of fixing issues day in and day out. Three years ago, Yuriy Gerasimov (Senior Back-End Engineer at Tag1 Consulting ) gave a talk at DrupalCon New Orleans about some of the key ideas that Drupal developers need to understand in order to implement robust testing infrastructures and to foster a testing-oriented development culture that yields unforeseen business dividends across a range of projects. In this four-part blog series, we summarize some of the most important conclusions from Yuriy’s talk. And in this third installment, we’ll take a closer look at two of the most essential parts of any testing toolkit: unit testing and functional testing. Unit testing Unit testing is a particularly fascinating topic,... Read more preston Tue, 01/28/2020 - 13:59

Acro Media: Drupal as Middleware: How to Patch Digital Gaps in a Growing Business

3 weeks 6 days ago

Due to the nature of B2B sales, one of my roles is cold outreach. Most of the time my first method of outreach garners no replies. However, every so often I will receive a prompt email message or reply over the phone. It usually goes something along the lines of: “We already have a web development agency.” or “We are not interested.” I often wish I was at a sit-down meeting when these situations arise. This is because I simply cannot describe the multi-faceted solutions Drupal can provide, far and above a typical web development agency. “You should absolutely stay with them” is my typical response to prospects that have an agency they are happy with. I say this because there is so much more Drupal, as a business solution, can provide without even interacting with the frontend of their website. What we often promote with Drupal is its capability to create a more complete digital experience platform (DXP), not just a website.

What Gartner has to say about the DXP

In a 2019 report, Gartner has this analysis about DXPs:

“Driven by digital transformation efforts, organizations are moving beyond the traditional audience engagement resources of websites and mobile apps. There is a growing acceptance of the idea of digital experience platforms as vital to these efforts. DXPs provide a scalable foundation for creating, optimizing, integrating, delivering and managing a range of digital experiences for different audiences, both internal and external.1”

So let me unpack that a little bit in my own words. Essentially, your website and mobile apps are still very much at the forefront of digital marketing. Moving forward, though, more organizations have and will continue to create a more cohesive, single platform (DXP) in order to cater to all stakeholders of the company. This not only includes said organizations’ customers but also their teams and employees, allowing for a more comprehensive snapshot of the company from the outside and inside. In the same report, Gartner estimates that:

“Through 2021, 85% of the effort and cost involved in a digital experience platform (DXP) program will be spent on integrations with internal and external systems, including the DXP’s own, built-in capabilities.1”

In my opinion, this assumption by Gartner indicates that organizations are already well aware of the advantages a DXP can provide. If you're interested, click on the banner below to read the report.

An imaginary business case for a DXP  

Imagine you started a business selling gadgets. Your gadgets were better for target market X because they were less complicated than the gadgets that were available on the market at the time. So first off, you rented a storefront and sold the gadgets in your store, but you also realized you could scale your business by selling the same gadgets online. So in addition to your point of sale system (POS), you now had to adopt an appropriate ecommerce platform and build a website to sell the gadgets online.

Now that you were selling gadgets online you also had to have a shipping channel and a returns channel for replacing defective gadgets. As demand for your product began to grow you needed more gadgets on hand at any given time. The obvious solution was a warehouse, but you also needed a product information management (PIM) system to keep on top of your inventory and distribution channels.

As your product created a name for itself you opened a few more gadget stores and to satisfy demand across the globe you began selling your product through Amazon. With increased demand came competition, so in response, you invested in marketing software to stay on top of the industry trends. You began to diversify in order to make your business more resilient to market volatility. The diversification led to custom gadgets in addition to a gadget service and repair business.

In order to keep track of what your customers had purchased and to identify opportunities for cross-selling and up-selling, you invested in a customer relationship management (CRM) system. Finally, just under a year ago you invested in a new enterprise resource planning (ERP) system. This way all of your new departments had the information they needed to operate efficiently.

So we are now in the present day. Like many other businesses that grew at a rapid pace, you find yourself in a situation where all of your technology has become siloed. In this analogy, your data and information all exist, but it is locked away in separate silos. Each silo represents a piece of software, a distribution channel, a legacy POS system, or that missing Amazon integration that can only be accessed from one place. You can run a business this way, and many organizations do just that, without realizing that there is actually a more efficient way to do things. This is where the DXP comes into play. What you would prefer rather than individual silos would be a horizontal technology architecture with open lines of communication between everything. This, as one could imagine, can save a tremendous amount of time and manual workflows, eliminating what we call swivel-chair processes. Simply stated it is a more efficient way of doing business. The problem is many business owners and decision makers may not even realize this is happening because they live in their own silos and no one has pointed it out to them.

How does Drupal come into play?

Drupal is a content management system (CMS), but at the same time, Drupal can do so much more than a traditional CMS. Through API integrations, also known as API hooks, Drupal has the ability to be used as middleware. As middleware, Drupal can act as a modular engine that connects all the data from the aforementioned gadget business’ technology. Data can flow forwards and backward between the various pieces of technology and even integrate into legacy systems like the POS in the gadget example. Furthermore, the modular nature of Drupal middleware essentially future proofs your business allowing for business scalability.

To give an analogy, you can think of Drupal middleware as a computer with unlimited USB ports. The computer acts as the brain passing information back and forth between systems and the USB ports are the API hooks. USB ports are non-proprietary and you can, therefore, unplug cables you no longer need and replace them with new cables. You can also add or remove cables as necessary and the computer keeps on functioning as long as you configure the drivers. So as you outgrow software systems or you decide to replace that legacy POS, no problem because you can just plug in the new software, install the drivers, and you are back up and running again.

Connecting it all together

So to return to my statement at the beginning of this blog post, the reason I wish I could sit down with those who respond so quickly to my first cold outreach is that I do not want to be typecast as just another web development agency. In actual fact, because our expertise lies in Drupal we are far better positioned to provide solutions that lay beyond the scope of the traditional idea of a website. Sure we can develop an incredibly robust frontend experience and, likewise, a flexible scalable ecommerce engine. But, we can also use Drupal as middleware that allows for seamless flow of information between systems.

If you've read this and would like to have a quick chat, let us know! We're happy to help. I also mentioned a Gartner report from 2019 that is a great introduction for anyone trying to nail down their digital experience platform. Gartner has made this report available to us to share with our readers for a limited time, so check it out now while you still can.

1 - Gartner, "Don’t Wreck Digital Engagement With Bad Deployment Decisions for Your Digital Experience Platform,” 31 July 2019, Gene Phifer.

Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings or other designation. Gartner research publications consist of the opinions of Gartner’s research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.

OpenSense Labs: Let’s Migrate a static site to Drupal

3 weeks 6 days ago
Let’s Migrate a static site to Drupal Jayati Tue, 01/28/2020 - 18:16

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. 

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.  

blog banner blog image Drupal migration Migration Tools HTML Content migration CMS open source cms Blog Type Articles Is it a good read ? On

Specbee: Implementing Google Directions Module in Drupal 8 – A quick guide

3 weeks 6 days ago
Implementing Google Directions Module in Drupal 8 – A quick guide Ankitha 28 Jan, 2020 Top 10 best practices for designing a perfect UX for your mobile app

Communicating with Google services is simple and effortless with a wealth of API’s to choose from. With Drupal 8’s powerful API-first capabilities, interacting with these services are now easier and more effective. The API in focus is the Google Directions API. Drupal 8 offers a Google Directions module that integrates with the Google Directions API. 

What does the Google Directions Module do?

The Drupal Google Directions module allows you to create and add a block to your content where users can add two locations and find directions between the two points. Also displayed are suggested routes based on modes of transport (public transit, cycling, walking or driving) and the time it will take to get there. This block can be positioned via the Block layout and customized to fit any website’s style guidelines.

Getting Started with Google Directions Module

Let’s get started with implementing the Google Directions module.

Get the Google API Key 

A Google API Key is required to access the Google Directions Service.
To get a key, visit https://developers.google.com/maps/documentation/directions/start with your Google account and follow the Guide.
To get an API key:

  • Visit the Google Cloud Platform Console.
  • Click on the project drop-down and select or create the project for which you want to add an API key.
     

     

  • Click on the menu button and select APIs & Services  -> Credentials
  • On the Credentials page, click on Create credentials -> API key.
  • The “API key created” dialog displays your newly created API key. Copy the API key as it must be configured in your Drupal Project.

     

  •   Select Close. The new API key is listed on the Credentials page under API keys.

     

Enable the required APIs
  • In the Google Developer Console Dashboard, click on the menu button, select APIs & Services -> Library

     

  • Search for and enable the following APIs

                   ○ Google Directions API

                   ○ Google Maps JavaScript API

                   ○ Google Places API

                   ○ Google Geocoding API

Installing

Install and enable the Google Directions module as you would normally install a contributed Drupal module. Use your preferred method to download the modules. I’m using the Composer to install since it automatically takes care of all the necessary dependencies and Drush command to enable the module.

[email protected]:/var/www/html/drupal_php$ composer require drupal/google_directions [email protected]:/var/www/html/drupal_php$ drush en google_directions
Configuration
  • Configure user permissions as required in Administration -> People -> Permissions:       
               ○  Administer Google Directions

     

  • Once Google Directions is installed and enabled and permissions are granted:
               ○ Visit /admin/config/services/google-directions to enter your Google API Key that we copied earlier.
  • ○ Use the Block layout page (/admin/structure/block) to position the block in one or more regions to suit your use case for the Google Directions module.
  •             ○ For each block placement, configure Visibility and other block settings to suit your use case.
                ○ Click on Save Block and visit the page. The following Google Directions block appears in the region it was placed.

Good to Note : 


If the menu does not display, flush cache and try again.

  • In the block enter the locations in “From” and “To” fields and hit “Go”.

 

The API-first initiative taken up by the community in Drupal 8 is giving a lot of power and flexibility in the hands of developers and website owners. Talking to API’s like the above discussed Google Directions API via the Drupal 8 Google Directions module is easy and compelling. Need help with setting up your Drupal website and leveraging Drupal 8’s power? Learn more about our Drupal services and get it touch with us.  

Drupal Planet Shefali ShettyApr 05, 2017 Subscribe For Our Newsletter And Stay Updated Subscribe

Leave us a Comment

  Shefali ShettyApr 05, 2017 Recent Posts Image Implementing Google Directions Module in Drupal 8 – A quick guide Image A Prelaunch Checklist for your Drupal Website Image Cryptocurrency and Blockchain - Everything You Need to Know Want to extract the maximum out of Drupal? Contact us TALK TO US Featured Success Stories

Know more about our technology driven approach to recreate the content management workflow for [24]7.ai

link

Find out how we transformed the digital image of world’s largest healthcare provider, an attribute that defined their global presence in the medical world.

link

Discover how a Drupal powered internal portal encouraged the sellers at Flipkart to obtain the latest insights with respect to a particular domain.

link

ComputerMinds.co.uk: Sponsor work to improve Drupal for us all

3 weeks 6 days ago

We love making great websites, standing on the shoulders of the giants that have gone before us to make Drupal what it is today. Thousands of working hours from fantastic people around the world have gone into producing this digital experience platform. Many of those gave voluntarily for free, while many were directed by paying customers who gave back so the rest of us could benefit. Everyone stands to gain when innovation, graft and capacity are pooled together. All that functionality in your Drupal site has been written by a real person at some point, who considered it worth sharing with the world. That is only the tip of the iceberg too - there is an entire community behind Drupal and the ecosystem of contributed modules that can be added to it.

Do you recognise what you have in your site? It's easy to dwell on imperfections, but consider for a moment how every piece of your project has been produced by someone trying to make things possible, which weren't before. Would you like more of that? Would you like to help millions of users across the world do more too? All kinds of outfits use Drupal - non-profits, charities, educational institutions, public sector organisations as well as tiny companies and international enterprises. Here's an example of some amazing work another company has done with Drupal to help provide better health care in rural Rwanda:

Spent a whole day in rural Rwanda, watching - in action - an @elmlang web-app with a #Drupal backend we've built for @ihanganeproject.

No marketing landing pages, no sale funnels, no targeted ads. Just a web-app that helps provide a better health care to mothers and their babies pic.twitter.com/PnLqV0vpSQ

— Amitai Burstein (@amitaibu) November 14, 2019

It's incredible what can be done with Drupal! If we all seek to help improve it as a platform, rather than just taking from it, our websites & companies stand to gain, sure. But that way, we also allow those less fortunate than ourselves to benefit. If you already get a boost from what others have put into Drupal, could you give something back too?

We're proud of our regular habit of contributing fixes back to the Drupal modules that we use. We've been one of the top 30 organisations contributing to Drupal core itself for the last couple of years, and we've gone beyond code contributions to sponsor events and promote Drupal in our local communities. We've maintained major contrib projects, such as Aegir & Views data export. Wherever possible, we develop in a way that allows work to be re-used in future, hence our 'Doing Drupal right' tagline. We believe working for our clients and the community is the right way. 

You can help this mission, and the health of the Drupal project as a whole by joining with us. Whilst open source products may not cost anything, the work to create them does. It won't be sustainable, nor desirable, for Drupal only to be built by volunteers, or for funding to be left to 'everyone else'. You can even help shape the direction of Drupal by getting involved.

We very recently completed a release of the Language Hierarchy module for Drupal 8, because Julabo GmbH got in touch to sponsor that work after recognising our contribution to that project and our multilingual expertise. They needed to add functionality and expedite work on that project to use it on their own site. One of our own clients already used that project too ... now the rest of the Drupal community can benefit from what they have facilitated!

We would love for you to sponsor work on Drupal or contributed modules. Speak to your developer about this. We're making ourselves available for sponsored work for the community. Maybe your site relies on modules contributed by the community which don't quite work as you'd like - so we could fix that for you and everyone else out there who may have similar needs. Maybe your project has bespoke functionality that others could use if it were generalised? Sponsoring that kind of work is an opportunity to make it more robust for you too, and then others around the world may even pick it up to add improvements that you haven't even dreamed of yet. Perhaps we can help you meet accessibility requirements or accomplish those 'nice-to-have' features that you've had on a backlog, by expanding what Drupal's modules can do. Maybe that even qualifies as something you can use a community or R&D budget for!

Would you like to expand what Drupal and therefore your own website can do, whilst sharing that with the thousands of users who may never be in a position to dream of building such functionality? Get in touch with us to discuss sponsoring Drupal work. We can suggest specific areas needing work, or you might want to improve something closer to your heart. Over to you.

 

Photo by Helena Lopes on Unsplash

Promet Source: Drupal 8 Load Testing with Locust

4 weeks ago
Load-testing is an essential best practice for Drupal 8 development. Quantifying how much traffic a site can sustain is critical information both during development and prior to launch.  The reasons for doing so are significant and wide-ranging:

Web Omelette: Quickly generate the headers for the CSV migrate source plugin using Drush

4 weeks 1 day ago

Using migrate in Drupal is a very powerful way to bring data into a Drupal application. I talked and wrote extensively on this matter here and elsewhere. Most of my examples use the CSV source plugin to illustrate migrations from CSV-formatted data. And if you are familiar with this source plugin, you know you have “configure” it by specifying all the file’s column names. Kind of like this (a very simple YAML array):

column_names: 0: id: 'Unique Id' 1: column one: 'What this column is about' 2: column two: 'Another column'

I wrote many many migrations from CSV files, of various sizes, but it took me years to finally utter the following out loud:

Can’t I just generate these stupid column names automatically instead of manually writing them every time?

As you can imagine, there can be files with 30 columns. And a given migration effort can even contain 20 migration files. So, a pain. I’m not the sharpest tool in the shed but finally my laziness got the best of me and decided to write a Drush command I want to share with you today. Also, I have not written anything in such a long time and I feel proper shame.

So what I wanted was simple: a command that I can run, point it to a file and it would print me the column names I just paste into the migration file. No fuss, no muss. Or is it the other way around?

So this is what I came up with.

First, in the module’s composer file, we have to add an extra bit to inform Drush about the services file used for Drush commands. Apparently this will be mandatory in Drush 10.

"extra": { "drush": { "services": { "drush.services.yml": "^9" } } }

Then, we have the actual drush.services.yml file where we declare the command service:

services: my_module.commands: class: Drupal\my_module\Commands\MigrationCommands tags: - { name: drush.command }

It’s a simple tagged service that says that it should be treated by Drush as a command class that can contain multiple commands.

And finally, the interesting bit, the command class:

<?php namespace Drupal\my_module\Commands; use Drupal\Core\Serialization\Yaml; use Drush\Commands\DrushCommands; class MigrationCommands extends DrushCommands { /** * Generates the YAML representation of the CSV headers. * * @param $file * The relative path to the file * * @command generate-migration-column-headers */ public function generateYaml($file) { $spl = new \SplFileObject($this->getConfig()->cwd() . DIRECTORY_SEPARATOR . $file, 'r'); $spl->next(); $headers = $spl->fgetcsv(); $source_headers = []; foreach ($headers as $header) { $source_headers[] = [$header => $header]; } $yml = Yaml::encode($source_headers); $this->output()->write($yml); } }

What happens here is very simple. We first read the file whose path is the first and only mandatory argument of the command. This path needs to be relative from where the Drush command is called from because we concatenate it with that location using $this->getConfig()->cwd(). Then we take the values from the first row of the CSV (the header) and we build an array that is in the format expected by the CSV source plugin. Finally, we output a YAML-encoded version of that array.

Do note, however, that the column description is just the column name again since we don’t have data for that. So if you wanna add descriptions, you’ll have to add them manually in the migration file. Run the command, copy and paste and bill your client less.

Hope this helps. Can’t believe I’ve been writing CSV based migrations since like the beginning and I just came up with this thing now.

MidCamp - Midwest Drupal Camp: A Wide Array() of Exciting Sessions Selected for MidCamp

4 weeks 1 day ago
A Wide Array() of Exciting Sessions Selected for MidCamp

A ton of great sessions were submitted for consideration for MidCamp 2020, more than our schedule could accommodate. After reviewing all of the sessions and selecting our schedule we couldn’t be happier with the result. There is going to be something for everyone at this year’s MidCamp.

Training day kicks off the camp covering topics including Composer, A/B Testing, Drupal’s Migrate API, and Decoupling Drupal with Gatsby. Our two session days will include over 50 session slots covering (takes a deep breath) introductory topics, site building, layout builder, debugging, migration, accessibility, project management, case studies, design systems, prototyping, decoupling Drupal, and preparing for both Drupal 9 and the end of life for Drupal 7.

And if that isn’t enough, if you look closely you might find science fiction, legendary young wizards, and text based adventures sprinkled throughout. And that isn’t even including the wide-ranging and yet to be determined topics that will be part of the lightning talks that close out each session day.

We can’t wait to see these sessions in person and look forward to learning along with you at this year’s MidCamp. Get your training and session tickets now!

MidCamp - Midwest Drupal Camp: Volunteer to Help at MidCamp!

4 weeks 1 day ago
Volunteer to Help at MidCamp! We need you!

Want to give back to the Drupal Community without writing a line of code? Volunteer to help out at MidCamp 2019.  We’re looking for amazing people to help with all kinds of tasks throughout the event including: 

Setup/Teardown
  • For setup, we need help making sure registration is ready to roll, getting hats ready to move, and getting the rooms and walkways prepped for our amazing sessions.

  • For teardown, we need to undo all the setup including packing up all the rooms, the registration desk, cleaning signage, and making it look like we were never there.

Registration and Ticketing
  • We need ticket scanners, program dispersers, and people to answer questions.

Room Monitors
  • Pick your sessions and count heads, intro the speakers and make sure they have what they need to survive, and help with the in-room A/V (by calling our Fearless Leader / A/V Genius)

Choose Your Own Adventure
  • We won't turn away any help, so if there's something you'd like to suggest to do to help out, go right ahead!

This year we're going to be giving every volunteer credit on Drupal.org, so be sure to include your profile name when you sign up to volunteer.

If you’re interested in volunteering or would like to find out more, please reach out to JD on Slack where he goes by the name "Dorf".

There will be a brief, online orientation leading up to the event to go over the volunteer opportunities more in detail. 

Sign up to Volunteer!

Srijan Technologies: 11 Things to Expect from Your Media Publishing CMS in 2020

1 month ago

A decade ago, the media and enterprise industry looked completely different. Those were the times when print media ruled, blockbuster (video store)  had around 100 stores around the UK, and barely anyone had heard of Netflix or Spotify. During those times, consumers preferred physical media and the mere thought of even accessing video content through the internet was considered as engaging in flights of fancy.

Agaric Collective: Make 2020 the Year You Begin the Upgrade to Drupal 8: Upcoming Trainings and Resources

1 month ago

Drupal 7 End of Life is November 2021, and while you can still get mileage from your site, and there will be community long term support for Drupal 7, there are many features in Drupal 8 (and soon Drupal 9) your organization's site will benefit from. Also, getting everything lined up for an upgrade takes time. This is the year many should be putting plans into motion.

At Agaric, we've made upgrades and migrations our main focus in our work to help people leverage the open web to meet their goals. Last year we led 4 migration trainings and presentations, including a sold-out training at DrupalCon. Mauricio even blogged every day in September to share his expertise on Drupal migrations. This year we're hitting the road to help as many people upgrade to Drupal 8 as possible.

Upcoming Trainings

We also plan to propose sessions and trainings at DrupalCamp Spain, DrupalCamp Iceland, Drupal GovCon, DrupalCamp Colorado, DrupalCon Barcelona, BADCamp, and some other DrupalCamps.

Last year, many of our events sold out, so register ahead of time to take advantage of early bird rates and ensure you have a spot.

We're also available for paid consulting work and migration work. If interested, we would love to hear from you

Resources

 Not everyone can attend a training. We've tried as much as possible to also share our knowledge through blog posts and tutorials. Others in the Drupal community have also contributed documentation to make the upgrade/migration process easier.

An upgrade or migration can seem daunting, but we're committed, along with many other Drupal community members, to support one another in making everyone's upgrades as smooth as possible. 

Read more and discuss at agaric.coop.

Community Working Group posts: Nominations now open for the 2020 Aaron Winborn Award

1 month ago

The Drupal Community Working Group is pleased to announce that nominations for the 2020 Aaron Winborn Award are now open. 

This annual award recognizes an individual who demonstrates personal integrity, kindness, and above-and-beyond commitment to the Drupal community. It includes a scholarship and stipend for the winner to attend DrupalCon and recognition in a plenary session at the event.

Nominations are open to not only well-known Drupal contributors, but also people who have made a big impact in their local or regional community. If you know of someone who has made a big difference to any number of people in our community, we want to hear about it. 

This award was created in honor of long-time Drupal contributor Aaron Winborn, whose battle with Amyotrophic lateral sclerosis, or  ALS (also referred to as Lou Gehrig's Disease)  came to an end on March 24, 2015. Based on a suggestion by Hans Riemenschneider, the Community Working Group, with the support of the Drupal Association, launched the Aaron Winborn Award.

Nominations are open until Monday, March 30, 2020. A committee consisting of the Community Working Group members as well as past award winners will select a winner from the nominations. Current members of the CWG and previous winners are exempt from winning the award.

Previous winners of the award are:

  • 2015: Cathy Theys
  • 2016: Gábor Hojtsy
  • 2017: Nikki Stevens
  • 2018: Kevin Thull
  • 2019: Lesley Glynn

Now is your chance to show, support and recognize an amazing community member!

If you know someone amazing who should benefit from this award you can make your nomination using this form.
 

Tag1 Consulting: How automatic updates finally made it to Drupal

1 month ago
Over the course of Drupal’s lengthy history, one of the most common feature requests has been automatic updates. A common complaint of Drupal site administrators, especially those who have smaller sites updated less frequently, is the frequently complex and drawn-out process required to update a Drupal site from one minor version to another. Updates can involve a difficult set of highly specific steps that challenge even the most patient among us. Indeed, many in the Drupal community simply choose to ignore the automatic e-mails generated by Drupal.org indicating the availability of a new version, and waiting can lead to compounding security vulnerabilities. Fortunately, the era of frustration when it comes to automatic updates in Drupal is now over. As one of the roughly dozen Drupal Core Strategic Initiatives , Drupal automatic updates are a key feature that will offer Drupal users better peace of mind when minor releases occur. Over the last several years, Tag1 Consulting , well-known as leading performance and scalability experts in the Drupal community, has worked closely with the Drupal Association , MTech , and the Free and Open Source Software Auditing (FOSSA) program at the European Commission to make automatic updates in Drupal a reality.... Read more preston Thu, 01/23/2020 - 13:26

Specbee: A Prelaunch Checklist for your Drupal Website

1 month ago
A Prelaunch Checklist for your Drupal Website Shefali Shetty 23 Jan, 2020 Top 10 best practices for designing a perfect UX for your mobile app

Yes. “Prelaunch anxiety” is a thing. 
You have worked tirelessly on your Drupal 8 website for weeks/months together and now the most important day has arrived – the launch day! But wait! Have you done everything right to ensure your Drupal website does not run into any unforeseen issues? It is always best to compile a checklist of things to do a few days before the launch to make sure you have everything in place and that your website is not under any kind of risk. Don’t have a Drupal checklist yet? Put your mind at ease with our compiled prelaunch Drupal checklist for developers.

Are the File Permissions set right?

This is one of the top items in our pre-launch Drupal checklist. To secure your Drupal website, the first step you must take is to set the file permissions right. Make sure your web server is not given permission to edit or write the files that it executes. Automated tools to set and verify permissions like File Permissions and Security Review Module, can also be used. The PHP Filter Module under /admin/modules needs to be disabled, if your site is using Drupal 7. The settings.php file should be secure so that the database connection information is protected. 

Drupal Security Updates?

Drupal has been a choice of Content management system for various organizations but particularly so for organizations that deal with critical data. The reason why Drupal is known to become a secure CMS is because of the Drupal security team’s constant effort to keep it safe. With every major/minor release, security updates are shipped out. Many of them address immediate security risks. You will get warning messages when your Drupal security has lapsed.  Make sure your Drupal 8 release is up to date with all the security releases and patches. Keep your modules and core updated. You could also check for security updates manually by clicking on Reports and then checking for Available Updates.

Secure your admin’s account name

The Admin account is the root account that is used for any Drupal website development. Securing the root account is very important and should not be ignored. The installation is extremely vulnerable to hacker attacks as it isn’t hard to guess the username for the hacker. So the root account name should be changed to a more complex one (before launch at least) and a strong password must be used. You can use the Real AES module to tighten up your security. Also, when granting user permissions, ensure minimal permissions are given to anonymous users and all permissions granted to them should also be given to authenticated users.

Don’t let your users see those Error reports!

Because it can get very annoying. Error reporting should be turned off such that it must write the errors onto a log but does not display it to the users. To disable error reporting, go to Configuration > Development > Logging and Errors, set the option to None, which will disable all the error reporting. It should be ensured that 404 errors are handled well. Using Drupal modules like Search 404 helps in displaying more helpful content like search results based on the URL the user has been searching for.

Search 404 Result: Content and Search Engine Optimizing for your Drupal 8 website

You must ensure that all your site’s contents are displayed correctly. Don’t forget to run your site through the Lorem Ipsum scanner before launching. You might have missed to change all the dummy text when you have a lot of pages to go through. There are some great SEO modules that will boost traffic to your site after you launch.  Using the PathAuto Module is extremely important for Drupal web development as it will generate friendly URL’s instead of a URL that will look like this www.specbee[dot]com/node/3843. It is also recommended to use the Redirect Module along with PathAuto as it allows users to redirect from old URLs to new URLs. Because if you have two URL’s (with alias name) that represent the same content, it can be very harmful for your SEO ranking.

Redirect Module Settings Redirection Module: Check Your Drupal Modules

Unused Drupal modules end up taking up space and makes your website slow. Ensure only those modules that are being used are enabled. Removing unused modules will help with your website’s start-up time. You could also use a Drupal module for this – Unused Modules. Also, it is recommended to disable the Devel module and similar modules during launch. Make sure your modules are up to date with its latest releases. Using a Drupal 8 module like the Site Audit can be extremely beneficial as it analyses your website for performance and behavior. It gives you a report that tells you if you have followed best practices (else gives recommendations), website’s caching settings, codebase (size and file count), unused content types if any, and much more.

Server Configuration

Check the file upload sizes. This is to allow users to upload large media files from your Drupal website. To do this, you may need to adjust the server configuration. It is also important to check the execution time. You can do so by setting the max_execution_time in the server configuration. Also don’t forget to check that all the forms and modules are being sent to the correct email addresses.

Is your Drupal site optimized for performance?

There are many things a Drupal developer can do to optimize the performance of your Drupal website, like

  • Caching –configuring caching will boost the performance of your website. Caching for some modules are turned off by default – so make sure they are turned on. Drupal 8 core comes packed with modules like the Internal Page Cache module and the Internal Dynamic Page Cache module
  • CSS and Javascript – a typical Drupal website will have a lot of Javascript and CSS files which will increase the number of HTTP calls for each page. However, one can compress all these relevant files by enabling the Advanced CSS/JS Aggregation feature in the performance section.
CRON jobs?

These time-triggered actions can help in checking for updates, re-indexing the search mechanism, retrieving feeds, notifying other sites of updates and perform routine maintenance tasks. It is also recommended to configure CRON for security and performance reasons.

A well-thought out checklist can have a huge impact on the quality and productivity of the result. Although this list might not cover all bases for every Drupal 8 website launch, here’s hoping this Drupal prelaunch checklist for developers comes handy for a few. 

Specbee is a Drupal Development Company and we have a team of highly experienced Acquia certified Drupal developers to help you with any of your Drupal requirements.

Drupal Planet Shefali ShettyApr 05, 2017 Subscribe For Our Newsletter And Stay Updated Subscribe

Leave us a Comment

  Shefali ShettyApr 05, 2017 Recent Posts Image A Prelaunch Checklist for your Drupal Website Image Cryptocurrency and Blockchain - Everything You Need to Know Image Are you prepared for a better tomorrow? – The Drupal 9 Checklist and What’s New Want to extract the maximum out of Drupal? Contact us TALK TO US Featured Success Stories

Know more about our technology driven approach to recreate the content management workflow for [24]7.ai

link

Find out how we transformed the digital image of world’s largest healthcare provider, an attribute that defined their global presence in the medical world.

link

Discover how a Drupal powered internal portal encouraged the sellers at Flipkart to obtain the latest insights with respect to a particular domain.

link