Planet MicroISV

Feeds:

To have your blog added (or removed) please email rich@buggy.id.au.

Host Unlimited Domains on 1 Account
ServerPronto Dedicated Server

Subscriptions

September 02, 2010

Poker Copilot: Coming in the next Poker Copilot Update

Do you have poker tracking software on your Mac that allows you to replay any hand and record it to a video? Something you can play in QuickTime, send to your friends or to online poker forums, or post on Facebook?

The next update of Poker Copilot will do this. One click on the replayer's "Record" button, and a video replay of the hand is saved to your desktop.

Screen shot 2010-09-02 at 1.33.30 PM.png

 

Seth Godin's Blog: Launching the ShipIt Workbook

Six months ago, I put together a workbook that would help Linchpin readers ship.

After testing it out on hundreds of people, it's now ready for retail sale. [UPDATE on 9/2--yesterday, the workbook was so popular it went to the top 10 of all books on Amazon. And they sold all the warehouse could take. So it's sold out... I have shipped more to them, but they probably won't go on sale until the 8th. I'll update this post then. Thanks guys.]

You can find details here, or jump right to the buy page. The goal? To make you uncomfortable at the beginning of a project (and successful at the end).

Here's the core idea: it's weird to write in a book. When you do, you're making a commitment. You're combining the open-mindedness that reading brings with the physical action of writing. If you do that at every step in a project--and if your co-workers do too--the seemingly slippery decisions that get made appear a lot more solid.

The ShipIt workbook is designed to be worked on in groups (hence the five pack) and it delivers. If you can confront the mechanics or the fear that's slowing down (or even killing) your project, it's easy to fix it now, before it's too late.

There's no digital version, because without writing things down, it can't work. But there is an mp3 interview that will help you get your arms around how each page works. I'm pricing this first batch at $3.20 each in a pack of five just for the launch. [PS Amazon is having trouble shipping to Canadians right now. It may take a while to figure this out, and all I can do is apologize...]

I hope you'll give it a try.

Most of the time, particulary in b2b and luxury sales, the competition is nothing.

"I will buy this treat or I will buy nothing, because I don't really need anything."

"I will buy your consulting services, or I'll continue doing what I'm doing now on that front, which is nothing."

None of the above.

"I will vote for you or I'll do what I usually do, which is not vote."

"I'll hire you or I'll hire no one."

While you think your competition is that woman across town, it's probably apathy, sitting still, ignoring the problem... nothing.

Stop worrying so much about comparing yourself to every other possible competitor you can imagine and start comparing yourself to nothing. Are you really worth the hassle, the risk, the time, the money? Or can't the prospect just wait until tomorrow?

Successful Software (Andy Brice): blog impressions

Well, not in pounds or dollars.  But, according to WordPress.com and to my considerable surprise, this blog has now had over a million impressions since I started it, 3 and a bit years ago.

OK, I know Joel Spolsky or Jeff Atwood probably wouldn’t get out of  bed for a meagre million impressions, but I still couldn’t resist crowing about it.

As you can see in the graph below the traffic is very uneven, dominated by a few posts that made it on to the front page of social news sites.

In fact over 40% of the total impressions come from just 5 (2%) of the posts:

Post Impressions
The software awards scam 234,909
10 things non-technical users don’t understand about your software 55,291
Lessons learned from 13 failed software products 51,676
Your harddrive *will* fail – it’s just a question of when 47,505
Where I program 47,075

Here are a few things I have learnt along the way:

  • As with many things in life, persistence is the key.
  • Choose your audience and write for that audience.
  • Pick a realistic posting schedule and try to stick to it.
  • Find your own voice.
  • The titles of posts are important.
  • Don’t expect lots of clickthroughs from social media sites to translate to lots of subscribers.
  • Get your posts proof read (thanks Claire!).
  • I am lousy at predicting how much interest a particular blog post will generate.
  • Don’t blog about blogging.
  • Be prepared to break the rules from time to time.

Although time is sometimes scarce for blogging I have lots of ideas for future blog posts. But if there is anything you would particularly like to see on this blog, please leave a comment.


Filed under: blogging, software Tagged: blog, statistics, wordpress

Gamecraft (Gregg Seelhoff): Pretty Good Solitaire Mac Edition 2.12 (and more!)

A new version of our premier Solitaire for Mac OS X is released. The autumn release schedule at Goodsol Development was kicked off with the release of Pretty Good Solitaire Mac Edition 2.12 on August 17th. Pretty Good Solitaire Mac Edition is a Solitaire program that (currently) supports 200 different solitaire games.  PGSME 2.12 is [...]

Micro-ISV Asia: RAD Studio XE Now Shipping with 4 Programming Languages

Embarcadero shipped RAD Studio XE on Monday. The successor to RAD Studio 2010 now includes 4 development environments:

  • Delphi XE: Develop native 32-bit Windows applications using the Delphi language. Since Delphi now generates Unicode applications, only Windows 2000 and later are supported.
  • C++Builder XE: Same as Delphi XE, but using C++ as the language.
  • Delphi Prism XE: Delphi Prism XE integrates into Visual Studio 2005, 2008, and 2010. If you don’t have Visual Studio, the VS 2010 shell is installed when you install Delphi Prism. Delphi Prism was first included with RAD Studio 2009. It allows you to develop .NET applications using all the frameworks supported by Visual Studio, including WinForms, WPF, and Silverlight. Delphi Prism uses a language that is very similar to Delphi, but not identical. Unlike the Delphi for .NET compiler that was included with RAD Studio 2005 to 2007, it is not intended to make it easy to share code between Win32 and .NET. Instead it is intended to fully exploit the features offered by the .NET framework.
  • RadPHP XE: RAD Studio XE is the first release that includes RadPHP. RadPHP is the new name of Delphi for PHP. The old name was a bit of a misnomer because while RadPHP is inspired by Delphi, they’re totally separate tools. RadPHP is a development tool that looks and feels very much like Delphi and includes a framework very similar to the VCL, but creates web applications using PHP and JavaScript.

All in all that’s quite a bundle. There are 3 editions: Professional, Enterprise, and Architect. Enterprise has all the Professional features plus dbExpress server connectivity, DataSnap (for multi-tier database applications), WebSnap, UML modeling, and build automation. Architect has all the Enterprise features plus database modeling using ER/Studio.

MetaGreg (Greg Moreno): Deploy a Rails 3, Sqlite3 application in Tomcat using JRuby

and have a Ruby version running side-by-side.

A few months ago I got interested in JRuby while researching for text mining algorithms. I found some gems but they are either unmaintained or inadequate while the mature libraries I found were written in Java. No problem! JRuby to the rescue. Thank God.

Next stop, I decided to take Rails 3 and JRuby for a spin. Incidentally, I will be on a 3-city Rails tour in the Philippines this September and since there are many Filipino Java developers, they might find it interesting to see their favorite Java platform works nicely with Ruby on Rails.

Setup

I will be using the following for this tutorial:

java 1.6 + JDK
tomcat 7.0.2
rvm 1.0.1
jruby 1.5.0
ruby 1.9.2p0

Further below, I outline how to install these software. First, let’s see my current environment.

$ more /etc/issue
Ubuntu 9.10 \n \l

$ java -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)

$ rvm -v
rvm 1.0.1 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]

