Talking Drupal
Talking Drupal is a weekly chat about web design and development by a group a guys with one thing in common, we love Drupal. With hosts Stephen Cross, John Picozzi and Nic Laflin.

In Episode #134 we talk about Highly Available websites with Drupal.

Show Notes

  • Defining what we mean by high availability and defining availability with a customer.
  • High availability scenarios - “Today Show Affect”
  • Traffic patterns and history, understanding your customers needs and schedules
  • How to determine if a customer needs high availability
  • Implementing high availability - single points of failure, components of HA and overview of strategies
  • How to learn more about HA website implementations
    • Checkout Digital Ocean and Amazon AWS for learning and playing
    • HA is not point and click… heavy DEVOPS
  • HA Drupal providers
    • Acquia and Pantheon
  • Disaster recovery (a future show is needed for this)

Module of the Week

https://www.drupal.org/project/christmas_lights

A splendid module with Christmas lights decoration that creates long lasting atmosphere of X-mas for you and the users of your website.

Bonus Content

Mark Meier from Load Impact joins Nic and Stephen to demonstrate Load Testing with his product Load Impact. Mark has provided a very special offer to receive double the Virtual Users with a subscription. Sign up fo Bonus content at www.talkingdrupal.com/newsletter

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

Direct download: TalkingDrupal134.mp3
Category:general -- posted at: 2:50pm EDT

In episode 133 we talk about something that everyone does when building and supporting websites, debugging.

Show Notes

  • Can you determine where the issue originates from? Is it front end, backup, css, or a module.
  • RIR Strategy - Reproduce, Isolate and Resolve.
  • Reproduce
    • Gather pertinent information to help resolve a bug quicker
    • Train your customer and provide a bug report form to help them provide you the best information.
    • When trying to reproduce an issue, make sure your development/QA enviroments mirror the production environment. For example, do you PHP version match? Listen to show #127 Local Development with Vagrant.
    • If an issue cannot be reproduced in a development environment, look at the server configuration and data.
  • Isolating
    • When the issue can be reproduced, isolating it is the next step.
    • Tools and techniques you can use to help
      • Drupal and server logs - check your log files first.
      • Turn on error reporting for PHP to display errors
      • Inspector - use the Console and Networking sections in the inspector. This will help identify front end issues. I common issue is javascript not loading from third parties.
      • What are the last things that changed? Looking back at the most recent code or configuration changes will uncover the source of a bug.
      • Peer Programming - work with someone else to resolve a problem. Often, just explaining it will help resolve it.
      • Walk Away - Taking a short break from a difficult bug will you have fresh perspective.
      • Note Pad - Take notes during the research will help you organize your isolation process.
  • Resolve
    • Fix it.
    • Think about how you can prevent this in the future.
    • Document it.

Module of the Week

Search API - https://www.drupal.org/project/searchapi

This module provides a framework for easily creating searches on any entity known to Drupal, using any kind of search engine. For site administrators, it is a great alternative to other search solutions, since it already incorporates faceting support and the ability to use theViews module for displaying search results, filters, etc. Also, with the Apache Solr integration, a high-performance search engine is available for this module.

Developers, on the other hand, will be impressed by the large flexibility and numerous ways of extension the module provides. Hence, the growing number of additional contrib modules, providing additional functionality or helping users customize some aspects of the search process.

Bonus Content

Download Sample Bug Report PDF and Webform version.

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

 

Direct download: TalkingDrupal133.mp3
Category:general -- posted at: 12:00pm EDT

 

Recorded the day after the US Presidential Election, John , Nick and I were a bit tired after watching election results throughout the night, but energized for a discussion with Kevin Reynen about Drupal Licensing. A recent community ‘conversation’ between WordPress and Wix sparked our interest to talk about the GPL. If you are making money on Open Source software, you should pay attention to licensing.

Watch or listen

Show Notes

  • What is the Drupal Licensing Working Group?
  • Everything committed to Drupal repo has to be compatible with GPL v2
  • What is the GPL? Based on Richard Stallman’s set of four freedoms:
    • The freedom to run the program, for any purpose
    • The freedom to study how the program works, and change it so it does your computing as you wish
    • The freedom to redistribute copies so you can help your neighbor
    • The freedom to distribute copies of your modified versions, giving the community a chance to benefit from your changes
  • What is the difference between copyright and licensing
    • You can claim copyright of a module you write, which means the others must attribute you are the source of original author. The GPL allows other to distribute and modify that code.
  • What does distribution mean and what triggers the distribution clause?
    • As is relates to work for hire
    • As is related to SaaS
    • As is relates to the contract you are hired under
    • Distribution vs Convery
  • Can you sell a module or theme? YES!
  • Licensing - Drupal interfacing with other products (licenses) - ie. FontAwesome, CiviCRM, CKEditor in Core, AMP
  • Major differences between GPL v2 and GPL v3, AGPL
  • GPL and the use of GitHub
  • Distributions, Drupal 8, Composure and licensing
  • How is licensing monitored
  • Wordpress and Wix recap

