Speaking of virtual machine techonology, out there somewhere, there's probably a team of developers working on a programming model for massive swarms of virtual machines. The folks at Northwestern's Plab, along with a growing virtualization research community, are making great strides in the utility and performance of virtual machines. But I wonder if systems built out of creating, launching, and coordinating large numbers of virtual machines has fundamental differences from what we know of traditional distributed programming and concurrent programming? If so would devising and implementing good tools for good programmers to build such systems endow a PageRank style competitive advantage?