$ jruby -v
jruby 1.5.0 (ruby 1.8.7 patchlevel 249) (2010-05-12 6769999) (Java HotSpot(TM) Client VM 1.6.0_20) [i386-java]

$ TOMCAT/bin/version.sh
Using CATALINA_BASE:   /usr/local/apache-tomcat-7.0.2
Using CATALINA_HOME:   /usr/local/apache-tomcat-7.0.2
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.2/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/apache-tomcat-7.0.2/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.2/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.2
Server built:   Aug 4 2010 12:23:47
Server number:  7.0.2.0
OS Name:        Linux
OS Version:     2.6.31-22-generic
Architecture:   i386
JVM Version:    1.6.0_20-b02
JVM Vendor:     Sun Microsystems Inc.

$ ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]

Install JDK and Tomcat

$ aptitude install curl sun-java6-bin sun-java6-jre sun-java6-jdk
$ wget  http://apache.mobiles5.com/tomcat/tomcat-7/v7.0.2-beta/bin/apache-tomcat-7.0.2.tar.gz
$> tar zxvf apache-tomcat-7.0.2.tar.gz
$> mv apache-tomcat-7.0.2 /usr/local

Of course, these assume you want to use 7.0.2 and you want it installed at your /usr/local.

Install JRuby, Rails 3

I assume you already have rvm installed. If not, I highly recommend that you do. I can’t imagine a Ruby developer not using rvm :)

$ rvm install jruby
$ rvm jruby
$ rvm gemset create railsjam
$ rvm jruby@railsjam
$ gem install rails

Try a sample app

I’ve created sample app for the RailsJam tour. This have several functionalities already and better than creating a Rails app from scratch.

$ git clone git://github.com/gregmoreno/railsjam.git

Update the Gemfile

You need a separate set of gems to make your Rails 3 application work with JRuby. For learning purposes, I want my Rails 3 application to work other than JRuby. To accomplish that, we need to specify what gems are needed solely by JRuby.

source 'http://rubygems.org'

gem 'rails', '3.0.0'

if defined?(JRUBY_VERSION)
  gem 'jdbc-sqlite3'
  gem 'activerecord-jdbc-adapter'
  gem 'activerecord-jdbcsqlite3-adapter'
  gem 'jruby-openssl'
  gem 'jruby-rack'
  gem 'warbler'
else
  gem 'sqlite3-ruby', :require => 'sqlite3'
end

(A copy of this Gemfile is available at the ‘jruby’ folder of the railsjam application.)

Now, it’s time to intall the gems.

# Must do this. Otherwise,  bundle picks up wrong version of jdbc
$ rm Gemfile.lock
$ jruby -S bundle install

Prepare the database.

The first time I worked on this tutorial, I needed to specify the jdbcsqlite3 as the database adapter. However, when I tried the tutorial on the same machine with a fresh gemset, it worked pretty well with just ‘sqlite3’. Just to be sure, I modified ‘database.yml’ to check for JRuby.

development:
  adapter: <%= defined?(JRUBY_VERSION) ? 'jdbcsqlite3' : 'sqlite3' %>
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: <%= defined?(JRUBY_VERSION) ? 'jdbcsqlite3' : 'sqlite3' %>
  database: /home/greg/dev/railsjam/db/development.sqlite3
  pool: 5
  timeout: 5000

When you deploy to Tomcat, it will be on ‘production’ mode by default. Since sqlite3 is file based and for simplicity, I used the same development database.

Now, do the migration.

$ jruby -S rake db:migrate

Deploy to Tomcat

We use ‘warble’ which is an excellent tool for packaging your Rails application. It packages everything you need to run your Rails application inside a Java container.

$ warble
$ cp railsjam.war  $TOMCAT/webapps

# start Tomcat
# assuming you arein $TOMCAT dir
$ sudo ./startup.sh

Check your Rails 3 application

# You should see the famous Rails welcome
localhost:3000/railsjam

# Play around with your application
localhost:3000/railsjam/users

Deploy Rails 3 using Ruby 1.9.2

Without shutting down your JRuby and Tomcat version, let’s try to run our app using Ruby 1.9.2

# In a new console
$ rvm 1.9.2
$ rvm gemset create railsjam
$ rvm 1.9.2@railsjam
$ gem install rails

# Assuming you are in the ‘railsjam’ folder
# This will install sqlite3-ruby gem
$ bundle install

$ rails server

Now, go play with your Rails 3 applications

# jruby + tomcat

http://localhost:8080/railsjam/users

# ruby 1.9.2

http://localhost:3000/users

In case you encountered some problems, here are some ways to solve them. If your problem is not listed here, you can email me. I only accept Paypal :)

JRuby does not support native extensions

You did not update the Gemfile to use the jdbc version of sqlite3. You will encounter this error when you install the gems.

$ bundle install
....
Installing sqlite3-ruby (1.3.1) with native extensions /home/greg/.rvm/rubies/jruby-1.5.2/lib/ruby/site_ruby/1.8/rubygems/installer.rb:482:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

/home/greg/.rvm/rubies/jruby-1.5.2/bin/jruby extconf.rb
WARNING: JRuby does not support native extensions or the `mkmf' library.
         Check http://kenai.com/projects/jruby/pages/Home for alternatives.
extconf.rb:9: undefined method `dir_config' for main:Object (NoMethodError)

undefined method `attributes_with_quotes’ for class `ActiveRecord::Base’

I first encountered this problem when doing migration.

$ rake db:migrate
rake aborted!
undefined method `attributes_with_quotes' for class `ActiveRecord::Base'

This is caused by an old version of your jdbc gems. In my case, sometimes bundler installs the old versions:

Installing activerecord-jdbc-adapter (0.9.2)
Installing activerecord-jdbcsqlite3-adapter (0.9.2)

As of this writing, the latest version is 0.9.7

Installing activerecord-jdbc-adapter-0.9.7-java
Installing activerecord-jdbcsqlite3-adapter-0.9.7-java

Bundler keeps installing 0.9.2

$ rm Gemfile.lock
$ jruby -S bundle install

no such file to load — sqlite3

$ rake db:migrate
(in /home/greg/dev/projects/jruby/railsjam)
rake aborted!
no such file to load -- sqlite3

‘sqlite3’ is the default name of the database adapter but with jruby, it should be ‘jdbcsqlite3’. (another) But, when I tried ‘sqlite3’ with a fresh gemset and a new machine, it went well. Anyway, just in case you run into the same problem in the future, add a condition in your database.yml

development:
  adapter: <%= defined?(JRUBY_VERSION) ? 'jdbcsqlite3' : 'sqlite3' %>
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

We’re sorry, but something went wrong.

If you see the famous Rails error message, you need to dig in Tomcat’s log files.

$ cd /usr/local/apache-tomcat-7.0.2/logs
$ ls -al localhost*

-rw-r--r-- 1 root root 1181 2010-09-01 00:17 localhost.2010-09-01.log
-rw-r--r-- 1 root root 1062 2010-09-01 00:18 localhost_access_log.2010-09-01.txt

$ tail -f localhost.2010-09-01.log

In the log file, you will see the errors like missing database.

org.jruby.rack.RackInitializationException: The driver encountered an error: java.sql.SQLException: path to ‘/home/greg/dev/tmp/apache-tomcat-7.0.2/webapps/railsjam/WEB-INF/db/production.sqlite3′: ‘/home/greg/dev/tmp/apache-tomcat-7.0.2/webapps/railsjam/WEB-INF/db’ does not exist

