The Web Startup Success Guide

startup_success_guideBob Walsh has followed up his excellent MicroISV: From Vision to Reality book with The Web Startup Success Guide. While the first book is aimed squarely at at developers of desktop software, the second is aimed more at web-based start-ups. I have to confess, I haven’t had time to read my review copy of the accompanying e-book yet (I’m moving house, moving office and putting out a major new software release). But I see from the contents it includes chapters on:

  • the idea
  • choosing a platforms
  • tools
  • fund raising
  • social media
  • getting the message across

And interviews with

  • Dharmesh Shah
  • Eric Sink
  • Joel Spolsky
  • Pamela Slim
  • Guy Kawasaki
  • …and others

If it is anything like as good as Bob’s MicroISV book, it will be worth a read by anyone doing (or thinking of doing) a web-based start-up. It is currently $19.79 on Amazon.com. You can also buy the e-book from Apress. Here are some reviews from people that have actually read it:

Neil Davidson

Willie Faler

Where I program

whereiwrite.org is a photographic project showing science fiction writers and their offices. I started wondering what the offices of other microISVs and small software companies look like. Were they Zen temples of minimalism, with just a desk, a chair and a laptop? Or were they mad scientist labs, piled to the ceiling with obsolete equipment and empty pizza boxes? I rather hoped it was the latter, so I wouldn’t feel so bad about my own cluttered little office. I asked for photos of offices on some forums frequented by independent developers. I got a great response. Click the images to see larger versions.

oryxThis is my own cluttered office. The image comprises 6 photos stitched together using Autostitch to simulate an ultra wide angle lens. This makes it look bigger than it is. My unexciting view of suburban Britain is enlivened by regular sightings of Red Kites. I resisted the temptation to tidy up, beyond emptying the overflowing wastepaper bin. The garage is full of envelopes and CDs and there are lots of programming book’s in my son’s room. We are in the process of selling the house, partly so we can buy a house with a bigger office. I like the idea of a treehouse office – one where I pull up the ladder when I need some peace and quiet.

divider

whereiprogram-steve

“In my office, I kind of try to separate the digital and analog worlds.  Some days I’ll be coloring with my kids at the oval, English partners-desk in the center and helping with homework, but most days I’m doing software development to the right.  I love it here in the Pacific Northwest; if I’m awake early enough I can catch a beautiful sunrise over the lake right outside my office, and even go for a swim by afternoon in the summertime if it gets too hot.”

Steve Murch, www.bigoven.com

divider

rv-office“This is my temporary office while on the road. I use the TV as a monitor for the second computer (Windows 7). The normal monitor can be switched between either computer. I sometimes miss the third monitor, lazerjet printer and other stuff but not often.”

A roving microISV, who doesn’t want his customer to know he (temporarily) has no fixed abode

divider

DSC_6544“Living in Hong Kong, where residential and office space is so scarce and expensive, I work in a small corner of my small apartment. However, I have everything I need: my trusty two years old MacBook Pro, a not too comfortable chair, and a couch where I can take as many naps as I want. Oh, and a nice view of the mountains outside!”

Cesar Tardaguila, www.bambooapps.com

divider

alwin-at-work

collectorz-programmers-at-work“This is me at my desk at the Collectorz.com HQ. As you can see, I am a Nintendo gamer, vodka drinker and Porsche fan. Now I must say that this not a real ‘where I program’ pic, because I don’t do a lot of programming any more. Check the 2nd pic for my developer team.”

Alwin Hoogerdijk, www.collectorz.com

divider

iPhone June 23 2009 132“I *hate* having clutter on my desk. You’ll notice that I didn’t show the rest of the office. It’s pretty messy! I started with two monitors several years ago and then moved straight to 4. I can’t live without at least 3 and the 4th makes a nice place to stash IM windows while I’m working. My music computer is on the left side (yes, it’s a Mac!), and I’m not sure that it isn’t the most important computer I own since I could never work without music playing.”

Mitchell Vincent, www.ksoftware.net

divider

myroom“As you can see the office is as crammed as possible, and the distractions are pretty obvious — the wine is waiting for its place in the cellar, and there is a bottle of whiskey on the shelf.  Oh, and there are two Commodores C-128 behind the desk (invisible on the photo, they worked the last time I checked) along with 1081 monitor and a Playstation or two. And yes, there is a guitar behind the chair. The bad news is that the plans for the new house are ready and the next office will be four times as big! Regarding the workplace as such — I have two 19′ monitors and a computer box under the desk. I spent a lot of time making it silent, which really improves work comfort, especially during quiet night shifts.”