Resources

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

Guests

Kevin Reynen - http://www.colorado.edu/@kreynen

Direct download: TalkingDrupal132.mp3
Category:general -- posted at: 12:00pm EDT

In episode #131 we talk about interfacing your Drupal website with third party APIs.

Listen or Watch

Tips of the Week

  • Nic - sign up for Talking Drupal’s new Newsletter to receive bonus material at www.talkingdrupal.com
  • John - Consider upgrading your Mac before buying a new one.  A Memory upgrade and/or solid state drive can make an old machine new again.
  • Stephen - Look for local meet ups. It’s a great place to learn and make new Drupal friends.

Show Notes

  • What is an API?  A contract between two applications.
  • Client side vs server side access to third party APIs
  • Evaluating APIs
    • Is the API well documentation.
    • Use tools to test the API before you invest time in writing code - (chrome extensions) Advances REST Client, Postman 
    • Relationship with company providing the API. Do you have access to technical support?
  • Authentication - authentication methods, depends of the API
  • Interested in an API - look for a Drupal modules first, before coding one yourself

Module of the Week

CKEditor Anchor Link for Drupal 8

The Drupal 8 Core CKEditor is missing some very important options.

Resources

 

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

Direct download: TalkingDrupal131.mp3
Category:general -- posted at: 12:00pm EDT

In this special episode we share the New England Drupal Camp keynote speech from Brian Charlson.   Brian shares the struggles of a blind person using a good website and bad website. 

Brian Charlson is a national authority on assistive technology for persons who are blind or visually impaired.  Brian has worked at the Carroll Center for the Blind as both a classroom instructor and as the Director of Technology over the last 30 years.  Blind himself, he has dedicated his career to ensuring that persons with vision loss have equal access to technology and the skills to independently use it in their daily lives.

As Director of the Carroll Center for the Blind Computer Training Services program, and as the Chair of the Information Access Committee of the American Council of the Blind, he has worked with Sun Micro Systems, Adobe Systems, Microsoft, IBM and may other companies to improve the accessibility of mainstream products and services. While working with Freedom Scientific, GW Micro, AI Squared and Duxbury Systems, among others, to assure that access technology keeps up with the rapidly changing information technologies used in school, offices and places of public accommodation.

Brian has presented at national and international technology, leadership and special education conferences including traveling to Spain, Israel, Greece, England, Canada and Australia.  He is often a guest speaker on subjects related to access to technology for those with disabilities at universities, library associations and other media events. Brian has taken leadership roles in local, state, national and international consumer groups including the Bay State Council of the Blind, Library Users of America, American Council of the Blind and the World Blind Union.  Brian is an advocate for quality services for people who are blind so that they can achieve their individual best. 

Brian’s current passions include universal design so that mainstream technologies can be used by everyone; making access technology training available to everyone who needs it; Major League Baseball as a fan of the Boston Red Sox and internet radio as the co-host of the Yin Yang Show on ACB Radio Interactive.

Direct download: Nedcamp2016BrianCharlesonKeynote.mp3
Category:general -- posted at: 1:51am EDT

In episode #128 we talk about options for securing Drupal logins.

 

TOPICS:

  • What do we mean by Login Security?
  • Modules
  • Password Strength
  • Password Policies
  • Two Factor Authentication
  • Flood Control
  • HTTPS
  • Spam accounts
  • Reset password
  • Drush

RESOURCES:

Password Policy - https://www.drupal.org/project/password_policy
Password Strength - https://www.drupal.org/project/password_strength
Flood Control - https://www.drupal.org/project/flood_control
Login Security - https://www.drupal.org/project/login_security
Duo Two-Factor Authentication - https://www.drupal.org/project/duo
Google Authenticator Login - https://www.drupal.org/project/ga_login

MODULE OF THE WEEK:

BG Image Formatter

www.drupal.org/project/bg_image_formatter
This module provides an image formatter who allows you to set an image in background of a div. The images are from a field of an entity and not from a configuration page or sth else, so it's very easy to setup and manage.

Direct download: TalkingDrupal128.mp3
Category:general -- posted at: 12:00pm EDT

