Best Consulting Sales Pitch Ever

I heard this at a presentation about Mule (an enterprise service bus) at BJUG tonight.  The presenter, Rich Remington, at the end of the talk, put up a slide detailing a contest.  Anyone who emailed him with a use case that Mule might be able to help with won a chance at a free lunch and 1-2 hours of free consulting about the use case. You have to email him within 48 hours of the talk.
What a great idea!  Not only does he get to pick a use case that Mule can help with, he also gets a chance to pitch his services, and show his value to the client.  And he gets a list of possible clients–people who know about something about Mule and think they might have a problem Mule can solve.

The contest winner gets more than a free lunch out of it too–the chance to pick an expert’s brain for free for a couple of hours can be worth quite a bit.

Win-win, for sure.  What a great idea for anyone consulting in a specialized field!


FreshBooks Review: An Invoicing System for Freelancers

Last November, I started using FreshBooks (full disclosure: if you click on that link, sign up and end up paying them money, I get some money), which is online invoicing software… Wait, let’s back up a minute.

When I started contracting and consulting (oh yes, they’re different), I originally was doing all my invoices in Word docs (actually, OpenOffice Writer), and it seemed natural to track my time there as well. Don’t repeat yourself, right?

After a while, it was tedious to have to open up each invoice every time I switched the client I was working for, so I started using an OpenOffice Calc spreadsheet. On the left hand column were dates, and on the top row were projects/tasks (“work order 13”, “troubleshooting database performance issues”). I ended up having a second row, which was client identifier.

This worked well for a while. When invoicing time came around, I would take the hours and task data from the spreadsheet and put it in the custom invoice. I’d export the custom invoice as a PDF, and put it in a directory. When the client paid, I’d move the invoice to a ‘paid’ directory. This differentiation let me send gentle reminders to clients who hadn’t paid yet.

I realized early on that this wasn’t the most efficient system. Several times, I did research on invoicing systems. I looked around SourceForge and FreshMeat, but the invoicing systems I found there were aimed at invoicing for products, not hours. I had a friend who’d used GnuCash but it seemed to be so much more than I needed.

So, each time, I went back to my old friends, the spreadsheet and the word document.

Mid last year, I was slammed with work. This made me realize, again, how inefficient my invoicing system was. I thought, ‘hey, I’ll outsource it’. A friend had a good person doing some administrative work for him. I hired her to do my invoicing, once a month. I talked her through my system, and she got it. I double checked her first invoice, and it was great. The price was reasonable, I could still use my familiar system, I was happy.

Then this lady decided to raise her prices fifty percent, in a rather high handed and arbitrary manner. Now, I was not a big client. Frankly, I can understand how 1-3 hours of work a month was not very attractive (though I did throw her some research work at least once). However, I was slightly offended at the price increase, and decided to take my work elsewhere. This shows the power of the initial price, because if she’d quoted the hourly fee at the higher rate originally, I would not have blinked.

I tried to find someone else to do the job. I found a relative, who could do the job, but required a fair amount of hand holding. The relative kept talking about the automated accounting systems she had used in the past, so I undertook my search again.

This led me to last October. I looked around for web based invoicing system that would work with me the way I wanted to work:

  • mostly time and materials billing
  • some fixed bid, including for clients that I do t&m for
  • varying hourly rates
  • ~10 clients
  • pdf invoices I could email
  • web based
  • time tracking including
  • professional looking invoices generated

I narrowed it down to three contenders (this was as of October, 2008; there may be more now):

I took one look at QuickBooks Online, saw that it was IE only, and discarded that option (I may run Windows, but I want to support the open web).