Piotr Kuzora, www.powerkaraoke.com

divider

ofi-shots-117

ofi-shots-150“This is my home office, in the city center of Vitoria-Gasteiz. Nowadays I spend as much time, if not more, at the J1CK office, my other entrepreneurial project, but this office is great for ViEmu and Codekana work: a lot of light, and the irreplaceable Dell 2408WFP in vertical position. The chair and the table are from Ikea, nothing fancy there.”

Jon Beltran de Heredia, www.viemu.com and www.codekana.com

(who can apparently control his own opacity)

divider

MJT_Marcus_Office_small“This is in my office looking out on the larger office area.  Our office is in a modern, purpose built office complex just outside the beautiful historic Saxon hilltop town of Shaftesbury in rural Dorset.”

Marcus Tettmar, www.mjtnet.com

(under monitors – where obsolete technical references go to die)

divider

home_office_tekblues_small“My home office is a large basement, it has windows and good light, but it’s very cold. I am a very messy person, it’s full of books, boxes, old computers and even toys my kids left there. Luckily, it doesn’t show in the photo but my dog left some bones under my desk in the morning!!”

Javier Rojas Goñi, www.tekblues.com

divider

GreentramDesk“Melbourne city skyscrapers in the background – I’m 26 floors up. I should have done this yesterday when the sun was shining.”

Tony Bryer, www.greentram.com

divider

IMG_6740_small“There is one thing that is missing in the photo. That is my two year old daughter. She likes to sit on the table and pull out the books from the rack. Unsurprisingly, her favorite is ‘MicroISV From Vision to Reality’ by Bob Walsh. Somehow she enjoys tearing papers off from the book while her father is busy coding.”

Prasanth, www.simfatic.com

divider

20090624dayoffice

20090625nightoffice“I recently cleaned up my office so I took these photos… but my office is slowly returning to the big mess that it usually is. I need to do a tidy-up before things get out of hand again. I really like my Vornado 542B that’s clipped to a bookcase and set to blow air on me! Really cools me off. I have it on a remote control so I can easily turn it on and off from my desk. I am near Dallas, Texas.

Albert Wiersch, www.htmlvalidator.com

divider

gurock_office“This is one of the offices at Gurock Software here at the Technology Park in Paderborn, Germany (that’s Tobias in the picture). When we originally looked for office space, we wanted bright rooms with enough space to accommodate large desks and small reading corners. Getting our new office space (and 3×24″ monitors ) was easily the best investment we’ve made productivity-wise.”

Dennis & Tobias Gurock, www.gurock.com

divider

Dokix2_smallTim Haughton, www.homedocumentmanager.com

divider

antair_office_1

antair_office_2“This space suits us perfectly. It fits everyone very comfortably. It’s very, very bright, with lots of natural sunlight. The outdoor patio is perfect for morning group breakfasts and afternoon lunches when it’s warm. And … there’s a great pub downstairs to celebrate the days when we ship a new software product or a major update release.”

Andrey Butov, www.antair.com

divider

office“My office is a mess because I’m a very passionate person.  I love my work and when I’m not doing that, I’m out doing something else I really love.  I have no love of cleaning and organizing though.  In fact, 99.9% of the time I prefer chaos.  The other .1%, I purge my mess and the cycle starts again.  I know this isn’t a good system, but for now it works.”

Ian Drake, www.notifywire.com

divider

ian_1 “My office is never really very messy… sorry.”

Ian Landsman, www.helpspot.com

divider

officedog2“Here’s where a real code monkey works.”

Dan Hite, www.spellquizzer.com

divider

office2

view“I work with specialized hardware for my software and there’s a school bell and a siren/strobe light flashing on the desk.  On the far right side of the desk, I have a couple of IP phones and an IP speaker. I want some additional monitors.  The two I have are a 23″ and a 24″, both at 1920×1200.  I also use a second room as an office in my house and have another PC and a Mac. Below is the view from the window. The trail behind the house connects into a 300 acre park and there are usually mountain bikers and hikers on the trail on the weekends.”

Danny Weidig, www.acrovista.com

