Nov 13 2018
Nov 13

Partnership combines comprehensive UI design, UX, and digital strategy, with web development proficiency, to produce a holistic experience for clients.

Chicago, Illinois — November 13, 2018 — In September 2018, Promet Source acquired DAHU Agency, a strategy-focused, user experience and design agency that enhances the services offered to its clients. By expanding their services in UX and UI, and bringing new offerings in-house for digital strategy, WordPress development, messaging, and branding –  Promet aims to better serve their clients evolving needs as marketing and web technologies continue to converge and the need to provide functional, dynamic websites increases.

 

In his vision for Promet to be a strong digital agency focused on creating great user experiences through meaningful web applications, Andy Kurcharski, President of Promet, seeks to accelerate growth and innovation by providing comprehensive digital services to his clients.  Andy has more than 20 years of technical leadership experience from startups to Fortune 50 firms with industry experience in banking, telecommunications, government, and association technology management. Andy’s e-commerce experience dates to 1998 with the implementation of highly scalable enterprise solutions.

 

“In today’s technology landscape, we are seeing that our clients and their customers expect more from their websites” Kurcharski expressed. “Our addition of a new team to our existing core of web developers will help us to proactively approach new websites with a holistic mindset combining our technology expertise with great design and function to ultimately increase client success online.”

 

DAHU Agency, based in Dallas, Texas, not only provides Promet with an office central to service their clients in the Southwest region, but also brings expertise in design and digital strategy to help optimize user experience within an organization’s website.

 

Mindy League, CEO and founder of DAHU Agency, offers a highly thoughtful and adaptive approach to constantly evolving technologies and user behaviors. Her experience in building solutions for clients such as HP, Emerson, IBM, and Home Depot, contribute to a depth of perspective into the challenges and opportunities faced by top global brands. Mindy will join Promet as the Director of User Experience and Design.

 

DAHU’s distinct approach to engaging with clients has been described as “radical empathy” and it is this philosophy and mindset that complements Promet’s dedication to delivering groundbreaking results to their clients. Whether examining the impact of corporate strategies on customers and the broader enterprise, or developing products, Promet aims to step into their clients’ businesses with a fervent dedication to excellent experiences and high-impact results.

 

Click here for full press release. 


 

Oct 20 2018
Oct 20

Imagine if you will, you have a an Events link on your main menu. Someone clicks on it and the Events landing page is loaded in their browser. How was this page built? With Drupal, you have several options. 

If you are the kind of person who likes to have a say in the way things are done, be it from a previous bad past experience or idle curiosity, the following will help you engage in the planning aspects of your Drupal site. So, let’s look at five recipes for building landing pages in Drupal.

  • Node page
  • Node Plus View Block
  • A View Page Plus a Block
  • Panel Page
  • Custom Theme Page

Node Page

Content pages in Drupal are called nodes. You fill out a form (e.g., a content type) online, save, and you have an article or event or some other kind of page. This page has a URL. That’s important to remember. Every page in a website has to have a URL. 

How

Using Drupal’s default Basic Page content type, you fill out the form. Give the page a title of About Us. Fill in the body field with information about you or your company. Add it to the main navigation menu with a check of a box. Lastly, you create a URL alias. Instead of the default format of /node/3, you want /about-us. Save and you see your new landing page.

Yes, it’s boring, but we’re just getting warmed up. 

Why

Simple page. Simple technique. Easy to create and edit. Easy to translate in a multilingual site. And let’s not forget the other cool things you can do with a node.

Node Plus a View

Building on the previous example, let’s build an Events landing page. Obviously, this kind of page is going to be a little more complicated. Here are the requirements: a title, some introductory text, and a list of Events that you created using an Events content type. You will have many events so using a manual approach to creating and updating a list of events is not a fun idea.

How

With this scenario, you use the Basic Page content type and create a node titled Events. Using the body field, you add some text that describes your events. Like before, check the box to add this node to the main navigation. Give your page the URL alias of /events. Save and the first part of the configuration is complete.

The next step in the configuration process is a little more complicated, but it’s the concepts you need, not the details at this time.

Drupal has a module called Views. It’s an incredible tool that lets you create an SQL query on the database and then create a display for the results of that query. For this landing page, you need events for the future, not the past, so you filter accordingly.

Given we already have a Drupal feature with its own URL (the event node), we don’t need another. That means you will create a block display for the SQL query results. Blocks can be small bits of information or larger, more complicated displays. They can even hold forms. What they don’t have is a URL. They only show up because a page is there to host them.

Without going into all the particulars, you will place the block so it appears under the body field. If you want to know more about how this done, please join us in a Drupal 8 Site Building Best Practice training class.

When you go to the yoursitename.com/events URL, you will see the Events node and the view block that lists the upcoming events. With some styling, you can make the two features (node and view) appear as one, seamless. Or not.

Why

Some will argue that you could have made a View page versus using this two step process. And, in the next example you will. In this scenario, you looked ahead and saw that the introduction text would not be a fixed blurb. You will change it from one season to another and your staff will not have the skills to edit a View.

So, this scenario worked nicely for your business process and staff.

A View Page Plus a Block

Let’s change up the requirements as a means of introducing another build option. You need a list of events, but instead of some introduction text, you need an image banner. There are several ways to accommodate this new image requirement, including adding to the previous scenario. In this example, we will use a View page and a block.

How

Create an SQL query, grabbing all the events scheduled for the future. Instead of displaying the list of events in a block, you create a page with a URL of /events and place it on the main navigation menu.

Next, create the block that will display your image banner. Like with most requirements, Drupal provides several alternatives to meeting them. For this scenario, assuming you are using Drupal 8, create a new block type called Image Banner. Add an image field to the new block form and set the field display to show only the image.

Create a block, using your new block type. Upload the image you need for the Events landing page. This process is very similar to creating a node. The input form looks similar as well. 

Place the banner image block either above or below the page title block to match your design. This is a quick and easy way to insert an image above the title of the page if that is your choice. 

Why

A View page isn’t like a node. It doesn’t have fields. You can add a header and footer text, but it’s not the same as adding field to a node. Bottom line, a View show the results of a query - typically that of nodes. So, if you need to display information other than the query results, you might need to use methods like described above, by adding blocks or combining a node with a view.

Another reason for mixing and matching features to create a landing page is display. By default, a Dupal page - node or view - is broken into two parts: Title block and Main Page Content block. If we had chosen to add an image to the available header text box in the view, the image would appear below the page title. Yes, you can do some template coding and rearrange things a bit, but why would you if you could simply place a block and accomplish the same goal.

The point of all this is, remember that content comes in parts in the Drupal world, and quite often, a simple mix and match strategy is all that needed.

Taxonomy View Page

A technique that can be overlooked is the use of the default taxonomy term page. A term is a word or phrase used to describe the content in the node. By default, a term page displays when someone clicks on a term link shown on a node. The page provides a list of nodes tagged with that term. 

Let’s see how this default feature might be used to create landing pages by changing our focus from Events to types of content.

How

Imagine that you have three types of content that will be placed in a body field: How-to Lessons, News, and Blogs. Instead of creating three separate content type forms, you add a field that assigns terms to the content, declaring it a How-to Lesson, for instance.

By default, the How-to Lesson term has its own landing page. In Drupal 8, the term page is a View page and can be modified to meet your display layout needs.

Let’s take this scenario one step further. It’s come to your attention that you need a banner image and introduction text to appear above the list of nodes tagged as How-to Lesson. In this scenario, you can add an image field to the term and use the description field for your introduction text.

The results are very similar to what we have created in the previous scenarios: a page title, and image, some text, and a list of nodes. Place the page URL on the main menu and you have a landing page. 

Hopefully, this demonstrates the need to think about your processes before choosing a configuration strategy. There are several steps involved but it’s actually quite easy to do with a Drupal training class.

Why

Websites can be complex and that might mean multiple content types. However, imagine that one of your staff is blogging the latest insight on gardening strategies and it morphs into a how-to lesson. If they created the blog post in the Blog content type, they would need to move that content to the How-to Lesson content type instead. 

If this is something that might happen, create one content type for narrative content and use terms to distinguish between them. If you do, you can then take advantage of the term’s default pages, like demonstrated in this example.

Panel Page

So far, our examples assumed simple displays. What if you want to create a landing page whose content is built solely from blocks. Basic text blocks. View blocks. Blocks from other modules. Again, there are several ways to make this happen, especially if your theme (that bundle of code that controls the look and layout of your site) has the appropriate regions to organize your blocks in the way you need.

For now, let’s assume you need something unique.

How

Panels is a module that you can add to Drupal. It provides a graphic user interface (GUI) and allows you to create a page with its own URL that can be assigned to the main menu. Remember, if you need a page in Drupal, it has to come from something that can have its own URL. You can also create a custom layout to display blocks.

The process to complete this task is too complicated to step through here, but it can be learned.

Why

Some will say that you should create the theme regions you need versus using Panels, and they would have a valid point. However, if by now you are intrigued with the build process and are wondering if you might be able to do it yourself, then a tool such as Panels doesn’t require you to know how to customize a theme. 

Of course, with training, a custom theme is something you can manage. In fact, let’s consider one way of using a custom theme to create a page in your site.

Custom Theme Page

Let’s take a moment to consider the Drupal theme. Without going into all the details of theme development, at a minimum, you need to know that the theme defines the regions (header, navigation, sidebars, content, footer, and more) used to organize and display blocks. It also manages the templates used to say what gets rendered in the region.

For example, there is a page template. This renders the region if there is a block assigned to show in said region. You can add as many regions you want in order to accommodate the various block layouts you need.

You can also create a template for a single page. Let’s consider this strategy for a moment. 

How

Assume that you created a node using the Basic Page content type and titled it Resources. In the theme, you create a template specific to this node. At this point, it’s all about hand coding. You create a template that renders all the blocks you have created to display on this page. Then, with some CSS, you style the blocks in a layout of your choosing.

With the Resources node assigned to the main navigation menu,  you have the page you need because its custom template is hard coded.

Why

To be honest, although this blogger has seen this approached used, it is not conducive to making quick changes to the page. Why is it listed as an option? Because, depending on who you hire to create your site, you might end up with a vendor that uses this technique. Be it on purpose to gain maintenance business from you or just from lack of Drupal building experience, you could end up with a site that does not meet Drupal’s flexibility characteristics.

Make sure you are specific in your requirements regarding the use of custom code if this is a concern.

Planning and Promet

The five options conveyed here are not the only options you have available. Moving forward, consider taking an active role in the development strategies chosen to create your site to ensure you receive a solution you can manage. 

Remember to build in time in your schedule to have development strategies discussed before they are implemented. If your developer is reluctant to let you in on their plans for meeting your requirements, they might not be the vendor for you. 

If you still have questions, check out Drupal 8 Makes it Easier and The Path to Migration to learn more about your options and considerations for your project.

Promet offers a unique planning engagement that we call our Architecture Workshop. This workshop is a customized engagement that engages all of your stakeholders in the Discovery Process.We do a 3-5 days of intensive onsite exercises with stakeholders (for your busy C-level folks we customize the agenda to bring them in where they are needed during this onsite). Then the team goes away and produces a set of deliverables that  includes a full-field level Architecture Blueprint of the website(s). Whether you choose to use a waterfall or agile development methodologies - you have everything you need to build the website everyone has agreed upon. 

Not building your site and stressed out about getting an accurate quote? Investing in this kind of Workshop will make sure that you get the right Partner, and the best price.

For more planning information email [email protected].

Oct 20 2018
Oct 20

The most common way to post content on a web page is via HTML text, images, audio, and video. No matter your approach to content delivery, you probably know that your approach needs to be accessible. Did you know that non-web content such as Adobe PDF documents need to be accessible as well?

Is your restaurant menu downloadable? Do you post your meeting agendas? What about event brochures or product catalogs. PDF files are great for such purposes and need to be accessible.

You might be wondering how one makes non-web files like PDFs accessible. That’s where the Web Content Accessibility Guidelines (WCAG) comes into play. Yes. The same criterion you use to create accessible web pages applies to non-web documents as well. Of course, not all will apply such as Bypass Blocks and Captions for video but the WCAG criterion will be your guide. 

Let’s consider some of the guidelines that will apply to non-web documents.

Applicable WCAG Criterion

When creating documents, you need to cover the basics. 

  • Declare the document’s language.
  • Include a title for your document
  • Use Header styles instead of manually bolding a header or changing its font size
  • Ensure that said headers are orderly, that you don’t jump from header 2 to header 4, for instance
  • Include a brief description of your images via alternative text 
  • Ensure color contrast ratios are met
  • Identify the meaning of shapes and icons that you might use
  • Declare header row in the any data tables you create
  • Resist the urge to use tables to manage your content layout
  • Ensure that embedded links have a clear purpose (no “Click here” links)
  • Remember not to leave inline bookmarks hanging without it’s partner link

The more complicated the PDF, such as those with forms, you will need meet other criterion.  However, for your basic content document, hopefully, you are thinking that this list doesn’t sound too bad. If not, you have help. If you miss something while creating your PDF, Adobe Acrobat has an accessibility testing tool that will remind you to check things it can’t, tell you if it sees something wrong, and will give you help to fix the issues.

But, let’s not get ahead of ourselves. The first step in the process of creating the accessible PDFs.

Create a Source File

Microsoft Office, Corel, Google, and Adobe are just a sampling of product vendors whose applications can create PDF files after its user has created a source file. Perhaps you are using one of these or some other application. As long as your source file can be made to accommodate the requirements listed above before you export a PDF, then you are well on your way to creating an accessible document.

Save As or Export a PDF

If you create an MS Word document, for example, the process is to save as a PDF. If you create an InDesign document, the process is to export. Whatever the vernacular, convert your source file into a PDF.  

Convert does not mean print to PDF, nor does it mean scan to PDF. Both of these options create an image of the text. That means assistive technology cannot see the text. 

Sadly, not all conversion processes work perfectly. That means testing and repair is required.

Test and Touch up the PDF

Even if you have a simple Word document with sections and subsections divided by headers, you can still run into issues once the file has been converted to PDF. Use the accessibility testing tool in Adobe Acrobat to check for hidden issues. 

For instance, by default, the Acrobat accessibility test result will likely tell you to check your color contrast - assuming you are using color in  your document. It might also say you don’t have a title when you do. FYI, the title being requested is part of the document’s metadata. Lastly, it will likely ask you to check the logical reading order of your content. 

You might think that checking the logical reading order can be ignored. You created a document whose content is presented in a logical order. How could it have possibly changed? Just to be sure, you scroll through the PDF and see that all is well. 

Logical reading order isn’t about what you see, it’s about the order assistive technology will read the content. So, be sure to click on Reading Order in the Accessibility options in Acrobat. Make sure that the numbers assigned to each item on the page conveys the actual order. You would be surprised how often the reading order differs from what you see.

There could be other issues the test reveals. Don’t worry about not knowing how to fix all the issues it finds. Acrobat provides links to short tutorials that explain how to remedy an accessibility problem it has found. 

However, before you fix something in the PDF, make sure it was formatted correctly in the source the source file. It if is not, fix it there and convert again.

Conclusion

If you have a choice between placing content on your site via a PDF versus HTML text, consider the HTML text first. Being more accessible than a file that one has to download, it is easier to format HTML text and it images to be accessible.

If faced with a multi-page source file that can’t easily be ported into HTML text, then plan ahead. Allow time to inspect your PDF’s reading order and remedy any accessibility issues before you put it online.

Not sure you have a problem? Email our Accessibility Experts - they can evaluate your site, and provide you with an Accessibility Scorecard. If you know your documents are a problem, we can estimate the cost of remediating those documents. 

Oct 18 2018
Oct 18

A web page in Drupal is made up of several parts. For instance, you have the header and navigation that appears on each page. You have the main content region that holds your articles or the details associated with your events. On either side on the content, you might have sidebars with blocks suggesting related content or a call to action. 

Typically, each part of the page is created or managed by different members of your website team. The developers that originally created your site will have set up your header and menu, for example. You might have a trained IT member of your team tasked to create and place blocks in the sidebars as needed. Then, when a content author publishes an article, those blocks appear as planned on the article.

A setup like this taxes your IT guy and limits your content authors. Let’s explore how content types, fields, and views can empower your authors to influence the block that appear in the sidebars from article to article.

Planning Your Blocks

A simple exercise in the planning process is to ask the question, when X-type of content is published, what blocks should also appear? Traditionally, this would mean a fixed set of blocks configured to be visible on that content type or based on the URL alias.

But, what if you need a more granular approach to creating and enabling blocks. What if you wanted your content author to create and enable blocks without having to train them to be a Drupal builder?

Let’s explore an example scenario where you list all the blocks you might need from one article post to another.

  • More like this
  • Related training
  • Call to action
  • Archive
  • Guest speakers

A few of these blocks can be set up during development to activate automatically. For example, if the article is tagged as container garden, then other articles tagged as such will appear in a the block More Like This. But what about Calls to Action? Let’s take a closer look at those blocks that can’t be predicted with ease.

Related Training

You could design a Related Training block much like the More Like This block where training events would be listed in the block just because they have been tagged with the same term. 

What if the content is a How-to piece giving a sneak preview to one of the more simpler tasks that will be taught in a series of training events? In this scenario, the author wants to control which event to advertise, but she doesn’t want to include that advertisement in her narrative.

So, in the narrative content type you add a field that allows the author to reference the training event nodes that are directly associated with the content of the how-to lesson. Following the same concept as in the previous example, you hide the event reference field and print it via a Views block. The block appears in a predestined spot on the page.

With this approach, with some planning, the block can be configured to include a thumbnail image taken from the events in question along with date and time information, making it more than a list of the titles that appears in the reference field.

Call to Action

Your content author has created an article about a new technology that will be presented at the conference. You are not presenting a session but you will be hosting a networking event for attendees who want to extend their conference experience and meeting others in the field. The article is not the event. There’s an event node in another section of the site.

You want a Call to Action block to appear with this article, giving site visitors a link to sign up for the networking session. The common practice would be to create an advertising block and then placing that block to be visible for this specific article.

Another strategy would be to add a field set to the content type you use for your narratives such as blogs, news, and how-to lessons. You would add an image field, a text field, a link field, and on/off field. They would not be set to show. Instead, a contextual view block would be created, one on the lookout for someone to fill in the call-to-action fields and turn it on.

The Call to Action block will show up at the author’s discretion in a place on the page decided by the User Experience designer during the planning phase of your website development project.

Archive

Drupal 8 ships with a predefined View called Archive. It provides a block that lists months and includes a number representing how many nodes were published in that month. By default, all nodes are included but that doesn’t mean you can’t add filters to limit what gets included in the count.

Not all narrative content will be enhanced by including an Archive block, therefore having it enabled by default, could take up screen space needed for other more useful blocks. So, how does a content author turn this block on and off as needed? 

First, identify the scenarios where your users would benefit from being able to find previous narratives in common with the one they are viewing.  Then, using the same strategy applied for the Call to Action block, add an on/off field for the Archive block. Edit the Archive View to look for this field to be set to on.

This scenario, and the previous one, depend on your trust in the author to know when to turn on Call to Action and/or Archive. That’s where business rules come into play and ensuring all know how to follow them. 

Guest Speakers

This time, your content author is creating an event with multiple guest speakers. You have decided that creating a speaker page for every guest could amount to many nodes that aren’t worth maintaining. Instead, you want to link to the speaker’s own website.

Of course, you could make this information available is a list of links as part of the event, but given all the data you already including, it’s been decided that highlighting the speakers in their own blocks is a better option.

Using the same strategy enabled in the Call to Action scenario, you create a set of fields: image, text, link, on/off. This time however, you need the ability to have multiple speakers so you need this set of fields to repeat. There is a module called Paragraphs that will be your friend in this example.

Paragraphs allows you to create a set of fields that can be repeated on the page. Instead of including them in the display, you use a View to show the information in a block.

Performance

You might be starting to wonder about the performance of your site with all these queries on the database. And, you would be right to be concerned if you had no caching plan in place. Outside of Drupal, you have caching tools such as Varnish that can help deliver your pages quickly.

Have a Plan

When it comes to Drupal, using your imagination is key to empowering your content authors. Start by mapping your processes. Ask yourself what has to be available in order to execute the process differently.

Remember, you don’t have to teach your content authors how to create and place blocks. You can plan ahead and give them simple options within the environment they will already be working. Assuming default processes are your only option can frustrate your users.

Need Help?

Promet offers best practice Training to help give your team the know-how to be prepared for these scenarios. Want to run scenarios like this by our experts to get advice on pages, or even plan a new website from the ground up ? Promet is happy to create small and large planning exercises for you and your team to get the most out of your Drupal site.

Oct 15 2018
Oct 15

If someone sues you because your website has accessibility issues, it usually means they need you to fix said issues. Sadly, there will be those lawsuits where the complaint is trigger more by the desire of monetary compensation from a settlement than the present accessibility issues, but in either scenario, there has to be grounds for the complaint which means something needs remediation on your site. 

Why are we stating the obvious? Because it's not obvious to all who find themselves with a letter or lawsuit claiming that their website is inaccessible and therefore discriminates against individuals with vision, hearing, and/or physical disabilities under ADA Title III.

Defenses against inaccessibility claims that have been seen in the news include:

  • Websites aren’t included under ADA Title III
  • Even if they are, it’s moot in this case

ADA Title III Defense?

On October 31, 2017, a letter was sent to The Honorable Jeff Sessions, Attorney General, United States Department of Justice, and signed by sixty-one Members of Congress, urging the DOJ “to restart the process of issuing regulatory guidance regarding the Internet under Title III of the ADA.”1

Restart? Yes. 

In this same letter, the sixty-one Members of Congress reminds the Attorney General that the DOJ, in their 2010 ANPR, states “Although [DOJ] has been clear that the ADA applies to websites of private entities that meet the definition of ‘public accommodations,’ inconsistent court decisions, differing standards for determining Web accessibility, and repeated calls for [DOJ] action indicate remaining uncertainty regarding the applicability of the ADA to websites of entities” included in Title III. 

Unfortunately, the 2010 Advance Notice of Proposed Rulemaking2 where “the Department encourages small entities to provide cost data on the potential economic impact of adopting a specific requirement for website accessibility and recommendations on less burdensome alternatives, with cost information,” has been given a status of inactive under Trump’s Unified Regulatory Agenda released in July 2017.3 

On July 19, 2018, another letter was sent to the The Honorable Jefferson B. Sessions, III by the Attorneys General of 18 states and the District of Columbia on the same topic sent by the Members of Congress.4

If the DOJ recognizes that Title III is unclear, is it no wonder that site owners still try to claim that websites aren't included in Title III? No. 

However, as you read about website accessibility cases in the news, it’s clear that the courts have decided that it does. Whether it was the Winn Dixie case in June of 20175 that set the precedence or that the plaintiff in this case has brought other similar suits since then, it doesn’t matter. Compliance with the World Wide Web Consortium’s Web Content Accessibility Guidelines (WCAG), level AA is here to stay. Whether its WCAG version 2.0 or the recent 2.1, courts are ruling that these guidelines must be met.

So, what other defense can a business make to stop a website accessibility lawsuit? Other than remediating the problem?

Moot Defense?

If you aren’t a lawyer, you might be scratching your head right now. Moot? Don’t worry, you’re not the only one. Let’s start with a simple example.

Carroll v. New People's Bank, Inc.6