I spent significant time investigating both Cashboard and FreshBooks. I liked the Cashboard interface better, but there was a huge stumbling block. Some of my clients have both fixed bid and t&m work, during the same month. I don’t ever want an invoice to show how much time it took to do a fixed bid project–that’s my business and not the client’s concern (that’s why it is fixed bid). Cashboard had no way of putting both a fixed bid project and t&m work (which must show hours spent) on the same invoice. I even asked Cashboard support about this, and got this answer back: “At the preset(sic) time there is no way you can show time for some projects on an invoice, and hide it for others.” Updated, 4/30/2009, 20:25: Apparently I was wrong, Cashboard can do both types of line items on the invoice; see discussion below.  Now I’m not sure exactly the source of my choice of FreshBooks over Cashboard.

FreshBooks lets you do exactly that, so I signed up for their free account (full disclosure: if you click on that link, sign up and end up paying them money, I get some money). And I’ve been using it since last November. After I decided to use it, I upgraded to get more client accounts.

In general, I’ve been happy with FreshBooks. It is always an adjustment to change your business processes and/or software but I’ve been happy with a lot of what FreshBooks has to offer.

First, though, the gripes and caveats:

FreshBooks is not a full accounting package (and they don’t pretend to be one). I still don’t have one–other than the accountant who does my taxes. This means that I don’t have a precise view of my business’s health all the time. I do find out my profit and loss numbers once a year (tax time), and I find that is enough for me. The business’s expenses and income just aren’t that complicated. I had about 30 deposits into the business checking account, and about 50 checks written against it (and a number of EFTs and fees as well).

The web interface is cumbersome and non-intuitive at times. It can be learned, but the crazy urls and heavy use of javascript are occasionally issues for me. For example, editing time that you already have entered, especially changing the day the time was entered for, took me a while to figure out. I also have to re-login to my account every day, even if the browser window has been open for the entire time.

There is no free widget/desktop app for Windows XP users to use for FreshBooks time tracking (you can always use notepad). There is one you can pay a modest fee for. I think it’d be cool to write an AIR FreshBooks time tracking app–maybe sometime…

What I like about FreshBooks:

This last quarter I qualified for the report card, which is free quarterly data comparing your invoicing statistics with others in your industry. Statistics include number of invoices, amount invoiced, % revenue from new clients, and average time to collect payment. This data is great, and I don’t know how I’d find it otherwise. (As an aside, one of my other project ideas is to have a local Boulder/Denver survey of rates for web software development. I’d pay for that–would you?)

I like the reporting available, including which hours have been invoiced and which haven’t (though I have issue with a fixed bid project that I’ve invoiced, but can’t seem to mark invoiced). If you had more than one employee, this reporting would rapidly increase in value.

The cost is reasonable–I have a Shuttle Bus plan, which is 14 dollars a month. (My bank does charge me a bit extra, because FreshBooks is a Canadian company).

They have a great blog.

FreshBooks has an API, which lets you develop any number of widgets (including the time tracker mentioned above) and/or access your data from other programs.

I want to emphasize that the FreshBooks invoicing software is no one-size-fits-all solution. I am running a one person software/consulting business with a fairly stable set of clients and minimal expenses. FreshBooks has many features I don’t use (postal mail invoices, basecamp integration, expense tracking, estimates).

The biggest component that I don’t use is client login. Freshbooks makes it easy to create client accounts. Clients can then login and view documents, see outstanding invoices, contest them, and even pay them with online payment systems. This seems nice, but doesn’t fit with my client expectations. I may try this with new clients, but I hate to ask someone who is paying me money to login to yet another system, just to make things easier for me. Besides, I like to thank my clients in a personal email around the first of the month (along with sending them my invoice)–it never hurts to thank your clients.

So far, FreshBooks has been a great choice for me. If you’re in the Excel/Word invoicing world, or have an invoicing system you’re looking to dump, check it out.

[tags]invoicing,business process, freshbooks[/tags]

Carbon Space: Coworking in Boulder

