Email Services: Not All Solutions Are Created Equal

What is the best email service for your business? I’m going to spoil the headline right now – it’s going to be Google’s G suite. With that hard-hitting question out of the way, let’s break down the differences between different providers, and what they mean for your business.

Option #1: ISP accounts

Whether it’s Comcast, Spectrum, or whoever is your local internet service provider, chances are when signing up you will be presented with the option of creating an email account (if they don’t automatically create one for you). In fact, many people are still hanging on to their AOL account from the dial-up days. So what are the positives and the negatives to using an ISP account?

The Good

The only positive to an ISP account compared to other email services is this: great customer service. This is a relative statement, as one might put calling Comcast for technical support in the same category as going to the DMV. However; most web email customer service is either automated, slow, or both (if it isn’t nonexistent). Having the ability to call and speak with a real human being about problems may be a big benefit for personal email, though problems with personal email are exceptionally rare.

The Bad

If you switch service providers, keeping your email account will be a hassle at best and a nightmare at worst. If a company folds or is bought out by another company, it’s not fun to go down with the ship and have your email address permanently changed to the new service provider’s address.

Option #2: Hosting service email accounts

When you host your website through a hosting service, most of the time that host has a mail server. This is great when using it for the purposes of delivering forms and mailing lists, but what about for more traditional incoming and outgoing mail? Let’s take a look.

The Good

The biggest advantage of using a hosting service’s email account is having access to your domain automatically for your e-mail address. Instead of “@gmail.com”, you can end your email address in “@insertyourdomainhere.com”. This gives your email address a professional look.

The Bad

Just like ISP emails, your emails will be stored on your hosting services server, so while you will be able to retain your email address if you own your domain, backing up and migrating emails will be necessary if you switch hosting services. On top of this, the web interfaces for these services are usually mediocre compared to the giants of webmail. It’s best to use a standalone email client if you go this route.

Option #3: Webmail

From Gmail to Yahoo mail, there are a plethora of options when it comes to using web email services for your business. While different services have different pros and cons overall, let’s look at what the most popular services have in common.

The Good

Great storage, familiar interfaces, very low risk in your email service being shut down; webmail has a lot going for it. I think if you’re starting out and want to test the waters without spending any money on a professional email, webmail is the way to go. Gmail email addresses don’t look too bad professionally because of their commonness, especially for very small businesses that will only be using one account. Because there are so many options, there’s definitely something for everyone in this category.

The Bad

As many good things as webmail has going for it, bringing your own domain name to the same place where your e-mail address is stored is impossible with some services and costly with others. This can make your domain look less professional overall when compared to options that utilize your domain name.

Option #4: Google G Suite

I hope the spoiler in the beginning didn’t put you off from reading this far. Let’s read into why this is #1 on our list of email services for businesses.

The Good

The flexibility of Gmail/webmail, with the ability to bring your own domain name to the service. Rock-solid 24/7 customer support. The best security in the game. Cloud storage included. If you’re serious about having a professional, flexible, easy to use email, look no further.

The Bad

It costs money. At $6 per user per month, this may be overkill for those that are just starting out, and won’t be using the service often enough to warrant the price.

Just remember…

At the end of the day, picking what service to use is largely going to be determined by your understanding of your business, and where you’re looking to take it. If you’re mostly using your email as a means of occasional communication, webmail might be the best option for you. If you’re communicating with clients often using email, the professionalism of a hosting service email or G Suite will give you and your clients an extra level of confidence in communicating. Whatever email service you choose, the important thing is to get out there and get started.

Using Javascript to Enhance or Override Form Validation

Have you ever needed to alter the way a form validates user input, but couldn’t do so using PHP or HTML5’s (admittedly primitive) “required” attributes? Javascript may be your answer.

Normally, you would want to utilize PHP or any server-side scripting language to check the state of a form before allowing users to submit their input for further processing. However, in situations where you may not have direct access to a website’s filesystem, it is possible to leverage JavaScript as a secondary means of form validation.

We must stress that, because JavaScript is processed on the end user’s machine, you should never rely on it to validate sensitive information – JavaScript can always be disabled or otherwise tampered with, so the strategies outlined in this article are only truly useful where extra form validation would be convenient, or nice to have, but not mission-critical.

So, how do we do it?

The key here is a JavaScript function called event.preventDefault(), which will effectively cancel an HTML action before it can begin.

In our case, we wanted to step through a registration form and verify that our user had selected at least one checkbox element from a number of independent categories. If our JavaScript-based validation failed, we would simply cancel the user’s submission request.

Here’s what we came up with:

jQuery(document).ready(function()
{
    document.getElementById("form-submit").addEventListener("click", function(event)
    {
        var found_checked = false;
        // Loop through checkboxes and see if any have been selected
        jQuery(".class-dates input").each(function()
        {
            if (jQuery(this).prop("checked"))
            {
                found_checked = true;
                return (false);
            }
        });
        // Stop form submission if necessary
        if (!found_checked)
        {
            event.preventDefault();
            alert("You must select at least one class.");
        }
    });
});

Let’s take a closer look at a few lines of code and explain how they work:

  • Line 3 – This will run our code when the user clicks on a webpage button with the id “form-submit”
  • Line 5 – We declare a variable (“found_checked”) that is used later in the snippet to see whether any checkbox was selected
  • Line 7 – We loop through all of the input fields (checkboxes) that are within a container called “.class-dates”
  • Lines 9-13 – If a checkbox is selected, we set our variable to true and break out of the loop
  • Lines 16-20 – If our variable is still set to false, that means no checkbox was selected, so we should abort the submission request with event.preventDefault()

Pretty simple overall, and our client was very happy with the results!

Of course, you are welcome to adapt the code to your needs. JavaScript is a powerful language – suitable for even the most complicated form validation setups – and as long as you are mindful of security implications, the sky’s the limit.

Browser Compatibility

The event.preventDefault() method is compatible with all modern browsers, however Internet Explorer 8 and below are not supported.

It is possible to use a variable called event.returnValue if you need to ensure proper functioning in older browsers, though it should be noted that our example code relies on the jQuery library, which is also incompatible with IE8. Luckily, this version of Internet Explorer only accounts for 0.4% of the worldwide browser market share, so compatibility is not essential for most projects.

Questions? We’re here to help.

If you have any questions or would like to enlist our help in writing custom scripts for your website, feel free to contact us here. Together, we’ll bring your ideas to life.