Related posts:

  1. Rails 3 upgrade part 1: Booting the application It’s time for another Rails upgrade! We all have our share of bad experiences and frustrations every time we upgrade a piece of software. Even for technical people who live...
  2. How to setup a Rails 3 app I finally decided to give Rails 3 a spin after beta was released 20 days ago. In geek time, that’s being a late adopter. But first, a warning. I’ve read...
  3. Rails 3 upgrade part 4: Prototype helpers and Javascript Rails 3 is embracing the unobtrusive Javascript (or UJS) mantra which is good because it is the right way; at the same time, it is bad because many applications will...


September 01, 2010

Poker Copilot: Comparing Mac Poker Tracking Software

Over at PocketFives, a concerned citizen is asking for advice as to which Mac OS X poker tracking software to use. Clearly I'm biased so I won't be answering. You, loyal blog readers and Poker Copilot customers are perhaps somewhat less biased. So I encourage to visit PocketFives and share your experiences. The wider web will be grateful.

 

OnStartups (Dharmesh Shah): 23 Tweetable Startup Insights From Seth Godin


Regular readers of this blog know that I’m a long-time admirer of Seth Godin.  He’s one of those “big thinkers” that has the added talent of being able to articulate high-level concepts in an immensely approachable way.  That’s a very rare, and dare I say remarkable intersection of abilities.Seth Godin on Startups

The following is a list of short, pithy insights that I’ve been collecting from Seth’s Blog over the past few months.  They were not all written specifically for startups, but I found them to be particularly relevant for entrepreneurs.  I, like many, think Seth's ideas deserve to be spread.

Enjoy.

If you find any of these particularly resonant, there’s a convenient link to tweet it. 

23 Tweetable Startup Insights From Seth Godin

1) Reliance on the tried and true can backfire. [tweet]

2) Sell the problem. No business buys a solution for a problem they don't have. [tweet]

3) Every activity worth doing has a learning curve. [tweet]

4) As the world gets faster, the glacial changes of years and decades are more important, not less. [tweet]

5) Cultural shifts create long terms evolutionary changes. [tweet]

6) Being 1st helps in the short run. Being a little more right pays off in the long run. Last is the worst. [tweet]

7) Build in virality. [tweet]

8) Subscriptions beat one-off sales. [tweet]

9) Treat different customers differently. [tweet]

10) Generate joy. Don't just satisfy a need for a commodity. [tweet]

11) Plan on remarkable experiences, not remarkable ads. [tweet]

12) Don't build a fortress of secrets, bet on open. [tweet]

13) You can get even more done if you give away credit, relentlessly [tweet]

14) Create scarcity but act with abundance. [tweet]

15) Competition validates you. It creates a category. It permits the sale to be this or that, not yes or no. [tweet]

16) There are lots of good reasons to abandon a project. Having a little competition is not one of them. [tweet]

17) It's not who can benefit from what you sell. It's about choosing the customers you'd like to have. [tweet]

18) The customers you fire and those you pay attention to all send signals to the rest of the group. [tweet]

19) 100 people doing something at the same time has far more power than 300 people doing it over time. [tweet]

20) Are you chasing or being chased? Are you leading or following? Are you fleeing or climbing? [tweet]

21) Get it right for ten people before you rush around scaling up to a thousand. [tweet]

22) Highlighting what's working helps you make that happen more often. [tweet]

23) Perfect is overrated. Perfect doesn't scale, either. [tweet]

Which is your favorite?  Any that I missed that you have in your secret stash?


Looking for other startup fanatics?  Request access to the OnStartups LinkedIn Group.  130,000+ members and growing daily.

Oh, and by the way, you should follow me on twitter: @dharmesh.


47 Hats (Bob Walsh): 35 Hands are better than 2

Post image for 35 Hands are better than 2

The Iron Law of running a startup or microISV is there’s never enough time to everything, especially the important but non-critical stuff. It takes lots and lots of time to do the strategic stuff – often you have to pump in some unknown number of hours just researching.

That’s why I’m excited by Fancy Hands – it’s fixed price virtual assistants for simple but time-consuming tasks. I recently used Fancy Hands (15 tasks per month for $35) to kick off two projects that have been stalled forever: engaging more with other startup bloggers and social media bloggers. Before you can engage, you have to know who to engage with – and that’s an easy task to hand off to someone else and get “good enough” results.

All it took was signing up with the service (FH uses Google Accounts for authentication), then send them an email for a task:

  • Name, email and blog URL and name for the top 25 Social Media Bloggers.
  • Name, email and blog URL and name for the top 25 software Startup Bloggers.
  • (something private)

Here’s something worth mentioning: total elapsed time between putting in these two requests (and a third) and getting results: 45 minutes. Put another way, for that 45 minutes it was like having 3 Bob VMs running in addition to yours truly.

Fancy Hands isn’t a virtual bookkeeper, fashion consultant or speechwriter: they focus on scheduling, web research, making appointments. But getting 15 of those things off your plate for the month is worth a lot more than $35 or the X hours it would take you. Here’s some of their most requested tasks:

  • Restaurant Reservations
  • Scheduling a car service / taxi pickup
  • Find the nearest place that has iPads in stock
  • Find the advertising rates (or contact info) for the top 10 [industry] blogs
  • Schedule a haircut with [stylist] on Friday after 1pm
  • Call [three bars] and find out if they have a private room available for rentals
  • Call [primarily offline company] and get the status of order number xyz
  • Find a couple upholsterer options near where I work
  • Call TD Bank and ask how many checks I can use for free on a standard personal account
  • Call some hotel and extend my stay for three nights instead of two

I’ve been cajoling Mason Levey to add a more technical track to deal with the real IT pains in my butt like:

  • Why are my iCal alarms doubled up?
  • What’s the best online service out there to let people fill in a short questionnaire and book my time?
  • A proven recipe for setting up 3 WordPress blogs on a new VPS.
  • Best current tool for winnowing out low value Twitter follows?
  • What’s the best automatic Twitter background maker out there?
  • What should my Facebook privacy settings be?

There’s a huge market out there for these kind of Internet-related tasks – not just startups and IT people, but all those hundreds of millions of people out there being pulled day by day and step by step into our net-centric world. Give Fancy Hands a try (and here’s a StartupToDo.com Guide on Fancy Hands with a nice discount code), and bug Mason to offer an IT track: it would be awesome!

(P.S – and if you can make any of those IT pains go away, let’s talk: bob.walsh@47hats.com.)

Seth Godin's Blog: Responsibility and authority

Many people struggle at work because they want more authority.

It turns out you can get a lot done if you just take more responsibility instead. It's often offered, rarely taken.

(And you can get even more done if you give away credit, relentlessly).

Casey Software: OpenCamp 2010 Recap

OpenCa.mpThis past weekend, I had the opportunity to attend the first OpenCamp in Dallas, TX. While I've been to a few of the CMS-focused events - WordCamp Mid-Atlantic, WordCamp NYC, and DrupalConDC - this was my first time at one of the crossover events. In one event, we had some of the best and brightest from each of the communities in one place presenting, talking, drinking, and generally arguing over the intracies of each of their systems and why the other guy was completely wrong.