divider

DN_office1_small“Mine’s a bit messy. I stare out the window to distract me from it.”

Doug, who doesn’t want his blue chip clients to know he works from a messy home office

divider

SAIG+Office3_small

SAIG+Echidna+outside+Office_small“The 16th fairway of the golf course is just through the trees. The group of 3 trees on the left is actually one tree and it is a magnificently old (opinions vary from 100 to 600 years) Moonah Tree. Below is an Echnida which waddled past on Monday.

Neville Franks, www.surfulater.com

divider

Not had enough yet?:

Mitch Haile’s home office

Scott Hanselmann’s home office

Home office snapshots

divider

I am not sure which is more diverse, the offices or the software that gets written in them. Thank you to everyone that contributed.

Have you got a bigger, smaller, untidier or more stylish office than any of the above? Do you have a better view out of the window? Add a link to your photo in the comments.

Ten mistakes microISVs make

Here is a video of the “Ten mistakes microISVs make” talk I gave at the Software Industry Conference 2009 in Boston. Total duration: 27 minutes.

The slides aren’t terribly easy to read, due to the resizing and compression of the video. But you can also download the paper and slides:

A big thank you to Alwin and Sytske of collectorz.com for doing the video. You can read Alwin’s excellent software marketing blog at alwinhoogerdijk.com.

Feel free to embed this video, as long as you include a credit and a link back to this blog.

How many of these mistakes have you made? How many are you still making?

Heading off to the Software Industry Conference

I am flying off to SIC in Boston tomorrow (Wednesday). I hope to put faces to email addresses and talk to as many people as possible. Please come and say hello if you spot me (mugshot here).

I am going to try to meet up with a couple of the Business of Software regulars on Thursday lunchtime (11:30am – 12:45) in the Adam’s lounge bar/restaurant in the conference hotel. If you are at SIC and aren’t otherwise engaged on the Thursday lunchtime, please come along. I will be wearing a lurid orange variant of this T-shirt, so I should be easy enough to spot.

A test of Cost Per Action (CPA) vs Cost Per Click (CPC) in Google Adwords

CPA vs CPCThe traditional approach to Google Adwords is to set a bid price for each keyword. This is known as Cost Per Click (CPC). Google then then uses the bid prices in conjunction with a secret formula (the quality score) to decide how high to rank your ad in the Adwords results. If you bid more, your ad will appear higher and typically get more clicks, but your cost per click will increase. So setting an optimal bid price is important. Bid too little and you won’t rank high enough to get a decent number of clickthroughs. Bid too much and you will potentially end paying more to Google than you recoup in sales.

An alternative approach is to tell Google Adwords how much you are prepared to pay for a particular action, e.g. a sign-up, download or sale. This is known as Cost Per Action (CPA) or Conversion Optimizer. Google will then automatically calculate your bid prices and attempt not to exceed the CPA you set (although this isn’t guaranteed).

CPA sounds great. I can stay in bed a bit longer while the mighty Google brain does the bid tweaking for me. Unfortunately I wasn’t able to use CPA. I  count sales as conversions (not downloads) and I have my adwords account split into a number of campaigns by geographic region and by type (e.g. search vs content). Having my campaigns structured like this, rather than one monolithic campaign, makes for more flexibility (e.g. different ads, phrases and bid prices for different geographical areas) and more useful reports (e.g. separate reports for search and content). But it also meant none of my Adwords campaigns made the minimum threshold for conversions per month.

When Google dropped the minimum threshold for CPA to 30 conversions per campaign per month, one of my Perfect Table Plan search campaigns became eligible. So I did an experiment. I ran a campaign for 4 weeks using CPC, then 9 weeks using CPA, then another 4 weeks using CPC. I set the CPA bid to roughly the average cost per conversion I got for CPC. I was curious to see if Google would find sweet spots that I had been missing or whether they would bid as high as they could to take as much money off me as possible. Summary: CPC outperformed CPA on all key metrics, including: 4.4% higher conversions, 9.4% lower cost per conversions and 8.0% higher profit.

The detailed results are as follows:

metric CPC  (vs CPA)
impressions/day +13.9%
clicks/day +1.3%
conversions/day +4.4%
CTR -11.1%
conv rate +3.1%
income/day +4.4%
cost/day -5.5%
CPC -6.6%
profit/day +8.0%
PKI -5.2%
ROI +10.4%
cost per conversion -9.4%