I listened with envy to Corey Snipes, a friend and colleague in Denver, when he talked about being a member of the Hive, a coworking space.  I have rented an office in the past, but always thought a coworking space was a no brainer business plan in Boulder, given all the tech startups, one person PR firms and entrepeneurial environment. After all, some of what I miss about being independent was that water cooler talk, or the ability to just bounce ideas off someone in real time.  (Yes, I imagine twitter fills that need for some.)  I remember a few emails floating around the New Tech Meetup mailing list, but never heard of a plan come to fruition.  But then again, perhaps I just discounted Boulder’s real estate market as a barrier to entry.

Anyway, today, Corey sent on an email announcing Carbon Space, Boulder’s very own coworking space.  Located off 30th street, between Valmont and Pearl, with plans starting at $199/month, I hope this space succeeds.  Hey, I may even check it out myself!  Visit the website for more details.

[tags]boulder, coworking[/tags]

Holiday gifts and why Moore Consulting sends chocolate

I’ve started a tradition of sending my clients a holiday gift. They all seem to appreciate it and I plan to continue for the foreseeable future. Sending these gifts is good for my business because the gift (in decreasing importance):

  • shows my clients that I appreciate them. I do good work, but lots of people do good work, and I want to show my clients how much I appreciate the opportunity to do business with them. Giving them a gift, no matter how expensive, pales in comparison to the amount I’ve billed them over the year.
  • strengthens the relationship. I’m selling not just the product of my time, but myself, and expressing gratitude shows another side of me that clean, well written requirements just can’t.
  • makes me stand out, at least among other software contractors. This is only anecdotal, but I have had clients remark on how few of their contractors send any kind of gift or card.
  • reminds my clients about me–some of the recipients might have not heard from me in months, so the gift is a reminder of my services.

It’s also good for me, for the following reasons:

  • Gratitude feels good
  • It’s fun to pick out gifts
  • Going over invoices to get addresses serves as an excuse to review all the work I’ve done, as well as goals I may or may not have accomplished.

In 2008, I picked chocolates from It’s Only Natural Gifts, because I wanted to support a local company and their product looked good. They made it easy; all I had to do was give them a spreadsheet with client addresses, messages and type of gifts, and a credit card number. I also sent a card to a client that I did a small amount of business with.

I recommend doing this for your clients next time the holidays come around.

[tags]holiday gratitude[/tags]

Why aren’t you using Google Website Optimizer?

I’ve been using Google Website Optimizer (GWO) in one form or another for over a year now, and I am quite impressed.  I wish everyone would take a look at this technology.

The short version of this post is: if you have a website that gets some traffic, and actions that you want a user to take, such as buying something, you should use GWO.


Let’s talk about GWO a bit more for everyone who didn’t leave after the executive summary.

First, what is GWO? 

It is a free add in to your website that lets you test the effect of content changes on desired user actions.  For example, you can test the impact of different headlines (‘Sign up for more information’ or ‘Free Newsletter!’, etc) on a newsletter signup page to see how it affects how many users sign up.

I could try to write about it more, but instead, here’s a video that explains how to set up a test; you can watch the first 45 seconds to get a good overview of what GWO helps you test, but the whole video is worth viewing.

It’s important to note that GWO is javascript based (as opposed to some other tools like SiteSpect, which uses DNS proxying, according to a conversation I had with someone who worked there).  There are other tools out there which may be better fits for your needs.

Now, how should GWO be used? 

This tool should be used to optimize a specific action that you want the user to take, and that action should be something on the web.  Examples of actions that GWO can help optimize include:

  • sign up for a newsletter
  • visit a specific page
  • order something
  • give you their contact info
  • watch a video
  • download a file

GWO is capable of handling more complicated scenarios too.  You can, with a bit of javascript hackery, test button click conversions, or any other javascript event.  I’ve worked on systems that tested various form elements (requiring different fields to register, for example).  The requirement for that is a flexible back end, and a javascript front end that can handle re-filling form elements on error.

Next, why would you avoid GWO?  There are a number of scenarios where using this tool just doesn’t make sense.

No actions that you want the user to take on the web