Alright, I'm kidding.. most people thought everyone else was just mostly wrong.

First, some high points:

  • The venue was fantastic. The wifi worked pretty consistently. The food (and coffee!) was reasonably priced. Lunch each day was well-done and generous and delivered by an excellent staff. If you're ever in Addison, TX, check out the Crowne Plaza.
  • More importantly, the event gathered some fantastic minds from all over the place. I had dinner with a significant portion of the Joomla! team including Open Source Matters President Ryan Ozimek. I met most of guys that organize DrupalCamp Dallas and chatted on how Austin & Dallas might collaborate. And of course, I had the chance to meet with friends and colleagues like Josh Holmes of Microsoft and make some new acquaintences like Caleb Jenkins and many, many others.
  • Finally, attending a regional conference was great. The vast majority of people here lived within 200 miles and many were from right there in Dallas. A conference has a completely different vibe when you're in someone's backyard. As "hosts," they work hard to take you to the good restaurants and make sure you have a good time.

Next, some low points:

  • The vast majority of the talks were not technical in the slightest. Sure, they mentioned technical concepts and a few even went into them.. but considering the flavor of conferences I normally attend, this was a little jarring. It's not that this was bad, just a little unexpected.
  • Next, the presentation format was just plain screwy. Thirty minute sessions without transition time are terrible. It meant each session was trimmed down to 25 minutes or more like 22 minutes if they left room for questions. Since 15 minutes is normally considered a lightning talk, this just seemed awkward. That said, some of the sessions were a full hour.
  • Finally, some of the presenters were just plain terrible. They all seemed to know their material, but it was apparent that some rarely stepped away from their computers. To be an active contributor in Open Source, a person has to be smart and passionate. The passion was definitely lacking.

Some final thoughts:

While the sessions were not a great match for me, the "hallway track" was fantastic. Through a combination of dumb luck and excellent introductions from good friends, I managed to spend quite a bit of time talking with smart people:

  • I learned more about Drupal modules, permissions, and how to abuse them for fun and benefit;
  • I heard some details about the inner workings of the Joomla! team;
  • I argued about the GPL more than I care to consider;
  • I gathered some patches on code I manage and shared a few with others; and
  • I learned how to make our (web2project's) stuff work better on Microsoft's infrastructure.

Would I attend OpenCamp again?

Yes, but I would go in with clearer expectations and take a more active role in the Birds of a Feather schedule. I know there were people actively looking to share technical ideas and compare implementations. It's just a matter of finding and gathering them in one room. Finally, the best but most unexpected part of all..

I got to spend a good amount of time with people I call friends and may have made some new ones.

August 31, 2010

Seth Godin's Blog: Just launched: Linchpin on the Vook on the iPad

The details are right here. Created by Vook, based on the hardcover.

Includes new video and interviews with some interesting folks...

The long tail challenge of the iPad store is getting more and more obvious to people. The ratio of "shelf space" to inventory is about the worst of any retail experience in the world. There are more than 24,000 apps listed in the iPad store, and yet the front window (equivalent to the window of a bookstore) shows the user six choices. The spotlight coverflow up top shows another sixteen, fairly randomly. Meaning there's a little worse than a one in a thousand chance that your app will appear in front of someone interacting with the store at the first level.

I have no doubt that as Apple sees revenue increase from this source, they'll do a much better job of crosslinks and browsing. But, once again, the lesson of the long tail is this: you can't count on the gatekeeper to do your promotion for you. Getting picked feels like a needle in a haystack, and the value of permission, of connecting directly to people who care instead of ceding control to a middle man, is at the heart of building an asset. Someone is going to be the gatekeeper, and it should be you.

JitBit Software (Alex): How To Bend The Universe

I know a Russian guy who's grandfather has bent the universe once.

Long time ago he worked at a plant and desperately needed a special kind of grindstone for his machine. The grindstone of a specific diameter and shape that he could not find anywhere, it's not something you just buy in a hardware store.
"I kept thinking and thinking about this grindstone" - he said - "It was the only question sitting in my head. I went to sleep and woke up with it. I really needed that stone, I would love to buy it, but where? And all of a sudden - I just found it. Just like that, lying on the ground near the bus stop. I've bent the universe."
via Roman

It's exactly like in sports - when your body follows your eyes. I played tennis for 10 years when I was a kid and my tennis coach used to say "Look! Look ahead. Look where you want the ball to be, your body will do the rest."

15 years later, on the racetrack, my motorcycle coach used to say "Look! Look ahead! Don't look at the tarmac, look into the corner and your body will do the rest and make the bike follow your look. Don't use the handlebar to turn, use your eyes instead".

Just like the body follows your eyes, the reality follows your thoughts. Keep thinking, keep trying. Keep visualizing your dream, turning a dream into a goal. Then add deadlines to your goal and make it real. Keep your eyes on the goal and your hands will do the rest.

47 Hats (Bob Walsh): Continuous Partial Exercise

Post image for Continuous Partial Exercise

I’m about 40 pounds overweight; worse, odds are good you are too.

If you are reading this you probably spend your days in front of a computer, your nights in front of a computer and year by year your weight is creeping up.

The old industrial way to stop looking so bovine was to go to a centralized facility on a regular schedule (a gym) and perform specific movements in a specific way. As an added bonus you might meet a someone attractive.

Worked for me 25 years ago; not so much now when I’m dealing with ten times more work, a hundred times more people and a thousand times more things clamoring for attention.

With apologies and kudos to Linda Stone and her meme of Continuous Partial Attention, Factory exercise is so 20th century. It’s time for Continuous Partial Exercise. Spend a few bucks and load up your iPhone with Hundred Pushups, Two Hundred Squats, Two Hundred Situps and for extra credit if you have a chinup bar, 20 Chinups. When you’ve been working for an hour or two, fire up one of these apps and do it.

Don’t have an iPhone or don’t like these apps? There are others. If all else fails, find a fitness site with a mobile interface.

If your manager asks what you are doing, tell them your lowering the company’s health care costs. If the office Mr. Negativity chimes in, tell him you’re planning to outlive him. If someone cute asks you, ask them to join in, or invite them to do some social group exercises like Robert Scoble is.

The point is use disruptive postindustrial technologies to disrupt some of that fat that’s dragging you down.

Joel on Software: A new WordPress Stack Exchange

We’ve been opening new Stack Exchanges left and right on a variety of topics. In almost every case, the Stack Exchange appears to duplicate the content of an existing community. For example, our WordPress answers site (now in beta) covers the exact same material as WordPress.org’s existing forums.

This is nothing new to us at Stack Overflow, which purported to cover the exact same material as hundreds (if not thousands) of other programming sites. There’s no rule that says that there needs to be exactly one Q&A website per topic.

There is, however, a compelling case for the Stack Exchange technology. WordPress.org’s forums don’t have voting, so you have to read through every answer and decide for yourself which one might solve your problem. They don’t have reputation, so there’s no way to see whether you’re getting an answer from someone who knows what they’re talking about. They don’t have wiki-style editing, so collaboration is impossible. You have to log on to ask or answer a question, so the burden of participation is higher. Stack Overflow is simply better than traditional forums, which is why it largely replaced proprietary forums. I remember hours of discussion with John Resig and the folks at jQuery who couldn’t decide whether to replace the jQuery Google Group with a forum or with a Stack Exchange. Ultimately it didn’t matter that much, because most of the jQuery Q&A activity happens on Stack Overflow anyway.

One day, the features that are standard on Stack Exchange will be copied everywhere. Until then, we’ll keep churning out new sites.

Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the Joel on Software Job Board: Great software jobs, great people.

Poker Copilot: Poker Copilot 2.61 Now Available

I didn't want to release an update so soon but it is necessary due to three issues - one caused by me, one by an UltimateBet bug and one by Winamax releasing an updated and better hand history format.
What's fixed:
  • PokerStars Tournaments are now imported again correctly. Sorry all for screwing up this important feature in last week's update.
  • UltimateBet's (aka UB's) all-new broken currency format is now auto-corrected by Poker Copilot. They have been showing $3.50 as $3.5.
  • Winamax have fixed some problems in their hand history format which means that Poker Copilot, as far as my tests tell, now gives correct stats for Winamax.