In episode #127 we talk with Ben Doherty about setting up a local development environment with Vagrant.

TOPICS:

  • What is Vagrant
  • Why would you consider using it?
  • What are the benefits of vagrant vs *AMP
  • Difference between Docker and Vagrant
  • How do you install Vagrant
  • Common Vagrant Commands
  • How do you get a local environment setup
  • When using GIT/IDE locally, where does the code sit? How does it work?
  • More advanced uses/configuration
  • Resources

RESOURCES:

Direct download: TalkingDrupal127.mp3
Category:general -- posted at: 12:00pm EDT

In episode #126 we discuss the planning for the New England Drupal Camp 2016.

TOPICS:

  • NEDCamp Third Year
  • Scheduling around other camps / Drupalcon
  • Moving location
  • Team
  • Training Day
  • Focus/Theme - Accessibility
  • Where’s next year's camp going to be?

MODULE OF THE WEEK:

IMCE for FileField

www.drupal.org/project/imce_filefield
IMCE for FileField allows users to select files from IMCE File Browser. It supports FTP uploaded files by automatically registering them as IMCE files thus making them usable in a FileField.

Direct download: TalkingDrupal126.mp3
Category:general -- posted at: 12:00pm EDT

TOPICS:

  • How you can use analytics
  • What analytics are needed
  • Capturing analytics
  • Core Statistics module
  • Custom development
  • Google Analytics / Google Tag Manager
  • Other tools
  • Other Analytics Tools/Modules

MODULES:
Statistics Counter - https://www.drupal.org/project/statistics_counter
Google Analytics - https://www.drupal.org/project/google_analytics
Google Tag Manger - https://www.drupal.org/project/google_tag

RESOURCES:
New Relic https://newrelic.com/
Loggly https://www.loggly.com/
Google Tag Manager - https://www.google.com/analytics/tag-manager/

MODULE OF THE WEEK: 

Simple Ads
www.drupal.org/project/simpleads
This module provides a way to feature advertisements on a Drupal website. It displays graphical, text and flash ads in configurable blocks. It records and reports useful statistics. It is easy to configure and does not depend on other contrib modules.

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

Direct download: TalkingDrupal125.mp3
Category:general -- posted at: 12:00pm EDT

TOPICS: 

  • Drupal 8 learning curve
  • Composer - The new way to manage modules
  • Git workflows
  • Update hooks / deleting modules

MODULE OF THE WEEK:

Node Edit Protection
www.drupal.org/project/node_edit_protection
A very simple JavaScript based protection that will alert a user if they are navigating away from a modified Node Edit form without saving. It uses a standard JavaScript confirm dialog that allows the user to either continue what they were doing, or cancel the move allowing them the opportunity to save. It marks the form as dirty by using the blur event of the node fields.

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLighteneddevelopment.com @nicxvan

Direct download: TalkingDrupal124.mp3
Category:general -- posted at: 3:47pm EDT

In episode #123 we take about the red hot module, Paragraphs.  www.talkingdrupal.com/123

TOPICS:

  • What is Paragraphs
  • Why use it?
  • Features
  • Use Cases
  • Supporting Modules

MODULES:

RESOURCES:

HOSTS:

  • Stephen Cross - www.ParallaxInfoTech.com @stephencross
  • John Picozzi - www.oomphinc.com @johnpicozzi
  • Nic Laflin - www.nLightened.net @nicxvan

 

Direct download: TalkingDrupal123.mp3
Category:general -- posted at: 4:41pm EDT

In episode #122 we talk about using Taxonomy or Entity References

TOPICS:

  • Definition of Taxonomy
  • Scenario/Use cases
  • Considerations

MODULES:

Taxonomy Access Control https://www.drupal.org/project/taxonomy_access
Taxonomy Access Fix https://www.drupal.org/project/taxonomy_access_fix

MODULE OF THE WEEK:

IMCE Mkdir
www.drupal.org/project/imce_mkdir
IMCE Mkdir allows users to create and delete sub-directories under directories assigned by IMCE.

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLighteneddevelopment.com @nicxvan

GUEST:

Benji Fisher - https://www.drupal.org/u/benjifisher

Direct download: TalkinDrupal122.mp3
Category:general -- posted at: 3:17pm EDT

In episode #121 we talk with Holly Ross and Megan Sanicki. Megan is replacing Holly as the Executive of the Drupal Association.  www.talkingdrupal.com


TOPICS:

  • DA mission - what is the mission of the Drupal Association
  • What next - for Holly?
  • Holly's time with the DA
  • Megan's vision for the DA
  • Goals for the next 12 months