In graphical form (click to enlarge):

CPA vs CPC graph 50pc

Notes:

  • The values given are taken by computing (CPC metric – CPA metric)/(CPA metric). E.g. ROI of +10.4% means that CPC had a 10.4% higher ROI than CPA.
  • Only a single (geographically based) search campaign was measured. The total number of conversions during the time period of the test was in 3 figures.
  • I only measured sale conversions. This gives me less data than measuring downloads, but I think it is unsafe to assume the number of downloads correlates closely to the number of sales.
  • The PerfectTablePlan sale price is £19.95/$29.95. To calculate profit I only counted 75% of the price of a sale (the other 25% was assumed to cover the cost of support, ecommerce fees and other overheads associated with the sale).
  • Each of the time periods was a multiple of 7 days to avoid any issues with different results on different days of the week.
  • I ran CPC for an equal amount of time either side of the CPA test to try to balance out any seasonal factors.
  • Google conversion tracking uses Cookies and is therefore not 100% accurate.
  • PKI is Profit Per Thousand Impressions.
  • ROI is Return On Investment.

It wouldn’t be wise to draw any sweeping conclusions from one test with a limited amount of data. However I believe the results show:

  • A CPA campaign running for 9 weeks wasn’t able to outperform a mature CPC campaign. The CPC campaign had been running for over 4 years, but one would have thought CPA would have been able to use that pre-existing  data. CPA might have performed better if given longer. It would probably also have done better against a less mature CPC campaign.
  • Google didn’t rob me blind using CPA bidding. The CPA cost per day was only 5.5% higher.
  • The results weren’t hugely different. On the basis of the above results one might still conclude that CPA is superior to CPC as it requires less time to manage.

Harddisk woes

I was busy programming a few days ago when the machine froze for a few seconds, followed by an error message from the Intel Matrix RAID controller than one of the harddisks in my RAID1 (mirrored) pair had failed. Damn. This is the second time this has happened on this machine in the 2.5 years I have had it. I don’t seem to have much luck with harddisks. It might not be coincidence that it happened on one of the hottest days of the year. I removed the defective disk and put in an identical spare I had bought for such an eventually and rebuilt the RAID1 pair from the surviving harddisk. I felt quite pleased with myself.

A  couple of days later the same error message appeared. The new disk had apparently failed. Double damn. I rebooted a couple of times. No joy. It seems unlikely that an unused disk would fail within 48 hours, perhaps it is the RAID controller? I updated to the latest Intel Matrix RAID driver and swapped the two disks around. It still wouldn’t recognize the newly added harddisk, so it seems the new disk really is defective. I swapped the working disk with the harddisk that had failed a couple of days ago. The ‘failed’ harddisk booted OK! Something strange going on here.

I could probably send the failed disk back to Seagate, but I am simply not prepared to risk my sensitive data to save myself £50. I tried to order another identical harddisk but, inevitably, the identical model isn’t available 2.5 years later. The disks are:

SEAGATE BARRACUDA 7200.10 ST3500630AS 500GB 7200RPM 16MB SATA-300 3.5"

Apparently the .10 is the generation number (thanks to Dennis on the ASP forums for that).

I am currently running the machine on the one good harddisk, being very conscientious about my backups. I am undecided what to do next.

  1. Order a 7200.12 disk and see what happens when I plug it in.
  2. Replace the RAID controller. I believe the Intel Matrix RAID controller is firmware on a chip on the motherboard, so replacing it doesn’t sound like much fun. And it isn’t clear that it is the cause of the problem.
  3. Buy a new PC. This one is only 2.5 years old and it means stumping up a load of cash and all the hassle of moving everything over. I would rather wait until Windows 7 is released before I buy consider buying a new machine (I am thinking about getting someone like overclockers.co.uk to build me a lean, mean, 64-bit, compiling machine).

Option 1 sounds like the easiest and cheapest options. Any other ideas? Is it safe to pair a 7200.10 and a 7200.12 of the same size for RAID1?

DeepTrawl

deeptrawlI have been an enthusiastic user of Deeptrawl since the first beta was announced on the BOS forum. I run DeepTrawl on http://www.perfecttableplan.com every time I make major changes to ensure that there are no broken links, missing images or other website bugs. It has saved me quite a few potentially embarassing mistakes and helped me sleep a bit sounder at night. So I was very pleased when the author, Jonathan Matthews, asked me to do a day of consulting to assist in his efforts to move DeepTrawl sales to the next level.

