There are so many Open Source systems for websites out there, that I thought I would take a moment to explain a bit about when to pick each one, they all have their strengths and weaknesses, pros and cons.  There isn’t one “solves it all” type system, so if someone is telling you that, its because they would rather work with what they know, than what you need…

We’ll talk about a few of the big boys here (WordPress, Joomla and Drupal being the most obvious), and a few of the up-and-coming (ModX and Concrete5) here.  Basically, when selecting an open source system to run your website there are several things to take into consideration:

  1. What does your site need to do for visitors?  What features do you need, like a store, or login system?
  2. Who will manage the site?  How much will ease of use impact them?
  3. What growth can you anticipate?  What features might you want down the road?
  4. How important is custom design and layout?

If you want a site that primarily communicates to visitors, provides information, you are not too concerned with additional features, like a web store, mailing lists, forums or providing custom information to a selected group, then that’s one set of requirements, if you need a site that provides login, user accounts and gives people information customized just for them (like a site that looks up account information for them), that’s a whole other set of needs.  Throw design and layout control into it, and it can be hard to pick the right system.

Picking the wrong system can hamstring your web site functionality, cost you $1000′s and delay you significant calendar time.  As with most of our posts, if you would like some help, just contact us.  We do requirements gathering and analysis, and can help make sure you pick the right system.

Here’s our take on a few different systems – don’t get caught listening to a technophile who loves one particular system and thinks it can be used to solve every problem.  That’s not reality.

WordPress: Fantastic blogging system that’s got a bit of content management to it and literally thousands upon thousands of plugins, themes and extensions that allow it to do more.  At its core, WordPress is designed to do one thing and to do it very well, manage a blog.  Its concepts and design from the ground up is focused on managing posts and communicating about posts.  It does that exceptionally well, and if that’s the core of what you want, posting information in a blog structure, WordPress is your platform, hands down.  If you want something else, like control over page organization, user control to limit access to areas by group, changes in how information is presented, or a site that’s not generally “blog-feeling” then using WordPress to do it can get complicated and feel like a hack.  For ease-of-use in setup, WordPress is a good pick.  They’ve made plugin management and site management simple enough for a novice, but with that ease of use, comes limitations; its very hard to make WordPress do stuff differently.  If you expect to run a site that communicates information, where posts can serve as news updates, you don’t mind that information model, and ease-of-use is a factor, go with WordPress.

Drupal: This is a *great* content management system and its track record is undeniable.  Large scale sites like whitehouse.gov (yep, them), economist.com (yes that one) and fastcompany.com (no?  Ok, so you’re not a business geek) run Drupal.  It performs well, has an excellent cache system that sustains performance on large scale sites, has against 1000′s of extensions and has user-access control that can be find-tuned to allow person A to edit this set of pages, and person B to edit those without touching each other’s work.  But the interface is confusing, the information model is challenging, and you need to understand code and website basics to install themes and extensions.  In short, its a professional’s CMS.  You can have someone set it up for you, but unless you know what model-view-controller (MVC) is and know how to link a CSS file to a PHP template file, you’re likely going to have trouble upgrading, extending or re-skinning it.  Its a favorite or us freelancers who set sites up for clients, because content entry can be easy enough, and its very flexible, powerful and robust.  If you expect to run a large-scale community site, need customizations, user access control, a powerful system that can handle large-scale sites, and you anticipate having good tech skills, go with Drupal.

Joomla: For a long time, Joomla was our “favorite” content management system at Techivity/VorpalJack and with good reason.  Joomla bridges ease-of-use between Drupal and WordPress, provides good site control over things like menus and objects on a page.  The template system is easier to customize than WordPress, the administration interface is more intelligible than Drupal, and there are again 1000′s of extensions and templates out there.  Again, it does have weaknesses.  It has a limited user-access model, so its very hard to control access to content items or other resources on a user or group basis.  The plugin and extension management system, while easier than the one in Drupal, is much harder than the one in WordPress.  Performance-wise it does well enough, but its not tested on the large-scale sites the way Drupal is – but ease-of-use…well, I’ve had clients whose computer skills were very limited managing their sites in Joomla.  If you need a content management system that provides more customized ways to organize and present information that WordPress, is easy enough for the uninitiated, and you are not concerned about controlling information by user, Joomla is a great choice.

Here are a few of the up-and-coming cms and website systems.  As a whole, the issue with this group is that there’s not enough community support yet to have the quality and breadth of extensions:

ModX: A great content-management system with really health engineering design, careful management, and next-gen tools, ModX is a bit confusing (like Drupal) on the admin side unless you code websites, then its a dream come true.  Uses Smarty for its template system, so if you don’t know what that is, you won’t be skinning it.  ModX is a good choice if you’re hacking together a website for a client that is a basic site, but has to be custom organized, and its a great choice as a foundation for acustom system.

Concrete5: Much like ModX but a bit easier to use, Concrete5 is a wonderful cross between open source and commercial.  The core system is free, but you can buy extensions right in the admin interface.  Its easier to use than ModX and Drupal, maybe even easier than Joomla, but its speed and performance comes into question on sites with higher traffic, so be wary of choosing it for a major site.  Again, a great system to hash something together for a client.

Ok, there’s a perspective.  Come talk to us if you want advice.


This post is about getting set up with two incredibly useful tools; Google Calendar, Google Docs and gmail.

Google Calendar allows you to have a calendar that syncs with most mobile phones, can subscribe and share event information with other calendars, sends reminders and notices and is completely free.

Google Docs allows you to create and manage documents online, including spreadsheets and forms, you can share them with others and it keeps a complete revision history.  Again all free.

GMail is old-hat these days, but when combined with these other two, it allows you to connect contacts to appointments, sync contacts to your android phone and desktop automagically, and Google has been adding new features.

