Setting up your own blog based website

This post is for people who want to set up a website for a small association and need to do it inexpensively. Commercial association software is expensive but often very comprehensive. To create a website inexpensively for the Catalina380 International Association, I did this using WordPress as a foundation just as I have described in previous posts.

I’m sure there are lots of articles about how to get started with a WordPress website but I thought it might be interesting to people to have an abbreviated summary of what I found beneficial when starting from scratch up to having a live site at a hosting facility. Though you can easily get the application running at www.wordpress.com, here is what I suggest if you want to do more than just get it started. In fact, I will assume that you already have the basic application running.

Background Knowledge

First, you need to know at least a little about IIS if you are working with Windows. If you don’t already have IIS started, you will need to start it by checking the check box for IIS through Control Panel->Programs and Features->Turn Windows Features On and Off. Internet Information Services Manager that comes with Windows makes it simple to create a new website for your testing. If you do everything through the hosting facility, they will take care of most of this for you. I liked having a local site to play with as well as the hosted site.

It is very helpful to have a basic knowledge of PHP and of CSS (cascading style sheets). I found a web site that provides this background very efficiently and the information and tutorial is free:

http://www.w3schools.com/php/

http://www.w3schools.com/php/

What I found was that I needed basic knowledge in these areas to figure out how WordPress works and to make changes to the various available themes. For instance, I found that the theme TwentyEleven was closest to what I wanted but I didn’t like the wide space at the top of the page. To change this, you need to find the correct php file in the themes folder, find the controlling section and make the changes. Other changes I wanted needed to be made through the style.css within the theme folder. For instance, I wanted a bolder horizontal line than provided in the theme and this can be changed easily in the style sheet.

Useful Software

There are a couple of free applications that will make your life easier:

MySql: http://www.mysql.com/downloads/mysql/   Again, I set everything up locally before moving things to the hosting facility so I needed a local installation of the database. It’s free. There are multiple levels of MySql but the community edition (free) is all you need. Installation is simple. Installation of WordPress itself will create the needed database so you don’t even need to worry about this.

FilZilla: http://filezilla-project.org/ This is a very easy to use FTP file transfer program that is a must if you are going to transfer files from your local machine to a hosted server and later when you want to edit a file on the hosted site by first pulling it to your own machine, making the changes, and then pushing it back up. For my project, I first developed everything on my local machine and then transferred files to the hosting site to make sure things worked there and ultimately to bring the site live. Your hosting site will provide the connection information you need and once that is resolved, the rest is a simple drag-and-drop from your machine to the hosting machine.

MySQL Workbench: http://www.mysql.com/products/workbench/  When you install MySql, particularly if you come from a SQL Server or Oracle environment, you find that you can get to a command line (CMD => MySql) and from there you can work using Sql but still only through command line syntax. What MySql Workbench does is provide a Windows interface through which you can work with your database as you would through SqlServer Management Studio if you were working with SqlServer. Furthermore, this gives you a very easy way to back up the database and restore it if needed.

Though WordPress has the ability to back up and restore, doing this directly with the database with MySql Workbench gave me an easier and cleaner way to do this. The script created would do everything from create the database to drop and recreate the needed tables and finally to load them with data.

Microsoft Visual Studio: (This one isn’t free!) Though you can certainly modify .sql files with any text editor (not Word or something that buries its own information in the file), Visual Studio provides a way to load the backup file generated by MySql Workbench and do global search and replaces. Why is this useful? When you develop on your local machine and want to transfer everything to the hosting site including the database, you can change the URLs easily from “http://localhost/mysite” to “http:/www.mysite.com”. This is particularly important since WordPress ties itself together in many ways through URL’s.

So there you have it. If anyone has other recommendations, please add them as comments!

Cheers!

Shopping Carts in Blogging Software

Shopping Carts in Blogging Software versus Association Software

Let’s continue with my small site for the Catalina380 International Association.  Though the association’s officers didn’t want to sell anything just yet through the site, I wanted to make sure this would be easy to do later – when they see the light.  Just as with membership plugins, various shopping carts are available as WordPress plugins.  Even the MagicMembers plugin provides links to various payment gateways to take credit cards for membership.

The important thing to understand is that you don’t want to deal with credit cards on your own.  The credit card rules are simply too complex for anyone to keep track of.  Even the larger commercial packages are – or should – give up on dealing with credit cards and just outsource the headaches.  It used to be that large associations wanted their own control of credit cards so they could have a “credit card of record” to make it easier for the member to purchase things later using the same credit card.  In fact, they wanted to store the credit card numbers for automatic renewal of memberships.