The consultation ran to two long phone calls, lots of emails, some research and testing and a report with 21 pages of recommendations covering areas including: licensing, pricing, SEO, website, promotion, Adwords and usability. Here is what Jonathan had to say about the process:

I approached Andy Brice to do some consulting specifically because I wanted to increase sales largely through improving my marketing efforts.

Andy’s approach is one which I think those from a coding background will appreciate. From the first phone call it was clear his process was refined and methodical: not concentrating on fluffy marketing fads but rather on solid proven methods.

Throughout the consulting process it was clear that Andy was taking all the positive and negative marketing knowledge he gained making his own product successful & applying it to create unique recommendations for my own product.

The final report was delivered before the due date & on budget. Reading the report I was stunned by the wealth of information it contained. The report doesn’t just contain dry facts & statistics, the emphasis is clearly on actionable points. Reading Andy’s justifications for making his recommendations it’s clear that implementing them will ratchet up the effectiveness of my marketing efforts one step at a time.

My conclusion is that Andy’s consulting is probably the most cost effective investment I will ever make in my business; I fully expect the expenditure to be repaid many, many times over.

Jonathan Matthews, www.deeptrawl.com

If you have a website that runs to tens or hundreds of pages that you need to QA, I would definitely recommend  giving DeepTrawl a try. To sweeten the deal Jonathan is offering readers of this blog 20% off until the end of July (go to the buy page, click a ‘buy now’ button, then click ‘the checkout’ button, then enter the coupon code: successfulsw01 ).

Lazy instantiation marketing

lazy instantiationIt is often hard to know what sort of additional services customers will be interested in. Might they be interested in:

  • a yearly subscription instead of a one-off payment?
  • hosting their own server?
  • paying extra for 24 hour support?
  • a port of your product to Mac OS X?

You can implement the new service and then offer it to customers. But this can be a huge waste of time and money if it turns out nobody wants it. An alternative approach is to borrow the idea of “Lazy instantiation” from programming (also called RAII – Resource Acquisition Is Initialization).

Programs need to initialise various system resources, such as databases, files and hardware devices. It is generally considered good practice to only initialise these resources as they are needed. This is called “lazy instantiation” and results in faster start-up times and no wasteful initialisation of resources that turn out not to be needed. For example in C++ (glossing over various details of cost, smart pointers, copy constructors, error handling etc to keep the example code simple):

lazy_instantiation

So we can only access the resource by calling MyClass:getResource(), it will get initialised on first use and it will be cleaned up when MyClass goes out of scope. This much more elegant, efficient and less error prone than always initialising the resource at start-up or adding lots of checks throughout the code to see if the resource is already initialised.

A similar approach can be applied to marketing. For example, instead of spending days sorting out the intricacies of subscription payments, you just add the following to your purchase page:

Please email support@acme.com if you are interested in purchasing an annual subscription instead of making a one-off payment.

This will take you a few minutes. If someone emails you that they would prefer a subscription you reply along the lines of:

Thank you for your interest in purchasing Acme server via an annual subscription. We are currently assessing the commercial viability of a subscription approach. We will contact you if and when we decide to make Acme server available through annual subscription. But, for now, you can only purchase Acme server through a one-off payment, as detailed on our purchase page. … etc

If you get enough interest you go ahead and do the work to implement subscription payments. If you don’t – well, you didn’t waste much time on it.

MyClass::MyClass()
{
   myResource = NULL;
}

microisvcentral.com

MicroISV blog aggregator planetmiscroisv.com has died, for reasons unknown (Floyd, if you are reading this, I hope you are OK). Glenn Rice of backupbrain.com.au has kindly filled the gap with new aggregator microisvcentral.com. Thanks Glenn! Hopefully he will be able to fix the problem that is causing posts from this blog to not be displayed properly.

What are they smoking in Redmond?

I scanned the Microsoft ad below from a recent QBS catalogue.

microsoft_ad

click for larger image

I am still struggling to understand the underlying message. Use Team System and Microsoft will get its tentacles around you? I don’t know which is more unlikely, the basketball playing Cthonians or the athletic and good looking development team.