What's changed:
To sweeten the deal there are a couple of minor hand replayer improvements.
  • Once you fold, the hand replayer still shows your hole cards, but in a faded colour.
  • The hand replayer shows your info with a different background colour to the other players. This lets you find yourself in the replayer immediately.
You can see these replayer tweaks in this screenshot of three-of-a-kind vs straight vs flush:
Screen shot 2010-08-31 at 2.08.47 PM.png


Update Instructions:

1. Download the latest version here.
2. Open the downloaded file.
3. Drag the Poker Copilot icon to the Applications icon. If prompted to replace an existing version, confirm that you do want to replace.

Now you're done and ready to hit the tables.

Seth Godin's Blog: The corporate conscience

There isn't one.

Corporations don't have a conscience, people do.

That means that every time you say, "It's just my job," or "My department has a policy," or "All I do is work here," what you've done is abdicated responsibility--to no one.

It's convenient and even comfortable to blame the anonymous actions of many working in concert on a evanescent brand or organization, but that starts you on an inevitable race to the bottom. Organizations have more power than ever before. They are better synchronized, faster, and possess more tools to change the economy and the people in it than ever before. And the only option available to the rest of us is for individuals to take responsibility (it's not given) for what they do and how they do it.

The very same tools that permit organizations to synchronize their efforts are now available to you and to me. I guess the question is: will we use that power to humanize the systems we've created?

PS It's not just about being a good citizen: when bad behavior comes back to hurt the company, it hurts you, too.

August 30, 2010

Neil Davidson: Pricing a breakthrough product

If you’re a horse rider then coming off your horse is something that’s going to happen to you occasionally:

This rider survived – walked away, in fact – because he was wearing a special protective jacket.  As the rider fell, a ripcord attaching his jacket to the saddle was pulled. By the time he hit the ground, a CO2 canister had inflated an airbag inside his jacket and cushioned his fall.

How do you price something like this? If you’re selling a product people are familiar with – a fizzy drink, a car, a house –then it’s straightforward. You look at the price everybody else is charging and charge a little bit more or a little bit less depending on whether your product is better or worse than the competition. You know that your customers will look around at similar products in the same category to decide if they’re being charged a fair amount or not.

But if you’re creating an entire new category then you’ve got the chance to set the fair price for all products in that category. Customers try to find reference point so they can judge value. If there aren’t any obvious reference points within their immediate grasp then you can create them. In this case, you’d get customers to think about the price of their life (or that of their child). Or you’d encourage comparisons with similar categories, and then emphasize the differences (it’s like a normal jacket, but ten times safer; it’s more likely to save your life than a $500 hat).

There’s something else even cooler about this jacket though: its versioning. Versioning lets you sell different editions of the same product at different prices. A premium version of a product should target a distinct group of customers who get additional perceived value from the extra features, and who are able and willing to pay for it.

In software, this is often done with ‘standard’ and ‘pro’ versions (if you work in a corporation you’ll want to use Outlook and your company will pay for a premium edition of Office. If you’re using it at home, you’ll get the entry level edition and get fewer features). Fast food outlets do it with portion size (hungry customers will pay more money for more food). Airlines do it with travel classes. Normally, the extra money a consumer pays has little to do with the extra cost to the provider (some more bits and bytes, a handful of fries, some more legroom) – it’s simply about finding multiple price points to fit different customers’ preferences.

The riding jacket gives a vivid example of how versioning can be done on anything customers perceive as valuable. You can buy the standard edition of this jacket for about $580. But you can get it in pink for $725. It’s not a meaningful, practical distinction. A pink jacket is no more likely to save your life than a black one. It costs the manufacturer no more to manufacture it in pink than in black. It delivers no more value. But it’s a difference that some people are willing to pay for.

It’s clever in another way too. Since the jacket is innovative, and people lack reference points, it creates its own reference point. Suddenly, the $580 seems like good value.

For product versioning to succeed you need to make sure that:

  • The features you’re adding provide extra value to a subset of your customers
  • Those customers can, and will, pay extra for it
  • There is a coherent story that identifies those customers, and why they need the extra features (‘hungry people want and will pay for more fries’)
  • This coherence is important. If all you’re doing is adding a bunch of features to your product or if the people who value those features aren’t the people who can pay for them, then you’ll struggle.

Pricing’s a fascinating topic. It’s often far more about psychology ($580? Is that expensive? Is it cheap? Am I being ripped off? I want it in pink!) than economics (would I rather spend $580 on a jacket or on a holiday? How much utility would I derive from those two options?). If you want to learn more about product pricing then check out my free eBook (‘Don’t just roll the dice – usefully short guide to software pricing’).

Enjoyed this post? Follow me on Twitter or subscribe to my RSS feed

47 Hats (Bob Walsh): Reducing Decision Fatigue

Post image for Reducing Decision Fatigue

The brave new world we are building online has it’s share of brave new problems:

  • Does the Internet remain a level playing field or do large corporations “help” it by picking and choosing whose bits are more important (theirs)?
  • How do we deal with the Media Tsunami that is growing to truly apocalyptic size day by day?
  • Humans can only make so many decisions a day: after that our brains turn to mush. Between the web and social media, our supply of decisionmaking is wiped out before we start whatever we do to earn money.

He’s one answer to that last problem: reduce the number of trivial decisions you make each day by making checklists for all the routine stuff. Then instead of wasting XX decisions feeding the cats every day, you conserve those decisions for things that matter.

Thanks to MacRae Linton for turning me on to Checklist Wrangler today – it’s far from perfect, but if you pair a bluetooth mac keyboard to you iPhone, you can easily and quickly make checklist templates that will auto generate as you need them. Not a perfect solution, but it helps reduce decision fatigue.

As you may have noticed, I’ve been fairly quiet here of late. That’s changing, but as part of that change I need to know if continuing the weekly MicroISV Digest is of value to you. If it is, let me know, and please vote!
View Poll

A Smart Bear (Jason Cohen): How a startup should leverage a virtual assistant

Tweet this!

rob_wallingRob Walling generously allowed me to reprint this excerpt from his new book, "Start Small, Stay Small: A Developer's Guide to Launching a Startup" available in paperback and Kindle from Amazon and in PDF and ePub from StartupBook.net.

Rob is one of the most successful "micropreneurs" — creators of small, cash-generating startups frequently sold for cash. He blogs to 10,000 web entrepreneurs at Software by Rob and co-hosts the podcast Startups for the Rest of Us.