This is the biggest set of sites for which GWO does not make sense, and my blog falls into it.  My end goal is really to talk to someone, on the phone or over coffee, to ascertain whether or not I can help them with my services.  That’s a hard conversion to track.  If you really want to get people talking on the phone, that is a conversion that GWO doesn’t help track either (though it’s possible you could do something with VOIP or different phone numbers and cobble some kind of conversion tracking together).

That’s not to say that sites in this category can’t use GWO.  For instance, I wrote an article long ago about a java technology called JAAS, and it’s still pretty popular.  I’ve been doing some testing on that page to try to drive traffic to this blog, where a big chunk of my current writing is happening.  I was able to increase conversion about 2.5 times (granted, from a small base–0.7% to 1.73%).  I could definitely try to do some optimizations around ad placement or contact calls to action.  The main reason I haven’t is that I still believe my best chance at conversion is referral or word of mouth, not better text on a website.

Javascript free site

If you need a javascript free site, or focus on users who don’t have javascript capabilities (those who use screen readers, for example) or browsers that don’t support javascript, then GWO isn’t a good fit.  That doesn’t mean you should give up on optimization, it just means that GWO isn’t the solution.

Google trust issues

For providing this valuable service, Google could get a look at a lot of interesting data including how many websites optimize, what site admins are tracking, and what URLs those admins consider important.  I have no idea what Google actually does with the data–the company may not track the data at all.  I did a bit of looking on the GWO forum, but didn’t find anything useful.  However, if you don’t want Google having access to this data, then you shouldn’t use GWO.  I don’t use Google Analytics for this very reason.

Speed is essential

Since this is a javascript download, it will affect page load time.  From Firebug, I see that it is a small download (7KB total, over 3 requests–for the test page).  This is not significant, but if you’re aiming for the fastest website, or you’re aiming at users on a slow connection, you might steer away from GWO.

Not enough traffic to your site

If you don’t have much traffic, your effort will be better spent driving more people to your website.  Whether you use search engine optimization, TV advertising, pay per click campaigns, or my favorite, regularly posted organic content, traffic is a prerequisite to using GWO effectively.  How much traffic?  Well, I was able to get conclusive results in my JAAS experiment with 3466 views and 48 conversions in just about 3 months.  That’s about 40 views a day.  I was not testing a ton of variations in my content (only 3).

Your site doesn’t let you put custom javascript on pages

This is the case with blogs ( doesn’t allow any custom javascript, due to WordPressMU’s architecture), and I’m sure is common among other ‘build a website easily’ systems.  Not much to say about this, other than that if you’re really using the web as a channel, and not just an online brochure, it might be worth moving to a more flexible site.

Not enough time

I don’t believe this is a valid excuse–spend 7 minutes and watch the video; I believe you’ll see that this is worth a bit of investigating if the above scenarios don’t apply to you.

I can’t think of any other reasons not to use GWO.  Feel free to leave a comment if you feel I missed something.

What are your next steps?

Well, if I’ve convinced you that GWO is worth looking at, you might want to do a bit of further research. Here’s the website optimizer homepage.  Here’s the official GWO blog.  Here’s a great article full of tips for GWO.  There’s a book called Always Be Testing that seems pretty well received that you might want to check out.  I have not read it.

Disclaimer: I’d love to help you out with this (if interested, contact me), but firmly believe that almost anyone can take 30-45 minutes and implement this on their website.  I think GWO is great, cool, useful technology and want to see it used more to make the web a better place.

Open Source Ad Server Roundup

I found this vlog post about a social network building their own advertising infrastructure to be interesting.  Basically, Dogster founder Ted Rheingold (whose lapdog gives him a Bond-villian-like presence during the interview) argues that building your own ad pipeline is harder than using an ad network, but is far more profitable and sustainable.  Ad networks are easy to slap in and give a startup instant revenue, but automated content targeting leaves something to be desired.  In addition, there’s no relationship built between the content purveyor and the advertiser, which leaves the content purveyor more vulnerable to advertising cutbacks.  Advertising salespeople are the easiest to hire, and the easiest to fire, as they should pay for themselves.  (As an aside, here’s an interesting article by Jakob Nielsen talking about how “paid search confiscates too much of a website’s value.”)

