An excellent article and one that covers both the background and some of the things that need to be covered.
My day to day work revolves around Voip implementations and the biggest issue is making sure that you have a good Quality of Service (QOS) enabled infrastructure else you get distorted speech. Things like someone doing a large download and contention ratios on braodband will all play a part as more people try out Voip.
The main thing with closed standards like Skype and other implementations is that you get the free bit but only if you call within the same provider. The mistake that people also make is that Voip isn't free if you don't have ADSL or a PC. Granted that is less a problem now but broadband caps also come into play as stated.
I would like Voip for my Iyonix say as part of an application like Grapevine but I think we should have a common set of API's, even if it is at an application level, so we don't get a repeat of the USB situation. This hopefully could mean anyone could addon to a basic application.