Archive for the ‘Live Mesh’ Category

Decentralized microblogging

Sunday, May 4th, 2008

Talk is getting interesting over the idea of decentralizing the concept of Twitter. Could RSS be an element to the solution?

Is that Live Mesh I smell in the distance?

Is Live Mesh a hyped up architecture?

Thursday, May 1st, 2008

Top notch programmer-blogger Joel Spolsky is not too sure about Live Mesh. Typically I fall into the skeptical category too when it comes to new architectures and SDKs promoted in the marketplace as the next big thing. Most big things are not. That’s just the way it is.

However, this time around I think Microsoft might be onto something–though I think there’s more to go.

Live Mesh isn’t just about file sharing as Joel points out. It’s a platform. How good the platform is, I don’t know–I haven’t gotten into the beta program as of yet. So I’m just extrapolating with much of this.

However, this platform may be what we need as developers to really excel with our next generation of apps, which will be more communication and context focused than what we’ve been used to. Both are crucially important to us as users as well as to computers as we try to most efficiently exploit all of what they can do.

In the old days, people would say I’m talking about collaboration here and yeah, it is…kind of. But this term is not only stale it really misses much of what’s actually going on. It’s like saying that IM or RSS is about collaboration. It is, kind of. But it’s also used in ways that go beyond what collaboration implies. The term collaboration also doesn’t hint at the importance of being able to share and exploit context. I mean context in terms of people from disparate locations being able to really appreciate the “context” of what others are doing. Yes, this gets a bit essoteric, so I won’t dwell on this, but let me just say maintaining context is a lot easier to do if you don’t have to, well maintain it, but rather use it because it’s so easily accessible from another computer. OK, enough about terminology. Back to terra firma and the real world of trying to develop apps that can be connected. It’s not easy enough today.

For instance, why isn’t there a drop dead simple way to easily create collaborative apps that support something like OneNote’s share feature? I’m totally perplexed why in .NET I can’t trivally call a Session manager, open a channel, pump standard as well as custom messages through it with payloads of standard and custom types (text, pictures, sound, movies, ink), and then consume data as needed on each end. This pattern is so obvious I don’t understand why it’s not out of the box in .NET. Yeah, I know there are classes here and there that purport to do this stuff, but it’s not trivial to assemble them to anything on par with let’s say what OneNote does. It’ not even close. Some of the problem is that existing APIs are too abstract, where there’s little gain. Unfortunately, APIs too abstract are not efficient and don’t get used.

Of course, part of the issue is that when it comes to connecting devices there are so many networking issues to decide upon and handle–firewalls, security, discoverability, and on and on. I get that. So here’s where Live Mesh might step in and help. If its communication is unknockably sturdy–as I hope it is–then maybe we have a platform that we can all accept and then place the app sharing pattern ontop of. (Never mind we could always have created an abstract pattern that supports multiple connection methods.)

So you see, by setting aside the network issue, maybe, just maybe we can standardize on two or three patterns for communicating between apps and get on with it.

There is a 100 pound guerilla in the room, however. And that’s performance. How much data can we push through Live Mesh and how fast I don’t know. I get the offline/online part with the feeds, but I hope the exact same communication model can be used to push data through fast–at least at IM speed.

It’s also go to be scalable to some interesting number too. For instance, it’s got to be reasonable to be able to share across lets say 100 people. If it’s a nightmare to manage, it’ll not reach its potential.

Now I think there’s a whole pending problem that Live Mesh doesn’t solve–and here they may be asking for trouble. I’m not sure if it enables the scenario of an adhoc network. I don’t know if it assumes that some server has to be pinged. To really be successful, Live Mesh needs to facilitate people sharing wherever they are–whether two kids in the back seat of a car playing a connected game or students working together in a library or cross campus.

Anyway, my hope is that Live Mesh lives up to its potential as a communication platform that can become a standard. It’s from this standard that the magic can really begin.

Live Mesh as the next information bus

Monday, April 28th, 2008

Steve Gillmor sees a bright future for Microsoft’s latest initiative: Live Mesh. I do too, however, I have yet to try out the technology preview.

For now I’m content (well, pretty much–I’m eager to try out the preview, I’m just too busy to do so) with reading about what the Live Mesh team is doing, how they see Mesh being used, and where it might be headed.

As I do so, I pay particular attention to the DNA. When trying to speculate about where this or that technology goes, it’s often quite important to pay attention to where the foundation lies for the technology. It often sets the direction or bounds for its particular implementation. In this case, it looks like Live Mesh is rooted in Groove and Sharepoint think with a sprinkling of file sharing thrown in. That’s sounds a bit too corporate for me, but then again as Ray Ozzie pointed out in a recent Channel 9 video, part of the goal with Mesh is to bring some corporate distribution technologies to the mass market. The more I hear this–particularly coming from anyone at Microsoft–the more I become concerned that there’s going to be bounds to this technology spreading. Going corporate think to consumer think can be tricky. Going the other direction is much easier.

