Monday, June 27, 2005

P2P& The Supremes

The Supreme Court ruled today against Grokster and Streamcast. The ruling is actually a relatively limited one and not nearly such a big deal. The court effectively said that the intent and marketing of a software or hardware device that it's primary function is to infringe on cupyright that's a problem. Here's the key quote from the brief.

One who distributes a device with the object of promoting its use to infringe copyright, as shown by clear expression or other affirmative steps taken to foster infringement, going beyond mere distribution with knowledge of third-party action, is liable for the resulting acts of infringement by third parties using the device, regardless of the deviceĆ­s lawful uses.

The original case in Sony vs. Betamax is fundamentally different. The Betamax had a clear non-infringing use, it played Betamax tapes. The infringing uses only came about as consumers found out about taping TV shows to watch later. Quite frankly Grokster had no other use but copyright infringement and was marketed quite explicitly as such. Grokster's business model also relies on the exchange of copyrighted material as the display of ads was tied to the material. Clearly intent and marketing of services are what seperate the two decisions.

I think that pure protocal based approaches to P2P such as Bittorrent may pass the intent/inducement test. Bit Torrent is a very useful way to pass around large files, and has many substantial non infringing uses. (Updates are one example, ISOs are another.) For a complete history and player breakdown in this whole debate, News.com P2P coverage has pretty much every thing you want to know

Thursday, June 23, 2005

Outsourcing Customer Upselling

One the serious problems of outsourcing is hardly touched one by mainstream media nor the traditional business press. While many of the stories focus on the loas of jobs, they don't often address the real problem, the higher hidden costs of outsourcing. I will give one recent example. I was recently called by my credit card company Providian about a program that would allow me to in the words of the telemarketer, "Save 50% at selected stores such as Wal Mart."

While listening to the spiel, several things struck me. One his accent while Indian, was very slight. Kudos to the training the telemarketer recieved. The other however was the broad cultural gap between the myself and the telemarketer. When he repeated again the claim that I would save 50% at Wal Mart, I asked,"Are you sure? That doesn't seem possible given Wal Mart's low margins." He stated yes I would save 50% at Wal Mart. At this point it became clear that the original telemarketing script stated that you can "save up to 50% at leading retailers like Wal Mart, Target and Fields." However in his eagerness to cut down on the length of his introduction, he simply reduced it to the one he had heard of, but clearly lacked any cultural references for understanding. So his repeated claim that I would save 50% at Wal Mart sounded silly.

I have shopped at WalMart and know they do not have a 50% margin in their products. (Indeed I would be hard pressed to find a retailer that had a margin that size outside of Tiffanys.) My telemarketer on the other hand has probably never been within a 1,000 miles of a Wal Mart. This meant he completely lacked the cultural references for understanding that his claim of saving 50% at Walmart were nonsense.

Modern outsourced call centers have cultural training programs and know where their callers are calling from so they can ask about simple things such as the weather. Lacking deep cultural knowledge means mistakes like this will continue to happen. Needless to say, I did not upgrade the service.

Sunday, June 12, 2005

Living on the Trailing Edge of Technology.

I recently helped my neighbor install a Nintendo 64 for their grandson. They are decidely non technical and needed a small amount of help. After setting up the system, this got me thinking about living on the trailing edge of technology. The Nintendo64 is the predessor to the Game Cube. The next Nintendo console is going to be called Revolution. I played a few games which were mostly the puzzle sort and geared for kids. Nintendo's design philosophy has always been such that they focus on playable games. As a result their games have a longevity that you don't often see in other platforms. I was playing a puzzle based game and realized that well designed games like this would be enjoyable for decades. While the current FPS games such as Halo, Doom 3 etc won't retain much playability in the long term, a well designed game always retains it's playability.