Filed in November, 2017 and terminated in April, 2018. First, please note the length of time required to adjudicate this case, only to have it dismissed. Here is a brief look at what transpired.

  • “NPB's website contains accessibility barriers, which Carroll alleges prevent him from using screen reading software to freely navigate the site.”
  • “NPB informed Carroll of its intent to develop a new website by letter in November 2017, prior to the filing of his lawsuit. In this letter, NPB stated that they had "voluntarily made a number of improvements" to the website and had "retained a third-party to develop a new website for the bank which [would] further improve [the website's] accessibility and client service feature-set."”
  • “Carroll argues that this new website does not render his claim moot because there is no guarantee that NPB will not revert to its former inaccessible website in the future.” 
  • “NPB has moved to dismiss the Complaint for lack of standing.”
  • “NPB contends that, in any event, Carroll's claim is now moot based on its voluntary upgrades made to the website after this action was filed, which upgrades Carroll does not dispute.”

Obviously, there’s more to this case than the snippets provided here. In fact, the case is interesting reading. Bottomline, NPB responded to Carrol’s letter, fixed the site, and the case was dismissed.

Haynes v. Hooters of America, LLC7

This next case isn’t as straightforward as Carroll’s claim being moot. This one is about getting sued twice for the same issue. Here is brief look at the ruling.

  • “On April 4, 2017, Haynes sued Hooters in the United States District Court for the Southern District of Florida …” In short, Haynes wanted Hooters to fix the accessibility issues on their site.
  • “Prior to the initiation of Haynes’ suit, on August 22, 2016, a different plaintiff filed a separate and nearly identical website-inaccessibility lawsuit against Hooters. Less than three weeks after the filing of that suit, the parties reached an agreement and settled their dispute (“Gomez Settlement Agreement”) ...”
  • “Hooters moved to dismiss Haynes’ suit, arguing that, because Hooters was in the process of actively implementing a remediation plan for its website, pursuant to the Gomez Settlement Agreement, there was no live case or controversy and Haynes’ claim must be dismissed on the mootness grounds.” They had until September 2018 to fix their site.
  • The district court agreed with Hooters and dismissed the case.
  • But, Haynes didn’t agree, and neither did the Eleventh Circuit in their June, 2018 ruling that “the case is not moot.” 

Again, there is more to this case that is briefly summarized here. In short, Haynes had no way to know or to ensure that the remedies being planned would resolve the issues he was having with the site. Therefore, his claim was valid. Yes, you can get sued twice for the same thing if the issue is still present on your site. 

Lessons Learned

There are four lessons worth mentioning. 

Audit Your Site Before You Get Sued

There is no argument that it’s going to cost you money to have your site audited appropriately for accessibility issues and ultimately remediated if problems exist. You could wait to see if you get caught but at that point, your costs include legal fees plus the audit and remediation.

Other costs include the negative publicity that can ensue. Web accessibility cases are hot topics and will remain so due to the lack of specific ADA regulations from the DOJ. People want to know how courts are ruling and that means numerous blog posts and speculation where your business’ name is spattered over the Internet.

Website Accessibility Insurance

Insure your site. You heard right. Insurance. You have a site right now. You think all is well. You have processes in place that audit content as it goes live to ensure there aren’t any issues. You have run an automated tool on sample pages and everything looks okay.

However, as a person that drives a car or owns a home knows, you can never predict when something is going to go wrong. That’s why you have insurance.

Don’t believe that such insurance exists? Think again. Beazley Insurance is working with Promet Source to offer insurance against ADA website compliance claims. Said policy includes up to $25,000 coverage for an accessibility audit and remediation if someone files a claim against you.

“In 2017, 7,663 ADA Title III lawsuits were filed in federal court — 1,062 more than in 2016.”8 “If ADA Title III federal lawsuit numbers continue to be filed at the current pace, 2018’s total will exceed 2017 by 30%, fueled largely by website accessibility lawsuit continued growth.”9 Add to these numbers the cases brought in state courts and it’s not hard to believe that you could get sued in the near future.

Move Quickly

If you get a letter, move quickly to remediate those items specifically noted. In the case of Carroll v. New People’s Bank, even if Carroll could prove standing, in the long run, NPB responded quickly and fixed the issues in the letter. 

Has Hooters moved quickly? How much money do you think Hooters could have saved in legal fees by taking down their inaccessible website and quickly replacing it with a simple, accessible website until their new site could be designed, developed, and launched? You decide.

Quick Might Not Be Fast Enough

It’s clear that people with disabilities are no longer hesitating to file suit for an inaccessible website. Whether they have standing or not, you could be faced with one lawsuit after another until you can audit your site and remediate it accordingly. And, given the findings in Haynes v. Hooters of America, LLC, the courts might let each lawsuit stand. So, circling back to the first lesson, have your site audited using automated and manual testing, get it fixed if issues are found.

Conclusion

Until the DOJ responds to the pleas of lawmakers across the nation to create specific regulations regarding website accessibility, courts will continue to review other cases to determine what’s moot or not. Don’t wait to find out. Get audited. Fix the issues.

If you don’t know what to do, Promet’s Accessibility Audit, Remediation, and Training Roadmap will help you end a current lawsuit and prevent any future lawsuits.
 

Footnotes

1. https://www.cuna.org/uploadedFiles/Advocacy/Priorities/Removing_Barriers_Blog/ADA%20DOJ%20ES-RD%20Letter%20-%20FINAL.pdf
2. https://www.ada.gov/anprm2010/equipment_anprm_2010.htm
3. https://www.reginfo.gov/public/do/eAgendaMain
4. https://www.cuna.org/uploadedFiles/Advocacy/ADAAGLetter71918.pdf
5. https://www.adatitleiii.com/tag/winn-dixie/
6. https://casetext.com/case/carroll-v-new-peoples-bank-inc
7. https://law.justia.com/cases/federal/appellate-courts/ca11/17-13170/17-13170-2018-06-19.html
8. https://www.adatitleiii.com/2018/02/ada-title-iii-lawsuits-increase-by-14-percent-in-2017-due-largely-to-website-access-lawsuits-physical-accessibility-legislative-reform-efforts-continue/
9. https://www.adatitleiii.com/2018/07/website-access-and-other-ada-title-iii-lawsuits-hit-record-numbers/
Sep 19 2018
Sep 19

You can’t build a website without a plan. A plan derived from requirements collected and a design created. You also need a development and testing plan that reflects the appropriate strategies for meeting said requirements and design. After you launch your website, you need a maintenance plan to ensure that your code remains secure, your content remains accessible, and your future features are integrated correctly.

Of all the development methodologies, past and present, there is not one that supports the development of software without requirements and design. When choosing a methodology, be it one based on the 12 principles listed in the Agile Manifesto, or not, you will not be able to avoid the effort of creating plans.

Agile Misunderstandings

Among the many misunderstandings regarding Agile methodologies is the aspect of planning. The belief that upfront planning isn’t needed and therefore time can be saved on a project is a misunderstanding of the iterative and incremental approach to software development. Think about it that for a moment. Can you create or build anything without some kind of plan? Be it simple or extensive?

It’s also a misunderstanding that said plans, if any, don’t need to be documented. If you choose an Agile methodology, you will quickly learn about Epics and the Backlog. Epics are large user stories while the backlog is a list of requirements derived from said user stories.

So, Agile isn’t about skipping the planning aspects of the project. It’s about changing the way the planning and development are conducted. And, the first step in the process of planning your site is gathering the appropriate players together.

The Right People

If you are going to put out a request for proposal, you need to include some of the requirements. Perhaps not all the details, but enough that a vendor who wishes to bid on your project can anticipate potential costs. Later, these initial requirements will fleshed out with the vendor whose bid you choose.

So, who needs to be in the room when you start brainstorming what you need? Who will ensure all requirements are identified? 

  • The money person would be good. They will know the budget and can remind you of the fact as the ideas start to mount.
  • The content manager is important. You will need to understand the tasks involved in creating and posting your content. For instance, how will you manage the publication of your content once it is uploaded to your site?
  • Let’s not forget the person who is in charge of your current site. This is the stakeholder who knows where the bodies are buried. They know why the current site is what it is and if certain aspects of the site can't change.
  • Other process owners. Depending on the tasks that your site will support, such as e-commerce or document download, who knows the most about how these tasks should be performed?
  • The naysayer. The squeaky wheel. Who is your Eeyore. “It will never work.” Get them in the room because you want the devil’s advocate. You want to hear what might not work and why.

Bottomline, anyone responsible for an aspect of the site, be it backend support or frontend interactions, get them in the room. You want to cover all your bases.

Agile Upfront Planning

“In 1998, Alistair Cockburn visited the Chrysler C3 project in Detroit and coined the phrase ‘A user story is a promise for a conversation.’”1 Then, in 2001, Ron Jeffries, one of the original signatories of the Agile Manifesto, proposed a ‘Three Cs’ formula for user story creation: card, conversation, confirmation, making user's stories part of the world of Agile methodologies. Coupled with use cases, Agile planning seeks to identify requirements and design before development begins.

However, as you will see, the level of requirements detail depends on several factors such that not every minute decision is made at the start. Let’s look at this idea more closely.

User Stories

User stories are typically brief statements written from the user’s perspective. For example, “As the content author, I need to be able to edit a page so that I can add a header image.” The documentation of such statements can be facilitated with index cards, Post-it notes, wireframe sketches on printer paper, or anything that meets your team’s needs.

A collection of such user stories helps to confirm the scope of the project and can reveal foundational requirements such as which framework or platform to use. Such stories also reveal relationships and thus where shared code will be used, for instance. 

At this point in the planning process, the team might decide to start developing. Such a decision is made possible by today's systems and platforms with plugin and play capabilities. They provide a way to support the user story tasks so that said tasks needn't be reinvented via a use case.

If user stories are unique and more detail is needed, creating use cases is the next step.

Use Cases

If system default tasks are not what is envisioned or additional tasks need to be supported, the team may choose to clarify the user stories via use cases - details of actions and events that define how a user interacts with the system. 

Deeper investigation into the requirements can help define a development path that supports both the overall system architecture required but also the specific tasks required of the system.

Once the stakeholders and development team have gained a common understanding of what is required, the user stories and use cases are converted into epics and the necessary backlog of development tasking.

So, Agile methodologies support the requirement and design phases listed in the Waterfall methodology, it just does it by engaging methods that have proven easier for end users to envision as they communicate what it is they want from the product being created. 

Of course, this isn’t the only time during the iterative and incremental development approach where planning takes place.

Agile Planning in Development

With epics and a backlog populated, the development team plans a series of iterative and/or incremental development efforts, commonly referred to a Sprints. The way the Sprints are defined depends on the overall development strategy required to build out the product, in this case, a website.

Before each Sprint, the existing requirements (based on user stories and use cases) are reviewed and specific strategies are chosen for meeting said requirements. This might include a conversation where details are clarified or added to use cases.

After each Sprint is complete, the product owner is asked to confirm that expectations have been met. If not, requirements and design aspects can be changed to correct misunderstandings or to acknowledge a new idea or need. In other words, additional planning is interjected into the development cycle and the project is adjusted.

In addition, lessons learned are collected and decisions are made regarding how-to strategies for the next Sprint. You might be thinking that enabling changes to the original plan might introduce scope creep. And, you would be right. It can.

Planning and Scope Creep

Scope creep is similar to what happens when you think you are buying the base model of a new car and you leave the lot having spent 20% more than planned because you decided on several add-on features. 

Several factors can influence the possibility of scope creep on a website. Let’s consider two related to planning.

  • Insufficient upfront planning. We aren’t talking about getting into the details of how features on your site are developed in this instance. Instead, it’s about ensuring that all user stories have been identified along with supporting decisions. For instance, if the user needs to be able to categorize an article, has the supporting requirements such as the information architecture been defined? 
  • Incorrect stakeholders at the planning table. The budget folks will have a different take on requirements than say an end user. Content manager will be able to enlighten decision makers on processes that are required to ensure a specific level of content quality. Without the appropriate people involved in the planning process, you might find that a Sprint doesn’t meet expectations.

Conclusion

An Agile approach to website development relies on planning to be successful, however, not all planning is required before development starts. Of course, there are risks associated with moving quickly into development, one being scope creep. 

The power of Agile methodologies isn’t about being able to skip steps that a waterfall methodology is criticized for enforcing. It’s about being flexible. It’s about being able to adjust as forgotten requirements are remembered. And, it’s about continuous feedback, ensuring what was originally thought to be a good idea, still works. 

Promet and Planning

Promet offers a unique planning engagement that we call our Architecture Workshop. This workshop is a customized engagement that engages all of your stakeholders in the Discovery Process.We do a 3-5 days of intensive onsite exercises with stakeholders (for your busy C-level folks we customize the agenda to bring them in where they are needed during this onsite). Then the team goes away and produces a set of deliverables that  includes a full-field level Architecture Blueprint of the website(s). Whether you choose to use a waterfall or agile development methodologies - you have everything you need to build the website everyone has agreed upon. 

Not building your site and stressed out about getting an accurate quote? Investing in this kind of Workshop will make sure that you get the right Partner, and the best price.

Footnotes

1 
https://en.wikipedia.org/wiki/User_story
Aug 30 2018
Aug 30

Perhaps you’ve heard that the W3C (World Wide Web Consortium) has updated their Web Content Accessibility Guidelines (WCAG) 2.0. 

  • On April 24th, 2018, W3C posted a proposed extension of Web Content Accessibility Guidelines (WCAG) 2.0, referred to as WCAG 2.1.
  • On June 5th, 2018, WCAG 2.1 was no longer considered a proposal. WCAG 2.1 includes 2.0 and 17 new criterion.

When will I need to update my website?

Is there a law someplace that answers this? An official interpretation? A lawsuit that references the new criterion?

To date, in the United States, there is an understanding that WCAG 2.0, levels A and AA, is the required version and levels of accessibility required to create an ADA compliant website. Court case summaries posted by the legal community say this is so.

But, as of August 2018, this reviewer can’t find a court case that references WCAG 2.1. 

Should you sigh in relief? No. Right now, the courts are interpreting Titles II and III and hearing complaints. Will a judge bring his or her hammer down on one of the new criterion if you aren’t compliant with it? Quite possible. One would hope for a reasonable ruling: no penalties and perhaps a date allowing you time to fix the issue given the newness of the additional criterion.

As soon as this happens, you have your precedence. You have your clock. Of course, until Section 508 is updated, federal site owners are protected, but that doesn’t mean said site owners should ignore the new criterion as they update or rebuild their sites.

What kind of changes will we see?

WCAG 2.1, according to https://www.w3.org/TR/WCAG21/, “was initiated with the goal to improve accessibility guidance for three major groups: users with cognitive or learning disabilities, users with low vision, and users with disabilities on mobile devices.”

The fact that these new criterion were added with mobile devices and users in mind should not come as a surprise. In 2015, the W3C released Mobile Accessibility: How WCAG 2.0 and Other W3C/WAI Guidelines Apply to Mobile. They’ve been working accessibility for mobile devices for some time. 

Are we talking about a lot of change?

Depends on what you are doing on your site. It’s possible you have nothing to do or change in order to meet one or more of the 17 additional criterion. Perhaps you are hoping that most of the 17 criterion are level AAA and you won’t be held accountable. Let’s clear this one up right now. Twelve of the 17 are A or AA.

At this point, we could simply list the new criterion by the principles of POUR (Perceivable, Operable, Understandable, Robust) or by level, leaving you to mentally map the criterion to how you think about your site and its functionality.

Instead, the following is offered in hopes to provide a unique and helpful perspective on the new criterion.

  1. Interactions and Orientation
  2. Content Structure
  3. Visibility
  4. Cognitive

Each criterion will be briefly explained. You will benefit from reviewing the criterion’s Understanding pages as that is where you will find a more precise set of instructions.

Interactions and Orientation

Your site is “touched” and “viewed” using multiple methods.

The oldest method being via mouse or touchpad and the pointer they control on a computer monitor. Next up is the keyboard and monitor. WCAG 2.0 included criterion 2.1.1 Keyboard, for example, to address keyboard tabbing on websites. 

Given the fact that mobile devices and touchscreens are pervasive in the world today, it’s no surprise that several of the new criterion are focused on “touching” and “viewing” said technology.

  • 1.3.4 Orientation (A)
  • 1.3.5 Identify Input Purpose (AA)
  • 2.2.6 Timeouts (AAA)
  • 2.1.4 Character Key Shortcuts (A)
  • 2.5.1 Pointer Gestures (A)
  • 2.5.2 Pointer Cancellation (A)
  • 2.5.4 Motion Actuation (A)
  • 2.5.5 Target Size
  • 2.5.6 Concurrent Input Mechanisms (AAA)

Success Criterion 1.3.4 Orientation (AA)

Bottom line, don’t prevent someone from viewing your content in the display orientation of their choosing. Of course, there are exceptions, but if you don’t have to lock your content in portrait or landscape display, then don’t. This isn’t a feature you would accidently enable, especially if your site is responsive.

Success Criterion 1.3.5 Identify Input Purpose (AA)

You know when you fill out a form online that includes your name and maybe your address and all you have to do is start typing and you are given the option to autocomplete the form? Autocomplete is a feature in HTML5.2. This works because there is a defined purpose to the field.

Criterion 1.3.5 is about ensuring the purpose of the field is clear. They reference the autocomplete technology as a means of satisfying this criterion. However, the intent is “to help people recognize and understand the purpose of form input fields. … form input fields require programmatically determinable information about their purpose.”

If you have forms on your website, you might want to look into whether you are already using HTML5.2 and providing input purposes.

Success Criterion 2.2.6 Timeouts (AAA)

Not everyone can interact with your site forms quickly. It can take time to fill in a field thus creating lengthy interactions.

So, are you collecting job applications online via a form? Are your visitors entering data for anything that might take more than a minute or two? This one's for you. 

It’s likely that you are already advising your visitors that there is a time limit for interacting with your site, if indeed there is one. If not and there is a chance that their efforts will be in vain if the session times out, you need to warn them. If you are storing their data as they go along and thus there are no concerns if they walk away and return the next day, providing a timeout notice is not required.

Success Criterion 2.1.4 Character Key Shortcuts (A) 

Are you adding keyboard functions to your pages? No? Then you are good to go. If yes, then you have a new criterion to review. You don’t want to override an existing keyboard shortcut implemented by assistive technology. This criterion give you guidance in the changes you might need to make.

Success Criterion 2.5.1 Pointer Gestures (A)

What are pointer gestures? Have you ever used two fingers to zoom in or out on your mobile device screen? If you are providing an interface, such as a map, where the user would want to zoom in or out, you might need to add a single input option. According to W3C, including [+] or [-] buttons will accommodate this criterion. For other examples, visit 2.5.1’s Understanding page.

Success Criterion 2.5.2 Pointer Cancellation (A)

Have you ever clicked on a link and upon pressing down you wish you hadn’t? Perhaps you know that moving away from the link as you release your click will cancel your request. Well, in this criterion, they are focusing on actions you might have added to your page via Javascript, for example. Actions that would prevent a click or touch from being cancelled.

If you have, you need to edit your code to not include a down event such as touchstart or mousedown. W3C includes other alternatives to tweaking your code. Instead of repeating the official details here, please visit 2.5.2's Understanding page.

Success Criterion 2.5.4 Motion Actuation (A)

Do you have an app? Is your site presented via an app? If yes, this one might apply to you. This criterion is focused on interfaces that respond to device movements. Not a common feature on websites presented via a browser but definitely a possibility in apps you might be using to present your content.

If you have added functionality to your app that, for example, advances a user to the next page when they tilt their devise, then you need to pay attention to this one. Users need the option to advance to the next page via the user interface and not when their hand accidently moves, mimicking a tilt.

To prevent your application from behaving as such in a mobile device,  you need to add a setting that disables the response to movement.

Success Criterion 2.5.5 Target Size

On a full screen display, it’s easy to imagine large buttons, for example, being acceptable from a design perspective. Shrink that web page down into a small mobile device and that button can become a tiny dot that someone has to hit with a finger or other handheld pointer.

If you have buttons or links or other features that require interaction, they need to be big enough to be touchable - even on the small mobile screens. The Understanding page for 2.5.5 presents a couple scenarios that you should review if you have such interactive links on your pages.

Success Criterion 2.5.6 Concurrent Input Mechanisms (AAA)

To say this is a level AAA criterion seems odd to this reviewer. Why would you prevent someone from using an external keyboard to enter data or interact with your site versus the in-device touchscreen? If you aren’t doing this on purpose and your site doesn’t care what a user uses (mouse, keyboard, touch), then you can check off a level AAA criterion.

If you have an essential reason for such a restriction, then, okay. Although the criterion doesn’t say you have to explain yourself, the instructions for such interactions might be a place to make this clear.

Content Structure

It’s not just words that convey meaning. It’s the style and shape of the content. You might recall two criterion introduced in WCAG 2.0 that focused on ensuring that a user of a website would not miss out on what the content is saying or implying.

  • Criterion 1.3.1’s intent is “to ensure that information and relationships that are implied by visual or auditory formatting are preserved when the presentation format changes.”
  • Criterion 1.3.2’s intent is “to enable a user agent to provide an alternative presentation of content while preserving the reading order needed to understand the meaning.”

Two new criterion have been added on this note. 

  • 1.4.10 Reflow
  • 1.4.13 Content on Hover or Focus

Success Criterion 1.4.10 Reflow 

If your site or app is already responsive, you are well on your way with this one. As long as your content fits in a user’s screen such that only one form of scrolling is required, then you are set.

Your goal is to accommodate a 320 CSS pixel vertical width. Or, 256 CSS pixel height. 

Criterion 1.4.10 is extending the efforts made by criterion 1.3.1 Info and Relationships and 1.3.2 Meaningful Sequence in hopes of ensuring content and functionality are not lost. This time, it’s about resizing versus removing visual and layout styles. If your responsive breakpoints are such that a user need to scroll in two directions to experience your content, then you need to update your code.

Success Criterion 1.4.13 Content on Hover or Focus

Do you provide popup content such as tooltips? You know when you hover over an image or text and you get additional information clarifying the image or text?

If you need to use this type of content delivery, WCAG 2.1 is recommending guidelines that will make such content easier to “see.” For example, when the popup tip appears, ensure that it remains until the user moves away from it. Also, don’t let the users pointer block the content in the popup. 

Of course, more details and explanation can be found on the criterion’s Understanding page.

Visibility

Not everyone can see small text. Not everyone can easily distinguish text from its colored background. WCAG 2.0 gave us three criterion to follow in an effort to accommodate such users of web content.

  • 1.4.4 Text Resize
  • 1.4.3 Contrast (Minimum)
  • 1.4.6 Contrast (Enhanced)

In WCAG 2.1, the following are added to this list.

  • 1.4.11 Non-text Contrast (AA)
  • 1.4.12 Text Spacing (AA)
  • 2.5.3 Label in Name (A)

Success Criterion 1.4.11 Non-text Contrast (AA)

You are already abiding by the contrast criterion for text and images of text if you are meeting WCAG 2.0. 1.4.11 makes some addition to contrasts.

First, you know when you hover over a button or link and it changes? That is a state change. You are going to need to ensure the change meets a 3:1 contrast ratio. Next, it’s not just about color on color but now there is a need to consider color next to color.

The Understanding page for 1.4.11 gives examples such as pie charts and icons lined up next to each other. The potential design impacts discussed on this resource page are definitely worth a read. Too many considerations to list here.

Success Criterion 1.4.12 Text Spacing (AA)