Awhile back I worked in a startup that developed a distributed application that sat ontop of the Tibco bus. (The application was designed to push out commands and updates to hardware devices in a network.) It was a powerful model. I see many simularities between it and the potentials of Live Mesh.

Steve Gillmor talks about the potential value of the Mesh-Silverlight pairing. No doubt that this could be a good combination since both are network biased. However, I hope the Mesh team is not thinking about coupling the two. A mesh network should not dictate this or that user interface. Silverlight might make it easy to connect to the mesh, but the two are distinct. From what I’ve heard from Microsoft, it appears that they are going in the right direction here and not tightly coupling the two.

I also wonder: when might we see a mesh language? When working on the Tibco-ish app I mentioned earlier, we ran into this issue. You have this information bus and all these apps and now how do you easily control everything? Our solution was to develop a language that was core to the Mesh itself–something very declarative. I’m wondering if the Mesh team is thinking along these lines too. It’ll be interesting to see–especially with the growing acceptance of WPF style development. This may reveal more about my age and when I started programming than anything else though.

It’s interesting to read some of the reactions to Mesh over on Robert Scoble’s blog. Sounds like people are having trouble getting passed the Microsoft-created and file sharing issues. In terms of the Microsoft-side of the equation, I see this as a plus. Any mesh technology is going to need wide distribution. Theoretically you can get this from the web, but Microsoft can support it more directly in large numbers. This is a good thing for the technology’s potential adoption. Also as a company, they are keenly aware of security issues, since they are such a large target. Again, I see this as a good thing for any new technology. Now in terms of the file-sharing aspects, they may have a point. There are huge potential upsides here, but how far will Microsoft actually take the mesh concept? We’ll have to see. I guess it all depends on how much of an early adopter one is. I know two people that have already downloaded and tried out the Live Mesh preview. Both grew perplexed and set it aside. That’s OK, we’re all trying to figure out what this Mesh thing means.

Something to think about…

Wednesday, April 23rd, 2008

Ryan Stewart on Live Mesh and future development technologies: “I think the next couple of years are going to be great in unifying the web and getting rid of “web application” versus “browser applications”. They’re just going to be applications when all is said and done.”

Hmm.

To me, I’m busy parsing out the historical rationales from the progressive ideas. I agree with Ryan that down the road programming targets will be given a different labels. Whether things will really be different, I don’t know. I expect to see more computer-to-computer applications (computers that analyze and process the output from other computers, if you will), to the extent that Live Mesh facilitates this, I’m quite excited.

I also agree with Ryan in that Silverlight (and I’d add the .NET Framework) is a key technology for Microsoft going forward. As I’ve blogged about before my latest theory is that Windows is about saying “no” in order maintain stability over its vast market. On the other side of the coin, Silverlight and the .NET Framework, and the innovation hubs where we should expect to see higher and higher levels of abstractions. Listboxes and Queues aren’t going to be enough. Those were fine for single-OS-level thinking. We’re going beyond that. Live Mesh may be a step in the right direction. I can’t tell at this point. I need some hands on time.

Reading about Live Mesh

Wednesday, April 23rd, 2008

There’s lots of commentary this morning on Microsoft’s Live Mesh initiative. I’m trying to figure out where the greatest value is today in apps that I typically write today as well as where I want to take them. In both respects Live Mesh looks good, although I need to really try it out myself first to see what it is. As a developer, I’m like that. I have to feel it, to really understand it.

Over on Anthony Ha’s VentureBeat blog, Robert McLaws posted a comment that is along the lines of what I’ve been thinking about:

“The mesh is the foundation for a model where customers will ultimately license applications to their mesh, as opposed to an instantiation of Windows, Mac or a mobile account or a web site.”

Along these lines, what about licensing content to the mesh too? I’m thinking about students eBooks, or your music, or your movies? I’m not the greatest fan of locked down content or apps, but maybe a mesh approach to licensing would loosen things up a bit so licensing wouldn’t seem so restrictive nor deadendable (new word alert :-) ).

I listened for awhile to the Gilmor NewsGang last night about their commentary on Live Mesh and much of it was actually about Twitter and the possible relationship between these two technologies. How long will it be before we see TwitterMesh? Godaddy reports that TwitterMesh.com is still available. I wonder for how long. How long domain names like this will last could be an interesting measure of how well Live Mesh has inspired the Web 2.0 crowd.

Microsoft has the big MOE

Tuesday, April 22nd, 2008

Microsoft is giving more details about its Live Mesh technology and its Mesh Operating Environment (MOE). Looks very promising. Here are a bunch of videos on the livemesh blog as well as this high-level tour from mesh.com.

Robert Scoble has more here.

The concept sounds good, but this is is going to take a bit of parsing to see what’s really there and what it can do. Too bad I’m in the middle of a rush project. Not enough time to do this justice.

I have a half dozen ideas bouncing around in my head right now. I’m hoping that there are ways to control the mesh.