Introduction

I receive essentially the same reaction when I mention that I use virtual assistants, and that I recommend them for anyone starting a startup. It's a mix of shock and excitement.

They're shocked I've been able to pull it off, and excited at the thought that they might be able to do the same. The conversation almost always turns to questions about where to find virtual assistants and how a startup can use one.

This article intends to answer those questions.

What is a Virtual Assistant?

A virtual assistant (VA) is a remote worker hired to complete tasks you should not be doing as the founder of a startup.

These can be research tasks, like finding every tech blogger who blogs about cats, repetitive tasks like creating 100 affiliate links for products in a Word document, or ongoing tasks like monitoring a handful of job boards and posting new jobs to your website.

The term VA has grown to describe any remote contract worker, including people who help with audio editing, video editing, bookkeeping, webmaster tasks, link building, and so on. A VA can be domestic or international, as long as they have a computer and an email account.

Why Should My Startup Use a Virtual Assistant?

startups-for-rest-of-usOutsourcing to a virtual assistant will dramatically reduce the time you spend on administrative tasks, and increase the time you can commit to growing your business.

The value proposition of a VA deals with how you monetize your time. If you monetize it at $50/hour and you can pay a VA $6/hour to handle administrative tasks, this frees up time for you to create real value in your business by developing new features or expanding marketing efforts.

Performing tasks you could pay someone else $6 to accomplish is a foolish use of an entrepreneur's time.

My VAs have saved me literally hundreds of hours over the past few years.

