In the previous chapters we learned how much time and effort companies invested into creating their site. After all of that investment, they wanted to get some kind of feedback from the site visitors in order to know how to create better content and to potentially open new business opportunities.
User to Site
Email Contact Forms
The first feedback mechanism that was used was based on emails, which were begging to get popular in that time. At first, a simple Mail To link was provided, which opened the default email application the visitor had on its system. More “fancy” sites used a form which helped the user fill in the required information before trying to send it via the email application.
This method, however, failed if the user didn’t have an email application or it wasn’t configured correctly (it also doesn’t work today with web-based email). When support for server-side scripting was beginning to improve, sites began to send the email from the server by connecting to Exchange or Postfix SMTP service.
Custom Leads & CRM Integration
The basic email contact form was a good start but very soon site owners found themselves drowning in emails. There was no way to organize them or keep track of the contact request status. This is when companies began sending their leads (marketing term for “contact request”) into a CRM – a special system designed to manage customer relations. Integrating the leads into the company CRM required Internal System Integration development that was discussed in the previous chapter.
Besides integrating the leads into the CRM, there was a marketing need for better lead forms. It was no longer the case that a simple “name, email and message” fields were enough – they wanted to know more information about the user like it’s gender, location, and which department the request was meant for. This required developing more complicated forms and even more integration with the internal systems. But as marketing becomes more focused, global contact forms were not enough – every page had to have its own lead form with different fields. Very soon development and maintenance cost began to rise, so a new solution was required – one that would allow the content editors to define their own “Custom” lead forms and put them where they wanted, without needing development.
Custom forms were initially developed by the site programmers and were one of the more complicated and time-consuming features they had to create. Because of their complexity, they are now usually implemented with plugins like Nintex Forms or Umbraco Custom Forms, or with external SaaS solutions like Formstack or Launchcloud.
Request forms had one problem – they were “send and forget” kind of communication, but sometimes that was not enough and some visitors needed real-time communication (for example when they were facing a problem).
Chat rooms where starting to become popular but they usually required custom software or were hosted on a separate site. So in order to provide better customer service, many companies added custom live chat support to their site by integrating them to their CRM systems. This fulfilled the need for having an immediate response to a user question.
Now days instead of creating their own live chat systems, companies usually use 3rd party chat services like LiveChat.
Users to Users
Guestbooks & Shoutbox
Sometimes visitors wanted to communicate not with the site creators, but with other visitors.
In order to address that need, sites added Guestbooks to their site, which was the first time users could leave comments that other users saw. But Guestbook was not tied into a specific piece of content, which led to the more modern Comments section.
Some sites implemented Shoutbox, where site visitors could leave public general chat message to other visitors. Shoutbox allowed users to write a general message that other users could see, but it was too chaotic in order to be used effectively. It was later evolved into two different features: Forums and Live Chat.
Comments & Ratings
Comments are a good way for content makers to know what their site visitors think, and also provide users engagement tool.
Adding comments section to a website is not easy if it doesn’t come integrated with the CMS. This is why many sites are using 3rd party plugins like Facebook Comments or Disqus.
Comments popularity has demise in the last couple of years because of toxicity and now days require constant moderation or an automated anti-spam system like akismet.
Ratings allow users to build trust through other users experience. It can come in different forms – Stars, Likes or Up/Down Voting. In any case adding rating support usually required advanced plugins or custom development.
Like comments, rating system tends to be easily abused if not actively moderated.
Forums & Wiki
Forums fulfill the need for having a complex conversation about different topics, and allow all sites visitors to participate. Many sites add forums support in order to have a public discussion place and allow the community to evolve.
Since forums are basically a mini-social site which is complex to implement, usually 3rd party solutions are required. It began with separate forum sites like phpBB or others but now many CMS comes with forum add-on such as WordPress and Drupal.
Wiki is a more advanced version of forums were users collaboratively modify content and structure directly from the web browser. Wiki requirement is more popular in internal sites where all site users are known, and where there isn’t a need for a single content curator body.
Implementing wiki require special software and are added as plugins, 2nd or 3rd party sites.
Social Sites Integration
Social sites have drastically changed the web and we can’t imagine how the internet will look like without them today. Like the rest of the web, they evolved during the last 20 years and integrating with them also became more complicated as a result.
The first social sites started as Social bookmarking sites which tried to help people discover high-quality sites. They allowed users to add, annotate, share bookmarks and tag them (Folksonomy). The most popular site of that time was Delicious.
A more modern example is Twitter which uses Hashtag as more flexible tagging mechanism.
Social bookmarking later evolved to image sharing sites like Pinterest, Flickr and now there are sharing sites for almost everything.
In order to provide better support for social sites sharing, developers added custom code to their site – usually called plugins or widgets. There are many different types of sharing plugins, some of them are general like AddThis and ShareThis, and some are site specific. For example, Facebook offers the following sharing plugins:
- Save Button
- Like, Share, Send & Quote
- Follow Button
One of the largest barriers to user interactivity is the need to register with unique username and password for each site.
Offering users to log in with their Facebook/Google/Microsoft account helps to lower that entry bar and can greatly improve user engagement.
In the pass sharing identity between different systems was accomplished by the SAML protocol which was more enterprise oriented and hard to implement. As the result of the protocol high complexity and lack of mobile support, newer Claims based authentication protocols were created like OpenID Connect. Since it’s a complex multi-flows protocol, in some cases special software is needed which is called Identity provider.
Adding social login to the site can take lots of effort but the payoff is usually worth it.
User Data Integration
After allowing users to log in with their social identity, the next step is to allow users to share data between their social site and other sites. This can work in both directions, for example:
- Directly posting from WordPress to Facebook
- WordPress plugin which allows importing images from google drive, and another plugin that saves site weekly backups to google drive
- Lucidchart allows opening and saving charts directly to google drive
All of these above scenarios require adopting the newer OAuth protocol which enables web collaboration and is the foundation of web 3.0. However, because of its complexity, it is usually done in external OAuth providers or with special software like Identity Server.
In the next chapter, we will learn how one of the greatest game changers has effected site design – the mobile phones revolution.
Next part: Part 6 – Web & Mobile Applications