Saturday, June 23, 2007

Make it easy

Every week in Code for Change we have a "Release Friday." We all gather in the 2nd floor conference room of the office building where U.S. PIRG's Denver offices are located and we code until we have a release ready of what we're working on. We start out the day by making a list of which tickets (bug reports) we need to close in order to have something release-worthy.

One of the agenda items we had up on the board this past Friday (yesterday) was "Make it easy." This was a brainstorming session where we all came up with ideas to make it easier to install and play around with CiviCRM. There is quite a bit of interest out there in an open source CRM tool, especially now that we've removed the requirement to run it inside of Drupal or Joomla. But asking people to setup Apache, PHP, and MySQL as the first three steps is a bit intimidating.

Here are some of the ideas we came up with to make it easier:


  1. Setup a live public demo site. This would be the easiest way to try out CiviCRM, but perhaps the least useful, since you wouldn't want to put any real data in there.

  2. Create a one-step installer for Apache, PHP, MySQL, and CiviCRM that gets everything up and running in one step so that you (and anyone else on your network) can start using CiviCRM right away. There are already one-step installers for the WAMP stack (Windows, Apache, MySQL, and PHP) that we could start with and add in CiviCRM. This installer would be a Windows release first, since that's what most folks are running on. We'd also like to do a Mac OS X version at some point too.

  3. Create a "virtual appliance" of Linux running CiviCRM that you can launch in VMWare Player and then access with your web browser.

  4. Write step-by-step instructions for getting CiviCRM up and running on a Linux server for those who want to do it themselves.

So, dear readers, we'd love to know which of these options seems most exciting to you. Or, if we left one out, please let us know! We'll be working on 1 or 2 these in the coming weeks, so stay tuned.

2 comments:

Donald Lobo said...

I would go with option 2 :)

however i would build a seperate installer for CiviCRM and base it on a good existing installer like joomla :). I think it will be far easier to keep it as a seperate project than basing it on top of a WAMP/LAMP/MAMP install project

lobo

ashley said...

I've just started playing around with CiviCRM. I'm the president of a chapter of a national organization & a software engineer. I'm hopeful that CiviCRM can really help us move forward!

As I go through the process of learning the technical aspects of CiviCRM and learning it's capabilities as an admin & user, I'm coming up with quite a wish list. :-)
I think there's huge benefit in creating a nice demo data set so that folks can play with CivicCRM and learn more about the capabilities (option 1). You can reset (reload) the data regularly to keep it clean.
Your audience for this would primarily be users (vs. developers). But having this data set would be incredibly useful to anyone working with CiviCRM for the first time.
(And perhaps this data set could also be used in documentation... and perhaps even testing... who knows?!)
Having a demo site that has a rich set of data, where people can see how real world needs can be met would generate a huge amount of interest and enthusiasm.
Tho' this does lean more toward the end-user (vs. developer), I think the benefits for developers would be tremendous. Don't minimize the value of a common set of data -- it means that developers that are distributed by geography, skills, and even vocabulary have a place to go where they can all see and talk about the same thing. (Incredibly helpful for testing & answering questions!)

But whatever option you choose, have fun and celebrate your successes early and often! (What a great idea for US PIRG!)