[Editor's Note: This is especially true for you starting up while still employed where your time is scarce and your existing income should be used to buy more of it.]

Case Study: How I Launched One Month Earlier Using Outsourcing

More than two years ago, my business partner and I discussed launching a hosted version of our ASP.NET invoicing software, DotNetInvoice.

We developed the plan and task list, and estimated the effort at around 160 hours including development time needed to make DotNetInvoice a multi-tenant application. But given the heavy competition in the hosted invoicing software market and the level of effort of the task, it was continually placed on the back burner.

The Shearing
After our initial estimate, every six months for the past two years we've revisited the idea of a hosted version until one day in November of last year.

On this day we stopped looking at the hosted version as a new product line, and started looking at it as a market test; to see if we could build enough of a customer base to warrant a major investment in the hosted invoicing market space. With that in mind, things started flying off our "must-have" list.

One large piece we removed was automating sign-up and provisioning of a new hosted installation.

In an ideal world, when a customer wants a new hosted account they would fill out a web form with all of their information and their new hosted version would be ready in 30 seconds. But that amount of automation — given the fact that we have to create a new sub-domain, a new database, and copy physical files — would take a substantial amount of time to develop and QA.

So we tossed it.

Another feature we left on the cutting room floor was the need for a custom purchase page; a page where someone enters their details to make the purchase. In a desperate attempt to bring this entire project down to less than two days work we simply utilized PayPal subscriptions.

Not the optimal approach, but it works quite well for testing out an idea before we invest another day into this project.

Iteration vs. Automation
As a developer, the features we dropped seem like a necessity from day 1. Not automating this process creates the ongoing repetitive work that computers are designed to handle. Manual work — this is what computers are supposed to save us from!

But by getting over the need to automate everything to infinite scale and putting a VA in charge of manually creating new hosted accounts, the time investment to get this feature launched dropped from 160 hours of work to about 10 hours.

I can hear the cries of developers around the world as I write this: "You can't launch a half-baked solution! You'll never go back and fix it!"

Most of us have worked in corporate environments where you're never allowed to go back and refactor code. This burns into our psyche that you don't want to launch a semi-functioning solution because you'll never have time to go back and fix it.

But the benefits of being my own boss and being a tiny software company are that I can come back to this anytime. In fact, the day the amount of money paid to my VA for handling this task exceeds a certain amount, I will be very motivated to automate it.

Ideally, by the time I code it up, we'll have many customers using the platform which means I'll be working on a product I know is viable, and that's paying for the time I'm spending to automate it.

Agile Development, meet Agile Business.

Through a bit of outsourcing to a VA, you can get to market with less up-front expense and in dramatically less time than if you try to automate everything.

Had we chosen to automate everything, the worst potential outcome would have been investing 160 hours of time (a huge amount of time for a startup), and then scrapping the whole thing. When you're working on a small team you can't afford to throw away that much time.

The Lesson
The lesson is that before you launch your product, think about the processes you can avoid automating.
How about reminder emails? How about monthly billing? Could a human being run a report once a month and send emails or charge credit cards?

This is not the paradigm we typically think of as developers because we're used to enterprise IT shops where everything has to scale infinitely.

As a startup, you'll have plenty of time before you need to scale, and you may never need to scale if the idea doesn't work. Every hour spent writing code is wasted time if that code could be replaced by a human being doing the same task until your product proves itself.

The Two Points When a VA is Most Helpful

There are two key points during the life of your startup where your life will be much easier if you use a virtual assistant (VA):

  1. While proving out your product/market
  2. After your product launch

Let's look at each one.

Point #1: Developing a Proof of Concept

In the DotNetInvoice case study above, I used a VA to short-circuit my product development time so we could begin to prove out the product's concept with much less effort than if we had built everything in code.

As I've automated pieces of my businesses, I've noticed an interesting trend: nearly anything I try to automate is easier to outsource first, then automate down the line once the volume warrants it.

The reason for this is that at any given time you're likely to have, say 30 tasks on your plate, and you should be trying to remove as many as possible from your task list; both one-time and ongoing tasks.

Out of 30 tasks you might be able to outsource 6 or 8 of them tomorrow if you spend 2-3 hours today writing up the processes. Compare that with automation, which can take a week or more to get each task off your plate since it takes a lot of code to automate a task.

As a startup, one of your advantages is that you move very quickly. You can roll out new features much quicker your competition. And being able to manually process some parts of a task can often reduce your development time by 50-80% which allows you to get the feature out the door and in front of customers.

If customers decide to use it, then you can automate it. If not, you can throw what little time you spent on it away. You develop the minimum required functionality to make the bare bones feature work; nothing more. You scaffold the rest with a human being; your VA.

Then, as needed, you improve the back-end automation iteratively.

Your startup time plummets to near zero even though your maintenance costs are a bit higher since you're paying someone an hourly rate to handle the task.

But that's ok, because every task you outsource to someone making $6/hour is a task that frees you up to develop new features and focus on marketing — things that make you a lot more than $6/hour.

In addition, outsourcing provides you with a written process for the task that serves as a blueprint if the time comes later to automate it.

Point #2: After Your Product Launch

The next most important time to use a VA is once your product has launched and you need to begin supporting customers.

Customers make it necessary to put processes in place for marketing, sales, support, and back-end admin tasks. Any ongoing work that can be described in a written process can be outsourced to a VA and save incredible amounts of time for the founders.

If you do not outsource these tasks, they will get in the way of work that's truly productive for your business.

While most entrepreneurs feel like they need to keep the reins on level 1 email support, level 1 sales questions, manning the live chat window on your website, directory submissions, minor HTML tweaks, keyword research, link building, following up on canceled subscriptions, and running month-end reports, getting these tasks into the hands of a competent VA frees up vast amounts of time that can be spent growing your business.

And the cost is negligible.

Don't fall into the trap of needing to handle everything yourself. You are now an entrepreneur.

Case Studies

Here are two case studies to give you an idea of how you might use a VA in your own startup, whether serving a core business function or as administrative support.

Case Study #1: Market Research

In 2009, I launched the Micropreneur Academy, a private membership community for startup founders. For the launch event I wanted to contact several bloggers in the startup and microISV space.

I have a list of blogs that I read and quickly added them to my list to send a personal, targeted email to each. I receive enough pitches each month to know that sending a mass email to bloggers doesn't work.

In the back of my mind, I knew there were other startups/microISV blogs out there that I don't read, but I didn't want to spend the time to track them down. More importantly, I didn't want to spend the time trying to find their contact information. Enter my VA.

I tasked my VA with finding blogs that deal with startups/microISVs and rank in the top 100k in Technorati. The deliverable was a Google spreadsheet containing the blog URL, blogger's name and blogger's email.

The final spreadsheet contained 28 blogs. It was up to me to go through each one and become familiar with their content, determine its relevance to my message, and craft a targeted and personal email. Many blogs dropped off the list after a quick glance, but in the end the time saved by delegating this research task to a VA was well-worth my $12.

Case Study #2: JustBeachTowels.com

JustBeachTowels.com was an e-commerce site I purchased with hopes of a high level of automation.

The problem is that beach towel dropshippers are not the most high tech businesses, and none of them offered any kind of API for order placement. All orders had to be manually placed through their web-based shopping carts.

In the early days, I planned to build a screen scraper to pull orders from my database and automatically place them with the four dropshippers I used, but realized the level of effort and QA that would be required for this were substantial and the resulting interface would be brittle due to the screen scraping.

Instead, I assigned a VA to place all of the incoming orders. I never revisited automation due to the lack of ROI on the time it would have taken to build the screen scraping interface.

Running the site using a VA instead of automation saved me time in the long run, as I would never have made back my initial time investment on the 50+ hours required to fully automate the order placement process.

Easing Into a VA

Outsourcing is a learned skill, just like writing code. If you rush into it too quickly, you'll wind up disappointed with the results. This is most often due to the fact that you don't yet know how to work with a VA.

One of the plusses of having a VA is that you can ease into them over the course of several months. Since utilizing a VA is a learned skill, you are best to start slowly by finding someone who will work on individual tasks, then move to part-time if needed, and finally to full-time.

These hiring arrangements are described below:

  • Task-based — ($3-10/hour overseas, $12-50/hour in the U.S.) You assign your VA an individual task and give them a deadline and maximum time to spend on the task. Since your VA works for other clients, they are in charge of prioritizing all of the tasks they receive. Task-based VA's are a great starting point to learn the ropes of delegating.
  • Part-time — ($2-7/hour overseas, $10-$40/hour in the U.S.) Part-time VA's are dedicated to you for a certain portion of their week (typically 10, 20 or 30 hours). Part-time VA's are cheaper by the hour than task-based VAs, but you need enough work and experience to keep them busy during the time you are paying for.
  • Full-time -- ($1-$5/hour overseas, $8-35/hour in the U.S.) As you might imagine, a full-time VA is a lot of responsibility. While offering the lowest hourly rates, you need 160+ hours of work to keep them busy. If your VA is self-managing, you can lay out tasks a month at a time. If they need supervision, it's probably not worth bringing them on full-time.

The Steps

The key to learning how to work with a VA is experience. The question is: how can you get started easily and with little risk? The steps are:

  1. Find a VA
  2. Start with a single task and gradually increase the amount of work as you gain comfort
  3. If things don't work out, find a new VA

When I began outsourcing three years ago I found that when I received the finished product I was elated that I hadn't spent 3-4 hours doing it. This made me realize how many other tasks I was able to accomplish during that time frame.

Step1: Finding a VA

I've had the best results hiring VA's in the Philippines. This is not to say that the U.S., India, Bangladesh or other countries do not have quality VA's, but the Filipinos learn English in school, do not tend to be entrepreneurial (thus are less likely to steal ideas), and are culturally service-oriented.

You may find another country to be more compatible with your management style, but after working with 10+ VA's, I now work almost exclusively with Filipinos. The main exceptions are my audio and video editors in the U.S. and Canada.

In my experience, you will be best off with one of a few choices when looking for a VA:

  1. Task-based VAs
    • Search ODesk under Admin Support -> Personal Assistant or Other.
    • Search Google for "virtual assistants." Typically the best looking websites are the firms that have their act together.
    • Search Elance under Admin Support -> Admin Assistant.
  2. Part-time VAs
    • Search ODesk under Admin Support -> Personal Assistant or Other.
    • Search Google for "part-time virtual assistants"
  3. Full-time VAs
    • Search ODesk under Admin Support -> Personal Assistant or Other.
    • Search Google for "full-time virtual assistants"

I've had positive results and have personally hired a VA using every method listed above.

My current favorite is ODesk.com. I've had exceptional luck with them, and their project management tools are helpful in making sure your VA is working on your tasks. Their time clock takes screen shots of the VAs screen at random intervals so you can see the task they are performing.

A Note: Solo vs. Team

Many VA's work in teams, whether under the umbrella of a single company, or in a loose affiliation.

Solo VA's tend to be cheaper than team or larger firms.

For recurring work that's critical to your business, it's nice to work with a team. You will typically have a primary VA but when he's on vacation his replacement will step in.

For ongoing work that's not terribly time-sensitive, I've found solo VA's work out well.

When getting started, my advice is to stick with a larger VA firm. You will pay a little more but you will have more reliability, higher security and will be able to easily find a replacement when you need one.

How to Evaluate a Potential VA

My first piece of advice is to avoid spending too much time worrying about screening your VA before you hire them. In the end, how well they work out depends entirely on how well they accomplish their tasks.

In other words, reliability and the ability to understand your instructions and ask good questions are the key factors. Without hiring someone you can't get an idea about their reliability; only about their ability to understand and ask questions.

To do that, you need to evaluate their written English (or whatever language you will be working in). This includes hiring U.S.-based VAs; competent written English skills are not a given even for native speakers.

If you're looking for general help, the only noticeable difference between the 10 VA's you are screening is their hourly rate and their ability to speak and write English.

If you need specialized work performed, you may have an additional requirement that they also know how to edit audio, for example. In that case, ask for samples of past work and experience doing the exact task you will have them to do.

The best way I've found to evaluate English skills is to email back and forth a few times, asking 2-3 basic interview questions. This will be a good indication of how well they will be able to understand your instructions, and their responses are a good indicator of how well you will be able to understand their questions. The best approach is to email with 3-5 VA's at once to speed up the process.

If you're working with a VA firm, I recommend requesting someone with excellent written English, and performing the step above with that person. If they don't live up to your standards, request a new VA and repeat the process.

In the past I've asked for writing samples but this has failed me. The problem with asking for writing samples is a VA can easily send something that's been heavily edited, or a piece written by someone else. During an email exchange you can be certain that you're catching a true glimpse of their English abilities.

Step 2: The First Task

Properly utilizing a VA is a learned skill. Very few developers will do it right the first time, which leads many who try it to give up after the first attempt. To keep you from falling into this trap, we're going to look at the best way to delegate, describe and limit tasks in the section below.

After determining your VA has solid English skills, the next step is to send them your first task. You should be able to tell after one task if they are going to work out.

If you've never worked with a VA, you should assume they are not technically minded. They will have basic computing skills but are nowhere near techies, so you have to prepare instructions for them as if they were your mom or dad (or at least my mom or dad).

The following is unlikely to work:

Open a command prompt and type 'ipconfig'

But this should:

In your start menu go to the Run menu, type 'cmd' and hit enter. Once the window opens type ipconfig and hit enter.

With that in mind, here is how I suggest you assign your first task:

  • Back everything up before you let them touch production files. It's unlikely they will be malicious, but they might accidentally break something.
  • Provide detailed instructions in bulleted/numbered format.
  • Screenshots help enormously. Screencasts are even better. I record multiple screencasts each month for my VAs. Jing is perfect for this.
  • Timebox your requests. As an example, let's say you have twenty blog URLs and you want your VA to find the contact information for each one (whether it's an email address or a contact page). Provide the list of URLs to your VA and indicate they should work for 1 hour and then update you on their progress. In this manner you can both check if they're doing it right, and see how long it's taking them. If it's taking longer than you think it should, ask how you can help.
  • Assume they are not as fast as you are. If 1 URL takes you 1 minute, assume it will take your VA 5 minutes at first and they will eventually get down to 3 minutes. They will never be as fast as you are. But at $4-6/hour it's hard to complain.
  • If you have a timeline, spell it out (e.g. "I need these by tomorrow"). If not, let them know you can wait 2 days for the results. They work when we are sleeping so you'll never get anything the same day.