I passed it along to a friend who is building a directory site around local Colorado farmers and food and he mentioned some interest in it.  On my own, I took a look around to see what was available for self managed website advertising, and was surpised at the paucity of good open source ad serving software out there.  After all, advertising is one of the great business models (of the web, and of all time); I expected to see a bit more code out there.  But perhaps ad network software isn’t anyone’s itch.  Or maybe there’s no demand for it–sites are either small enough to use Adsense, or they are big enough to pay for a commercial ad server.  Regardless, here’s what I found:

There were a number of projects on source forge that seemed appropriate, but nothing that was actively maintained and useful (lots of projects started in 2001, and dormant).  Adsapient seemed the most useful, but they say on their website: “AdSapient Ad Server is an open source ad server that can be used as a platform for building your own ad serving technology. We recommend using it for educational purposes though.”  Not exactly a ringing endorsement.  Update, 4/27/2009: Someone who worked on Adsapient has started a new ad server.  More information below.

For some reason, this didn’t show up on my search of Sourceforge, but OASIS is definitely an ad serving and management solution.  Last release was 2007.
There is a company that offers hosted OASIS and OpenX ad serving solutions, but they’re rather pricey.  Another (closed source) option is Google’s ad management solution.

The best solution I could find was OpenX.  They have a demo site that works, they are continuing development as you read this, they have a free hosted solution good for up to 25 million impressions a month, and at that time, you can choose to either pay them a monthly fee, or download, install and configure the software and run the ad server on your own box.

Now, I haven’t spent enough time with the OpenX UI to know if there are dealbreakers in there, but based on pricing, ongoing development effort and freedom, I would definitely recommend OpenX.  Here’s an interesting discussion comparing the hosted OpenX solution and Google Ad Manager.

[tags]google ad manager,openx, oasis, ad serving, hosted ad solutions[/tags]

The Gift Of Negative Feedback

“Success is a lousy teacher. It seduces smart people into thinking they can’t lose.” – Bill Gates

One of the hardest things to do as a consultant is to admit I screwed up. After all, I’m brought in to solve problems that the client could not or would not address. I’m paid a lot of money (compared to employees, not hedgies). I have a reputation to uphold–that’s how I sell myself.

But, of course, I’m human, and make mistakes. One of the greatest gifts a client can give me is honest feedback on how I erred. It’s a gift because

  • I learn something
  • it takes the client’s time
  • it takes the client’s emotional energy
  • it would be so much easier for the client to just say nothing and not use me again

Did you catch that? Instead of the usual transaction which is trading my knowledge and time to the client for money, the client is giving me knowledge.

It’s precious.

But don’t think it’s easy!

I screwed up recently and was given the gift of negative feedback. My first instinct was to reach for the requirements, or review emails, or figure out some other way to prove to the client that I was not in the wrong.

But the simple fact is that, if the client isn’t satisfied, a consultant is not in the right (I’m leaving aside clients that you should fire). It’s easy for me to think I’m selling hours and knowledge, but what I’m really selling is satisfaction. I don’t want to take a red cent from someone who isn’t satisfied with my work.

So, I had to sit and breath, walk and think, and just generally process this gift. After having done so, I communicated with my client, re-iterated my goal of his satisfaction, and proposed a compromise on my invoice. He was happy with that and we went on to do another project. I’m hoping he’ll consider me for more work in the future, but even if he doesn’t, the lessons I learned were well worth the cost of the compromise.

What A Scam: “Colorado Corporate Compliance”