RESOURCES:
https://assoc.drupal.org/blog/holly.ross.drupal/hello-world-goodbye-drup...
https://assoc.drupal.org/blog/megansanicki/ready-serve
http://buytaert.net/megan-sanicki-to-become-executive-director-at-the-dr...

 

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxva

 

GUESTS:


Megan Sanicki - @megansanicki

Holly Ross - @JustHRoss

 

Direct download: TalkingDrupal121.mp3
Category:general -- posted at: 12:00pm EDT

In episode #121 we hear about Drupal Con NA from John's perspective.  www.talkingdrupal.com

TOPICS:

  • Driesnote
  • Drupal 8 Update
  • Market Perspective
  • Survey
  • Initiatives

MODULE OF THE WEEK:

Better Formats

www.drupal.org/project/better_formats

8.x & 7.x (needs more testing for a stable release)

  • Set allowed text formats per field.
  • Set default order of text formats per field.
  • Hide format tips per role.
  • Hide more format tips link per role.
  • Hide format selection per role per entity.
  • Currently only works on Field API fields on fieldable entities implementing core style text processing. The good thing is that is most things in core and contrib.

 

 

Direct download: TalkingDrupal120.mp3
Category:general -- posted at: 12:00pm EDT

In episode #119 we talk about changes in Drupal 8 that are related to performance and caching.  www.talkingdrupal.com/119


TOPICS:

  • Drupal 7 Caching
  • Drupal 8 - Cache Tags
  • Drupal 8 - Dynamic Page Cache
  • External Cache Setup - Varnish
  • Big Pipe


MODULES:

MODULE OF THE WEEK:

iFrame
www.drupal.org/project/iframe
A custom field, which lets you add a complete iframe to your content types; including Src-URL, setting width and height, optionally a title above, and optionally a target attribute.

GUESTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLighteneddevelopment.com @nicxvan

 

Direct download: TalkingDrupal119.mp3
Category:general -- posted at: 10:46pm EDT

In episode #118, we talk with Dan Shure (@dan_shure) about SEO.  

TOPICS:

  • What is SEO
  • What is an SEO Consultant
  • When to go to an SEO Consultant
  • Organic vs Pay
  • Managing customer questions
  • Snake oil SEO
  • Tools to get started
  • Most common mistakes
  • SEO Tips
  • Recommended resource to people to learn

RESOURCES:

MODULE OF THE WEEK:

Footnotes

http://www.drupal.org/project/footnotes


Footnotes module can be used to easily create automatically numbered footnote references into an article or post (such as a reference to a URL). It now supports also TinyMCE and CKEditor via WYSIWYG module.

 

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan


GUEST:

Dan Shure - www.evolvingseo.com @dan_shure

 

 

Direct download: TalkingDrupal118.mp3
Category:general -- posted at: 3:28pm EDT

In episode #117 we talk about using Solr for search on a Drupal website.  www.talkingdrupal.com/117

TOPICS:

  • Core search
  • What is Solr
  • How does Solr work
  • Benefits of using Solr
  • Features of Solr

MODULES:

RESOURCES:

MODULE OF THE WEEK:

Multi-Step Registration
www.drupal.org/project/step
With Multi-Step Registration you can create multi-step (wizard) user account registration forms. Each step of the wizard can be configured to, optionally, expose one or more Profile2 types.

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross

John Picozzi - www.oomphinc.com @johnpicozzi

Nic Laflin - www.nLightened.net @nicxvan

Direct download: TalkingDrupal117.mp3
Category:general -- posted at: 12:17pm EDT

In episode #116 we discuss automating the deployment process with Rob Aubin.

TOPICS:

  • Deployment process
  • Dev - Staging - Traing - Production
  • Using GIT
  • Strategy for deployment
  • Why automation
  • Automation risks
  • Jenkins and other tools

RESOURCES:


http://deploybot.com
https://jenkins-ci.org/
https://www.tunnelbear.com
https://events.drupal.org/losangeles2015/sessions/how-jenkins-can-work-w...


MODULE OF THE WEEK:


Smart IP
www.drupal.org/project/smart_ip
Smart IP identify visitor's geographical location (longitude/latitude), country, region, city and postal code based on the IP address of the user. These information will be stored at session variable ($_SESSION) with array key 'smart_ip' and Drupal $user->data object with array key 'geoip_location' of the user but optionally it can be disabled (by role) at Smart IP admin page. Other modules can use the function smart_ip_get_location($ip_address) that returns an array containing the visitor's ISO 3166 2-character country code, longitude, latitude, region (FIPS), city and postal code. It provides a feature for you to perform your own IP lookup and admin spoofing of an arbitrary IP for testing purposes.

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan

Rob Aubin -  www.oomphinc.com @ra8

Direct download: TalkingDrupal116.mp3
Category:general -- posted at: 12:00pm EDT

In episode #115 we talk about Google's AMP (Accelerated Module Pages) and implementation in Drupal with Matthew Tift.  http://www.talkingdrupal.com/115

Topic

  • What is AMP?
  • Technical Implementation
  • Show should care about AMP?
  • Drupal AMP Module

 

Resources

AMPing with Drupal - https://amphtml.wordpress.com/2016/03/02/amping-up-drupal/ https://assoc.drupal.org/vote2016 https://assoc.drupal.org/drupal-association-board-elections https://www.drupal.org/project/amptheme https://www.lullabot.com/articles/amping-up-drupal 

Modules

AMP module - https://www.drupal.org/project/amp

Module of the Week

Field UI - api.drupal.org/api/drupal/modules!field_ui!field_ui.module/7

Allows administrators to attach custom fields to fieldable types.

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan

Matthew Tift - @matthewtift

 

 

 

Direct download: TalkingDrupal115.mp3
Category:general -- posted at: 12:00pm EDT

In episode #114, we talk about integrating text messaging into your website.  www.talkingdrupal.com/114

Topics

  • Use cases for Text Messages
  • What is Twilio?
  • Other Drupal SMS solutions

Modules

Twilio - https://www.drupal.org/project/twilio
Viop - https://www.drupal.org/project/voipdrupal

Module of the Week

Redirect Module - https://www.drupal.org/project/redirect

https://www.drupal.org/project/redirect

  • Common API for loading, saving, and deleting redirects.
  • Case-insensitive redirect matching with a hook to allow other modules to narrow-down the candidate redirects.
  • Redirect counter and last used timestamp, with automatic cleanup of inactive redirects.
  • Integration with Drupal's page cache to optimize redirects and performance.
  • Complete individual redirect access API.
  • Views API integration.

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan

 

 

Direct download: TalkingDrupal114.mp3
Category:general -- posted at: 12:00pm EDT

In episode #113 we talk about Drupal 6 End of Life with guest David Snopek.


TOPICS:

What is End of Life?
Drupal Install History
The day after - what does this mean for your Drupal 6
Drupal 6 Long Term Support (D6 LTS)
Hosting Issues
Moving to Drupal 7 or 8
Preparing a customer

MODULE OF THE WEEK:
Offie Hourswww.drupal.org/project/office_hours
A CCK/Fields module that creates an "office hours" or "opening hours" field. You can set the default weekly office hours for your locations

HOSTS:

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan

David Snopek - @dsnopek

Direct download: TalkingDrupal113.mp3
Category:general -- posted at: 3:44pm EDT

In episode #112 we talk about selling Drupal with Adam Lamagna.

Topics

  • Determining Drupal is good fit
  • Dealing with competitor
  • Positioning Drupal as the solution
  • Objections to Drupal
  • Open Source vs Proprietary
  • Dealing with WordPress
  • Drupal 8 pitch

Module of the Week

Configuration Installer

www.drupal.org/project/config_installer

The Configuration Installer is a installation profile that takes over the Drupal installer and allows sites to be created from existing configuration.

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLightened.net @nicxvan

Adam Lamagna -@ajmatic

Direct download: TalkingDrupal112.mp3
Category:general -- posted at: 12:00pm EDT

In episode #111 we revisit the topic of Views in Drupal.  www.talkingdrupal.com

Topics

  • Formatters
  • Sorting
  • Filters
  • Views Templates
  • Relationships
  • New in Drupal 8

Modules:


Semantic views- https://www.drupal.org/project/semanticviews
Draggable Views - https://www.drupal.org/project/draggableviews

 

Modules of the Week:
File Checker
https://www.drupal.org/project/file_checker
In a perfect Drupal world your server file system and its corresponding entries in Drupal's files table are 100% synchronized. But what if parts of your file system have been corrupted due to some disk failure? Or one of your modules messed up your database and files? Or your deploy script went beserk? Well, then this module will help you to monitor and find out which files are out of sync.

Hosts

Stephen Cross - www.ParallaxInfoTech.com @stephencross
John Picozzi - www.oomphinc.com @johnpicozzi
Nic Laflin - www.nLighteneddevelopment.com @nicxvan

Direct download: TalkingDrupal111.mp3
Category:general -- posted at: 12:00pm EDT