Tuesday, February 17, 2015

Creating an Online Presence - Choosing a Path

Note: This post is part of a series on creating an online presence.

So far in this series, we have discussed some key considerations in deciding how you will go about creating your online presence.  By now, you should have a good idea of the following.
Now it is time to look at the paths and pick one based on these considerations.

More of a Spectrum Than a Set of Categories

The choices for creating an online presence are not well-suited to being pigeon-holed.  As soon as we do, we are generally being misleading.  The simple fact is that just about every path we have discussed so far *can* do most things, the differences are in where their strengths lie and, more importantly, for what they are best suited.

So, if  it's a spectrum, what is at each end?  Let's sort our choices as follows:
  • Self-hosted (set up your own site) vs. site service (using a site provider)
  • Static content (pages that don't change a lot) vs. dynamic content (e.g., blogs)
Note: For more discussion on these categorizations (or to refresh your memory), refer back to  the posts on Content Considerations or Should You Self-Host?.

With those categories defined, we can plot some options.

This figure reflects my preferences and opinions.  One can easily argue to move or replicate some of the choices above.  In general, I have placed what I think are strong contenders in their appropriate quadrants.  For example, Weebly has been placed in Site Service & Static Content.  It can certainly be used to host a blog if you wish (and the same can be said of other choices in that quadrant), but it's best used for static sites.

You might also have noticed some repeats.  Those will be explained. Let's approach this in terms of the types of solutions being discussed.

I will try to list these roughly in order of ease of implementation with at least one example for each category.

Blog-Focused Solutions/Services

These are solutions that were created for blogging.  Fortunately, as they evolved, they also enabled creating decent sites as well, depending on your needs.  If a key feature of your site is regular blog/news-like content, this may be a good choice for you.
  • Blogger is a well-established and successful blogging service.  It has been thoroughly proven.  It is available only as a service; you cannot install Blogger as a stand-alone application on your own self-hosted site.  This is the best choice if your priority is getting your dynamic content online as quickly as possible - you can literally log into your Google account and fire up a blog with a handful of clicks in a few minutes.
  • WordPress is a well-established and successful blogging application and service.  It has been thoroughly proven as a great blogging solution.  It can be implemented through WordPress.com as a complete service or installed onto your own self-hosted site (hence it is listed twice).  This is the best choice if your focus is dynamic, blog-like content and you want to self-host. If you want to use a site service, then it is more a matter of taste whether you use Blogger or WordPress.
Example: A neighborhood community site with the following requirements:
  • Minimum requirements to maintain the site
  • Ability to host a handful of simple, informational static pages
  • Ability to post new stories and articles
  • Ability for a handful of officers to contribute to articles directly with minimal technical barriers
For this case, a Blogger site was ideal.

Site Builder Services

All of these are viable choices for static or dynamic content as they all have the capacity for inserting blog-like posting into the site, which is why they appear in two quadrants in the figure.  However, if you primarily want a blog, I would still recommend Blogger or WordPress.
  • Google Sites allows one to create sites very quickly.  There are a lot of templates for sites that include pre-built pages and content layouts to inspire/prompt you.  It is a great choice if you just want to get your site online as quickly as possible - you can literally log into your Google account and fire up a blog with a handful of clicks in a few minutes.  And you can do this for free.
  • Weebly, SquareSpace, and Wix all offer various flavors of services.  They are more focused on converting you to a premium customer, so their site limits for free accounts tend to be more onerous, but that does not mean you can't get by with them.
If you are looking for a free solution, I think Google Sites leads the pack because they do not require ads and they allow you to use a custom domain name.  Here is my ranking:
  1. Google Sites - 100 MB storage limit; no ads required; can use custom domain name
  2. Weebly - limited to 5 pages; must include footer ads; 100 MB storage limit; cannot use custom domain name from another registrar
  3. Wix - limit of 500 MB bandwidth, must include Wix ads, 500 MB storage limit, cannot use custom domain name from another registrar
Note: There is no free plan for SquareSpace.

Example: The leaders of a small group wanted:
  • A site that they maintained and controlled without demanding a great deal of technical skill
  • Everyone contributor would have the same level of access and ability to change content
  • Easy to add/remove contributors
  • A site that could be maintained without a steep learning curve
  • No site fees
  • They were unsure of how many pages they would need, but did not want to worry about page limits
In their case, a Google Site was the best choice.

Content Management Systems

Drupal and Joomla are both open-source Content Management Systems (CMS).  These solutions are not for the faint of heart or those lacking technical resources they can bring to bear.  In general, this is almost as difficult as coding a site from scratch and, in some cases, can even be more difficult. What one gains from this is a powerful capability to meet very specialized or complex needs, e.g., sophisticated role-based access control that requires fine-tuned control over who can edit various pieces/categories of content.

A CMS is basically an application that provides a framework for you to create and manage content for your site in a modular and re-usable fashion.  The learning curve is a bit steep and I would not recommend this if you are not prepared to invest the time to learn it or invest in resources to build it.

This path is best if you have very specialized/complex needs that may not be readily feasible with the other choices discussed here.  Basically, these CMS choices give you an incredible amount of power and flexibility in what your website can do, but you may end up spending as much, or more, time/money as you would if coding the site from scratch.

That said, you can use pre-built modules and templates to simplify things.  This might be the case if you are only using a CMS because of a few specialty features you need.

Why not just code your own then; why use a CMS? One of the key benefits of using these CMSs, over coding your own site, is that they have strong communities and have been used to build some very powerful and complex sites, so you may be able to benefit from existing capabilities that you can drop into your site (more or less).  Also, while there is a learning curve to using these solutions, it's not as great as having to learn to code sites from scratch.  And there are varying levels of complexity within the CMS.  People can learn to contribute basic content with about the same learning investment as using a word processor application.

As for my personal experience, I slightly prefer Drupal over Joomla, but not so much so that I would steer you anyone away from Joomla.  I feel it is primarily a matter of taste or specialty requirements (e.g., if you know that one of the CMSs has a module for a specific requirement that is important to you).

Example: I helped create and maintain a site for a hobby group with the following constraints.
  • We required multiple layers of rich, role-based access controls such that we could assign access by page and content type
  • We required the ability for multiple non-technical people to be able to create news posts as contributors
  • We required calendars and event scheduling
In this case, the role-based access was the only real sticking point.  We needed more fine-tuned control than the more accessible solutions provided.  So, a CMS was the best choice.  To make it easier, we used a lot of pre-built modules and and paid to use an existing template for the look and feel.

Write (Code) Your Own

This is the option that provides you with the greatest possibility, so it is great for highly customized functionality.  You (or someone that you hire) can create whatever you might need.  The consequence is the time and effort it will take.

Another consideration is testing/reliability.  As you progress up the chain to the more accessible simple solutions already mentioned, your choices are more limited but you also tend to have options that have been tested by thousands, if not millions of people.  And the capabilities that have the most value tend to rise to the top.  But that also means that you are limited to the most generically useful things.

Example: For a site I created as part of a volunteer project, I needed a page that:
  • Presented one of four different primary views based upon a site status value
  • Within those views were sub-views customized by a dozen role types
  • Within those sub-views were various levels of role-based limits on viewing vs. updating the data seen
  • Within those sub-views, certain pieces of information were presented in different ways based upon additional site status values
  • And all of the status values and roles needed to be manageable through a very user-friendly web page by non-technical users
Even with a CMS, I would have had to write a lot of custom code from scratch to make it work.  So, for me, in that case, coding the site from scratch made the most sense.

The Song Remains the Same

As with many decisions, you will primarily be weighing ease of implementation/operation vs. capacity for customization.  Pick what makes sense for you. If you are not sure, consider erring on the side of easy/free and try things out.  You might find that the solution you picked is adequate for your needs and if you don't, you will have a better understanding of what you are trying to accomplish and what is possible.

No comments:

Post a Comment