Tom Petrocelli's take on technology. Tom is the author of the book "Data Protection and Information Lifecycle Management" and a natural technology curmudgeon. This blog represents only my own views and not those of my employer, Enterprise Strategy Group. Frankly, mine are more amusing.

Thursday, June 22, 2006

I'm Running Out of Network Connections

Over the past year I have been adding all kinds of neat widgets, gadgets, AJAX-driven pages, and other Web 2.0 stuff to my working environment. Google, which used to be a simple search page, now displays my calendar, news, stock quotes, and other information, all updating automatically. Each piece of the page is its own little AJAX application and operate independently. Same goes for my desktop widgets courtesy of Yahoo!, formerly known as Konfabulator. My Google desktop, which used to be about searching for files on my hard drive, now has a bunch of little software applications called gadgets. These gadgets either float free like Yahoo! Widgets or attached to the "sidebar" docking bar. Microsoft Vista (when it finally comes out) is also supposed to have some similar little applications.

This has created an incredibly rich and useful desktop environment. All of these apps allow me to do the little things I used to have to go to a web page for or load some monstrosity of an application. It has also created a problem I've never encountered before on a desktop machine - I'm running out of network connections.

There are lots of other applications that want to get to the network too. Practically every piece of software wants to check for updates (although I turn this off for most applications). Add on all the communications most of us use now including VoIP/Skype, IM, and E-mail and you have major contention for network resources. There are limitations to the number of TCP/IP sessions that Windows allows for each network connection. The more small apps I have trying to get to the Internet or even my own network, the more contention there is for those connections. Network adapters, especially the cheap ones they put in most desktop computers, also have limitations. Even if that is very high, there is still limited bandwidth to work with and building up and tearing down network connections takes CPU and network adapter resources.

Now, I might be an ubergeek who wants to have all of these little do-dads loaded all the time but most of these are becoming normal features of the desktop environment. This coupled with the judicious use of AJAX on web sites and even the average person will soon find themselves running out of a precious resource that they didn't know was limited or even there. In a sense, we are back to the days when most of us would get those cryptic messages from Windows because we were running out of memory. Fine for the computer savvy of the world but mystifying to the average Joe.

Now, some of the problem is the applications themselves. When they encounter an overloaded network connection, they act like something has gone terribly wrong. Rather than wait for resources to become available, they spill out an error message in techno code. The upshot is that normal users of computers may start to see them as more harm than good and shy away from them.

Better application design would also help. These various desktop scripting programs should include a network management capability that takes this into account. Small app designers should also work out better a schema for building and releasing network connections. Some applications are constantly building and tearing down connections which is hard on a system.

For my part, I'm going to try an additional Ethernet card and spread the load out a bit. Most folks can't do that. A little more discipline may go a long way to ensuring that this new approach to software doesn't die on the vine.

Monday, June 05, 2006

Apple Nixes Overseas Call Center

I just saw a news report on CNET that Apple has nixed the call center it was planning in India (Apple hangs up on India call center) . It just shows that Apple knows what they are doing. For them brand is everything and you can't protect that overseas. There is so much dissatisfaction amongst consumers with overseas call centers that they would have to be nuts to send calls to India. Mind you, this is nothing against India. It's houses one of the great cultures of the world.

The reasons not to put a call center overseas are twofold. One, there are cultural differences and these differences are amplified when there is stress. Few things are more stressful for anyone then customer service or technical support issues. You start out on the wrong foot and in fight mode. If you run up against a cultural misunderstanding or lack of integration with other functions (see my post on below) you go from frustrated to downright angry in less time then it takes an Indy car to get to 60 MPH.

More important, the key reason for sending calls overseas is cost. I've heard (and made) the argument that it is about better round the clock service, faster response times, yada yada. Bull! It's to drive the cost per call from dollars to pennies. Understandable from a company perspective. Save a few pennies while performing the same function. However, once you start down that road, once you treat customer service as a function to be done as cheaply as possible, the whole operation starts to act that way. Soon enough, it's all about the costs and not the customer. Customers are treated as an inconvenience that has to be tolerated not embraced. Very short term thinking.

I've got to wonder why they were trying this in the first place. Perhaps Apple was setting this up to handle calls from India. Possible but not probable. Even if that is the case, it would have been inevitable that some otherwise bright person would have thought to send American calls to India. That would have been a disaster.