Similar to 1.4.4 Resize text, 1.4.12 wants to ensure that changes in the spacing between lines, paragraphs, letters, or words, they won’t lose content of functionality. So, you might need to check your CSS to ensure the following are possible:

  • Line height (line spacing) to at least 1.5 times the font size;
  • Spacing following paragraphs to at least 2 times the font size;
  • Letter spacing (tracking) to at least 0.12 times the font size;
  • Word spacing to at least 0.16 times the font size.

Success Criterion 2.5.3 Label in Name (A)

This next criterion isn’t as direct as the last two when it comes to visibility of content, but reminds us of the fact that there is more than one way to “see.”

Depending on how your pages were made, you might have both visible and invisible labels on your site. Visible for those who can see the label, such a sign-up button, and invisible, a version of the label that assistive technology reads. Similar to when you create a link to a page and ensured the link and the page title were the same, visible and invisible labels need to match.

What happens when they don’t? A user speaks the label they see and their assistive technology looks for the same words. When visible and invisible labels differ, the technology can’t find what the user needs. 

Cognitive

You don’t have to have cognitive impairment to not understand something. In WCAG 2.0, three criterion are worth noting when it comes to understandable writing.

  • 3.1.3 Unusual Words (AAA)
  • 3.1.4 Abbreviations (AAA)
  • 3.1.5 Reading Level (AAA)

Just because they are AAA level criterion, that doesn’t mean they should be dismissed. They are three of the easiest AAA criterion one can strive towards.

WCAG 2.1 has added criterion that this reviewer feels fits with enabling users of your content to gain a better understanding of what it is your are conveying.

  • 1.3.6 Identify Purpose (AAA)
  • 4.1.3 Status Messages (AA)
  • 2.3.3 Animation from Interactions (AAA)

Success Criterion 1.3.6 Identify Purpose (AAA)

It’s likely that you have at least one of the following on your site: user interface components (e.g., buttons, link, fields), icons, or regions. And, if you are following the requirements of 4.1.2 Name, Role, Value, you are defining most if not all of these.

However, what you might not being doing is providing information about what the component represents, such as an image link represents a link to the homepage. This criterion wants you to convey more than a name, even if the name seems to convey the applicable meaning. Remember, assistive technology is not Artificial Intelligence. It’s needs you to tell it what it can’t surmise on its own.

Success Criterion 4.1.3 Status Messages (AA)

If you are using a content management system designed for accessibility, like Drupal 8 for example, then you should be okay. If not, you will need to update your code to declare your system messages via a role or other appropriate properties that can be understood by assistive technology.

Success Criterion 2.3.3 Animation from Interactions (AAA)

Does this criterion address an interaction or is a cognitive distraction? Perhaps both.

Do you have things that move on your pages? Do objects fly in from the side as someone scrolls? Criterion 2.2.2 Pause, Stop, Hide from WCAG 2.0 applies when the page initiates an animated object. You might have heard of this one. 2.3.3 is intended to prevent animation from being displayed on the pages in the first place.

If you have a dynamic page with moving parts, you need to look into this one. You might need to add to existing animation controls and allow users to keep them from appearing. Of course, this is level AAA, but it’s worth considering as sudden movements can trigger vestibular (inner ear) disorders and cause dizziness, nausea, and headaches.

Conclusions

If you manage a federal site subject to Section 508, that doesn’t mean you shouldn’t take the additional 17 criterion into consideration when updating or building your site. As for everyone else, WCAG 2.1 is the recommended set of criterion. With the chance that someone might claim your site is non-compliant based on 2.1, you need to look into bringing your site up to date.

Remember, some of the new criteria are, by default, not going to be in play on your site. Many of them have to do with added bits of code that override default browser behavior that at one time were deemed acceptable. So, WCAG 2.1 doesn’t have to be scary.

Aug 30 2018
Aug 30

Since its launch, many have written about all the great technology that has been added to Drupal 8. You will find articles online talking about such added features as headless and responsive and accessible. You will read about modules that have been added to core, contributed modules once part of the standard recipe for configuring a Drupal site.

And, that's all good news if you are developer assessing building blocks and code. But, what if you are a business owner, marketing executive, or technical decision maker and don't speak Drupal yet? 

You have a laundry list of features and functionality you want supported by your site and you just need to know if, and a little bit of the how, Drupal 8 is going to meet your needs. Although a planning workshop and Drupal builder course could help you gain a strong understanding of Drupal, you aren’t there yet.

Recognizing this might be you, this article:

  • Shares some of the most common and not so common requirements that you might be facing, and
  • Talks about how Drupal can help support your processes and goals.

Common and Uncommon Features Don’t Scare Drupal

Drupal is a content management system, content being the operative word. However, Drupal doesn’t see content as a blog post or an event. It sees content as data. Data comes in all sorts of shapes and sizes. It carries multiple types of meanings, from the spoken word to value that triggers an action.

When it comes to identifying that which Drupal can’t do, this reviewer only has to stretch her imagination and a solution presents itself, often using existing functionality either from Drupal’s core and from millions that call themselves part of the Drupal community.

In order to demonstrate Drupal’s potential without the aid of video, the remainder of this article will address several capabilities - simple and a little more complex - in hopes that it will help you recognize that Drupal can meet your needs.

When working with managers such as yourself, request often start out as, “I want …” and finish with one or more of the following:

A Mobile Friendly Site 

You are likely one of the majority who surf the net using a mobile device like a smartphone and thus you know what it's like to visit sites that don't fit your screen. Perhaps you have decided that you don’t want to be that business that can't be easily experienced from any device.

Screen shot of default Drupal 8 homepage in it's most narrow display.

Drupal 8 makes it easier than ever to make responsive sites. Responsive means your web pages flex and reshapes automatically to fit your screen. Although responsive functionality was available in previous versions of Drupal, Dries Buytaert, the inventor of Drupal, decided that Drupal 8 would bring mobile to the top of his improvement list.

One of the first steps taken to make this possible was making the jump to HTML5 in order to gain such advantages as engaging the applicable input device when a site is viewed on a tablet or smartphone. 

Check out the screenshot showing Drupal 8 default homepage reduced down to fit on a smartphone.

Different Types of Content

This request often goes without saying and when it comes to Drupal, its response is, “Bring it on!” Any type of content you want, it’s yours. Plus, there is more than one way to get it done depending of the type of data you want to use to define said content.

Let’s consider an example. Story telling. This could mean that you have bloggers, new reporters, media reviewers, etc. At the core of this type of content, they are the same. It’s just the words and tone and organization that often makes these different. 

If you want a separate form to collect each type of content, then you can do that. Even if all the data fields you define are the same in each, Drupal doesn’t care. You can also collect this type of content using just one form with an additional field that lets you categorize the type of content.

This is a very simple example, but hopefully it’s already making you think about how your content can be viewed as data collected in fields versus what you might be used to doing with MS Word or other content management systems.

Since Drupal 7, this type of functionality was part of Drupal’s core. In Drupal 8, the coding structure has changed, enabling your developers to tap into the objects that make this possible and invent unique content collection tools that integrate with Drupal’s permissions and other default features.

Accessible Content Formatting

There are two methods associated with formatting worth mentioning: field-based and manual application. When content formatting comes to mind, you likely think of making text bold or creating bulleted lists. That’s cool. Drupal 8 has that covered by default.

Drupal 8’s text formatting is better than ever. Style your content in MS Word and copy/paste it into your Drupal 8 content form. Don’t do this with previous versions of Drupal, you could end up with a mess of code. Also, Drupal continues to offer settings that control which content author can, for example, add images to their blogs, or not. 

When it comes to using fields other than the traditional long text fields, you can apply styling via templates and CSS. Or, you can rely of the fact that Drupal 8 is WCAG 2.0 ready (likely to be 2.1 ready in the future) and much of the formatting you need is already in place.

Collecting Data Other Than Content

Drupal 7 not only added the ability to add fields for content collection forms, but it also added the ability to add fields to user accounts so that additional data can be collected and possibly displayed for your content authors. Drupal 8 continues this functionality but with the same object oriented strategies implemented for content.

Categorize Content

Categorizing content is at the heart of Drupal. Each Drupal site ships with one Taxonomy that can host multiple vocabularies (containers that hold terms). You can have as many terms (words or short phrases that describe or categorize content) as you need.

Drupal 7 included the ability to add fields to terms so, for example, you can associate an image of an orange with the term: orange. Drupal 8’s contribution, besides better backend code, it a new display page. When someone clicks on a term, they land on a page that displays all content tagged with that term. Drupal 8 makes it possible for you to easily modify that display right out of the box. 

Block Content 

Blocks are bits on content or functionality that can be added to a page. They typically appear alongside the main body of content, or below it, above it. Historically, you would create a block, for example that says, “Welcome to my site. Become a member …”. That block could be placed in one location, let’s say the right sidebar. By default, there wasn’t much more your could do without additional modules.

Drupal 8 has changed the block system. When this reviewer learned by how much, she couldn’t stop smiling. Okay, she might have shouted with glee. 

Anyway, not only can one block be placed in multiple regions at the same time, - in a sidebar and in a footer and in the region that displays the main content - it can display something other than the text. You can now display an image via a field. Or, a video. Or, an attached PDF file.

Yes. You heard right. You can add fields to blocks, made possible by the same object oriented strategies put in place for content, users, and terms. You can also have different types of blocks, just like you can have different types of content forms.

But that’s not all! If you have a block intensive website and you ever want to get a list of said blocks and the content they content in one report, you can query the database and get that list by using the feature called Views. The Views module used to be a contributed module, a staple in 99.9% of all Drupal sites - in this reviewer’s opinion.

Multilingual Site

With each major release of Drupal, the ability to develop a multilingual site got easier. Drupal 8 has not disappointed. Where Drupal 7 required up to eight or so contributed modules to create a multilingual site that was 99% correct, Drupal 8 has four in its core to make it happen.

Coding practices that used to prevent text from being translated are a thing of the past if a module contributor wants their module to be accepted by the community.

It was possible in the past and even easier now.

Manage Content Development

It’s one thing to be able to structure your data you see fit, it’s another to manage the development of said content or data. Aside from the creative nature of content development, you have the ever present need for copy editing. And, if you believe that your content authors can easily catch their own typos, think again.

It’s fortune that the Drupal community recognized the need to manage the process from “I have an idea” to a published work. Drupal 8 has jumped on the workflow wagon by including a workflow option you can turn on and configure. 

Whether your authors compose in MS Word or in Drupal’s content form, the first, second, or even the third draft shouldn’t be seen by the public. You can tell Drupal to save as unpublished. You can collect copies of every draft version by default and switch between them until you are ready for editing.

With additional functionality from the community, you will be able to do things like send notices with draft content is ready for review. You wouldn’t be the first to have this requirement and users of Drupal have been making this happen for years.

Reuse Content in Multiple Displays

This is not the first mention of content reuse. Drupal is all about content reuse. Break your content into structured data and you can find and filter until your heart's content. And, you can then share your queries with the whomever you wish.

Views has been around since Drupal 4, but has always been a contributed module. There are good reasons for waiting to integrate Views into Drupal’s core and now that it is here, Drupal out of the box is that much better.

Most notable is the administrative pages. Hard-coded in the past, the pages that list content and blocks and users and more are now made with Views. They are database queries made into page displays and thus allow you to easily customize your admin pages.

ADA Accessible Site

Accessibility has been mentioned already, but if you didn’t notice, it’s worth mentioning again. Taking a mobile first perspective when designing Drupal 8 was only one priority. Accessible web pages was right up there as well.

The developers of Drupal 8 have taken accessibility seriously. They have reviewed WCAG 2.0 and W3C’s WAI-ARIA. The Drupal community wants your site to be easily read by assistive technology and ARIA was a big step in the right direction.

Deep down, you know how important it must be to make web pages that everyone can experience. What you might not have heard about is the fact that the number of lawsuits for non-compliance has increased and continues to do so.

It’s not just about federal government sites anymore. It’s all sites. Drupal 8 provides a strong foundation to creating an accessible site from the start.

One System, Multiple Frontend Interfaces

You don't want two systems: one that will present your information in a web browser and one that will present your content in a mobile app. Data reuse is a key feature in Drupal and Drupal 8 takes the next step.

Drupal is now what some call “headless” and others call “decoupled”. It doesn't matter which word you use as this functionality is a technical thing that your developers can take advantage of when they present your data through multiple interface frameworks. 

What does this mean? It means you can serve up your content to an app who’s interface was created with a framework designed for mobile devices while at the same time, present content in a browser the traditional way. One blog post, two tools to manage said display. 

This simple example does not suggest that you can only have two frontend interfaces to your content. If you are looking for a central repository for your digital content and you want to deliver it to multiple platforms, Drupal 8 makes it easier than ever before.

Wow, talk about content management. Create it and edit it once and use it over and over.

Affordable Upkeep

This might be the last topic, but that doesn’t mean it’s an afterthought. Like many software applications, significant changes occur from one major release to the next. Unlike many software applications, you don’t have to start over to use the next version.

For a time, you could actually upgrade your Drupal site to the next major release. This reviewer went from Drupal 4.5 to 4.7 to 5.0 to 6.0 before migrating to Drupal 7. Drupal’s backend restructuring to keep up with today’s technology introduced some challenges when it came to taking a Drupal site from version 6 to version 7 and the developers listened to the complaints.

So, Drupal 8 has a few features worth noting as they can impact the cost of managing and maintaining your site.

  • Drupal 8 ships with a Migrate modules to help you tap into Drupal 8’s new functionality by making it easier to migrate.
  • Drupal 8 ships with a Configuration Synchronization module that allows you to launch a version of your site and easily add new features as resources allow.
  • Drupal 8’s path to Drupal 9 isn’t going to come in one giant leap like past major releases. Drupal 8’s development is taking semantic path with releases such as 8.1, 8.2, 8.3, and so on until 9.0 is reached.

These three strategies alone make Drupal more cost effective than ever before. Your development team will have a learning curve to come up to speed on the semantic coding process, but otherwise, they will find Drupal 8 to much more conducive to long term commitments. 

Conclusion

If you want a system that can build just about anything, like one can do with LegosTM , then Drupal 8 is where you want to be. If you have a simple blog site or a content rich site viewed by the world, Drupal can handle it.

The advantages discussed above just scratch the surface of what is possible. Other requirements that Drupal can handle include:

  • Advanced permission settings
  • Powerful content development and layout options
  • Integration with other systems
  • Mash ups - pulling content from other sources
  • eCommerce
  • And more

So, if your requirements are anything like what was discussed above, or if you have something truly unique, let us know. We love a challenge.

Jul 31 2018
Jul 31

When it’s time for a new site, the word “migration” is often dropped in conversations. Every organization looking at a migration in the future will have their own reasons for doing so, their own history, their own future goals. In this article, we will present the following topics as a means to empower you to recognize aspects of website migration you might otherwise overlook.

  • What can a new site look like after a migration.
  • Triggers for a migration project.
  • Paths that might be taken.
  • Creating the right team.

The first two topics are going to feel like the chicken and the egg. Which one comes first? Given the linear nature of articles, they will be presented in said order, but that does not mean the order will match the scenario faced by many.

What can a new site look like after a migration?

Amazingly, not everyone has the same vision of what a new site might mean. Managing expectations from the start is critical to a successful migration project. Below are some common scenarios that can constitute a “new site” and/or “migration” that you might face in your project.

You will find that the following three categories can account for most changes.

  • Server environment change
  • Web platform change
  • Design and/or functionality change

After this, the triggers that might cause one or more of these changes is presented.

Server Environment Change

The process of taking an existing site and moving it from one web server to another would be considered a server environment change. It could entail moving your site from your own web servers to an external vendor.

From a new site perspective, this scenario doesn’t seem to fit. Technically, it doesn’t. Same code, same site. However, to your users, it might feel new if the site’s performance has improved. Your site could actually look different, assuming pages weren’t loading fully due to slow performance.

From a migration perspective, this is text book. You physically move - migrate - to a new server. In the process, you will receive upgraded or new web server features that will need to be configured to work with your site. A few examples include:

  • Caching services
  • Security configurations
  • Development, testing, and production processes.

Your website’s code might be the same, but the environment in which it lives has changed and therefore it cannot be assumed that there won’t be some work to make everything fit and function as required.

Web Platform Change

First, let’s assume that web platform refers to some type of content management system (CMS). The process of migrating from one CMS to another can yield a site that looks the same, but is it?

From the new site perspective, at a minimum, the code-base is different. The configuration strategy is different. The opportunities to improve or enhance your current circumstances can be different. Given the expense, your new system should be ready to allow for your growth in order to justify the expense.

From a migration perspective, to move your site structure, content, interactions, etc. from one CMS to another is a migration, by definition. Depending how similar the systems and how complicated the existing website, the effort to make the move can be extensive.

Example migration and level of effort scenarios might include:

  • Blog Site - Migrating a blog site from one CMS to another is likely the least complex scenario. Most CMSs are designed around enabling users to post their stories, articles, and blogs with ease so the leap should not be overwhelming.
  • e-Commerce/Product Site - The level of effort for this type of move will likely be more labor intensive than a blog site. You might be thinking, “A product is a product,” but the way the sale is managed can vary from system to system. Check out processes may differ. The way the product is loaded into the system may be simple in one, but the other CMS might offer more sales options that you need to consider.
  • Multi-function Site - Sites that provide some combination of blogs, products, events, community, manuals, custom integrations, and more will present even more challenges when moving from one system to another.

The pattern should be clear. The more complex the site that is being migrated, the greater the level of effort. This can include new planning effort, where you dig into the metadata level of content and features. Some CMSs are designed for data micromanagement and you will want to take advantage of the data reuse functionality such a system provides.

Design and/or Function Change

This is one place you will want to manage expectations up front. The scope of work implied by the word design can send your migration project into overruns very quickly. And, the idea of functionality (from a site visitor perspective or a content author’s perspective), can be interpreted many ways.

So, from a new site perspective, design and function will create the most obvious new-site feel. Whether it’s the layout of your pages, your branding, the way your information is organized and accessed, or the new online tools you add, a significant change will occur.

From a migration perspective, the move is to go from one site to another. This scenario is often combined with the first two: server change and platform change. Even if it is not, the effort for such a move is not unlike the process of planning, designing, and building a site from scratch. Even if ideas and content and branding are transferred unchanged, a version of the original website’s implementation process will need to be executed.

Triggers for a migration project.

Based on the discussion above, it might seem obvious what the triggers for change might be. That is true, to some extent. However, there are triggers that can cause a server change while others can cause a system change. Or, both.

Performing a trigger review is a good way to explore the potential, “What about …,” comments that can bubble up during development and trigger yet more change and scope creep. In this section, five triggers for change are presented, along with the type of migration that might be required:

  • Analytics
  • Search engine optimization
  • Technology
  • Mobile first
  • Organizational goals

Analytics Triggers

Web analytics are the statistical data collected about website usage. If the site is not being used, can an organization justify the expense of maintaining said site? Not likely, unless the implied triggers for change from said analytics are implemented.

Triggers of this nature can include:

  • Bounce rate - Site visitors are not spending enough time on site pages. They aren’t reading or watching or interacting as desired.
  • Low or no visits - Pages on the site are not being visited at an acceptable rate. They are either not being found, or their topics don’t meet the visitor’s needs.
  • Low or no mobile device visits - Of the visits, users are arriving on the site via a laptop or desktop. This could be justified given the site purpose, or it could be connected to the bounce rate concern, where people leave the page because it is not easily visible in a mobile device.

To remedy these situations, an analysis needs to be completed. Depending on the findings, the following migrations might apply.

  • Server change - If statistics are off due to poor performance - pages not loading in a timely manner, for example - a new server environment might do the trick. Cached pages are easier and faster to send.
  • Platform change - If statistics are off due to inaccessible pages, pages read by accessibility technology, new code is likely needed. Be it the code for the page structure or the code used to present the content, non-accessible pages can be costly in the long run due to lawsuits, for example.
  • Design and/or function change - If statistics are off due to an unfriendly Information Architecture that make site navigation cumbersome, or due to page layouts that don’t fit in the small screens of today’s mobile devices, a new design will be on your list of changes.

Search Engine Optimization Triggers

When a website lands on the first page of Google’s search results, you can claim success. You have made it. Your site will have visitors. You product will sell. You can now lean back and relax. Not really. Vigilant monitoring is needed as search algorithms are constantly changing.

What happens if when you aren’t on the first page or if you slip from your pedestal? Something will need to change. What kind of changes? If only there was an easy answer to this question, you would be rich.

There are some efforts you might need to undertake, however. For example:

  • Platform change - Using a system that can deliver a semantic web solution is one step towards making a website more understandable. If a search engine can interpret the content of the website (e.g, “price” actually means product price), it’s more likely to index the content of its pages such that they can be delivered to users in search results. How do you think Google creates the images display or the shopping display? With page content it can understand.
  • Design and/or function change - In a 2018 blog post, Google stated, “Our advice for publishers continues to be to focus on delivering the best possible user experience on your websites and not to focus too much on what they think are Google’s current ranking algorithms or signals.”

The changes you need to make will come from an analysis which will include analytics and possibly user feedback. At the end, you should know what is wrong with your current site and how you might make it better.

Technology Triggers

Technology issues can trigger a website migration. With the current rate of change in web-related technology, an older website might already be facing issues that are triggering questions like, “Will our site crash in the near future and leave our customers hanging?”

There are several technology triggers that might send you into migration mode. Here are three examples:

  • Non-secure code - Hackers are always looking to see if they can break into your site. Be it a server hack or a site hack, it can happen. And, if you think only open source products are vulnerable, think about the number of security updates you accept from Microsoft on a regular basis.
  • Too much success - Your CMS was meant for blog posts, not community forums or product sales. You are growing. Your system needs to grow with you.
  • Accessibility problems - Yes. This has been mentioned before but given the increased number of accessibility related lawsuits against website owners, it’s worth repeating. Accessibility is just about page hits, it’s the law.
  • Lack of mobility - “Mobile first” is the phrase of the day and rightly so. Most web users today are using mobile devices to surf the net. Are they surfing you?

The type of changes that might be triggered from the list above can span all three: server change, platform change, and/or design and functionality change.

Mobile First

This drum has already been thumped, but it’s worth mentioning again. We have seen it. “Hey, I was on my phone the other day and saw this cool site. It fit great on my little screen. Can we do that for our site?”

The answer is yes. Given the trend for users to use a mobile device before they reach for their desktop computer, you need join the party. Several technology changes will need to be made to your site.

  • Layout plans - Where do the sidebars go when the page is in a narrow display?
  • Responsive breakpoints - When does the layout of your page change?
  • Menus - That horizontal menu bar will need to change shape in order to be viewable.
  • Media adjustments - Are you still offering up media that doesn’t run on a mobile device? Videos, Flash animations, not all formats work. And, don’t forget images. Those 4MG images aren’t going to fly to a mobile device with ease.

What does this mean for migration? Assuming you have the server environment that can manage the increase in your page hits from going mobile, you might need the following:

  • Platform change - If you aren’t working in a CMS that allows for mobile first design, you will need to change your CMS.
  • Design and/or functionality - As hinted above, page layouts,menus, media will need to be redesigned to accommodate the smaller environments.

Organizational Goals Triggers

The last trigger worth mentioning is the need to meet organizational goals. There is some overlap here with goals pertaining to Analytics and SEO. Other goals might include:

  • Additional services - An organization that talks about books might want to add the option to purchase said books versus providing links to external e-commerce service.
  • Additional resources - Instead of just selling products, the organization wants to provide an education focused community and tutorials.
  • Membership services - Some content might be worth selling right from the browser. The addition of a membership to the website and its valued resources might be the next step to reaching organizational goals.