If you are part of a Colorado corporation and get an “Annual Minutes Disclosure Statement” request from Colorado Corporate Compliance, you should read this notice from the Secretary of State’s office:

The Colorado Secretary of State’s office has recently become aware that entities by the names “Colorado Corporate Compliance” and “Board of Business Compliance” have mailed solicitations titled “Annual Minutes Disclosure Statement” or “Disclosure Statement” to many Colorado entities. These solicitations offer to process corporate meeting minutes on behalf of the corporation for a fee. Despite the implications contained in the solicitations, Colorado corporations are not required by law to file corporate minutes with the Colorado Secretary of State’s Office.

The warning signs were there: I had not received this notice before, the timeline seemed short (sent on Sep 3, due on Sep 15), and the $150 fee seemed a bit steep. But, if I hadn’t searched for this company, I probably would have sent a check–it looks official. (To be fair, it does, at the bottom of the back of the form, say what the service is actually about–making minutes available to members of a corporation). Just goes to show you that the scammers aren’t just out to protect your domain names or send you virulent spam.
[tags]scam, colorado corporate compliance[/tags]

Business Process Crystallization

I’m in the process of helping a small business migrate an application that they use from Paradox back end to a PostgreSQL back end. The front end will remain written in Paradox. (There are a number of reasons for this–they’d like to have a more robust database, capable of handling more users. Also, Paradox is on the way out. A google search doesn’t turn up any pages from in the top 10. Ominous?)

I wrote this application a few years ago. Suffice it to say that I’ve learned a lot since then, and wish I could rectify a few mistakes. But that’s another post. What I’d really like to talk about now is how computer programs crystallize business processes.

Business processes are ‘how things get done.’ For instance, I write software and sell it. If I have a program to write, I specify the requirements, get the client to sign off on them (perhaps with some negotiation), design the program, code the program, test it, deploy it, make changes that the client wants, and maintain it. This is a business process, but it’s pretty fluid. If I need to get additional requirements specification after design, I can do that. Most business processes are fluid, with a few constraints. These constraints can be positive: I need to get client sign off (otherwise I won’t get paid). Or they can be negative: I can’t program .NET because I don’t have Visual Studio.NET, or I can’t program .NET because I don’t want to learn it.

Computerizing tasks can make processes much, much easier. Learning how to mail merge can save time when invoicing, or sending out those ever impressive holiday gift cards. But everything has its cost, and computerizing processes is no different. Processes become harder to change after a program has been written or installed to ‘help’ with them. For small businesses, such process engineering is doubly calcifying, because few folks have time to think about how to make things better (they’re running just as fast as they can to stay in place) and also because computer expertise is at a premium. (Realizing this is a fact and that folks will take a less technically excellent solution if it’s maintainable by normal people is what has helped MicroSoft make so much money. The good is the enemy of the best and if you can have a pretty good solution for one quarter of the price of a perfect solution, most folks will choose the first.)

So, what happens? People, being more flexible than computers, adjust themselves to the process, which, in a matter of months or years, may become obsolete. It may not do what they need it to do, or it may require them to do extra labor. However, because it is a known constraint and it isn’t worth the investment to change, it remains. I’ve seen cruft in computer programs (which one friend of mine once declared was nothing but condensed business knowledge), but I’m also starting to realize that cruft exists in businesses too. Of course, sweeping away business process cruft assumes the same risks as getting rid of code cruft. There are costs to getting rid of the unneeded processes, and the cost of finding the problems, fixing them, documenting them, and training employees on the new ones, may exceed the cost of just putting up with them.

“A computer lets you make more mistakes faster than any invention in human history – with the possible exceptions of handguns and tequila.” -Mitch Ratcliffe, Technology Review, April 1992

A computer, for the virtue of being able to instantaneously recall and process vast amounts of data, also crystallizes business processes, making it harder to change them. In additional to letting you make mistakes quickly, it also forces you to let mistakes stand uncorrected.

© Moore Consulting, 2003-2021 | Twitter