All of this is well and good but companies like Verisign have worked out strategies to allow all of this to happen without your association having to store credit card numbers at all.  Taking advantage of this is the way to go.  For the small site, PayPal is probably the best solution to sales.  They are used to dealing with both large and small associations.  Vendors of commercial association software and using these same companies to handle credit card transactions.

If you sell just one type of thing, you may well purchase an inexpensive plugin to deal with simple order entry and payment processing.  Where I see the real issue for large associations is that a large association typically sells a lot of different types of “products” from inventoried products to meeting registrations to exhibition booth space to transcripts to memberships.  What’s more, these are all highly interrelated in terms of packages and pricing models.

I have yet to see this kind of ability from the simple open-source software providers and especially from blogging software being used as an association website.  It is difficult enough for a commercial association management software system to provide this.

Then again, consider what you could do five years ago versus what you can do now for little expense.  “Websites for the Masses” is a concept that is coming.

In my next post I’d like to take a look at a more radical view of association software.  Stay tuned….

Oh no! I’m an Association Software “User”!

How often have I heard software developers say “Software development would be much more fun without users!”  Now, in my new life “on the other side”, I find myself a user – a user of association software!

In my career, I was once the manager of a customer support department for a company that was a distributor of financial software written by a different company.  When it didn’t work, it was frustrating to both me and the customer.  The customer didn’t care if I was frustrated; he just wanted it fixed.  After all, why did we sell something that didn’t work.

At another time, I was the president of my own software company and, perhaps to the detriment of our bottom line, we cared a lot about customer support and went out of our way to try to do it right.  Yes, there were problems that had to be addressed, but I felt good about the way we responded.  Once, when a client told me he wanted to see me in person to discuss the installation process, I took the next flight out to accommodate him.  That was a good experience.  That person, though retired now, has remained my friend for over 25 years.

I have heard of companies where software is released even when developers say it isn’t ready but for various reasons the company feels it necessary either to meet competitive issues or sales promises.   Well, imagine that level of frustration for both the client and the developer much less the support personnel.

Someone I respect once commented that he couldn’t understand why software companies didn’t compete on the basis of quality and service.  Quality matters.  Service matters.  When it is bad, people remember.

Now, as I work with this new website, I find myself working with other people’s software and find myself in the position of a “user”.  I have seen both good and bad support through this process.  I got very little help from the WordPress organization and some of the plugin creators.  From MagicMembers, the plugin that handles all of our membership issues, the support was tremendous.  It was responsive and always helpful.  Thank you, Angela!

From all of this, here are my thoughts directed toward software companies trying to be successful:

  • Without clients, your business doesn’t exist.  Treat them even better than you treat prospects.  Don’t assume that a signed contract means you don’t have to go out of your way to please the client.
  • Be responsive to your clients particularly during implementation.  Nothing is more frustrating when needing to get your software working than the inability to get help from someone who knows how things are supposed to work.  Don’t assume users are stupid because they don’t know the internal intricacies of your architecture.  Never have the attitude that whatever is wrong is user error – even if it is!
  • Personalize your support.  In a paragraph above, I thanked Angela for good support.  When she first began to help me, she identified herself and she personally followed my progress and ironed out issues I was finding.  I felt she was personally committed to my success.  All of this was from a company who sold their product for $97!  Just imagine the support you should get from a company whose software was priced in the hundreds of thousands!
  • Still along the lines of personalized service, go beyond the basic facts if you can.  Try to get to know the client personally so that not all conversations will be about problems.  It is amazing what a good relationship can do to smooth the rough places in an implementation.  Personality counts.
  • As a user, I would rather wait for something to be fixed than be given something to do that you know doesn’t solve the problem.   I don’t want to be told to load the latest version if you know that the problem still exists there.  Fixing one important thing to break something equally as important doesn’t help me much.
  • Honesty is better than anything.  Nothing is more frustrating than feeling like someone is blowing smoke up your …..  If something isn’t working and you know it, admit it so the client doesn’t waste time trying to figure out if it is their own lack of knowledge.  If you know it can’t be fixed for a month, say so, so the client can make appropriate plans.
  • Users, on the other hand, should try to understand their support person who may not have much influence on getting something fixed but should be responsible for helping you with their knowledge of how things work.  Be nice and they will go to bat for you.