In each of the examples above, all three types of changes might be required. A new system to provide the new functionality hosted on a server environment that can better handle said changes. Plus, when such changes are required, it’s likely that other design aspects will need to change, hitting all three types of migration.

Paths that might be taken

Once the migration requirement is identified, there are basically two paths to be taken:

  • Do it all now
  • Do it in phases

Do it all now

There are two scenarios that easily lend themselves to this approach.

  • Migration projects such as server changes are at the top of this list. Copy the site to the new environment, test it, fix it if necessary, and go live.
  • If the site will undergo minimal changes, getting it all done now is the likely path.

Of course, any scenario discussed above can follow this path to completion. With the right plans, anything is possible.

Do it in phases

There are several scenarios where this approach might be the best approach. Here are three examples.

  • Technology threats - The current site has been hacked and off line. Instead of spending time trying to fix a potentially outdated website, select the most important features of the site and spin up a new site as quickly as possible. Then, bring the remainder of the features online as they are completed.

  • Legal issues - Lawsuits against non-accessible websites can encourage the need to move quickly. While a new site is being created on a platform that supports accessible websites, two things can occur:

  • Budget - The business is growing, but the budget is still tight. Start with the new look and feel on the new platform and server. Get the basics up and running. Then, bring the new features online as resources permit. Two goals to meet in this scenario”

Creating the Right Team

Last, but certainly not least, is the team of managers, user experience experts, designers, developers, and possibly trainers. Who will you need? Without a plan, without an exercise of “What about …?” and “What if …?” scenarios, you aren’t going to know who you will need.
 

Architecture Workshops

From Stakeholder Mapping to the Delivery of Field-Level Blueprints the Architecture Workshop is designed to take your goals and objectives for your website and provide you solid plan. Whether you develop your website in-house or use an outside firm, this workshop will help you get your stakeholders on the same page, and give your website/project manager a blueprint to ensure you get the most out of your developers.

Private Drupal 8 Immersion Training for your team

  • Get your developers trained on the latest technology by the best Drupal trainers
  • Learn what new innovations you can implement with Drupal 8

 

 

May 31 2018
May 31

Does an accessibility issue on my website mean I need to build a brand new one? This might be one of many questions rolling around in your head as you read the email or letter informing you that your site has an accessibility problem.

 

Don’t panic just yet. It could be something simple, but you need to have all the facts. You need a plan of attack and that starts with a site audit.

Site Audit

Unless that letter is the result of a site audit, you need to set that wheel in motion. Conduct both automated and manual testing to confirm the claim and to determine if there are other problems waiting to be discovered.

Once you have a list of issues you need to address, you can decide if a new website would be easier and more cost effective than trying to fix your current site. Even if the list is long, starting from scratch might not be the answer.

Factors to Consider

Two simple factors in the rebuild decision process:

  • The content management system used to create your site pages
  • Content items in those pages.

After these are considered, site functionality and design can raise its ugly head and influence the direction you need to take. Let’s take a quick look at each factor to get you started.

Content Management System

If the issues reported are being generated by the content management system and are not a reflection of how the site was configured by the developer, ask yourself the following questions to see if there is cure.

  1. Is my CMS proprietary or open source?
  2. If proprietary, did the CMS provider promise accessibility when you purchased the system aso you can get the provider to resolve the problem?
  3. If open source, is there a patch or update you can apply to solve the problem on your own?

 

Simplistic questions? Yes, but they are merely a starting point. If you don’t see a solution after asking these questions, then you will likely need a new site on a different CMS. This doesn’t mean that you can’t transfer your current design to a new system, but it might be time to evaluate your site functionality to see if improvements can be made.

Content

If the issues presented in the letter and/or audit point to types of content that you created and inserted into the CMS, then there’s a chance that you won’t need a rebuild. Again, assuming the site has been configured to accommodate accessibility requirements, then it’s a matter of fixing your content and reposting. For example, if the issues focus on the following, then you can create a plan to fix your issues.

  • Content structure
  • Images
  • Downloadable files
  • Video
  • Audio
  • Uploaded animation

You still might need some developer time if configuration changes need to be made. For example, did someone forget to include the option for the alt attribute to be included with an image? If the changes are extensive, again, it might be time for a new site. Sometimes it’s actually easier to create than it is to edit.

Functionality

Are the issues you are facing tied to site interaction or services, i.e. online forms or interactive maps? Circling back to the CMS, could the issue be that the CMS wasn’t designed to do what you need it to do and will never let you meet accessibility requirements?

At this point, you can decide to either remove the functionality that is causing the problem or you can move to a system that can accommodate your needs.

Design

Just because you can, that doesn’t mean you should. Visual, flashy stuff on the page can be enticing to the user who can actually experience it. Are the issues you are facing linked to the that cool slideshow or mega menu? Depending on your CMS, there might be fixes to your cool features or there might not be.

Like with functionality, ask yourself what is required of your site and then what your CMS can do. You might be applying fixes to your design or you might be moving onto another solution.

In closing …

Facing the need to rectify accessibility issues on your site can feel overwhelming. Even the idea of tweaking all those PDF files to be accessible might want to send you to an early happy hour to drown your frustrations. Don’t worry. You don’t have to face this challenge alone. With training and expert help, you can avoid costly problems in the future.

May 17 2018
May 17

Does your website provide a “place of public accommodation”?

I am online.

Just because your site isn’t made up of brick and mortar, that doesn’t mean you don’t have to comply with the Americans with Disabilities Act Title III, or so said District Judge Scola in 2017 when he concluded that Winn Dixie had violated the ADA by having an inaccessible website.

As the Department of Justice considers updating Title III, the courts are moving ahead with hearing plaintiffs and defendants and handing down rulings. According to Seyfarth Shaw LLP, at least 814 federal website accessibility lawsuits were filed in 2017. New York and Florida lead with 335 and 325 respectively.

I will find the money to fix my site if I get caught.

If you believe that the court costs you might incur if caught are less than the cost of fixing your site right now, think again. The check you write for IT services is only part of the cost you will face if you lose. Imagine the cost of negative publicity?

My website’s target audience can see and hear.

If money and reputation isn’t your motivator, imagine what your life would be like if you couldn’t access content on the web. You can see. You can hear. You have use of your fingers. Imagine one day you don’t. Accidents happen. We all age. Who will you curse for preventing you from accessing content, filling out a form, finding directions? Don’t be that company that prevents others from accessing your goods and services.

I wouldn’t know where to begin.

We know that technology and web accessibility can be overwhelming at best and scary at worst. Consider the following important things you can do now to meet your accessibility goals.

  • Statement of Web Accessibility - A statement from your business regarding accessibility objectives for your site. Keep in mind the effort and resources needed to meet that goal.
  • Hire a Third Party Vendor - Just because your development team says your site is ADA compliant, that doesn’t mean it is. Think of it as hiring an editor because you can’t see your own editorial mistakes.
  • Conduct an Audit - Expert eyes is the key to finding the issues. Both automated and manual testing is required.
  • Remediate Issues - Let your development team fix the issues or hire the experts. You need to demonstrate that you are working to rectify issues in the event that someone comes knocking on your virtual door with a lawsuit.
  • Verify and Document Remediation - Now that your site has been fixed, the ADA related changes need to be verified and documented.
  • Get Trained - Your site keeps changing. Do you know how to ensure your site is compliant moving forward? Training management, content authors, and site developers are the key to ensure your site becomes accessible and stays that way.
  • Maintain - Just because you are trained, that doesn’t mean the occasional content issue won’t arise. Stay on top of your ever-changing site with regular accessibility audits and seek help if you need it.
May 17 2018
May 17

Accessibility badges are gaining attention. These little icons on a web page boast that the page is WCAG 2.0 compliant. As such, the site owner is demonstrating that they recognize the need to provide accessible content.

How does one get a badge to put on their web pages? Assume for a moment that the site owner has actually made an effort and that the badge isn’t a hoax, the process is fairly straightforward. The site owner (or their accessibility consultant) audit the site’s web pages and confirms that WCAG’s criterion has been met.

With sophisticated, automated tools available to anyone with a web browser, web pages can be assessed for accessibility compliance quickly and easily. Or so some believe. Before you start celebrating, let’s briefly explore what it takes to ensure that a single page on your site is WCAG 2.0 compliant and thus badge worthy.

Automated Tool Testing

Automated accessibility testing tools have their place in the auditing process. They are quite valuable from a time-saving and educational perspective. How so?

The automated tools read your code. When they see specific HTML elements, they are programmed to look for code that would suggest that the element has been used in an accessible way. When they see the code is broken, they advise the auditor of the issue and can even suggest a way to remedy the situation. Sounds a little like automated copy editing tools that find typos and grammar issues.

Gotta love that, right? Just like with writers of text, writers of code and online content can’t catch every typo or forgotten attribute. And, if an automated tool can catch the obvious issues, that’s definitely helpful. Let’s look at a few examples that many will have on their pages.

Automated Tool Examples

  • Images - If the tool sees the <IMG> element, it wants to see that the ALT attribute has been included and that there is a description within the alt quotes. Easy check.
  • Segmented Content - If you have segmented content on your page, tools can pick up errors such as using the <h3> element when an <h2> is expected.
  • Audio Files - If the tool detects an audio file on your page, it might warn that the presence of a transcript is needed.

Automated tools can find many issues, but not all.

Manual Testing

Although automated tools catch obvious issues, a full audit requires skilled human intervention. Many of the issues a human will address are warnings expressed by the automated tool. Warnings are provided when the tool can’t be sure if there is an issue or not, and it wants a human to review.

Another aspect of manual testing has nothing to do with said warnings. Automated tools can do only so much and quite often, it’s the automated tools’ “failure” that gets a site owner into trouble.

Manual Testing Examples

Using the three examples above, let’s see how a human is needed to ensure accessibility on a page is being met.

  • Images - What the tool can’t do is determine if the description included in the alt attribute is valid. An image of a mountain range might have an alternative description of, “A beautiful day exploring nature.” This description is about the photographer’s experience, not the image itself.
  • Segmented Content - The tool can’t confirm that the <h3> is a typo or if the <h2> is simply missing. For instance, was there a copy/paste issue while transferring the blog from MS Word? By actually reading the content, a human can determine the real issue and correct it.
  • Audio File - Maybe you have a transcript attached to the page as a PDF. What the automated tool can’t tell you is if the PDF is accessible. It might be able to determine that a screen reader can navigate to the PDF and verify its link, but that doesn’t mean the content in the downloadable file can be read.

Earn Bragging Rights

Conduct a complete audit. Don’t assume that just because you created the right code that your page or its content is accessible. The three examples above only scratch the surface of what an automated tool can and cannot do. Take the time to learn what it means to be accessible, how to ensure accessibility on your site, and how to maintain said accessibility.

Beware of Snake Oil

There are a lot of companies out there that sell products that claim they do accessibility. They may sell a bolt-on widget that doesn’t really work, tell you that automated testing will suffice, and even manually test your site without giving solid advice for how to truly be compliant.

 

The Accessibility Team at Promet Source will get you everything you need to be compliant. Our audit will tell you what needs remediation, and the report we produce will even tell you exactly what you need to do to fix it.

Mar 27 2018
Mar 27

We're packing our bags and heading south! Will you be at DrupalCon Nashville? Don't miss Promet's lineup of sessions, training or stop by and see us in the exhibit hall at booth #710.

This year, Promet Source is supporting DrupalCon as a silver sponsor and host of the annual First Time Attendees social. We're also proud to announce our following schedule of events, including hosting the annual First Time Attendees Social, providing professional training and sessions throughout the week.

Monday, April 9th

Training: Drupal 8 Crash Course for Content Managers, Marketers & Project Managers

Are you responsible for project management, content, or vendor selection and preparing to work with Drupal? This one-day training delivers all of the tools you need to get started. Delivered by an Acquia Certified Drupal Developer, this training will answer the questions you didn’t even know to ask. Targeted to the non-developer, this training is perfect for individuals that need to get up and running in Drupal - fast!

- Time: 9:00am-5:00pm

- Location: Music City Center

Training: Advanced Web Accessibility Training for Drupal Developers

This training is designed to help developers shift their thinking to build accessibility compliant digital content.  During this full day training developers will gain hands on experience in using automated evaluation tools, learning how to incorporate Drupal core and contributed modules that assist with accessibility into their sites, identifying accessibility issues at the code level, and finally developing their sites with accessibility always in-mind.

- Time: 9:00am-5:00pm

- Location: Music City Center

Sign Up Today! If you haven't already, be sure to sign up and snag one of the few remaining spots for training

First Time Attendee Social hosted by Promet Source

To help ease newcomers into DrupalCon, we've put together an orientation designed to explain all DrupalCon's many moving parts and introduce you to a new friend or two. We think starting out the week with a buddy makes networking and navigating an unfamiliar event so much easier!

- Time: 3:30pm-5:00pm

- Location: Level 3 Foyer of Music City Center

Tuesday, April 10th

FREE Workshop: What am I getting myself into? A Drupal Crash Course for Content Managers

Are you responsible for project management, content, or vendor selection and preparing to work with Drupal? This session delivers all of the tools you need to get started. Delivered by an Acquia Certified Drupal Developer, this session will answer the questions you didn’t even know to ask! Learn more.

Time: 10:45am-12:00pm

Location: Room 103B - Music City Center

Wednesday, April 11th

Session: D8 Commerce meets Artistic Expression - Online Shopping with Corning Museum of Glass

Join the CMoG development team and Promet Source as we discuss the journey to roll out a newly redesigned e-commerce site for the Museum powered by Drupal 8 and Commerce 2.0 that showcases the works of art available for purchase online as well as signups for classes and events hosted by the Museum.  We’ll talk about its integration with the Museum’s internal ERP systems as well as some of the technical challenges encountered along the way. Learn more.

Time: 2:15pm-3:15pm

Location: Ambitious Digital Experience Stage - Music City Center Exhibit Hall

Session: More Social, Less Media - Harnessing Human Connection to Achieve Marketing Success

In this session, we'll talk about how to cut through the noise that can often be caused by trying to keep up with industry trends, and how to get to the heart of what your organization - large or small - really has to offer to the world. The unique, collective experience of the people around you (or just yourself!) is hands down the most marketable asset that will give your business the edge it's been looking for. Learn more.

Time: 2:50-3:15

Location: 205AB - Music City Center

What is DrupalCon? 

The Drupal community is one of the largest open source communities in the world. We're developers, designers, strategists, coordinators, editors, translators, and more. Each year, we meet at Drupal camps, meet ups, and other events in more than 200 countries. But once a year, our community comes together at the biggest Drupal event in the world: DrupalCon North America. This year, from April 9-13, we'll be in Nashville, TN. 

Whether you’re an existing Drupal user, developer, designer, site builder, or are maybe just a little Drupal-curious, you won’t want to miss out on this unique event.

Let's meet up! 

The Promet Source team will be flying our flag at DrupalCon again this year and would love to meet up with you! Get in touch to set up a time to chat or simply drop by and see us at booth #710. We look forward to seeing you in Nashville and supporting the Drupal community together!

Mar 07 2018
Mar 07

It's that time of year again for our favorite Drupal camp - MidCamp Chicago!   Of all the camps in all the cities, this one is always our favorite - because of all the great Drupalists we get to meet but also because it's our hometown camp. 

This year, Promet Source is supporting the camp by volunteering our very own Promet Training Practice Manager,   Margaret Plett, to provide a Drupal crash course tailored for non-developers. If you haven't already, click here to sign up and snag one of the few remaining spots!

What is MidCamp? 

MidCamp - Midwest Area Drupal Camp is the fifth annual conference held in Chicago that brings together people who use, develop, design, and support one of the web’s leading content management platform, Drupal. This year’s MidCamp will be March 8th - 11th, 2018 at DePaul University Lincoln Park Campus, Chicago.

  • March 8th — Training (get tickets here!) and Sprints (free)
  • March 9th and 10th— Keynote and Sessions
  • March 11th — Sprints (free)

Read more about the event on their site.

Feb 02 2018
Feb 02

Promet Source has been named among the Gold level winners of the 2018 AVA Digital Awards for outstanding work on the Martin County Florida Drupal website development project in the government category.

2018 AVA Digital Award Winner Promet Source

Related: Martin County Case Case - Redesigning Civic Engagement with Drupal

The AVA Digital Awards is an international competition that recognizes outstanding work by creative professionals involved in the concept, direction, design and production of media that is part of the evolution of digital communication. Work ranges from audio and video productions- to websites that present interactive components such as video, animation, blogs, and podcasts- to interactive social media sites- to other forms of user-generated communication.

AVA Digital Awards is administered and judged by the Association of Marketing and Communication Professionals (AMCP). The international organization consists of several thousand production, marketing, communication, advertising, public relations, and free-lance professionals. AMCP administers recognition programs, provides judges and rewards outstanding achievement and service to the profession.

As part of its mission, AMCP fosters and supports the efforts of creative professionals who contribute their unique talents to public service and charitable organizations. AVA Digital entrants are not charged to enter work they produced pro bono. Over the past several years, AMCP’s Advisory Board gave out over $250,000 in grants to support philanthropic efforts. That money was used for marketing materials for homeless shelters; orphanages; day camps; community theaters and art centers; and for programs and equipment for the elderly and disabled; childcare; and educational endeavors for the underprivileged. Entries come from throughout the United States, Canada and dozens of other countries.

Judges are industry professionals who look for companies and individuals whose talent exceeds a high standard of excellence and whose work serves as a benchmark for the industry. The AVA Digital Award was designed to pay tribute to the magnificent history of the audio-visual and web industries.

See the full list of 2018 AVA Digital Award Winners

Jan 29 2018
Jan 29

In this blog, we will walk through how to use the open source tool, pa11y, to setup and run automated accessibility testing. Before you can start the Automated Accessibility Testing, you’ll need to install the prerequisite tools that are required for this type of testing.  Don't worry, we will provide the list of tools needed as well as the setup and configuration instructions for each tool.

Tools Needed:

Step 1: Install Python then setup in Environment Variables

  • Download latest version of Python at https://www.python.org/downloads/
  • Select Python 2.7.xx
  • Install and follow the installation process
  • After successful installation, set the following in your Environment Variables option
  • Go to System directory, then click "Advanced system settings" link

  • Click "Environment Variables..." button

  • Under System variables option, click "Path" then "Edit..." button 
  • Click "New" button, then add "C:\Python27\Scripts" and "C:\Python27\"

Step 2: Install Git Bash


Step 3: Install Pip

  • Download and follow the instruction on how to install pip

    [embedded content]


Step 4: Install WAMPP


Step 5: Install Nodejs

  • Download and install latest version (e.g. v8.2.1 Current)
  • After installation, RESTART your computer


Step 6: Install NPM


Step 7: Install Pa11y

  • Open Git Bash terminal
  • Execute this:
    npm install -g pa11y
    

Step 8: Install xmltodict

  • Open Git Bash terminal
  • Execute this command 
    pip install xmltodict
    

Step 9: Go to https://github.com/promet/pa11y-sitemap then checkout the pa11y-sitemap folder


Step 10: Go to https://github.com/promet/pa11y-reporter

  • Click 'Clone or download' button
  • Click 'Download ZIP' button
  • File will be downloaded and labeled as pa11y-reporter-master.zip


Step 11: Copy or transfer the file (pa11y-reporter-master.zip) to your pa11y-sitemap folder


Step 12: Unzip the file pa11y-reporter-master.zip

How to Generate an html Output for Web Accessibility Errors Only with links to WCAG

  1. Open Git Bash.
  2. Go to your pa11y-sitemap folder location.
  3. Execute this command:  
python pa11y-sitemap-error-only.py -x <client sitemap.xml> -o <output directory> -r promet_reporter

Example:  

python pa11y-sitemap-error-only.py -x poplar-sitemap.xml -o POPLAR/reporter/error_only/ -r promet_reporter

Results:  

It will generate file(s) with html output format and with links to WCAG  

How to Generate an html Output for Web Accessibility errors, warnings, and notices with links to WCAG

  1. Open Git Bash.
  2. Go to your pa11y-sitemap folder location.
  3. Execute this command:  
python pa11y-sitemap.py -x <client sitemap.xml> -o <output directory> -r promet_reporter

Example:  

python pa11y-sitemap.py -x poplar-sitemap.xml -o POPLAR/reporter/errors/ -r promet_reporter


Results:  It will generate file(s) with html output format and with links to WCAG guidelines

How To Generate a Pa11y Summary File of Web Accessibility Errors, Warnings, & Notices

  1. Open Git Bash.
  2. Go to your pa11y-sitemap folder location.
  3. Execute this command:  
python pa11y-sitemap.py -x <client sitemap.xml> -o <output directory> 

Example:  

python pa11y-sitemap.py -x poplar-sitemap.xml -o POPLAR/reporter/summary/ 

Results:  It will generate file(s) with json output format

  1. Copy the file(s) where your json folder is located (Note: This was set in config.php file) 
  2. Launch WAMP Server then select Localhost.
  3. Copy the folder name pa11y-summary-PDF-generator-master, paste it beside localhost url then press ' Enter ' key.
  4. Save as a PDF:
  5. Launch http://localhost/pa11y-summary-PDF-generator-master/ in Chrome browser (recommended browser)
  6. Press ' Ctrl + p ' in the keyboard, then click ' Save ' button
  7. Open the pdf file to view the summary results.
Jan 24 2018
Jan 24


Responsive images are great! If I wanted to quickly introduce what responsive images are to some, I would say: On mobile? Small images. Tablet? Medium images. Desktop? Large images. This article is a complete "how to" in setting up responsive images in Drupal 8. 

If you are using Drupal 7, check out my previous article here: Picture Module: Building Responsive Images in Drupal 7.

So much has changed in Drupal 8 since our last tutorial. With D8, there is no need to download an extra module. The 'Responsive Images' module is now in Drupal's core.

Here is what this post will cover.

  1. Enable the Responsive Image module.
  2. Setup breakpoints.
  3. Setup the image styles for responsive images.
  4. Assign the responsive image style to the image field.

Lets get started!

Step 1: Enable the Responsive Image module

One of the major changes in building responsive images in Drupal 8 from Drupal 7 is the responsive image module being part of Drupal’s core - there is no need to download an extra module. However, this feature is not enabled by default.

  1. To enable the responsive image module, go to "Admin" > "Configuration" (/admin/config).
  2. Click the checkbox next to "responsive Image".
  3. Click "Install".

Enable Drupal Responsive Images module

Step 2: Setup breakpoints

If you are using a default theme like Bartik, there is no need to create breakpoints.yml file. Default themes already have this file.

If you have a custom theme, go to your editor. In the root of your theme directory, create a file called "yourthemename.breakpoints.yml".

Your theme directory is usually found at "/themes/custom/yourthemename".
For this tutorial, I will call my theme "alumni_theme".

alumni_theme.small:
  label: small
  mediaQuery: '(min-width: 0px)'
  weight: 0
  multipliers:
    - 1px
    - 2px

alumni_theme.medium:
  label: medium
  mediaQuery: '(min-width: 740px)'
  weight: 1
  multipliers:
    - 1px
    - 2px

alumni_theme.large:
  label: large
  mediaQuery: '(min-width: 1200px)'
  weight: 2
  multipliers:
    - 1px
    - 2px