So I went to www.ebay.com and picked up a Nintendo 64 and 20 or so games. As I wanted to stay away from game that wouldn't age well I stayed mostly in the puzzle area. One benefit of the trailing edge of technology, is that your dollar goes a lot further. The N64 was released in June 1996. Remarkably the games have aged well (or rather the technical had progressed far enough that further marginal improvements don't add much to the game experience). I believe as technology continues to improve, that living on the trailing edge will be enough for most people. Clearly, new products like the Sony Playstation Portable or PSP will continue to drive innovation. But with good game design there's still fun to be had at the trailing edge of technology.

Thursday, June 09, 2005

Patent Violations Masquerading as Patent Reform

Today Zdnet posted an article about the current patent reform bill making it's way through Congress. It's largely sponsored by Microsoft who spends roughly 100 million a year defending itself against patents. The major reform is the addition of opposition requests that can be filed up to nine months after a patent is awarded or six months after a legal notice alleging infringement is sent out. It also makes it harder to get an injunction and it recalculates the way that jury awards are calculated so that it's much harder to win an award when you are damaged.

While the general opposition to software patents in general ia applauding this bill, it's a really really bad idea. It looks as though it was tailor made for MS. The problem is that MS is a very bad patent violator. That's right Microsoft regularly steals ideas that other companies have patented and then refuses to pay the owners of those inventions. They did this to Burst Technologies. Burst was an early pioneer in audio and video streaming on the web. They developed a whole series of technologies that most everyone including Quicktime and Real now use. They attempted to license the technology to Microsoft, shared trade secret information with MS (after signing an NDA. MS then stole their technology and incorporated it into Windows Media Player.

Burst eventually was forced to lay off most of their employees. MS stole Burst's technology and was forced to pay nothing except their in house counsel to bleed Burst to death. If this new bill passes you can beat that small innovators and inventors will simnply be forced out of the system. Large corporations will simply crush them with legal paperwork with the challenge process.

I would have more sympathy for MS if they didn't prove themselves to be liars time and time again in court. This bill should be entitled "MS Patent Approval Process."

Thursday, April 14, 2005

Distributed Applications & Auto Update design

I have recently witnessed first hand some of the problems of the current architecture of current popular distributed apps. One of the most popular is Seti At Home which analyzes the data from the Arecibo radio telescope in Puerto Rico in the search for extra terrestrial intelligence. Seti at home works by having central group of servers parcel small sections of larger problems to a group of machines. Seti at home is a perfect example of a embarrassingly parallel problem. A simple explanation of embarrassingly parallel and deeply parallel problems can be found here. Embarrassingly parallel distributed applications are the easiest to develop. But even the bright folks at Berkeley can run into a hiccup or two.

In late March a lab wide power outage which resulted in the shutdown of the lab over the weekend. As it was a weekend, no one really noticed. This was coupled with a breakdown in network connectivity the day before meant that all those seti at home clients having processed their little sliver of data and wanted to send back the results and get a new sliver of data. Typically because machines process the results at different speeds, at any one time there are not that many machines hitting the Seti at Home servers. Because of the network failure, coupled with the power failure, nearly every single Seti@Home client was hitting the central servers at the same time. For nearly a week after the recovery of the lab at Berkeley, I was unable to get data from the server as it was too swamped with requests . This highlights a problem in the approach taken by many distributed computing applications.. If the central servers lose connectivity for an extended period, they can be hit by tidal wave of requests for data. Nor is Berkley alone in this little hiccup.

On April 12, 2005 Microsoft announced an update containing five critical updates. Since I am a safe Microsoft user, I have auto updates turned on. Since I actually didn't think about it too much, I simply let the application chose the default time which is 3:00 AM. I think probably every single user probably lets the application chose the default time. As a result when a large series of updates occurred after nearly a month of no updates, the system bogged down. In fact my machine nearly slowed to a crawl as it repeated kept trying to reach Microsoft's auto update servers. The servers which I am sure where heavily loaded, simply were not responding. The auto update feature of Windows does not degrade gracefully, the application kept trying and trying to update, literally consuming most my CPU.

A better design would be to randomly chose a time between midnight and 7:00 AM. This way the load on central servers is minimized while still allowing users to get their updates. What undoubtedly happened is the progammers thought,"3:00 AM, no one uses their computer that early. That's a great time to auto update." Of course what was missing was the thought, how can we support having millions of machines hitting us at the same time? Usually updates are small and MS has developed a sufficient infrastructure so that they can take the pounding. Not so this update as it was significantly larger than the typical MS update.

Recommended Reading.
Interested in developing a large scale distrbuted application? Here's my beginning reading list to get you started.

Wednesday, March 30, 2005

Holy Hanna! Potpurri for $200

I was doing a back link check to see if anyone links to me. This blog is quite difficult to deal with sometimes as I never really migrated off my original scheme of using server side includes of a text file to publish it. So even though I have a copy of Movable Type lying around, I have never migrated the blog anything better. I am using Blogger.com to publish the blog. It works fine, although I wouldn't mind having the comments feature of Movable Type. I often wonder what people think about my half composed rants sometimes.

In the course of checking links I found this site. Blog Ratings where I found that my blog had a rating of 9.42 out of 10. More importantly this was based on the votes of 109 people! Wow! With my blog I have tried to stay away from just a simple post with a link to another site. I have really tried to focus on what I think are interesting issues and try to generate at least 750 words on the subject. So to get that nice high score with that many voters makes me feel much better. It also puts the pressure on me to produce quality opinion columns. This is a Potpurri Column so it's a mixture of stuff.

My friend Mike Rooney is in the Ultimate Tournament of Champions. It's a tournament where the top 145 Jeopardy winners of all time (minus Ken Jennings) via for the chance to defeat Ken in a three game battle royale. Mike won his first round, defeating two other 5 time Jeopardy champions. His next game is going to be broadcast on April 15. I encourage you to watch it. I have been helping him study by flying back to Pasadena and staying at my father-in-law's house. Thank you Priceline.com!

The final two winners of the tournament will face Ken Jennings for the title of Greatest Jeopardy Player of All Time! Who will float like a butterfly and sting like a bee? Who knows? It will settle a long term debate about who is the best player. Ken was able to continue his streak for so long because the rules of Jeopardy changed. They no longer stopped you after 5 games, enabling him to rip his 74 game streak.

Finally the most critical part of my post, talking about something I should have talked about a loong time ago, the Microsoft acquisition of Groove Networks. Clearly I think Bill Gates understands the critical threat that collaboration presents to the current Office Suite and is attempting head off the stealthy small mammals of web based collaboration software. As I alluded to in one of my previous posts Evolutionary Momenum and software design. Appointing Ray Ozzie shows that once again Bill G. is a very savvy businessman and is addressing a key problem with the Office franchise. Bill realizes that Office and Windows are the ONLY things that make money at Microsoft. (Yes it's true everything else including MSN, search, Sharepoint etc loses money). By integrating Groove into the Office Suite, MS does two things simultaneously.

First they create compelling reason to upgrade MS Office. I recently purchased MS Office 2003 and other than a relatively cleaner interface, it didn't seem to too much different than MS Office 97. That's six years of stagnated development. This is a real problem as MS cannot seem to get as many companies to upgrade to the latest version. Of course the problem is that there aren't any really compelling reasons to upgrade. So MS has resorted to giving away certain versions of Office, hoping that a "cascade upgrade" will occur. (The CEO is given a new copy of Office. He/She boldy starts writing memos in the new format. This results everyone getting a new copy Office in order to read his/her memos.)

By adding more compelling collaboration features which Office clearly lacks, MS now creates a pretty good damn reason to upgrade. Additionally Groove is a peer to peer based application. This will also help drive the sale of Windows OS licenses. One of things I have people critize Groove is that it uses non standard proprietary protocols instead of web protocols. That's fine as when it's wrapped into Office it will become the standard. Making Ray Ozzie the third CTO, MS recognizes what Ray can bring to the Office franchise. Of course turning MS is like moving an huge huge ocean liner but I suspect that Bill G is committed to bring the next generation collaboration features to MS Office.