Now, if you're Apple, and your whole business is based on cool factor, you can't afford to look like any other schlocky consumer electronics company. People pay more for Apple products than for comparable ones because they get treated well. This drives tremendous loyalty in their customer base. I can't count how many people would rather choke on a chicken bone rather than give up their Mac.

Sending calls to a cheap overseas call center jeopardizes the ability to connect to customers and keep them part of the big loyal Apple family. Otherwise, who would pay extra for iPods and iTunes songs, or Macs for that matter. You buy Apple because you feel they connect with you, the average (yet hip) person. If you have a problem and you find yourself talking to someone overseas who doesn't get you as a person then all that goes away and Apple dies. Steve Jobs knows this from Apple's previous near death experience. Everyone at Apple knows this.

Apple consistently comes out on top for customer satisfaction. Why mess with that when it's so important to sales and high margins? They probably felt they had to do it to stay competitive. Thank goodness someone inside realized that not doing it was how they would stay competitive.

Thursday, June 01, 2006

VoIP Has a Way To Go But It's On The Way

I've been watching the Vonage IPO fiasco with great interest. The company is becoming memorable as one of the worst IPOs in history. It opened to lackluster interest and dived almost immediately. Ever since, it has continued to trade in a narrow but ever decreasing band. Today it sits just a bit over $12, down roughly 25% from its opening. Yowzer!

Vonage deserves it, in a way. They don't make money. Instead they lose tremendous amounts of money. That's the problem with an IPO. Once public, you're not judged on your potential, concept, or technology. Just on your numbers. Their numbers stink, so there you have it.

My hope is that all VoIP doesn't get painted black because of this. Perhaps VoIP will be judged by the Skype experience instead. Perhaps, but life and business are cruel. Memories are short and folks usually remember the last stupid thing they heard. That's too bad because VoIP is a truly revolutionary technology. It is already transforming the way we communicate and holds the promise of finally bringing about communication convergence.

The hold up is that VoIP, unlike the PC or Internet, is really a bunch of technologies wired together and pushed to their limits. That means that the various technologies don't always play nice together. You have broadband networking (one set of providers), usually a bunch of SIP servers, and the traditional phone system (another set of providers) that all must work together. This creates all kinds of interface and provisioning problems. The result is that the call quality can vary from better than a land line to worse than a bad cell phone connection.

I've been experiencing this first hand over the course of the last month. I decided to finally drop my traditional landline in favor of a VoIP providers. The benefits were certainly there. What I got was:

  • costs less than half of traditional phone service;
  • network services like caller id and voice mail for free;
  • long distance in North America that is free and international calling that's cheap and;
  • did I mention it's half the cost of traditional service?

I also get the warm and fuzzy feeling that my expensive broadband connection is being used for something other than low bandwidth e-mail or small stuttering renditions of 30 year old TV shows. Welcome Back Kotter! It's like you never left.

There are tradeoffs however. VoIP is not as plug and play as vendors make it appear. Hooking up the adapter to the network is a no brainer but getting it to work right is not. A couple of calls to tech support at least got the connection stable enough to use.

I'm still trying to find a way to get the call quality to be consistently good. I'm making progress and new friends in my provider's tech support department (as well as a few enemies I think). I say "progress" because call quality is no longer consistently bad. It's now inconsistently good or bad, depending if you are a "glass is half empty or half full" type. I still experience drop outs, echoes, and static. Just not all the time. So, sometimes the connection is good and sometimes it's lousy.

The problem seems to be a misunderstanding between my ISP and VoIP provider. The latency in my ISP's network is more than the VoIP system can handle. I don't usually notice it since Internet applications are engineered for high latency and are more concerned with bandwidth. VoIP is apparently more like storage and sensitive to latency. This is the killer problem that must be overcome. If VoIP needs low network latency or even a predictable latency, then it will have problems in the the very SOHO market it targets. Cable ISPs don't guarantee quality of service, especially to a home. DSL providers don't guarantee QoS. Yet, VoIP needs a guaranteed minimum QoS. That's a problem that needs fixing before they lose the market.

All in all, I'm quite happy with the VoIP experience. It has dramatically cut my costs while giving me services that I never could have afforded before. Time will tell but I'm betting that VoIP providers will work out the call quality problems. It just might take awhile.