The first step is to create a google account to use calendar, docs, etc…this also has the benefit of giving you access to google analytics (as discussed in our getting started with Google Analytics article).

Here’s what you can do with a Google Account:

  • Access free Google products (i.e.  iGoogle, Picasa Web Albums, Blogger, orkut, Google Groups, and so much more)
  • Add a Gmail address to your Google Account (does not affect your existing account but adds features)
  • Use Google AdWords and Google Checkout

This doesn’t have to be a gmail account, but those are free, easy to forward to another box, and make a few things easier, so the instructions on those are below as well.  The link to create a new google account is:

https://www.google.com/accounts/NewAccount?continue=http://www.google.com/&hl=en

That form is pretty straight-forward.  You do not need a gmail account to create a google account, you can use your current email.  Fill in the form, you’ll get an activation email sent to the email address used.

Once you get the activation email, and click the link in it, you’ll be able to add your mobile number if you like – that’s useful especially if you have a Droid phone!  Either click “Manage my account settings.” on that validation page, or just go to https://www.google.com/accounts/Login to sign in to your account with your email address and password.

You will see the Google account services window:

Google Account Interface

We are going to set-up Google Calendar and GMail first – remember that although you already have an email account, having GMail will allow you to use GMail contacts, which will sync with your android phone automatically (as will calendar).

Google Calendar

Click on the link on the bottom that says “More” – that will take you to the huge list of free Google Apps you just got for yourself.  On the right-hand side there is an area entitled “Communicate, Show & Share”

Google Apps List

We will talk more about all of these tools, because they are incredibly useful, but for now, on the right hand side, click “Calendar” which will lead you to the first of the Calendar set-up pages:

Google Calendar CreationFill in your name fields, location, and DO select the right time zone, that’s important for getting appointments right and sharing across calendars.  The next screen you see will be your calendar.  We will do a separate post on using Google Calendar to highlight some of the features and settings, for now, you are set-up.  Try clicking on a date and time – that will let you create your first event.

Configuring GMail for Contact Use

Ok, now lets get GMail set up for contact use, so you can add contacts and link them to appointments.  To keep this simple, click on the word “Mail” on the upper left:

Click on "Mail" to get to GMail

Which will take you to the GMail setup screen.  Again, its a form, pretty straightforward – but here, I highly suggest you click the “Check Availability” button to save yourself some time.  You’re going to have to pick something that is unique.  For example, “techivity@gmail.com” is already taken.

Click "Check Availability" when signing up with GMail.

The password field should be filled in with the Google Account password you just set-up.  The next step is an account verification step where you can get a phone call or a text message to verify.  Email allows too much fraud on free accounts, so tolerate this with some pride knowing Google’s at least trying to provide good anti-fraud practices.

Oh, and you will have to enter the verification code they give you, so if you pick phone call, grab a pad and pen.

Once you enter the verification code, you will see an entry-way page to your new GMail account.  You can spend some time with those videos and instructions, or just click “Show me my account” and get going.

Now, as promised, here is a quick note on how to forward GMail to your original address, so you can just use contacts and don’t have to check GMail separately.

  1. On the upper right side, click on “Settings” to open the settings window
  2. Towards the center, in the first yellow/orange area, click on “Forwarding and POP/IMAP”
  3. Click the button that says “Add a forwarding address”
  4. Enter your original address into the pop-up field and click “Next”
  5. You will get a confirmation email, go click on that link
  6. Go back to the settings page and reload it
  7. Now you will see your forwarding email
  8. Check the box that says “Forward a copy of incoming mail to” and tell gmail whether you want it to keep a copy or not
  9. Click “Save Changes” down at the bottom

Ok, now anything that goes to your new GMail account will forward to the original email, you don’t have to check both accounts.  To be sure you got it right, send the GMail box an email from your other account and see if it comes back to you, if it does, you got it, if it doesn’t, go back in and try again, or give us a call and we’ll help.

We will get more into using and configuring Google Apps in future posts, because its a lot of great and free functionality for small businesses and non-profits!

So I promised a post that would summarize the past few months of marketing strategy, Facebook pages and analytics. This is that post; it will give an overview and link to the other posts.  As usual, if you want help with any of this stuff, just contact us – we work in small, reasonable chunks of consulting and development.

Web Marketing Strategy

The point of the few posts on this are to devise a relatively high-level strategy to get folks started on good marketing. The point of good marketing is communicating clearly and effectively. That’s it. Good marketing isn’t to trick people into anything, its to help them understand what you offer. So, here’s what you should make clear:

  1. What problem you solve
  2. How you solve it
  3. What is special about the way your solve it

You also want to make sure that you understand your audience and what appeals to them.  In many cases this means designing your website to speak specifically to types of people or market segments.  For more information, stay tuned, and check out the posts tagged as Web Marketing.

Analytics & Tracking

The really key thing for analytics and tracking is to make sure that you are running a package that tells you:

  1. Who referred people to your site.
  2. How many of them came.
  3. What they did on your site.

From those 3 things you can tell what interests people have, what sites and phrases are bringing them to your site, and what they are trying to find when they are there.  Google analytics does this perfectly – for more information check out the posts tagged Web Analytics.

Facebook Pages and Social Media

You can (and should) set up a Facebook Page for your business to keep it separate from your personal profile.  You should be conscientious about what you put in the public arena (you are what you publish) – you wouldn’t expect to run around naked in public without consequences, and you shouldn’t run around the web that way either.  For more information about setting up a Facebook page and connecting  a blog toFacebook and  Twitter, or on social media strategy.  Check out those posts tagged Social Media.

Ok so there’s the over-view.  We will get back into using analytics, technical tricks, great open-source packages and more in the future.