Step 3: If Things Don't Work Out, Find a New VA

Finding a VA is about trial and error. I've worked through more than 6 VA's to find the folks I work with today. It's a similar process when finding a designer, developer, or any outsourcing partner. You can only tell so much from a resume; the best way to evaluate is to try them out, and this means if they don't work out you should make the decision quickly to find someone new.

It's critical that you feel comfortable with the person you're working with. It's better to cut someone loose early in the relationship before you've trained them on the inner workings of your business.

If you're working with a VA firm it's easy: simply ask for a new VA and if you can, give a specific reason why the first one did not work out.

If you're using an individual, head back to your stack of candidates from Elance, Google or ODesk. The odds are low that you will find someone great on your first try. But finding someone great will make a huge difference in the success of your outsourcing effort.

Did you make it this far? Awesome, let's talk some more.

Let's continue the discussion in the comments!

Tweet this!

Software by Rob: Guest Post on A Smart Bear: Virtual Assistants and Outsourcing

A good chunk of chapter 6 from my startup book went live on the interwebs this morning as a guest post on Jason Cohen’s popular startup blog A Smart Bear. I edited the chapter for length and tone, but the five key points are intact:

  1. Why should a startup use a virtual assistant (VA)?
  2. The two points in the startup process when a VA is most helpful
  3. Case studies of my use of VAs
  4. The steps for finding, evaluating and vetting a VA
  5. The best places to find a VA

Read the full article here.

Seth Godin's Blog: Professionals, amateurs and the great unwashed

If you want something done, perhaps you would ask a professional to do it. Someone who costs a lot but is worth more than they charge. Someone who shows up even when she doesn't feel like it. Someone who stands behind her work, gets better over time and is quite serious indeed about the transaction.

Or perhaps you could hire a passionate amateur. That's a forum leader doing it for love, not money. An obsessive in love with the craft. A talented person willing to trade income for the chance to do what he loves, with freedom.

Please, though, don't hire someone who just thinks it's a job. This category represents the majority of your options, and this category is what gives work a bad name.

August 29, 2010

Component Factory (Phil Wright): KryptonMessageBox

Due to popular demand, well at least 2 people anyway, I have added a Kryptonized version of the standard windows MessageBox funtionality. In order to make it fully backward compatible I have provided a set of static methods that have identical parameters to the existing MessageBox methods. So you need only perform a search and replace of the existing MessageBox.Show methods so they become KryptonMessageBox.Show instead.

Here you have some examples of the appearance using different palettes…

The text used in the buttons is localizable and exposed via the KryptonManager component. So if you need to define text for non-English systems you can update the new GlobalStrings property of the manager and all message boxes will then use those updated strings.

Seth Godin's Blog: Don't forget about color

Mspair The airport in Minneapolis is expensive and reasonably thoughtful in its design.

But the signs are monochromatic. As a result, the tired traveler wanders in circles, looking for her destination. Imagine how much easier it would be to find out where you were going if every sign with the word TAXI on it had it in yellow instead of white. Once you knew the color of where you were going, you'd just naturally scan for it.

Google and our text-based low-res online world seems to argue against color as a signal, but it's extraordinarily powerful. You don't need to make a big deal of of it, subtle is enough. Make the button you want pressed green on every page. Soon, your users will naturally gravitate to green buttons...

This works in Powerpoint presentations and even contracts. A little goes a long way.

August 28, 2010

Seth Godin's Blog: A little out of sync

All those devices in your bag make it easier than ever to stay in sync.

You can reap what you sow in Farmville, keep up with your email, know what's going on on every important blog, be in the right room at the right time earning badges, etc. You can synchronized at all times.

And if you get a little out of sync, just a little, it's painful. One more reason you might want to stop reading this and check your feeds.

Building your success on being more in sync than everyone else is a sharp edge to walk on. You'll always be near the edge of perfect sync, but never there.

The alternative is to be a lot out of sync.

People who are way out of sync with the digital maelstrom of the moment aren't always bad followers. They might be great leaders.

August 27, 2010

Poker Copilot: Poker Copilot 2.60 Now Available

Poker Copilot 2.60 is now available to download.

What's changed:
  • Colours in the Head-up Display (HUD). Configure the colours in the HUD Preferences.
  • "Day" summary
  • An optional "My playing day starts at" setting
  • Odds in the hand replayer now take into account known opponent cards at showdown
  • Work-around for Winamax changes and "Dealt to <player> null" problem
What's fixed:
  • Sometimes PokerStars tournaments were not being imported properly
  • Winamax hand histories were no displaying showdown correctly in the hand replayer
  • Hand replayer keyboard shortcuts were sometimes inactive
  • Added support for PokerStars European Poker Tour steps tournaments
Update Instructions:
  1. Download the latest version here.
  2. Open the downloaded file.
  3. Drag the Poker Copilot icon to the Applications icon. If prompted to replace an existing version, confirm that you do want to replace.
Now you're done and ready to hit the tables.

Gurock Software: TestRail customer testimonials

Our test management software TestRail is still a rather new product, especially if you compare it to some of the other tools in our niche. That’s why we were especially happy to see that so many teams adopted TestRail as their new test management tool. A lot of those teams switched to TestRail because they weren’t happy with their existing solution. Here are some of the quotes we received from customers about TestRail so far:

We are very grateful to receive such positive feedback and testimonials. Thank you! We really appreciate it. If you also want to contribute a quote, please email us. You can see more TestRail customer testimonials and reviews on our website:

TestRail Testimonials

Seth Godin's Blog: The blizzard of noise (and the good news)

As the amount of inputs go up, as the number of people and ideas that clamor for attention continue to increase, we do what people always do: we rely on the familiar, the trusted and the personal.

The experience I have with you as a customer or a friend is far more important than a few random bits flying by on the screen. The incredible surplus of digital data means that human actions, generosity and sacrifice are more important than they ever were before.