Each breakpoint will tell Drupal what image size to load for each of the assigned mediaQuery. For example, we can load an image with a small image size for the breakpoint at min-width: 0px. When the browser is at min-width: 740px we can load another image size.

It is important to take note that the breakpoints weight should be listed from smallest mediaQuery to largest mediaQuery.

The multipliers allow us to display a crisper image for HD and retina display.

Step 3: Setup the image styles for responsive images.

Drupal image styles

We need to create the image sizes for the different breakpoints. Add one image style for each breakpoint you set at your_theme_name.breakpoints.yml. Since we created three breakpoints in our breakpoint.yml file, we will have to create three image styles.

 

One image style for each breakpoint.
 

For this tutorial, I will create:

  1. Image style of 400px by 200px for a minimum breakpoint of 0px up to breakpoint not more than 740px. This image style would be used for mobile devices.
  2. mage style of 1000px by 450px for a minimum breakpoint of 740px up to breakpoint not more than 1200px. This image style would be used for medium devices like Ipads.
  3. Image style of 500px by 400px for a minimum breakpoint of 1200px and above. This image style would be used for large devices like desktops.

 

You can configure your own image styles at ‘Home > administration > Configuration> Media’ (/admin/config/media/image-styles).
Click ‘Add image style’.
Type in the name of your image style. It’s better if your image style name is descriptive.
Click Save.
From the drop-down, choose scale and crop.

Click ‘Save’.
Image style dropdown

Type in the width and height of your Image style.
 

Input width and height of the image style

Click ‘Add effect’.
So that's one image style. Go ahead and create two more image styles. Just follow the steps provided above.

Here are the three image styles I created for this tutorial.
Image style

Step 5: Responsive Image styles

We will now assign the image styles with the breakpoints, to create the Responsive Image styles.

 

Go to ‘Home > Administration > Configuration > Media’ (/admin/config/media/responsive-image-style) and click on ‘Add responsive image’.
For this tutorial, I will call it ‘Header Image’ since this will be used for the header images of my posts.


Type in the name of your responsive image.Responsive Image style

From the drop-down in ‘Breakpoint group’, choose your_theme_name.

 

Click Save.
Assign image styles to every breakpoint defined in “your_theme_name.breakpoints.yml”.

Responsive Image styles assigned to each breakpoints

Step 6: Assign the responsive image style to an image field
 

Go to the content type where you want the responsive image style to be used.
Click ‘Manage fields’.

Responsive image setup in a content type image field


Click the gear icon on the right side.

From the drop-down under ‘Responsive Image style’, choose the responsive image style you created.

Image formatter setup in content type image field

And we are done!

To check, add a new content piece and add an image to the image field (make sure you are in the right content type). Resize your browser to the browser size defined in your your_theme_name.breakpoints.yml.

Right-click on the image and click ‘inspect’. In ‘network > img’ you will see the name of the image style that your image is using based on the browser size.

Responsive image on a small deviceMy image at a minimum width of 0px breakpoint.  responsive image at a medium deviceMy image at a minimum width of 740px breakpoint. responsive image at a large deviceMy image at a minimum width of 1200px breakpoint.

And we are done! Your image should now be resized based on the browser size without losing its quality.

Special thanks go to Raymond Angana, Andrew Kucharski and Luc Bézier for contributing to this post before publication.

Jan 23 2018
Jan 23

The FLGISA is an organization for CIO's, IT Managers, and technology decision makers from the state's local government agencies. The FLGISA Winter 2018 is where technology leaders from Florida local governments attend to learn, share the latest in technology trends, foster new professional relationships and meet current and potential business partners. Conference attendees consist of local government chief information officers, technology managers, and other technology decision-makers.

The Promet Source and Acquia team will be onsite throughout the duration of the conference to speak with attendees about web development, support, hosting, web accessibility and cloud based open source solutions that can help propel their government organizations web presence. 

About Promet Source

Founded in 2003, Promet Source is a web design and development agency that specializes in open source solutions for government, higher education and association/nonprofit clients. They offer web design, custom implementations, private and public instructor lead Drupal training, complex integrations, web accessibility compliance services, digital consulting and full 24x7 support to their clients. 

About Acquia

Acquia is the leading provider of cloud-based, digital experience management solutions. Forward-thinking organizations rely on Acquia to transform the way they can engage with customers -- in a personal and contextual way, across every device and channel. Acquia provides the agility organizations need to embrace new digital business models and speed innovation and time to market. With Acquia, thousands of customers globally including the BBC, Cisco, Stanford University, and the Australian Government are delivering digital experiences with transformational business impact.

Working with Government Organizations in Florida

Together, Promet Source and Acquia have helped a number of organizations in Florida redesign and rethink their websites to create modern, user friendly and accessible digital experiences with Drupal 8. 

South Florida Water Management District:

SFWMD needed a platform that was modern and user-friendly. Because they have a lot of content to share with site visitors, they needed a content management system that could comfortably handle large amounts of information. Their previous site had hard-coded pages, which were cumbersome to update, so they also needed a site that could be updated without having to touch code when information changed.

Related: Case Study / SFWMD Launches Modern, Accessible, User Friendly Site with Drupal 8

SFWMD also wanted to minimize the usage of custom modules and code, so a decision was made to utilize existing Drupal 8 modules and code whenever possible, instead of developing or depending upon custom modules. In order to help SFWMD schedule budgeting and management needs for the project, Promet Source took a phased approach to the project, and set phases and milestones so that both parties could keep track of the project progression.

Martin County Florida: 

The state of Florida has a policy of open government which allows Floridians free access to public records and documents. This is a great way to bring transparency to the inner workings of Florida’s government agencies. 

Promet Source was faced with the challenge of building a highly useable and accessible Drupal site that also made thousands of PDF files searchable within the site. Combine a massive volume of data with the particulars of Martin County’s user stories: users need to see accurate search results for specific synonyms within the vast library. Another wrinkle to the equation was introduced by the hosting setup for Martin County, a cloud instance which didn’t allow Javascript. 

Related: Martin County Case Study / Redesigning Civic Engagement with Accessibility for All Users

Promet Source implemented a PDF document parser with Apache Tika. A single instance of Solr on the web head server delivers speedy results, while swapping Solr’s default query configuration for indexed phrases and other stored content to deliver highly accurate results for searches containing phrases. The indexed content is then displayed to the end user on the Drupal site.  

The end result is a comprehensive search functionality that quickly delivers accurate results from three different sources, while providing all users with a flawless experience, no matter their web accessibility challenges.

Dec 19 2017
Dec 19

Another Drupalcamp event had just successfully ended in Cebu! This is one of the largest Drupal Conferences in Asia Pacific Region organized by volunteers and open source enthusiasts. Promet is happy to provide organizing space and event support.
 

The local community is growing!

It was very overwhelming to see Drupalcamp Cebu grow in number year after year since it first started last 2014 with 120 attendees. Drupalcamp Cebu 2015 had 70 attendees while Drupalcamp Cebu 2016 had 100. The monthly meetup in Cebu City helps in keeping in touch with the local community over the years.

This year we had a total of 150 attendees!
 

Graph of Attendance of Drupalcamp Cebu over the years.Attendance of Drupalcamp Cebu over the years.


Last November 1, 2017, Cebu had just successfully concluded its 4th consecutive Drupalcamp (thanks to the collaborative effort of the Drupal Cebu User group led by Luc Bezier), hosted by CIT University.

“CIT University has been one of the most dynamic universities that we worked with. They were very active in the venue preparation. They also sent student volunteers to help us during the event.” - Luc Bezier, Organizer.
 

Drupalcamp Cebu 2017 logoDrupalcamp Cebu 2017 Logo was selected following a logo contest. Congratulations to Ron Corona for his winning entry :)

Sponsors

Of course, the event would not have been made possible without our sponsors. Promet Source has been happily sponsoring Drupal events in Cebu and in the Philippines, and has been a GOLD Sponsor for Drupalcamp Cebu every single year! It’s no surprise, as Promet Source is already the venue for the Drupal meetup, last Wednesday of every month.

Below is the list of Drupalcamp Cebu 2017 sponsors.

GOLD SPONSORS: Promet Source, and Srijan
SILVER SPONSORS: Pantheon, and ANNAI.
BRONZE SPONSOR: Powerstorm.
COFFEE AND SNACKS SPONSOR: SkyRockIT


It is interesting to see that every sponsor had already sponsored this event in the previous years. I think it is a great proof of the success of the camp and that sponsoring the event is successful for both: the event organizers and the companies involved.

Pre-camp: the speaker’s dinner

A night prior to the event, Drupalcamp Cebu 2017 speakers got together over Dinner at the rooftop of Harold’s hotel.

It was fun to see familiar faces again and meet new speakers at Drupalcamp Cebu. It lets the speakers meet each other in a less formal way. Some had a long flight from another country, so they could enjoy a nice dinner and have a good rest before the conference. The dinner was organized and paid by the Drupal Cebu User Group. A few of the speakers were missing but most of them came and really enjoyed the live band.

Drupalcamp Cebu 2017 speakers dinner.Photos from the Speaker’s dinner at Harolds' Cebu rooftop restaurant.   

The sessions

Image of the registrationDuring the registration.

 

The camp this year had 23 sessions (one was canceled), but before the sessions started, we were able to attend the Keynote by John Albin Wilkins (JohnAlbin on drupal.org). It was great having John to visit us in Cebu and be our keynote. He is a very prolific sharer of free code. His Zen theme has been downloaded nearly two million times on drupal.org!

During the Keynote, he talked about future versions of Drupal 8 and Drupal 9, and how modern software evolves to facilitate migration from one version to another. By listening to him, we learned that with Drupal 8 we will slowly depreciate the API when changes are needed. This is to make migration from one version to another way smoother than we had ever experienced with Drupal. Link to the slides

 

Image of the keynote speaker and attendees in the session room

 

“I saw John’s keynote in Drupalcamp Taipei and I asked him to present the same for Drupalcamp Cebu 2017. I really liked his way of demonstrating how Drupal is planning to fix one of the main issue we have when migrating from one major version to another version in drupal. Gradually depreciating the API rather than breaking changes”
- Luc Bezier, Organizer.

Session for everyone

After the keynote, attendees went into their choice of sessions held simultaneously at four different rooms. Each room was labeled after each sponsor. To make it easier for the attendees, the sessions were divided into 8 categories:

frontend,
backend,
QA / accessibility,
business,
devops,
UI/UX,
lifestyle.

There was also 3-hour Drupal training for beginners attended mostly by students.

Cedric Chaux, from Taiwan, talked about the mistakes he made as a developer (Link to slides). He discussed some of the common issues we come across at work like task mismanagement, wrong estimates, procrastination, and unreliable clients.

The session was easy to relate to. I think it was a good reminder of the things that we should not do and the things that we should do as a developer.

Image of speakerCedric Chaux presents "Mistakes I Made as a Developer".

Donnabel Carato gave an overview of Web Accessibility. It was a very interesting session and helped me understand the process behind QA for Web Accessibility. Donna is the QA lead at Promet Source so the personal experience on QA was very interesting. She is involved in the ADA Website Accessibility services that Promet is providing.

Image of speakerDonnabel Carato on 'Web Accessibility Overview'.

Aman Kanoria, from India, discussed the improvements that came with Drupal 8 when it comes to managing media. He did a good showcase of some possibilities using cool modules like Dropzone or Entity Embed  (Link to the slides). Some of them I will definitely try to re-use in the future.

Image of speakerAman Kanoria: Managing Media assets in Drupal 8

The session of Luc Bézier "Guide to Freedom and Travels for developers" was not technical, but on lifestyle as a remote developer. Luc gave some highlights of the remote lifestyle and some tips on how to keep in budget while traveling. He traveled to many countries this year like Australia, Thailand, Morocco, Italy or Taiwan, and his session included exotic photos and a bunch of useful advices (Link to the slides).

Image of Luc Bezier session Luc Bézier during the opening session

From the 23 sessions, I was not able to attend them all. Other sessions included for example: "Ionic and Drupal Headless" by Leolando Tan, "Atomic Design" by Justine Win Canete, "Manage Docker Host or Swarm Cluster with Portainer" by Ashwini Kumar, "How to make your site on D8 Fly with Redis" by Paul de Paula, "Master of Mailgun" by Ranny Navarro, "Skill up! Learning, relearning and unlearning" by Joan Maris Rosos and "Automated Accessibility testing via PA11Y" by Raymond Angana.

The complete lists of sessions and more slide presentations have been posted on the camp's website https://2017.drupalcebu.org/schedule/.

“I like the session from Annai about ‘Open Portal Data Using Drupal. It's interesting to note that drupal is able to bring positive change to the community (like Japan), and the number of things you can do with drupal’s technology.”
- Mike Vallescas, third time attendee.

The Drupalcamp Training

Aside from the ~20 sessions offered, every year, we organize a training for beginners. Donnabel Carato and I usually present the “Drupal Introduction”. It is a one-hour presentation. The main purpose is for the first-time attendees to get acquainted with what Drupal is, it’s history, when to use Drupal, and who uses Drupal.

This is always followed by 2 or 3 hours training for beginners.
This year Dennis Abasa and Keith Roi Francis Sasan did an amazing job. Their training was focused on site-building and theming with Drupal 8.

 

Drupal trainersDennis Abasa and Keith Sasan: Training: Site building and theming with Drupal 8

 

Image of attendees in a session room.

 

We had around 60 people in the room, that’s a big jump from 35 last year. A majority of the beginners were students, but among the crowd, we had two IT Directors and an IT instructor from Eastern Samar (a neighboring island of Cebu) - all three were first-time attendees.

We also had a Wordpress developer all the way from New Zealand. During the registration, I happened to have a quick chat with him. He mentioned traveling to Asia and happened to see ‘Drupalcamp Cebu 2017’ event on Drupical’s website (link to https://www.drupical.com). He had always wanted to learn Drupal and decided to stop by and join the event.

 

“Always browse Drupical, you might be surprised where it takes you.”

Luc Bezier gave his closing session at 6 p.m. And just as the camp started with a live band at the speakers' dinner, it also ended with a live band at ‘IAMIKS Chicken and Beer’ for the yearly after-camp party. The trivia was organized by Raymond Angana.

Beer and games!

 

Organizer of Drupal triviasRaymond Angana: Organizer of the Drupal trivia at the Drupalcamp Cebu 2017 party.

Wait ... Where is Cebu?
Cebu City is the second largest city in the Philippines and is one of the most popular tourist destination in the country. Known as the ‘Queen City of the South’ this island is surrounded by more than 150 islets, you can just imagine the number of beautiful beaches waiting to be visited.
Aside from the beaches, there is still a lot to love about Cebu. 
Here you will find diving spots, snorkeling areas, mountains to climb, waterfalls, caves, and historic places to explore.

For Drupal lovers, one good reason to visit is the yearly Drupalcamp. Now that’s tempting.

Image of Cebu's tourist destinationsClockwise: Kawasan Falls, Moalboal, Bantayan island, Taoist Temple


Testimonials


This year we decided to throw questions to our attendees to get to know what they think and how they feel about the camp.

Q: What are the main improvements made in Drupalcamp Cebu 2017?

“One of the improvements of this year’s camp was the use of online payment. It was quite successful. We had the better estimate of how many people we would have ahead of the event" - Luc Bezier, Solutions Architect.

Luc has been the main organizer of Drupalcamp Cebu since 2014. Kudos to you!

Q: What session did you like the most?
“I honestly liked Mark Koh’s session “Drupal Beginner’s Essentials”. The topic on GIT was the most interesting part for me because of its power and capabilities on file management. And the fact that the speaker was not boring. He has the ability to capture our attention and he has that guts in the delivery of this topic.” - Gil Dialogo, IT Instructor.

Q: What do you think about Drupal?

“Drupal, though I have not used it yet in the development of websites, I guess it's good and user-friendly. Plus, there are experts whom we can lend a hand during development because of its a supportive community.” - Gil Dialogo.

Gil is a first-time attendee and an IT instructor at Eastern Samar State University - Salcedo. Eastern Samar is a neighboring island of Cebu and one of the biggest islands in the Visayas.

Q: What interested you most about Drupalcamp Cebu 2017?

“Drupalcamp Cebu 2017, has an interesting line up of talk and sessions.” - Donnabel Carato, QA lead.

Donnabel is the QA lead of Promet Source Cebu, one of the organizers of the Drupalcamp and presented during the Training for beginners.

Q: What do you think about Drupal?

“I am a pro-open source advocate and I see Drupal be an evolving CMF platform that's flexible, extendable, scalable, and secure. There's so much you can do with Drupal and hope to see more platform development and growing modules in the future”. - Michael Mark Vallescas.


Michael Mark Vallescas had been attending every Drupalcamp Cebu, since the first one in 2014. When asked about why he finds Drupalcamp interesting he said: “I like meeting like-minded people and learning new things about Drupal.”

In conclusion, Here is Drupalcamp Cebu 2017 in numbers:

  • 2 gold sponsors
  • 2 silver sponsors
  • 1 bronze sponsor
  • 1 coffee and snacks sponsor
  • 23 sessions
  • 3-hour Drupal training for beginners
  • 150 attendees
     

Thanks to all the organizers of the camp for doing extra hours after work. Kudos to Luc Bezier for taking the lead, well done!
We greatly appreciate the support from all the sponsors, the speakers for sharing your expertise, and to all the attendees.
We would also like to thank our foreign attendees and speakers for flying all the way to Cebu to be a part of Drupalcamp Cebu 2017.

Saving the best for last ….

Q: What session did you like the most?

“I like the training session most since it was the first time I was introduced to Drupal. I also like  the ‘Guide to Freedom and Travels, for Developers’ a great session where Luc give us some pieces of advice on traveling tips
Too bad He didn't give us some free plane tickets.” - Mikko Olmillo.

Miko is a student and a first-time attendee of Drupalcamp Cebu. He is very interested in learning Drupal and hopes to participate again in Drupalcamp Cebu 2018.

See you guys next year!!

 

Special thanks go to Luc Bézier for his significant contributions to this post.

Dec 18 2017
Dec 18

Promet Source is proud to announce that we have teamed up with OpenYMCA.org, an open-source digital platform for marketing and e-commerce, as a Drupal development partner. Through this partnership, we are committed to the Open Y philosophy, community, and platform. Promet has worked with several YMCA organizations across the country to build and maintain their Drupal websites. Through this new partnership, we are eager to utilize our Drupal expertise to not only assist YMCA organizations with their Open Y platform implementations, but to also build new modules, customize and extend the platform to meet the needs of their community.

About Open Y

The Open Y platform is a content management system that uses Drupal 8 functionality and useful modules from YMCAs and digital partners. It’s easy and free to use—everyone is welcome to implement Open Y and run Open Y projects.

In 2016 a group of YMCA digital, marketing, and technology experts recognized the digital opportunities that exist if we work together as a community and established Open Y.

A core team led by a small group of YMCAs including the Greater Twin CitiesGreater Seattle and Greater Houston:

  • Maintains the Open Y content management system and OpenYMCA.org site
  • Ensures all basic functionality accessible from the content management system is available free of charge—those who contribute cannot charge others for what is shared
  • Strives to be aware of issues found within the Open Y content management system
  • Is not liable for bugs, crashes or performance issues of the content management system
  • Invites and approves digital partners to join
  • Distributes communication about Open Y
  • Organizes events for the Open Y community—including 2 annual meetings

About Promet Source

Founded in 2003, Promet Source is a web design and development company that specializes in open source solutions for government, higher education and association/nonprofit clients. Promet Source’s founder, Andrew Kucharski, started the company as a custom .net solutions firm that focused on eCommerce projects for national brands.

After getting exposure to the Drupal community of open source developers, Kucharski realized that Drupal would become the go-to solution for clients that need to solve complex problems in content creation, membership management, donations and fundraising, and responsive design. Promet realigned its core services and solutions to meet the needs of clients faced with these issues and set about solving problems with Drupal.

Promet Source is a comprehensive Drupal development agency that offers custom design, custom implementations, private and public instructor lead Drupal training, web accessibility compliance, consulting and full 24x7 support to its clients.

Dec 14 2017
Dec 14

My name is Katherine Shaw and I am a front end web developer at Promet Source. I'd like to start by sharing a little bit of my background, as it has helped me to understand why accessibility, on the web and in the world around us, is such an important issue. I am an advocate for web accessibility and in today's blog, I'll be sharing how I became so passionate about implementing ADA Section 508 best practices into my work as a developer, which all began when I was working for local government.

I was born in Waco, Texas into a military family. I was the first born in my family, and my brother followed close behind. I travelled the country and to Japan throughout my childhood, giving me a great sense of other cultures and environments at an early age. With this constant travel, I didn’t grow roots anywhere helping me to feel out-of-place for much of my life. This unintentionally helped me with accessibility because:

  • I learned many points-of-view: Being around so many different types of people in various cultures helped me to understand that there are many points-of-view in the world.
  • I didn’t feel understood: Always being the new kid was difficult at times, making it so that you don’t always feel understood.
  • I had communication issues: Whether it was moving to a new school or a new country, I know how it feels when you have issues communicating with others.

Web Accessibility - My "Aha" Moment

In March of 2012, I met Dan, who works for the CIO’s office of the GSA’s Section 508 and Accessibility. He presented on accessibility from the point-of-view of a blind user. This presentation completely changed my perspective from that point on.

Hearing the JAWS screen reader
He showed us how a site sounds with the screen reader JAWS, which really blew my mind! I got just a glimpse of what it’s like for non-sighted user to use a site.

Section 508 testing methods
Dan discussed Section 508 testing methods, and shared various tools that are available on the web.

What I took from it
I was intrigued by his entire presentation, and my eyes were opened to a new world. I’ve never turned back, and I’ve now become an advocate for accessibility.

Implementing Web Accessibility in Local Government

After getting inspired by Dan’s presentation, I immediately brainstormed ideas on how I could implement some of these ADA Section 508 and WCAG standards at the county I worked for at the time.

Implementing basic web accessibility standards
Since I was the sole Webmaster, I was able to implement a lot of those changes without any issue on the existing site. When building new county sites in Drupal 7, I made sure to develop with accessibility standards in-mind.

Educating the staff on Web Accessibility
My next step was to try to educate the staff on why scanned PDF’s and images weren’t accessible, why images needed distinguishing alt tags, why writing in plain language matters to all of our users, and why a service-based approach is better than a department-based approach

“Spring Cleaning” of content
I was able to come up with a “Spring Cleaning” concept for the big redesign which worked well at accomplishing a lot of these goals. I also built-in a lot of these standards into the site, including:

  • Required alt tags for all images
  • Skip navigation on all pages
  • Page titles on all pages, with home page’s hidden for sighted users only
  • Automatically added titles from content to links, which creates tooltips on hover
  • Created a uniform top site navigation that didn’t change across the site
  • Created linked headings to text blocks on all content pages
  • Created templates for every content type, resulting in a uniform design

Old habits are hard to break
Some employees had a difficult time with these changes, and continued with their old practices including scanning documents and images and writing text that was too long for users to read through and understand.

Employees think department-based
Some employees asked for their department to have a button prominently displayed on the top navigation or wanted their own custom layout that was different than the rest of the site.

They didn’t understand that these updates don’t follow accessibility standards and also confuse users.

Support for web accessibility is needed from the top
When you work with elected officials, you’re limited in what you can do if you don’t have support from the top down.

Getting buy-in from administration is the key to success. Otherwise you will be fighting a lost-cause a lot of the time.

An Inspiring Moment from my work in Web Accessibility

Not long after I began to implement accessibility best practices into my development work at the county, I received a call from a blind citizen who was trying to access our website. There was a form he was attempting to use that was causing problems for him, specifically with a select menu with a list of states in the US. He stated that the select menus weren't helpful for him because he could only read abbreviations for the states. I could immediately identify that the keys were abbreviations while the values were the full names of the states.

Identifying and fixing the issue in real time

Sighted users see the values as they see the full names, while blind users see only the abbreviations. This is an unfair setup. Because of his feedback, I matched the keys to the values for all select menus throughout the site. You can view the example code below:

Old:

<select value=”KS”>Kansas</select>

New:

<select value=”Kansas”>Kansas</select>

After we were finished troubleshooting through the issue, he was not only extremely happy that this issue was resolved for him and other users, but he expressed that he was thrilled that I took the time to work through the issue with him on the phone.

Getting Involved with Web Accessibility

As a member of Promet's web accessibility team and an IAAP Certified Professional in Accessibility Core Competencies (CPACC), I now get to work with clients to ensure their websites are accessible to all users. I work on several remediation projects for Promet clients from start to finish. Consulting with clients, as well as performing the actual remediation work, has been very rewarding for me here at Promet.

Knowledge Sharing and Documentation

In addition to my client work, I share my knowledge and contribute to accessibility at Promet on a regular basis. I have also created a new Menu Attributes a11y sandbox project, which will hopefully be committed to the main Menu Attributes module to assist with accessibility.

I’ve also created documentation on Web Accessibility Standards and other accessibility information for the Promet team, as well as other documentation at previous positions.

I believe it's that it's time for us to develop with an accessibility-first approach at all times, and I hope my work can inspire you to do the same!

Need help getting started with web accessibility for your organization? Contact us today.

Nov 28 2017
Nov 28
Drupal Commerce: Powering ALA.org on Giving Tuesday | Promet Source

Drupal Commerce ALA giving tuesday

Drupal Commerce: Powering ALA.org on Giving Tuesday

Promet Source is proud to partner with the American Library Association (ALA) to deliver a flawless user experience with Drupal Commerce on Giving Tuesday, and every day of the year.

Related: ALA | Empowering Association Fundraising with Drupal Commerce

Promet Source worked with the key decision-makers at ALA to build a powerful website that integrates with iMIS, the system of record for all membership activities such as recruiting new members, renewing memberships and managing donations from all sources. 

ALA giving Tuesday match promotion

On this #GivingTuesday, ALA has set a goal to raise $50,000 and is even matching every donation, dollar for dollar, up to $1,000. Visit ala.org/donate to make your contribution.

You’re ready, we’re ready. Let’s get started.

Get started

Nov 22 2017
Nov 22

Ready to level up your skills before the New Year? You're in luck! Promet Training has confirmed Drupal 7 and Drupal 8 courses for developers, project managers and content editors coming up. Each month, Promet Training offers classes in AustinLas VegasWashington, D.C., Chicago & Live Online. Visit PrometTraining.com for the full course schedule and sign up today.

This four-day course provides a comprehensive understanding of Drupal 8 Site Building and Front End development. The procedures throughout the week are introduced step-by-step and then reinforced with practice and challenges. You'll build multiple sites and themes to meet the needs of a client and reflect on your own experience to take the procedures you learn back into your own work and any new situations you encounter.

November 27-30 / Washington, D.C. (Confirmed Course)

This five-day course provides a comprehensive understanding of Drupal 8 for developers responsible for full stack development. The procedures throughout the week are introduced step-by-step and then reinforced with practice and challenges. You'll build multiple sites, a custom theme and a few custom modules to meet the needs of a client and reflect on your own experience to take the procedures you learn back into your own work and any new situations you encounter.

This course allows developers to walk through the process of building multiple custom modules and provides techniques and best practices for developing custom functionality to extend the capabilities of Drupal.

Quickly get developers running full speed ahead in Drupal 8, and convey a full understanding of how Drupal sites are constructed and how the system works. 

December 11-15 / Las Vegas, NV

December 18-22 / Live Online (Confirmed Course)

This 4 day class provides a broad introduction to the essential skills necessary for editing content, building websites, managing the theme layout and working with the extremely popular Panels module.

December 11-14 / Austin, TX

Nov 14 2017
Nov 14

The age old question - or at least decades old question of Wordpress vs. Drupal is one we encounter on an almost daily basis. When deciding between the two content management systems, it may not be a question of which is better, but rather which is the best fit for your specific project. In this article I'll walk through some of the key factors to considering when deciding between Wordpress and Drupal for your web development projects.

Wordpress vs. Drupal Cost of Ownership

When evaluating budget, it is important to keep in mind factors such as site customizations, ongoing support and continuous development.While Wordpress websites typically have higher upfront costs, Drupal websites are typically much easier to maintain, leading to a lower lifetime cost of ownership. 

Wordpress vs. Drupal Ongoing Support & Site Maintenance

If you are in the market for a custom, feature heavy site, Drupal wins on ongoing maintenance. Along with lower long term costs, Drupal sites also benefit from many open source features, modules and custom integration points that are already created and continually maintained by the Drupal community. While Wordpress also has a wide range of plugins to choose from, quality control can often be an issue. Adding new features and customizations to Wordpress sites can be a heavy lift and very expensive to scale, leading to higher long term maintenance costs. 

Wordpress vs. Drupal Web Platform & Performance

For those looking to get up and running with minimal technical expertise, Wordpress could be the best fit. The learning curve is much shorter, especially for content contributors, making Wordpress the preferred choice for companies that might experience a high turnover rate of site maintainers, especially if ongoing site updates are handled internally. On the other hand, Drupal is a very robust and developer friendly platform which is easily scaleable to add new features, and leads the pack in performance for factors such as page load times.

Wordpress vs. Drupal Integrations & Customizations

Drupal currently has many existing APIs to handle 3rd party integrations. Wordpress is certainly capable of integrating with 3rd party sites, but may require the development of a custom API or reconfiguration. Both platforms have approximately 40,000 modules or plugins available that are developed and maintained by the open source community.

Wordpress vs. Drupal Security

One of the downsides of Wordpress's growing popularity is it's tendency to be targeted by hackers. Many Wordpress plugins can carry vulnerability that can be easily hacked. Once identified, customizations can often be made to improve these issues, but ongoing monitoring is critical. The Drupal CMS is synonymous with enterprise-level security and scaleability, which has made it a favorite among government, healthcare and education websites.

Wordpress vs. Drupal Scaleability 

Originally designed as a blogging platform, WordPress has limitations handling large volumes of content, resulting in performance issues and decreased user experiences. Scaling a Wordpress site to handle a larger number of pages or complex functionality may cause problems or not be possible. From it's infancy, Drupal was built to handle the gamut of website sizes - from one to thousands of pages, making it great at handling simultaneous page views. Drupal is virtually limitless in it's ability to scale.

Wordpress vs. Drupal Web Accessibility

As an inclusive community, Drupal contributors are commited to maintaining an accessible tool for developers, content managers and users of all abilities, including those accessing Drupal with the use of assistive technologies. Drupal's platform initiative is to ensure that all features of Drupal core conform with World Wide Web Consortium (W3C) guidelines: WCAG 2.0, ATAG 2.0, and WAI-ARIA. They even work to go back and remediate past versions that existed before the web accessibility guidelines were implemented. The Wordpress web accessibility team is still working on their handbook for accessibility guidelines. As a platform, they currently provide support for all users and are committed to improving this initiative to conform will all current guidelines.

Wordpress vs Drupal SEO

Out of the box, Drupal is built to be search engine optimization (SEO) friendly. With better page load times due to faster caching features, Drupal sites are often preferred by search engines. Drupal is also able to handle larger amounts of SEO-targeted content, which results in better load times for simultaneous views. While WordPress may fall behind in this area, there are many plugins such as Yoast SEO that exist to enhance SEO. Caching plugins are also available that can help improve page load times.

Need Help Deciding Between Wordpress and Drupal?

You're in luck! The Promet team is here to help. We have over a decade of experience developing, maintaining, supporting and migrating both Drupal and Wordpress sites. We understand the complexities, limitations and strengths of both platforms, which is why you'll find us running a similar comparison as the one above against project specific requirements. Contact us today to get started on your next great web project.

Oct 23 2017
Oct 23

Each year, higher education professionals and leaders in accessibility gather for the annual Association on Higher Education and Disability conference. For Promet Accessibility, this conference serves as an excellent way for our team to learn about the web accessibility best practices and latest ADA Section 508 standards that are an indispensable part of all web development projects, not just those in the higher education industry.

AHEAD Web Accessibility in Higher Education 2017 Conference Logo

This year's conference featured thought-provoking topics on web accessibility including: Accommodating Online Learning: Much More than Captions; Developing a Procurement Policy - From Soup to Nuts; Accessible Design is Sustainable Design and sessions that highlight research and data-based practices.

While the key takeaways from each presentation and talk were varied, our team noticed several overarching takeaways from our week spent at AHEAD:

Don't Reinvent the Wheel! Much like the spirit of the open source community that we are accustomed to with Drupal and Wordpress development, the attendees and speakers at AHEAD shared the same message about learning from our peers. Many universities - large and small - are making great strides in providing an accessible environment for students of all abilities, both on and off the web. The more organizations, universities and businesses are willing to share their experiences, collaborate, and learn from one another, the easier our collective path to a fully accessible digital world will be. 

Related: is your site compliant with ADA Section 508 & WCAG 2.0? find out today

Educate Yourself & Your Organization. In order to ensure ADA and WCAG 2.0 compliance for your digital properties, it is crucial for your development team and content editors to fully understand current legal requirements and guidelines for creating accessible content. This will not only provide the best possible user experience for all individuals, but also protect your organization from legal liability.

Related: sign up for advanced web accessibility training for developers

Advocating for Accessibility. One topic that was continually addressed across multiple presentations was the need for universities to achieve buy in from their organization in order to allocate budget and resources to address issues in web accessibility and remain compliant. As we have worked with clients across higher ed, government, non-profit, and businesses of all sizes, the same is often true. Unfortunately, web accessibility is often an after thought in the web development process and may not be addressed until there is either 1. a legal compliant filed or 2. an issue raised by someone who is up to speed on the latest ADA or WCAG 2.0 guidelines. 

Let's raise the bar together and not leave web accessibility to chance. As professionals in a digital world, it is up to each and every one of us to advocate for an accessible web. 

What about accessibility? Isn’t that a part of usability?
And they’re right of course. Unless you’re going to make a blanket statement that people with disability are not apart of your audience, you really can’t  say your site is usable unless it’s accessible.
- Steve Krug, Don’t Make Me Think

About AHEAD

AHEAD is a professional membership organization for individuals involved in the development of policy and in the provision of quality services to meet the needs of persons with disabilities involved in all areas of higher education. At this time, we boast more than 2,800 members throughout the United States, Canada, England, Australia, Ireland, Northern Ireland, New Zealand, South Africa, Sweden, Japan and Greece. In addition to our International membership, AHEAD is fortunate to have formal partnerships with 31 Regional Affiliates and numerous other professional organizations working to advance equity in higher education for people with disabilities.

Since 1977 AHEAD has delivered quality training to higher education personnel through conferences, workshops, publications and consultation. AHEAD members represent a diverse network of professionals who actively address disability issues on their campuses and in the field of higher education. AHEAD is actively involved in all facets of promoting full and equal participation by individuals with disabilities in higher education; and supporting the systems, institutions, professions, and professionals who attend to the fulfillment of this important mission.

Oct 20 2017
Oct 20

Question: Do I need actual disabled individuals to audit and test my site?

This is a question we have continued to receive from clients on a regular basis, and while accessibility auditing with disabled individuals may seem to make sense, it becomes quite cost prohibitive to test individual specific disabilities at this stage in the process. Disability types are vast with very few disabled individuals also trained in web development and accessibility. In contrast, any web developer (regardless of ability) can use modern tools and/or assistive technology to determine if accessibility has been met according to WCAG 2.0 (Level II).

At Promet, we believe that our developers benefit from understanding assistive technology first-hand so as to gain insight about accessibility from new perspective, which encourages them to think about accessibility throughout the development process. Additionally, we believe that this will ensure the majority of users are able to access everything on your site from a functional standpoint.

As many leading industry experts have pointed out, conducting usability testing and including disabled users will yield the largest 'bang for your buck'. Instead of a large specialized team spending hours looking for bugs, the users align with your use cases to determine if it's possible to complete a set of tasks.

As WebAIM states, " usability test that includes individuals with disabilities will result in more useful feedback and a more accessible web site than conducting distinct accessibility user testing." Usability experts such as Steve Krug and The Jakob Nielsen of the Nielsen Norman Group both express similar sentiments. 

Oct 20 2017
Oct 20

Question: Do I need actual disabled individuals to audit and test my site?

This is a question we have continued to receive from clients on a regular basis, and while accessibility auditing with disabled individuals may seem to make sense, it becomes quite cost prohibitive to test individual specific disabilities at this stage in the process. Disability types are vast with very few disabled individuals also trained in web development and accessibility. In contrast, any web developer (regardless of ability) can use modern tools and/or assistive technology to determine if accessibility has been met according to WCAG 2.0 (Level II).

At Promet, we believe that our developers benefit from understanding assistive technology first-hand so as to gain insight about accessibility from new perspective, which encourages them to think about accessibility throughout the development process. Additionally, we believe that this will ensure the majority of users are able to access everything on your site from a functional standpoint.

Related: Is your site ADA Section 508 & WCAG 2.0 compliant? Find out today

As many leading industry experts have pointed out, conducting usability testing and including disabled users will yield the largest 'bang for your buck'. Instead of a large specialized team spending hours looking for bugs, the users align with your use cases to determine if it's possible to complete a set of tasks.

As WebAIM states, " usability test that includes individuals with disabilities will result in more useful feedback and a more accessible web site than conducting distinct accessibility user testing." Usability experts such as Steve Krug and The Jakob Nielsen of the Nielsen Norman Group both express similar sentiments. 

Sep 29 2017
Sep 29

In 2017, 77% of Americans own a smartphone, a phenomenal increase from just 35% in 2011 (source: Pew Research Center Mobile Fact Sheet). And we are not just talking about a single screen size here! There are a multitude of screen sizes to consider from different versions of iPhones, android. And outside of smartphones, you probably want to consider iPads, tablets, desktops, tvs, to name a few.
And with the abundance of screen sizes to consider comes a challenge among others -- responsive images, providing an image that looks good all throughout different screen sizes.

This blog post will walk you through an easy and detailed process of making your images responsive using two Drupal modules: Picture and Breakpoints.

Before getting started...

Before we dive into the setup and the Drupal module, we need to clarify a few terms. Those terms are common words used in responsive web development.

“Breakpoint”: A certain point in your screen at which your layout changes. This usually represents the different category of devices you are targeting. For example: 

- 0px to 320px = one column layout for smartphones.

- 768px to 1024px= two column layout, for tablets.

- > 1024px = 3 column layout, for desktops.

“Image styles”: In Drupal, Image styles are modifications that you apply to the content’s images. You can scale, crop, resize, rotate and desaturate images without affecting the original image. The image will fit into your webpage and devices.

“Picture mapping”: This is the way we associate a breakpoint to an image style. You can have different images styles for different breakpoints. You want to display small images on smartphones, and large images on desktop. This is what picture mapping is about.

Picture Module

This blog article is based on Picture module version 2.x for Drupal 7.

Requirements:

- Breakpoints module and Chaos tools. This is a dependency of the Picture module. Don’t panic, everything will be explained.

- PHP GD Library. You probably don’t have to do anything to enable this library. GD is included with PHP 4.3 and higher and usually enabled by default. GD is a required extension in Drupal 7 and later (More information).

Step 1. Download and enable picture module and breakpoint module.

Using Drush

Drush is a fantastic tool to interact with Drupal and work faster. You can learn more on this article: Drush Made Simple

Download and install the picture module and it’s dependencies by running the following commands in your terminal.
Starting with dependencies:
$ drush dl breakpoints
$ drush dl ctools


Then download and enable the picture module. It will automatically enable the dependencies.
$ drush dl picture
$ drush en picture -y
 

Without Drush

If you are not using Drush:
Download the picture module and breakpoints module manually at  ADD CTOOLS: https://www.drupal.org/project/breakpoints and https://www.drupal.org/project/picture.

Make sure to place the modules at sites/all/modules/contrib.

Enable the modules in the UI at admin/modules.

Step 2. Configure breakpoint for the picture module

After the picture module and it’s dependencies had been downloaded and enabled, go to Configuration » Media then click breakpoints. We will add our custom breakpoint. Screen Shot 2015-04-06 at 12.41.43 PM.png

We set the smallest breakpoint to 0px minimum to ensure that we can accommodate arbitrarily small screen sizes.

- (min-width: 0px)

- (min-width: 480px)

- (min-width: 960px)

Once the breakpoints had been entered, we should see the page similar below.

Screen Shot 2017-08-02 at 4.20.57 PM.png

2. After breakpoints had been set, click on ‘add new group’. Enter a name in the ‘Group name’ field base on it’s purpose. For this tutorial, we will call our group ‘Article image.’  Select all the breakpoints then click ‘Save’.

Screen Shot 2016-06-03 at 1.23.15 PM.png

Step 3. Configure picture module


We have just configured three breakpoints, next we will be assigning image styles to these breakpoints.

In the toolbar go to Admin > Configuration > Media> Picture (admin/config/media/picture) and click ‘add’ and from the breakpoint group dropdown, select the breakpoint group you had just created.

Screen Shot 2017-08-02 at 3.29.37 PM.png

Screen Shot 2017-08-02 at 3.32.22 PM.png

Next we are going to assign image styles to each of our breakpoints in our breakpoint group. By default there are image styles ready for use but you can also create your own at Configuration > Media (config/media/image-styles).

Screen Shot 2017-08-02 at 3.39.16 PM.png

Screen Shot 2017-08-02 at 3.39.34 PM.png

Screen Shot 2017-08-02 at 3.41.07 PM.png

Step 4. Configure field formatter in content types.

Go to Structure > Content types (admin/structure/content/types).
Click on ‘Articles’ then click on ‘Manage display’ tab.
Select the picture formatter from the dropdown

Screen Shot 2017-08-02 at 3.44.54 PM.png

Select ‘Article image’ from the picture group dropdown.

Screen Shot 2017-08-02 at 3.46.38 PM.png

 

Step 5. Test to be sure your picture mapping works!


Check if the formatter works by creating a piece of content with an image. The image should go from large to small as you resize your browser’s window. 

The result?

On desktop, image size is 844px by 620px in browser resolution (min-width: 960px).

Screen Shot 2017-08-02 at 4.58.47 PM.png

Screen Shot 2017-08-02 at 5.01.11 PM.png

On a tablet, image size is 480px by 353px in browser resolution starting (min-width: 480px).

Screen Shot 2017-08-02 at 4.24.04 PM.png

Screen Shot 2017-08-02 at 5.03.55 PM.png

On mobile, image size is 240px by 176px in a browser resolution (min-width: 0px).

Screen Shot 2017-08-02 at 4.26.52 PM.png

Screen Shot 2017-08-02 at 5.04.48 PM.png


We addressed the challenge of providing an image that looks good all throughout different screen sizes with the help of two Drupal modules: Picture and Breakpoints. 

- Create image styles at Administration > Media > Image styles (config/media/image-styles).

- Define breakpoints at Administration > Configuration > Media > Breakpoints (admin/config/media/breakpoints).

- Assigned image styles to specific breakpoints at Administration > Configuration > Media > Picture Mapping (admin/config/media/picture_mapping)

- Go to your content type, and in manage display for the image field, and choose ‘picture’ in the dropdown.

- To test, create a test content with an image for that content type. Your image should go from large to small as you resize your browser’s window.


Next: Tune in for responsive images with Drupal 8!

 

Aug 30 2017
Aug 30

Promet Source today announced it has been selected as a finalist for the 2017 Acquia Engage Awards in the Public Works category. The Acquia Engage Awards recognize the amazing sites and digital experiences that organizations are building with the Acquia Platform. 

More than 200 submissions were received from Acquia customers and partners, from which 80 were selected as finalists. Nominations that demonstrated an advanced level of visual design, functionality, integration and overall experience have advanced to the finalist round, where an outside panel of experts will select the winning projects.

Winners will be announced at Acquia Engage in Boston from October 16-18, 2017. 

“Acquia’s partners and customers are setting the benchmark for orchestrating the customer journey and driving the future of digital. Organizations are mastering the art of making every interaction personal and meaningful, and creating engaging, elegant solutions that extend beyond the browser,” said Joe Wykes, senior vice president, global channels and commerce at Acquia. “We’re laying the foundation to help our partners and customers achieve their greatest ambitions and grow their digital capabilities long into the future. We’re inspired by the nominees and impact of their amazing collective work.”
 
The full list of finalists for the 2017 Acquia Engage Awards are posted to Acquia’s website. 

About the Project 

The South Florida Water Management District is a regional governmental agency that manages water resources for 16 counties in the southern half of Florida, ranging from Orlando to the Florida Keys.

Visitors go to their site to get permits, real-time data, rainfall modeling reports, fact sheets, listen to scientific podcasts, and more.

Learn more about South Florida Water Management District here: https://www.sfwmd.gov/who-we-are 

Promet Source was chosen by the South Florida Water Management District to develop a website that was simple to navigate, responsive for mobile devices, section 508 compliant for users with disabilities, and easy to maintain for their IT department. The project was completed in Fall 2016.

SFWMD needed a platform that was modern and user-friendly. Because they have a lot of content to share with site visitors, they needed a content management system that could comfortably handle large amounts of information. Their previous site had hard-coded pages, which were cumbersome to update, so they also needed a site that could be updated without having to touch code when information changed.

Project Success with Acquia

SFWMD’s non-IT staff members are tasked with keeping the site updated, and with new content being added regularly their Drupal 8 site needed to be easy to use.

In order to facilitate this, Promet Source selected Acquia Lighting as the Drupal 8 distribution, because it comes with a selection of proven modules to help manage editorial workflows like the ones SFWMD wished to implement.  Using a vetted Drupal 8 distribution removes the possibility that two modules in it might not work well together, and cuts down on development time as individual modules don’t have to be discovered and vetted.

About Promet Source

Promet Source is a leading interactive development firm. We specialize in harnessing the power of Drupal and other open source tools to deliver high-value web and mobile application development and support. Our dedicated Drupal development, training and web accessibility teams have deep technical expertise and are recognized as leaders within the Drupal community. Promet serves clients globally across multiple industries-specializing in government, higher education, non-profits, start-ups, healthcare and professional services.

About Acquia


Acquia is the leading provider of cloud-based, digital experience management solutions. Forward-thinking organizations rely on Acquia to transform the way they can engage with customers -- in a personal and contextual way, across every device and channel. Acquia provides the agility organizations need to embrace new digital business models and speed innovation and time to market. With Acquia, thousands of customers globally including the BBC, Cisco, Stanford University, and the Australian Government are delivering digital experiences with transformational business impact.

Aug 23 2017
Aug 23

The word Drush is a combination of two words: drupal + Shell.
A shell is a command line tool that lets us manage our website by writing commands.

Why should you use it?

Drush is a Drupal developer's best friend, it makes your life easier.
Instead of hovering around the interface, Drush is an excellent alternative tool for doing various tasks with Drupal using commands. Save yourself from all those page clicks and more!

Here are some of the main reasons why you should use Drush.

  • Drush is faster to use. Using the interface you need to load pages, click on menus, look for the information. With Drush, you look for a command using drush help, and that’s it. 
  • Drush is faster for PHP to execute. No need to load the website interface, it goes straight to PHP, no browser needed.
  • You can automate things. With drush you can make a script to enable ten modules in a row, apply some updates, clear the cache … etc. Any command from drush, can be make as part of a script.
  • Avoid mistakes. A wrong click? Not possible with Drush.

Still not convinced? 

A quick example of a task is downloading and enabling a Drupal module.
Without drush:

  • Download the module in drupal.org,
  • Go to your website in home > admin > module, click choose file,

Choose the downloaded module from the ‘Downloads’ folder in your computer’ and then click install.

Screen Shot 2017-08-19 at 12.16.11 AM.png
With Drush: you just have to write two lines of code in the command line tool to do this task.

$ drush pm-download modulename

In the command, "pm-download" can be shortened to "dl".
 

$ drush pm-enable modulename

Note that the “modulename” is refereing to the module’s machine name, as in the module’s URL. Example: the machine name of the “Chaos tool suite” module is ctools, it’s URL is https://www.drupal.org/project/ctools.
In the command, “pm-enable” can be shortened to “en”.

​​​​​Two commands and some minutes saved!

Drush is really pupular and stable. As of July 6 2015, the Drush project had already been downloaded 1,531,560 times.

Install Drush

Install Drush using Composer:

The recommended way to install Drush is to use Composer, because it will be easier to keep Drush up to date. Composer will manage Drush as a dependency. Read more about composer on: https://getcomposer.org/doc/.

Also, installing with Composer will be the only option moving forward, as noted on Drush’s website (http://docs.drush.org/en/master/install/): “Note: Drush 9 (coming soon!) only supports one install method. It requires that your Drupal 8 site be built with Composer and Drush be listed as a dependency”.

If you project is not using Composer:

$ drush pm-enable modulename


If your project is already using composer:

$ drush pm-enable modulename


Then install the Drush launcher: https://github.com/drush-ops/drush-launcher.

To test if you had successfully downloaded and installed drush, open your terminal, type drush help and hit enter. You should see a long list of drush commands along with descriptions on what each of the commands do. You can shorten the list of drush commands and target specific result with the help of “grep” and keywords.
For example, if you are looking for the command to enable modules, you can use “enable” as your keyword:

$ drush pm-enable modulename


What about Drupal Console?

A tool became popular with Drupal 8 and it’s called Drupal Console. It can do a lot of things in a similar way as Drush, but it has a different focus. 

Drush has been around for a very long time and has a lot of options available. Drush aim at helping the site builder into regular maintenance or administration tasks. On the other hand, Drupal Console is more modern and came for the version 8 of Drupal (if you know Symfony, you won’t be lost with Drupal Console). 

Drupal Console focuses more on helping the Developers. You can do some administration tasks like enabling a module, but not as many as Drush. But Drupal Console can, for example, generate PHP code for you. This is more helpful for Developers than for maintenance tasks. Both can work together, so you can always install Drupal Console as well. But this will be another article ;)
 

Aug 17 2017
Aug 17

With the introduction of Drupal 8, the Drupal project introduced a bit of a paradigm shift for managing configuration for Drupal sites, moving toward encapsulating configuration separately from content, and providing a mechanism to manage configuration changes more effectively through Configuration Manager, which is a Drupal Core module.  Configuration Manager provides a mechanism for importing, exporting and synchronizing a site’s configuration components, which is great when you want to maintain a consistent configuration across different development environments.

But what happens when you want to maintain configuration differences in certain environments?  An example would be configuring the Devel module for local developer environments, but disabling that module once you deploy changes to Staging or Production.  Or perhaps enabling the core Database Logging module on your development server to make accessing error logging quick and easy for developers, but disabling that module on your Production site since logging messages to the database has performance implications.

Out of the box, the only way to manage differences between environments is through a manual process or a clunky tracking process to maintain separate configuration files for different environments.

Well, given that we are a development community famous for problem solving, the Drupal Community stepped up and wrote a module for that.

Configuration Split

Configuration Split is a Drupal 8 module that provides a way to segregate configuration components so that you can isolate configuration components for different environments.  This allows project developers to segregate configuration for development specific modules or settings separately from the configuration that is set up for a staging or production environment.

In order to use Configuration Split effectively, enable the module, and start in a local development environment.  Configure your site locally so that, instead of storing exported configuration files in the default location inside the sites/default/files directory, you create a directory outside the Drupal docroot to house configuration settings.

For example:

Create a config folder within your project where your Drupal project will export configuration files, and make it writable by your web user:

docroot (drupal web root)
config
   -sync (configuration export storage)

Uncomment the following lines from your settings.php file:

…
# if (file_exists($app_root . '/' . $site_path . '/settings.local.php')) {
#   include $app_root . '/' . $site_path . '/settings.local.php';
# }
…

And use settings.local.php to store settings configuration for each environment.  If you’re accustomed to working with different environments anyway, you’ve probably already got a settings.local.php file that contains, among other things, database settings for your local environment.  You’ll need to create this file, and place it in the same directory as settings.php (normally sites/default/files).

Insert the following line above the uncommented lines in your main settings.php file:

…
## Disable split config settings
$config['config_split.config_split.local_dev']['status'] = FALSE;
…

Configure your site for production ⎼ disable devel, views_ui, field_ui, etc; don’t worry if you are just starting, this is a baseline configuration and you can change it more later.  Export your configuration with drush cex.

Now comes the fun part.  Add a second directory inside your config directory, making sure it is writable by the web user. This directory will be used to store your development environment specific configuration:

docroot (drupal web root)
config
   -sync (configuration export storage for production)
   -local_dev (configuration export storage for local development)

In your settings.local.php file, which houses your development environment specific settings, add the following lines:

…
## Enable split config settings
$config['config_split.config_split.local_dev']['status'] = TRUE;
…

This overrides the setting that was inserted in the base settings.php file, enabling a split configuration management for your local development environment.

Now you’re ready to configure your development environment modules and settings!

Creating a Development Configuration profile


Navigate to /admin/config/development/configuration/config-split and click the “+ Add Configuration Split Settings” button:

Screen Shot 2017-07-21 at 6.39.32 PM.png

Give your development configuration a name (for example, Local Dev) and add the location of your development configuration directory, relative to the Drupal docroot, and check the “Active” checkbox:

Screen Shot 2017-07-21 at 6.48.19 PM.png

Page down and select the modules that are specific to your local development environment in the “Blacklist -- Modules” select box (you can use the ALT key (Windows) or Command key (OS X) to make multiple selections):

Screen Shot 2017-07-21 at 7.02.07 PM.png

When you’ve selected the modules you wish to have enabled for local development only, page down and click “Save”:

Screen Shot 2017-07-21 at 7.05.47 PM.png

Exporting your development configuration


The Configuration Split module also creates a couple of new Drush commands:

Configuration-split-export (csex)
Configuration-split-import (csim)

These commands supplement the core commands config-export and config-import, and specifically import and export your local development configuration settings.

To export your development environment configuration, execute the following drush command:

drush csex local_dev -y (or the machine name of your local development configuration)

The Core config-export command will now export both your production configuration settings, and your development configuration settings, isolating them to the configured subdirectories within your config directory.

Managing configuration between environments


As you add and configure more modules specifically for your development environment, you can modify the configuration split profile for your local development environment, adding modules and/or configuration settings changes specific to local development, and re-export those changes via drush.

To manage your project configuration, you can choose to include your development configuration directory in source control (to share with other developers on your team) if you like.  The configuration setting you included in your base settings.php file:

…
## Disable split config settings
$config['config_split.config_split.local_dev']['status'] = FALSE;
…

will disable the configuration split between the “sync” directory and the “local_dev” directory, and executing drush cim on your production server will ignore the configuration files in your “local_dev” directory.  

So, any continuous integration scripting process that you may have in place that imports configuration files should still work just fine for your production environment.  Of course, we’d advise you test this in a development or staging server environment before implementing this in production.

Jun 27 2017
Luc
Jun 27

Do you have a ton of images and videos stored on your Drupal website, making locating the right content a nightmare? Or perhaps you have two websites with Wordpress and Drupal that share the same images? If you are looking for a better way to integrate your content into Drupal, look no further than the Widen Community with Drupal 8!

Widen Collective is a Digital Asset Management (DAM). It provides digital marketers and content editors a way to easily locate photos, videos and creative files. Widen uses quick search, keywords, search by category, an intelligent Faceted Search and more. Now here is the best part: this new module allows your Drupal projects to connect to the Widen Collective, with the WYSIWYG CKEditor. 
 
Promet Source and Widen Community have worked together to provide a great integration between the latest version of the CMS platform Drupal 8 and Widen’s DAM platform Widen Collective. Widen offers software solutions that help digital marketers connect their visual content – like graphics, logos, photos, videos, presentations, and more – for greater visibility and brand consistency. The module is Open Source and now available to all, hosted on Drupal.org.


Access using CKEditor in Drupal 8
From Dropbox to JIRA and Slack, Widen integrates with many platforms and tools to match your workflow (see some tools integrations on http://www.widen.com/integrations). It also works with CMS such as Wordpress and of course Drupal. With Drupal 8, Widen is best integrated with the native WYSIWYG CKEditor. Just click the Widen icon in CKEditor and you will have access to your media library to insert photos and videos. You can also have several users from your company with different accounts and different media, the permissions are on your user’s access level. They are handled with user authentication through the Widen Collective API.

  1. Click on the Widen Collective icon in your CKEditor.
  2. Enter a keyword or specific sentence to find your media.
  3. Click on a media and select the size.
  4. Insert, Done!
Insert all your photos and videos from CKEditorInsert all your photos and videos from CKEditor

Widen Community Drupal Module: Open Source and available on Drupal.org
While the module should be linked to your own Widen account, the code of the module was released using Open Source and is now hosted on Drupal.org. This means the module can be downloaded just like any other modules for Drupal, manually or using Drush (the command line tool for Drupal). The configuration of the module is easy and a step by step guide is available here: https://support.widencollective.com/support/solutions/articles/24000005804-how-do-i-install-drupal-8-

Hosting Widen Collective on Drupal’s servers also gives us a public platform to manage issues, a standard way to use and download the module (download using drush and drupal console) and a versioning system. The module is now available in a stable version for Drupal 8, and a Drupal 7 version is coming soon. Checkout the module now at https://www.drupal.org/project/widencollective

Jun 25 2017
Jun 25

Today, Clutch published the results of its annual research highlighting the top Chicago mobile app development, web development, and custom software development companies. The research highlights leading mobile app development, web development, and custom software development companies in Chicago. The research evaluates each company’s depth of focus in their area of expertise, as well as the company’s proven ability to deliver results for their clients.

Chicago’s leading mobile app development companies are recognized for their technical expertise and their ability to produce innovative mobile apps in both the consumer and enterprise space, often with an emphasis on user experience design. The top companies are: Dom & Tom, Eight Bit Studios, Ethervision, Table XI, Red Foundry, KeyLimeTie, Hashrocket, SnapMobile, Lakeview Labs, Zwiffer Inc, Greygoo, Doejo, Devvela, kohactive, and Solid Interactive.

The top web development companies featured in Chicago are recognized for their ability to create fully responsive, complex websites that help take their client’s business and web presence to the next level. Chicago’s top web development companies are: Hashrocket, Orbit Media Studios, Promet Source, Imaginary Landscape, Surprise Highway, Dom & Tom, Intechnic, Duo Consulting, LaunchPad Lab, Table XI, Realnets, Palantir.net, Wojo Design, Forte Group, and Caxy Interactive.

The top Chicago custom software development companies are recognized for their ability create custom solutions that offer innovative ways to help their clients to grow, improve internal processes, and/or offer better experiences for customers. The top companies are: DevMynd, Breakthrough Technologies, kohactive, Datascope, SnapMobile, NEXT/NOW, Ameex Technologies Corp., Loadsys Web Strategies, Maven Wave Partners, Forte Group, Doejo, Caxy Interactive, Youtech & Associates, Lakeview Labs, and 9magnets.

“These leading Chicago-based development companies are distinguished by their ability to deliver high-quality custom solutions and strong results for every client, from small, local businesses to large, international firms,” said Amber Dewey, Analyst at Clutch. “The companies featured in our research create impressive mobile apps, websites, and custom software solutions that help push each client’s business further by taking in the specific wants and needs of each client.”

Read the full Press Release from Clutch.co

Jun 16 2017
Jun 16

This blog post is transcribed from the session "More Social, Less Media: Harnessing the power of Human Connection to Achieve Marketing Success" presented by Molly Nelson at Drupal Texas Camp in Austin, TX - June 2017

More Social, Less Media


First and foremost, I want to begin by explaining the idea behind more social, less media, though I have to admit I cannot take credit for this concept. It was one that was actually introduced to me a few years ago by a blogger and fitness expert, Dallas Hartwig. And the way he described this concept is to not permanently avoid all media and digital technology, but rather to focus on prioritizing meaningful social interactions, to reassess the way that you consume digital media. And the addition of quality time is just as important as the reduction of distracting devices.     

Honestly, it kind of got me thinking about the implications of this process and of this concept. And while those implications really have an impact on our personal lives, away from our devices, and establishing those real human connections, it really got me thinking about, as a marketer, from a business standpoint, had I been placing enough weight on the tactics that really encourage that real, meaningful human connection on the business side of things? So that's really how this concept and this presentation kind of evolved.     

So today I want to start with what we will not be chatting about. I want to start out prefacing this by saying that these are absolutely crucial, fantastic parts of any marketing mix. I'm by no means saying that marketing metrics, and analytics, and ROI, and digital marketing tools are not important things. Because of course, as we all know, they are incredibly crucial parts of all business. But I'll be honest, it's just all too easy for marketers, for business development professionals, for project managers, for developers, any part of the business that you're a part of; it's easy to get caught up in hitting numbers, and filling your pipeline, and slamming your professional services team with as much work as they can possibly handle. But sometimes we forget to just stop and focus on what we do best, and trying to do better at harnessing that human connection.     

I want to invite every body to just take a step back from the numbers, from those tactics that might get us that nice, pretty ROI that everybody's looking for, especially when we're investing time and resources into the marketing side of things. And maybe even forget, for a while, about the MailChimps, and the HubSpots, and the Marketos of the world. We know they're not going anywhere, and they're always going to be tools that we want to use, and they're very necessary, but let's talk instead about what really matters most. And that's the people. All of the people that we interact with. It's going to be your team, your client, the Drupal community that, of course, brought us all here this weekend; and then of course, you, and your personal brand, and what you bring to the table both as a professional and just as a person too.     

Building Lasting Client Connections

We're going to go over establishing those real, lasting connections with your clients, how to harness the strengths of your team, finding and focusing what your business is really well at and how you can do more of it, and then using all of those things to market yourself, market your brand, and your team, or even your business as a whole. So let me give you just a little bit of history and background on myself first. Way back in 2011, just to give you all a little bit of context, I was right out of college and thrown into making a Drupal 6 site with my previous company, Go. They said, "We hired this freelancer, we're four months into the process," they told us it was going to take four weeks, "we need you to take this CMS and make it live."     And, first of all, I didn't know what a CMS was. I didn't know what Drupal was. I basically had only had the exposure of building a geocity site for my high school softball team, and building a little WordPress site for my study abroad adventures when I was in college. So I needed help. And all so often this is a similar story that I hear from a lot of the clients that Promet works with. We get people who say, "I've just had this site dropped in my lap, and I don't know what to do." That's really where Promet came in to rescue me.     

Of course there were plenty of other web development shops that the company that I worked for at the time met with, but it turns out that I ended up being a Promet client. It only took a little bit of googling Chicago Drupal support for that to lead me to Promet Source. As we can see, that digital marketing wizardry does play a role here, but it really wasn't what made the lasting impression. We met with plenty of other web development shops that whizzbang cool things that they could build for us. We were a small engineering firm, just kind of taking our business online for the first time, and we weren't really sure what we needed. And all these other shops told us all these cool things that they could build for us - they showed us their case studies, they showed us their products, and the things that they built for other people. But the problem was, we didn't even know at that time what we needed. And as a marketer, and being fresh out of college myself, and having to really make this Drupal site go, I had no idea what I needed.     

It turned out that what we did need was somebody to just sit down and talk through with us what we were trying to accomplish. What were our goals? And what were we trying to do by taking our business online? So when I stepped into the role I was previously in, they said, "We need a website. Everybody has a website. Our competitors. Our customers, they want to be able to see our business online." But there was really no talk about what the business goals were, what were the objectives we were trying to address, and what did we want our customers to really engage with when they went to our site? Did we want to make a sale? Did we want to educate them? And that was where Promet really led us through that process. It really helped that they took the time to understand our business. So they said, "Let's talk about it. Let's talk about your goals. Let's establish those goals."     

From there, my team really had the confidence in Promet that they truly understood our business, especially when it came down to getting to the project scope. So it wasn't just a conversation of numbers, and results, and what they were going to build for us; it really started with, "What would the business need?" So we felt like, as the client, the hardest part was really over, and we could hand over the website project, and that we knew that it was in good hands. So the next step, of course, from there was to build something great. But really, the long term impact for me as the client really didn't even come then. It's what I think can often be overlooked in what we're going to talk about today.    

Jenna, who was then my project manager, and now a coworker of mine at Promet Source, didn't just stop checking in with us when the project was over. It wasn't, "Here's your website, nice knowing ya!" It was those continual check ins, that every so often I'd hear from Jenna, and it might be a phone call, or it could be when she was passing along Drupal resources. She would say, "Hey, here's theweekly drop." Or, "Here's this news that's coming out of Drupal.org that you might want to take a look at because I know that you're new to Drupal and you're new to content editing." She knew that I was kind of like a baby deer. I was kind of lost and needed to find my way in the technology space. So it really helped me to feel more familiar with Drupal.     

Now, as a marketer for Promet, I can see the impact that both Jenna and our other project managers, and our account managers can really have on Promet's current and potential clients, and how that leads to more and new business. It's not the fact that we're just sending out the marketing campaigns on a regular basis, it's the fact that they know Jenna, and those all important check ins are helping to establish what's really most important in that long-term; lasting relationship with our clients.     

The Most Important Element in Lasting Client Relationships: Trust

So what do you guys think that is? What is that most important factor? Anybody have any guesses? Anyone? It's one word. Just one little word. Five letters. No? Anyone? It's trust. Yeah. So really, it's just the trust that their business, their project, their idea, their goals are in good hands. That they can rely on you no matter what the issue is, or the problem is that they might be trying to solve. They want that friendly face, or that friendly voice on the other end of the phone that's going to say, "We hear you. We understand what you need. Let's work through it together." And that trust is what's going to lead to that repeat business.     

So once you have the trust, how are you going to go about keeping the trust? One of my favorite questions that a mentor of mine years ago started prompting me to ask our clients is, "What would I have to do for you to fire us?" And that's something that kind of takes people aback when they hear it. They think that you're trying to catch them, or it's some type of trick. But really, what you want to get to is, what is the thing that would make you lose their business? And then, you just have a conversations, and kind of get to the point of, "Okay. Well, we're going to try to not do that thing."     But really, what it often leads to is that that conversation about, "Why did they choose you in the first place?" And, "Why have they stuck around." And that, for me as a marketer, that's the thing that I like to get to the heart of with our clients, and especially ones that have stuck around. And even those that we might have lost to another firm, or decided to go with somebody else for a new project. It's good to get to the heart of, "What were those factors that really led them either away, or that keep them as a customer for the long term?"     

A lot of times, those reasons that they've stuck around have to do with things that aren't necessarily tangible. It might not be the same reasons that they became a customer in the first place. Because, if you think back to some of the projects that you're working on right now, or some of your current clients, maybe they came to you because they saw another project that you put together. Or maybe they saw another client's website that they really liked. Or it might have been a case study, or one of your out-bound marketing campaigns. Or it could have been that they met you at Drupal Con. Who knows? But, more often than not, the reason that they decide to stay has nothing to do with those original reasons that they became a customer in the first place.     

Oftentimes, it has to do with your team. That's what's going to keep them coming back again and again for your expertise. And that's where building up your teams, and building up the strengths of your team, and really harnessing the power of that, especially when it comes to marketing and to business development, has to come into play. So when I have shared this slide with my team, it's kind of met with confusion. A lot of times, it's met with a little bit of panic. Like, "Are you going to take the developers and make them make cold calls? Are you going to take our project managers and send them all out to Drupal Con and say, "Bring us back 10 leads a day"?" And that's by no means what we're talking about.     The truth is that every single person, each and every one of them on your team, is a marketer. Everyone is a business development professional. Everybody has something of value to share. But a lot of times, our natural inclination is to have that imposter syndrome set in. To think, "Okay, well I've only been a developer for a couple years." Or, "I don't have anything of value to contribute back to the community." Or, "Anything that I might write a blog post about, what if people don't read it?" Or, "What if people call it out and say, "Well, actually, you should do things this way."" And they just get a little bit scared. They need to kind of have that drawn out of them. And as marketers, any of you that might be marketers in the room, that's really on us to draw that out of our teams, and to really get that engagement, and to get people excited about sharing what they've done. And a lot of times, that can be buried in a project retrospective.     

It could even just be the simple answer to a development question that maybe took somebody hours of googling to find. I mean, how often are you trying to find an answer to a question, or a way to solve a problem, and it takes you really long time to figure it out? Well, more than likely, somebody else has had that same issue at one point or another. And that, in and of itself, is worthy of a blog post, it's worthy of a tweet, it's worthy of a Facebook post, and putting it out there for the rest of the community to see. Because, more often than not, you're going to become that source of information that they're going to go to when they have a similar problem. They'll see that, "Oh. Well, John from Promet, he figured this out for me. Next time I have a similar problem, I'm going to cal him up. He might know what to do."     

So really, when you think about it, each team is completely unique. We might all be development firms, or freelancers, or digital agencies, or we might even work for a university, or work for a healthcare organization and think, "Okay, well, we have similar needs. We have similar interests. We might have some overlapping problems that we're trying to address." But when you think about it, the collective experience of your team is entirely unique. No two teams is going to work on the same projects, be working from the same set of requirements, or do the exact same thing every time.     

So when defining differentiators, I feel like this is one that can be often overlooked. We're trying to figure out, "What niche can we address that hasn't been addressed by another Drupal agency?" Or, "What product can we put out there that's trying to solve a problem that somebody else hasn't solved yet?" But really, if you just kind of look inward, and look at the team that you're surrounded by every day, you might come across some of these skill sets, or some of these areas of expertise that your team wants to pursue more of.     

How do you market that? You share the knowledge. Of course, a lot of us were brought here this weekend for the Drupal camp. Some of you might have also done speaking engagements at Drupal Con, or even some of the camps, but we even want to look outside of Drupal. Maybe talk to our customers about, if they are in a specific vertical, or in a specific industry, where they're getting their knowledge from. What publications are they looking to? What opportunities could you have to go to one of their events and present, or even build up your team and offer to help write a session submission?" I can tell you that, in the weeks leading up to Drupal Con, it was a lot of getting on HipChat and saying, "Hey. I saw that you did this cool thing. Do you want to speak about it?" Or, "Hey, I saw that you have this interest in this one specific area. How can I support you in that?" And, a lot of times that's all it takes to bring people out, and get them talking about projects that they've done, or areas that they want to learn more about.     And that's a great way to start submitting a session, is just pick a topic that you want to spend time doing research on. You don't have to know everything, but you've just got to kind of put yourself out there. So getting involved in the Drupal community, and even branching outside some of those Drupal specific events which we'll talk a little but more about in a couple slides, really gives your team a chance to establish that credibility and build up their confidence as well.     

Another way that you can do that is developing case studies. Of course, this might seem like a no-brainer, but one thing that a lot of people don't necessarily always consider is, even going back to previous projects and looking at case studies that you might have written years ago, and seeing, "Okay. What did we do previously, and how can we replicate that? If we build this really great solution for, say, a community college, for this one specific time of business, what are the chances that that specific type of business might also want the same type of solution?" And that gives you the opportunity to not only collaborate as a team, but then reach out on a more one-on-one basis to other people in that area that might be interested in that product, or that service that you have to offer.     And then, of course, hosting webinars as well. And this is also a great opportunity to get more of that collaboration. One thing that I've kind of found to be beneficial for our team is, when we do a project and we might be using some new tools, or we might be doing something for a vertical, or for a new type of client, that we've never done before, we kind of go through that project retrospective, and then we say, "Okay. Let's talk about this." Like, "Let's just collaborate." It might first be an internal webinar. Actually, at Promet, we call them "IT meetings", we have them on a weekly basis for our internal team. But that can kind of bleed into something that becomes either a session submission, or a blog post, or a webinar that we actually promote to the larger Drupal community, and even at camps and cons as well.     

And then, of course, there's also blog posts, press releases, and even podcasts. We've had a couple of our team members that have gone on some tech-specific podcasts. And then, past few months, I think there's a few more coming up to talk about the tactics that they've done, some of the solutions and business problems that they've solved for their clients. And again, that's just another way to get your team more confident, and talking about their experience, and kind of get past that imposter syndrome of feeling like they don't have anything of value to share.     

Marketing our Expertise: Promet's Training Practice

Training was one of those things that we'd tried to handle internally for a lot of years. We found to not only establish credibility for us in the community, but something that's really given us an opportunity to establish that human connection; is really getting involved with mentoring and training. At Drupal camps, at Drupal Con, and having a public training schedule as well. To give you a little bit of history, our training practice manager Margaret Plett, who was the author of the Drupal 8 Acquia curricula came on board with Promet a little over a year ago, and we started to build this training practice as a separate piece of our business.     

Now, what this opportunity to do training has led us to, is the fact that we get this great one-on-one face time with people who are current clients, or potential clients, to not only learn more about what their needs are, and what problems they're trying to address, but it also gave us at Promet the opportunity to establish our credibility and make those lasting connections with our students. Oftentimes, now that we've had this practice in place for a little over a year, we're starting to see all of that effort come full circle. We're seeing those students coming back to us when they have a question, or they have a problem they're needing to solve, or maybe they have a topic that they want some additional training on.     

This really comes back to those relationships that we've established with them. As much as I want to say it's because of my email newsletters, and my marketing campaigns, and all the tweets that I'm sending out, I know that it has much more to do with the connection that Margaret's establishing with our students, and the fact that we're making ourselves available to them, and we're becoming a resource for them long into the future. And that's something that even your team, from a mentoring standpoint, can get involved with with the local Drupal community.     

Filling the Other Guy's Basket

Another concept I wanted to introduce that was first introduced to me several years ago in a book called Uncontainable ... Which was actually written by an Austin native and container store founder, Kip Tindell. One of the concepts that really struck me the most in this book was one from Andrew Carnegie that goes, "Fill the other guy's basket to the brim. Making money then becomes an easy proposition." Now, for a container store, this became one of the core philosophies of their business from the very start. And the idea here is to fill the other guy's basket, allowing them to creatively craft mutually beneficial relationships with their vendors. And the way that container store has embraced this concept is really by investing in those relationships. Investing in their partnerships that they have in their professional community. That way, they're always making sure that they're nurturing those relationships in the long-term, and they're creating those really nice win-win situations.     

So for them, that can mean allowing their vendors to test out new products in their stores, which can often lead to container store being the first on the list to receive, say, a new shipment, or a certain product if it's out of stock. And then they're able to better serve their customers. And that cycle just continues to repeat itself. When you're creating those win-win situations for your customers, your business is going to succeed while their business is succeeding as well.     

Now, in our space, that doesn't necessarily always mean dollars. That might mean, for an association, a way for them to promote to their membership. So say you go out and your team builds this really great solution and a really great website for a new association, or for one that's trying to grow their membership. Now, one way for them to get the word out might be some of those co-marketing activities. And that's the really cool thing about all those tactics that we talked about. All of those very same tactics, from speaking at camps, to developing case studies, hosting those educational webinars, doing blogs, press releases, mentoring and training; those are all things that you can involved your team on, but you can also involve your clients and your industry partners as well.     

A lot of times, we're going back through retrospectives, and we're trying to identify, "Okay. What was the problem here that we were trying to address?" Or, "How did this solution come about in the first place?" And a lot of times, as a team, we can't answer those questions internally. We have to go back to our clients. And when we go back to our clients, that opens the door to the conversation of, "Well, how can we take this, and utilize this product we've put together for you, and how can we make it really move the needle for your business as well?" So if we're going to do a press release, then why not also do a press release on behalf of our clients as well? It's just kind of a natural extension of those marketing efforts that are only going to help establish that credibility, and that ability for you guys to continue the relationship with your clients.     

So how do you continue to kind of cut through the noise and make sure that customers stay loyal and continue to come back to you? So back in 2009, there was a Gallup study that actually showed that 70% of customer loyalty and spending decisions are based much more on emotional factors. So how can we continue to engage individuals and connect them emotionally. The thing that I've found over the years, as a marketer, and especially as I've started to work more in the Drupal space the last few years, is that a healthy mix of digital marketing and human connection is always key.     

I know as Drupalists, and being in technology, it's easy for us to say, "Okay. Well, I'm going to have my drip campaign set up." And, "I'm on the first page of Google," and, "I'm tweeting all the things," and, "I'm posting everything on Facebook," and, "All right, I'm done. I've done all the marketing I could possibly do." But sometimes it's just picking up the phone. It's asking somebody to meet you for coffee. Because what are they going to remember more? Are they going to remember the email you sent them asking if they were ready to start the next project? Or are they going to remember the time you took them out for coffee at Drupal Con and talked about your mutual love of Game of Thrones? I mean, which one would you remember most?     

You want to nurture those relationships and turn your customers into advocates. Because, a lot of times, you're going to want to go back to ask for referrals. And that would lead to new business. But, honestly, we have to earn the right to those referrals. We can't just expect, just because we launched a great product for somebody and sent them off into Drupal land, that they're going to continue to want to come back to us. We have to earn that right. We have to continue to nurture that relationship.

Jun 15 2017
Jun 15

A recent prospect responded to my inquiry about the project budget with this:
 
"We can't release budget information as we need all vendors to bid their best price. If they know the budget they just bid right up to it."
 
I've always known that is the fear, but in the hundreds of  website projects I've pursued over the years, I think that is the first time a potential client was ever that forthright about it. However, it's an unfounded fear. In a competitive situation with 6-50 firms proposing, we all aren't going to peg our proposals at the top of the budget. Without a budget, those 6-50 vendors aren't even proposing on the same solution. They are proposing on their perception of what they think you want for a solution. That is why you'll get bids ranging from $25K - $250K from the same RFP.
 
If you want to receive a good mix of proposals, all proposing in the same budget neighborhood, so that you get to the no-lose situation of a short list with 3 or 4 vendors that will all do a great job on your website, you have to provide the budget in the RFP. If you truly don't have a budget, give us a ceiling, or what you consider a reasonable neighborhood. It’s 2017,research is easy. Nobody believes you are putting out an RFP without having done some basic research into what “this” should cost. If you truly want a partner (which is what every RFP claims), treat us like partners, from day 1. Share the important information so that we can craft a solution that will actually work for you.
 
Any competent web shop can scale a proposal to fit a budget. We can take the same basic set of requirements and design a $40K site, or a $140K site. The primary differences between a $40K site and a $140K are:

- Depth of the discovery consulting

- Amount or complexity of the interactivity in the site

-Integration with 3rd party apps

-Amount of customization in the site

Sure, we prefer to build the $140K sites. That kind of budget allows more time for creativity in the design, and more time to customize Drupal to do exactly what the client wants. However, if $40K is all you have that is fine. We can deliver a compelling website for $40K. What we can't do is read minds. Without some guidance on budget we have to guess at whether you want the $40K site, or the $140K site. Help us help you by sharing the information we need to give you the best site possible for your budget. The reason real estate agents on HGTV ask about the budget is that a 3 bedroom / 2 bath house can have a 300% or more variance in cost based on location, upgrades, quality of materials, etc. Web sites aren’t that different.
 
Budget is the most important information you can provide in an RFP. Given the choice of  responding to 30 pages of feature requests with no budget, and 2 pages with some very basic goals and a budget, I’d prefer to write the second proposal every time, because I know up front how to meet the customer’s expectations.
 
The client at the beginning of this post? They wanted the $40K site. I guessed wrong on that one.

May 31 2017
May 31

Managing the digital strategy for an organization interested in delivering ambitious digital experiences to its stakeholders is more than a full time job. The rate of change in digital shows no sign of slowing down soon. It’s all most of us can do to just keep up, let alone think ahead. To help with that, we’ve compiled a shortlist of some of the big issues that will be driving strategic digital decisions over the next year.
 
Very Responsive Design
Most organizations are happy to get their website looking good on desktop and mobile browsers. That’s not going to be good enough soon. The array of devices that want to connect with your web site for content is growing quickly. Amazon Alexa and Google Home  are both growing fast. Smart TVs want to talk to your web site too. The xBox can be a content channel, as can native apps on a phone, or a digital sign in a business. Your web site will need to support all these channels, and probably a couple we aren’t thinking about yet.
 
Decoupling Drupal
No, this does not have anything to do with the Brad and Angelina breakup last year. Decoupling is severing the tight connecting between the front end of your web site with the back end CMS. Drupal 8 enables us to build ambitious digital experiences that don’t rely on the Drupal theme layer. These means you can update the CMS without touching the UX, and vice versa. This is also related to the issue above in that a CMS that supports decoupling is the ideal platform for powering digital signs, voice activated home assistants, the Internet of Things, or whatever comes next.
 
Micro Interactions
Your smartphone is basically a collection of micro-interactions. Users can complete tasks such as set an alarm and then silence it when it rings without engaging with the bulk of the phone UI. How much easier would it be for your website users if they could interact with web site applications in much the same way they interact with iPhone or Android applications?
 
Continuous Delivery
Agile development and 99.99% uptime expectations demand that updating the website be done with no downtime. Modern hosting providers such as Acquia, Pantheon, and Blackmesh provide tools to help enable multi-tier dev/staging/production environments and logical workflows to ease pushing code to production. If you are still editing content on production sites it is past time to update your web management workflow to something more sustainable, and less risky.
 
Personalization
Personalization is not new. Yahoo and Excite were doing it on their search portals back in the late 1990s. The insights available about your web users, just based on their actions on your site, open up countless opportunities to improve conversion rates and build better digital experiences by presenting every user with a personalized view of your website.
 
Omni-channel Integration
Omni-channel integration is personalization on steroids. Just last week Google was in the news as they announced their ability to connect ads you have seen online with your physical presence in a store. For example, you see an ad for lawn mowers, and the next day Google connects that ad to the fact you entered a Home Depot shortly after seeing the ad. Mobile and web integration is another example. We are just starting to scratch the surface of what may be possible with cross channel integration.
 
The Internet of Things
IoT has security issues to deal with before it really takes off big, however the idea that everything from your light bulbs to refrigerator are online and able to talk to a server, and eventually each other, is a huge trend that is still in its infancy.
 
Open Source as a Service
What if you could acquire a fully featured Drupal website in much the same way you use Salesforce.com? You would have the power and convenience of SAAS, without the vendor lock in because you could always take your open source service, zip it up, download it, and install it anywhere you want.
 
Management & Governance
Governance may not be as sexy as a refrigerator that can tell you how much milk you have, while you sit on the couch. However, it is probably much more relevant to most digital managers today. If you have 10 or 100 people in your organization that can post content to a website, how do you manage that process for both efficiency and brand standards compliance?
 
Regulatory Accessibility Compliance

Can sight impaired visitors use your web site? How about somebody that is haas 20-20 vision, but is color impaired? Are your videos useful to both sight and hearing impaired people? The Federal government has defined a set of standards for web site accessibility. Not meeting the standards makes your web site less useful to potential customers, and puts you at risk for a lawsuit.

What are you waiting for? Let us help keep your business ahead of the curve.

Promet has been thinking about this stuff for a while. We’ve built digital sign systems powered by a Drupal website. We’ve built augmented reality apps for the Chicago Transit System, and we are experts at continuous integration. Get in touch if you want to take your digital experiences to the next level.
 

May 31 2017
May 31

Managing the digital strategy for an organization interested in delivering ambitious digital experiences to its stakeholders is more than a full time job. The rate of change in digital shows no sign of slowing down soon. It’s all most of us can do to just keep up, let alone think ahead. To help with that, we’ve compiled a shortlist of some of the big issues that will be driving strategic digital decisions over the next year.
 
Very Responsive Design
Most organizations are happy to get their website looking good on desktop and mobile browsers. That’s not going to be good enough soon. The array of devices that want to connect with your web site for content is growing quickly. Amazon Alexa and Google Home  are both growing fast. Smart TVs want to talk to your web site too. The xBox can be a content channel, as can native apps on a phone, or a digital sign in a business. Your web site will need to support all these channels, and probably a couple we aren’t thinking about yet.
 
Decoupling Drupal
No, this does not have anything to do with the Brad and Angelina breakup last year. Decoupling is severing the tight connecting between the front end of your web site with the back end CMS. Drupal 8 enables us to build ambitious digital experiences that don’t rely on the Drupal theme layer. These means you can update the CMS without touching the UX, and vice versa. This is also related to the issue above in that a CMS that supports decoupling is the ideal platform for powering digital signs, voice activated home assistants, the Internet of Things, or whatever comes next.
 
Micro Interactions
Your smartphone is basically a collection of micro-interactions. Users can complete tasks such as set an alarm and then silence it when it rings without engaging with the bulk of the phone UI. How much easier would it be for your website users if they could interact with web site applications in much the same way they interact with iPhone or Android applications?
 
Continuous Delivery
Agile development and 99.99% uptime expectations demand that updating the website be done with no downtime. Modern hosting providers such as Acquia, Pantheon, and Blackmesh provide tools to help enable multi-tier dev/staging/production environments and logical workflows to ease pushing code to production. If you are still editing content on production sites it is past time to update your web management workflow to something more sustainable, and less risky.
 
Personalization
Personalization is not new. Yahoo and Excite were doing it on their search portals back in the late 1990s. The insights available about your web users, just based on their actions on your site, open up countless opportunities to improve conversion rates and build better digital experiences by presenting every user with a personalized view of your website.
 
Omni-channel Integration
Omni-channel integration is personalization on steroids. Just last week Google was in the news as they announced their ability to connect ads you have seen online with your physical presence in a store. For example, you see an ad for lawn mowers, and the next day Google connects that ad to the fact you entered a Home Depot shortly after seeing the ad. Mobile and web integration is another example. We are just starting to scratch the surface of what may be possible with cross channel integration.
 
The Internet of Things
IoT has security issues to deal with before it really takes off big, however the idea that everything from your light bulbs to refrigerator are online and able to talk to a server, and eventually each other, is a huge trend that is still in its infancy.
 
Open Source as a Service
What if you could acquire a fully featured Drupal website in much the same way you use Salesforce.com? You would have the power and convenience of SAAS, without the vendor lock in because you could always take your open source service, zip it up, download it, and install it anywhere you want.
 
Management & Governance
Governance may not be as sexy as a refrigerator that can tell you how much milk you have, while you sit on the couch. However, it is probably much more relevant to most digital managers today. If you have 10 or 100 people in your organization that can post content to a website, how do you manage that process for both efficiency and brand standards compliance?
 
Regulatory Accessibility Compliance

Can sight impaired visitors use your web site? How about somebody that is haas 20-20 vision, but is color impaired? Are your videos useful to both sight and hearing impaired people? The Federal government has defined a set of standards for web site accessibility. Not meeting the standards makes your web site less useful to potential customers, and puts you at risk for a lawsuit.

What are you waiting for? Let us help keep your business ahead of the curve.

Promet has been thinking about this stuff for a while. We’ve built digital sign systems powered by a Drupal website. We’ve built augmented reality apps for the Chicago Transit System, and we are experts at continuous integration. Get in touch if you want to take your digital experiences to the next level.
 

May 30 2017
May 30

“Agile Retrospectives: A meeting where a team looks back on a past period of work so that they can learn from their experience and apply this learning to future work.” - Rachel Davis, Team Driven Improvements with Retrospectives
 
When doing Retrospectives, it is very easy for the team to dwell more on what happened in the past than creating concrete action items to apply what was learned for future work.  It is very important to note that the main objective of Retrospective is for the whole team (yes, the whole team and not only the team leader like the project manager or scrum master) to drive improvements moving forward. This is the essence of being Agile.  To continuously learn, grow and be better.
 
Last April 20, we launched our new company website, prometsource.com, that was developed in Drupal 8 (D8).  We call this project PSD8.  The development efforts were not without challenges especially that D8 is fairly new and as what other software development shops may also be experiencing, resources are limited for internal projects.  Nevertheless, we were able to launch and the most exciting part, aside from the celebration, is the Retrospective.  
 
How to get most out of Retrospectives?  I would like to share some tips here based on what was done for the Retrospective of PSD8. The tips here are more for the facilitators.

Plan the Retrospective with JOY as a goal.

Ralph Smedley, the founder of Toastmasters, said: “We learn best in moments of enjoyment”.  The JOY in Retrospectives is having fun, building the team, learning and improving.  There are a lot of ways a Retrospective can be done that could be more creative and fun than the usual discussion of “What went well?”, “What went wrong?”, and “What needs to be improved?” For the Retrospective of PSD8, we used the “Three Little Pigs” activity by Steve Wells that is shared in http://www.funretrospectives.com/three-little-pigs/  Prior to the activity, materials such as manila paper, post-its and coloring materials were already prepared. 

Celebrate and appreciate success.
 
Being agile is learning from mistakes, therefore, no project is a complete failure.  There is always a reason to celebrate.
 
A celebration is not without food so for the Retrospective of PSD8, we prepared cake and wine as a means to celebrate the launching of our new website. 

Make people comfortable.   
    
Like any other activity, training or workshop, a sort of “warm-up” or “ice breaker” sets the stage and mood that makes the participants loosen up and be comfortable.  Setting the stage could be as simple as setting expectations, reviewing the prime directive of Retrospectives or discussing guidelines.    
 
For the Retrospective of PSD8, we did a little play reading the script of Three Little Pigs from http://www.primaryconcepts.com/articles/Plays_for_Everyday_3_Little_Pigs...  We assigned developers and QAs as pigs and wolf and as expected, when the “cast” already had some wine, the play became hilarious.

Encourage generation of ideas.
 
If people are all warmed-up and comfortable, the ideas will just flow.  When the meeting started with fun and positivity, even the not-so-good inputs will be stated in a nice and sometimes humorous way.  It is also important to give the the team some time to think and write their thoughts down.  After all the inputs were collected, each item should be discussed and clarified.
 
For the Retrospective of PSD8, we used the art materials and post-its for the generation of ideas.  Colleagues who are joining remotely also provided inputs.  Someone from the team will write their inputs down in post its.    After gathering of ideas, all inputs were discussed and clarified.  Then for each “house”, top 3 themes or highlights were identified by the team.

Create action plans for the improvement to be done moving forward.
 
When the team is hyped with the retrospective, there is a tendency that everyone is motivated to act and improve on a lot of things. Creating action plans for the improvements to be done moving forward is the most important output of the session.  For the plan to be executed, it should be specific, realistic and agreed upon by the team.

 
Since PSD8 is an internal project and the team is also busy with other client projects, at the closing of our retrospective, I just asked a simple question:  What is the easiest we can so as a team that will bring big improvements in our future projects? We came up with two action plans as a result of our retrospective:

  • Be vigilant about clear requirements
  • Practice System Architect mindset

Document and share.
 
A documentation of the Retrospective is like a contract among team members on what should be done to drive improvements.  It can also be a reminder of the fun times, output that the team can be proud of and what should be done to make work better.  If shared, the document can also be a reference for learning of the team or company.
 
After the PSD8 Retrospective, the team is now looking out for each other about clear requirements every time there’s a report that a new project will be done.  Questions such as “What are the requirements?”, “Where are the requirements?”, “Who will write the requirements?”, etc are part of our daily stand-ups.
 
With the outline of these tips on getting the most out of Retrospectives, what then is the measure of a successful Retrospective?  For me, the measure of a successful Retrospective is a noticeable improvement in the team’s dynamics, processes, and output.

May 18 2017
May 18

Thursday, May 18 2017 marks the sixth annual Global Accessibility Awareness Day (GAAD). The purpose of GAAD is to get everyone talking, thinking and learning about digital (web, software, mobile, etc.) access/inclusion and people with different disabilities. Promet Source is proud to support GAAD as we help our clients achieve equal access for all across their digital properties.

The goal of GAAD is to get individuals in the design, development, usability, and related communities who build, shape, fund and influence technology and its use to better understand how to achieve equal web access for all. Web accessibility has been a hot topic around the tech industry for years, yet it is still widely misunderstood. While people may be interested in the topic of making technology accessible and usable by persons with disabilities, the reality is that they often do not know how or where to start. Awareness comes first. 

How to Get Involved with Web Accessibility 

In support of GAAD, accessibility education and awareness events will be taking place both online and around the globe this coming week. Check out the schedule on globalaccessibilityawarenessday.org to attend an event near you.

If you would like to learn more about incorporating web accessibility into your existing development workflow, check out the recent blog series written by Promet Source's lead accessibility team developer, Katherine Shaw:

Blog: How To Incorporate Accessibility Compliance into Your Development Workflow

May 12 2017
May 12

We're packing our bags and heading south - way south for what is sure to be a weekend jam packed with BBQ, two steppin', and of course all things Drupal. 

This year, Promet Source is supporting the camp as a Platinum Sponsor. We're proud to announce that our very own Promet Training Practice Manager, Margaret Plett, will also be volunteering her time to provide a full day Drupal crash course tailored for non-developers on Friday, June 2nd. If you haven't already, click here to sign up and snag one of the few remaining spots!

What is Texas Camp? 

Texas Camp is a homegrown event with the purpose of bringing the large Texas Drupal community together to get to know each other, share projects and ideas, and help newcomers find their way in the wide open frontier of the Drupal world. This year’s Texas Camp will be June 2nd through June 4th at the University of Texas JJ Pickle Research Campus in Austin, TX.

Organized by volunteers from the regional Drupal community, Texas Camp features curated sessions and panel conversations by Drupal experts. The camp offers all attendees the opportunity to increase their Drupal knowledge through networking, code sprints, training, and more.

Whether you’re an existing Drupal user, developer, designer, site builder, or are maybe just a little Drupal-curious, you won’t want to miss out on this unique event.

Let's meet up! 

The Promet Source team will be flying our flag at Texas Camp this year and would love to meet up with you! Get in touch to set up a time to chat or simply drop by our booth on Saturday or Sunday. We look forward to seeing you there and supporting the Drupal community together!

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