Welcome to MSDN Blogs Sign in | Join | Help

Sehmi-Conscious Thoughts

Arvindra Sehmi's Half-Baked Ideas and Digressions
pptPlex - Flying through your PowerPoint

image Imagine your PowerPoint presentation was laid out on a large canvas with other imagery complementing it or providing the overall backdrop. Then imagine being able to zoom into and flying to parts of the canvas thus revealing your intended presentation. You could do this in sequential order or you could simply zoom out and fly to another area taking you along a different path to make an alternative point. The OfficeLabs team has given us pptPlex - adding yet more power to PowerPoint. I've been waiting for this incubation technology to go public so please go ahead and try it here: http://www.officelabs.com/projects/pptPlex/Pages/default.aspx.

P.S. My clever friend, Christoph Schittko, built something similar with DeepZoom because pptPlex wasn't public. Now he can just use this!

Posted Thursday, August 14, 2008 5:51 PM by asehmi | 0 Comments

Filed under:

Catch U @ PDC 2008

image

Posted Tuesday, August 12, 2008 4:32 PM by asehmi | 1 Comments

Filed under:

Gorgeous Fractals with VPL and Distributed DSS Services

imageI think Angel is fast becoming one of VPL's biggest fans. After discussing some ideas with him about simple Map-Reduce scenarios for his agent toolkit and a grid system that I'm building, he went ahead and did it. Check out his distributed Mandelbrot fractal generator. Gorgeous results. A bit over-engineered as a fractal calculator, but that wasn't the point really!

You can get Angel's blog, agent toolkit and sample applications here.

Posted Monday, June 23, 2008 6:43 AM by asehmi | 0 Comments

Using the Visual Programming Language (VPL) as a Deployment Tool

image When building applications using CCR, DSS and VPL one doesn't need to know a priori the precise order of data and message flows between services. Many of the VPL examples provided with the MRDS show services already 'wired' up which can give the impression that one needs to know this information and design one's set of services to be orchestrated as such up front. What if you don't know this information up front but still want to use the VPL? Well, there's the pub/sub pattern supported by DSS out of the box which is very handy and well-understood. Or one can define a 'host' service that acts as a message forwarding system based on its own service directory (perhaps using the one built into DSS). Or one can use an external configuration file that defines the orchestration itself (like a BPML specification, say). Additionally, one could use UPnP device (service) discovery.

But orchestration is not the only thing, what about deployment? Well, the VPL also supports service deployment and this works across multiple physical nodes too!

Angel Lopez has extended his Web Crawler sample and without knowing the orchestration a priori uses VPL simply to create multiple instances of his several service 'agents'. The actual 'orchestration' is emergent as a result of collaboration between his agents and the 'agent host' - in fact he can have several agent hosts in the same Web Crawler application. The agent hosts forward messages to service agents based on their capabilities inferred from a logical 'URI' which gets physically bound when the agents themselves register with their (machine) local hosts. Should more than one agent service offer the same capability, such as web crawling or page downloading, the agent host will automatically load balance across them.

An interesting benefit of using the new VPL (in the April 2008 CTP of MRDS) is its ability to deploy services on multiple DSS nodes which themselves can be hosted on physically different machines. Angel does this with his Web Crawler application and together with the application-level load balancing facility his sample offers a neat and simple outline of potentially powerful solutions that you can build using this approach. I particularly liked the lack of a priori orchestration and the use of VPL as a multi-node deployment tool.

Check out Angel's application here.

Posted Monday, June 16, 2008 9:43 AM by asehmi | 0 Comments

Aspiring Architect Series - 2008

My mate Mohammad Akif in Microsoft Canada is doing a sterling job helping folks aspiring to become Software Architects by providing a gentle introduction to common methodologies and software architectures. Visit his Blog to see the full list of upcoming Webcasts in the Aspiring Architect Series - 2008! These will run, one every day, from June 16 - 26, 2008.

For those of you new to this field, definitely plug into The Microsoft Architects Journal as well. We have a ton of very useful material you will benefit from regularly.

If you want more visit the MSDN Architecture Center.

Posted Friday, June 13, 2008 10:45 PM by asehmi | 0 Comments

Filed under:

CCR/DSS Use Cases in the Enterprise
image I'm often asked what Enterprise customers are using CCR/DSS in serious, i.e. pretty significant, production deployments. I'm not at liberty to disclose the names of our customers without their permission - a few will be made public soon - but I can say there are quite a lot of application domains where this technology is being applied seriously. Here's a list of scenarios I mined from our internal list of CCR/DSS adoption customers in the Enterprise:
  • Very large scale web request load balancing & IO handling (online social networks)
  • Security systems (distributed sensor networks)
  • Package sorting system (real-time logistics monitoring and control)
  • Real time processing of seismic data in drilling control (industrial automation & control)
  • Supply Chain Modeling (simulation and control)
  • Law enforcement information intercept/inspection (large scale complex event processing)
  • Automated inventory inspection system in FMCG/retail scenarios (vision processing)
  • Financial trading systems (transaction flow routing and processing)
  • Business processes - there is an academic BPEL implementation on CCR
  • Scientific computing – MPI primitives concisely written as CCR patterns (exchange, shift, double shift)

Hopefully that's useful and piques your interest to look at this Microsoft Robotics (CCR/DSS) stuff deeper.

Posted Thursday, June 12, 2008 10:40 PM by asehmi | 0 Comments

The Next Revolution in Productivity - Harvard Business Review Article Related to MSBA
image I got my monthly issue of HBR this weekend and was really pleased to see the article "The Next Revolution in Productivity" by Ric Merrifield, Jack Calhoun and Dennis Stevens. For those of you who've followed my posts on Business Architecture and Capabilities, this article will be a welcome and easy going read with a strong connection to MSBA, though the terminology used is a little different.

The article makes strong points that "most companies that have embraced SOA have applied it without first rethinking the design of their businesses. This omission means they have overlooked SOA’s greatest value: the opportunity to create much more focused, efficient, and flexible organizational structures." And that "few companies are using SOA to create more productive and focused organizations or to slash costs by purging duplicative operations and technologies. They are not revisiting the fundamental design of their operations."

The idea of plug-and-play businesses is mentioned several times and builds upon an understanding of how new operating models can be developed from some key classes of capabilities or activities:

  • primary - i.e. core capabilities in MSBA terms - are activities that constitute the core competency of a company.
  • shared activities are re-useable across divisions.
  • shifted - i.e. outsourced capabilities in MSBA terms - are activities that can be performed by or transferred to a third party including partners, specialists and even customers.  
  • automated activities are capabilities implemented as software services that can be incorporated into a SOA.
The article doesn't address what I see as a challenging gap between a capability definition and what you actually implement as a service in a SOA. The authors' use of the term activity rather than capability made it sound (to me at least) plausible if not easy to implement services in a straightforward manner provided activity analysis has been performed thoroughly. Getting to processes is then just a logical next step. But, having said this challenge is more or less glossed over, it's acceptable to omit tough technical design issues like this in HBR given its business-oriented target readership. The most important point that good SOA begins with good business architecture design and can lead to great improvements in productivity is made very well and with some great case studies too.

Finally, this paper is definitely worth reading and you ought to mail it to your CxOs immediately.

Posted Tuesday, May 27, 2008 2:15 AM by asehmi | 0 Comments

Web Crawler in VPL/DSS
VPL Diagram of Web Crawler

In another weekend project down in sunny Buenos Aires the prolific Angel "Java" Lopez has (re)written a web crawler sample app we had from another project so it can be used in the VPL in MRDS. Check it out here.

I had some minor Visual Studio version issues and in my case contract versioning issues getting it to work as is with MRDS April CTP and VS2008. The fixes are in Angel's blog comments.

 

Posted Monday, May 26, 2008 5:33 PM by asehmi | 0 Comments

Mexico Regional Architect Forum 2008

Last week I had loads of fun delivering a CCR-DSS-Robotics presentation at the Mexico Regional Architects Forum (RAF) in Mexico City. There’s something wonderful about this technology that set many people abuzz and I had some great conversations and brainstorming with some customers over drinks at the evening cocktail party. I find there's a very strong connection to enterprise scenarios and I gave a number of examples of how CCR-DSS could be used in common enterprise situations. I only hope we can get permission to publish some of our internal case studies on how some big enterprise customers are using this stuff in pretty impressive ways.

Many thanks to Vlad Vinogradsky; Marc Mercuri; George Chrysanthakopoulos; Henrik Frystyk Nielsen and Charles Liptaak for their material which I mashed together! Vlad did a great job putting together a compendium of samples that illustrate the basics of programming against the CCR which was extremely useful. To gain the most out of it, you must read Jeffrey Richter's MSDN magazine article on the CCR.

image image 

I also did a keynote presentation on Business Architecture and explained some of the recent fine-tuning being made to the MSBA methodology and I was able to demo a prototype of the new SQL-backed MSBA Entity Modeling Tool and Repository which replaces the unwieldy Excel-based heat maps and repository. My thanks here go to Mike Lloyd of Carbonflame who came up with a pretty neat Flex Index which helps contrast Capability models to Organizational Hierarchies, Process Optimisation and IT Infrastructure models. (Mike has been a long time proponent of MSBA since the days it was referred to a Microsoft Motion.)

I want to say what a pleasure it was for me to be in Mexico City which I thought was fabulous even though I saw very little of it. The food was superb and quite different to the commercialised Mexican food I have experienced in Europe and USA. The people I met are so easy going and friendly. Juan Lozada Villas, the D&PE Director, treated the RAF speakers to an evening at an authentic and apparently famous Mariachi restaurant (I think it was called Tarana?) which was awesome! I had an excellent education in Tequila from Jesus Hernandez Sanchez and tasted a number wonderful varieties. My favourite was Jose Cuervo 1800 Anejo and the Reposados generally... I bought three bottles at the airport Duty Free!

One last thing... Feliz Cumpleaños to Eduardo Nava Malagon! Sorry we didn't manage to sing to you during the keynote!

Posted Saturday, May 03, 2008 4:27 PM by asehmi | 2 Comments

RoboChamps

RoboChamps has launched!

I've been on the road in Latin America so am late to make this announcement as I was really busy. But better late than never as they say. Robotics = Services + Orchestration so it could prove really interesting - intellectually at the very least - to those of you who have not considered this area as useful as traditional application development in terms of learning about software design and architecture. It's time to prove yourself wrong.

image

Very briefly RoboChamps is:

  • A new simulation-based robotics league
  • New 3-D environments will be released every 1-2 months
  • Based on MRDS 2008
  • Targeted at ALL software developers - professionals, students, academics and hobbyists alike
  • A community site providing links, videos, samples, training and forums
  • Participants can win REAL robots

The Web site is chock full of great learning material and I especially like the tutorial videos, starter kits and the most excellent Chapter 3 on the CCR of Kyle John's upcoming book. I must admit I love all the bling too. :-)

Marc Mercuri has done a really outstanding job with this project - Thanks Marc!

Posted Friday, May 02, 2008 2:37 PM by asehmi | 0 Comments

Introducing Live Mesh

Some say this is what will propel Microsoft innovation for the foreseeable future. One thing's for sure, it'll be big.

 

Live Side TechCrunch New York TimesCNet news.com Channel9 Schobleizer Mary Jo Foley GigaOm Microsoft Watch (Joe Wilcox) ReadWriteWeb Reuters SeattlePI VentureBeat imageimage image

Angus Logan has the details.

Posted Thursday, April 24, 2008 12:12 AM by asehmi | 1 Comments

Filed under:

The Incredible Quadraped

I am completely bowled over by this video of Boston Dynamics' Quadraped. How long before this stuff hits the consumer business - 5 years, 10 years, or sooner?

Posted Sunday, April 20, 2008 9:05 PM by asehmi | 2 Comments

Fun with Microsoft Robotics Studio

Not bad for a Saturday project down in sunny Buenos Aires! My friend and professional geek Angel "Java" Lopez has recently rekindled his love of distributed computing (and Agents) through MRDS and specifically CCR/DSS. We're going to have a lot more fun with this stuff in the coming weeks. In the mean time check out his great little experiment and download the source code here.

clip_image002

Angel concludes:

All these tools opened my brain. Writing DSS service component is a new way of thinking and programming, something I want to explore for years: how to write objects with one-way message processing, in a distributed and parallel way. I envision some system that model Minsky ideas about the human mind.

Well, it’s a new brave world. Dorothy: we are not in Kansas anymore…

I couldn't agree more!

Posted Sunday, April 20, 2008 8:50 PM by asehmi | 2 Comments

Microsoft Robotics Developer Studio 2008 CTP April Available

The high level set of changes is listed below. For me #2 and #3 are golden, but be sure to drill down to find out the details... like async streaming support!

  1. Improved security model with support for Message Level Authorization using Role-based access control allowing to fine-grained control of who can access services and how.

  2. Support for LINQ queries in DSSP subscriptions enabling applications to create complex queries that can be executed close to the data source instead of requiring moving data across the network

  3. Support for creating applications that run on multiple DSS nodes using Visual Programming Language and DSS Manifest Editor. This makes it much simpler to create applications that run across nodes, either on the same machine or across the network. When an application containing multiple nodes is to be started, VPL creates individual deploy packages for each node and fires them up across the network.

  4. Support for record and playback functionality in Visual Simulation Environment enabling it to record the position and orientation of each entity and save that information to a file which later can be replayed.

  5. Support for storing simulation media resources such as texture maps, bitmaps, and mesh files directly as part of the CLR assemblies in the form of embedded resources rather than as external files.

  6. New Simulation floor plan editor which allows the user to put together walls, doors, windows, etc. to represent the interior of a room, house, or other building.

image

Quoting from Marc Mercuri's blog:

At RoboBusiness today, Microsoft announced the release of Microsoft Robotics Developer Studio 2008 CTP1.

Get the free download here -

http://www.microsoft.com/downloads/details.aspx?FamilyId=EB00C558-2163-45A5-BEFE-531AD48BC525&displaylang=en

Mary-Jo Foley has an article on why you should care ('Why business users should grab a copy of Microsoft's new robotics' toolkit')

See that here - http://blogs.zdnet.com/microsoft/?p=1325

The folks who attended the conference also saw some videos from my new project. CNET references it in the article - "Microsoft's new gig: Virtual host to robot competitions".

See that here - http://www.news.com/8301-10784_3-9914959-7.html.

Outside of this, mum's the word until the clock at www.robochamps.com hit's 0's across the board.

 

By the way, in addition to RoboChamps, Marc also planned and built Tafiti – the guy is smart!

For further information, you can also check out:

1. MSDN Developer Centre

2. MRDS Team Blog

3. MRDS News Feed

4. MRDS Community Forum

Posted Thursday, April 10, 2008 8:33 AM by asehmi | 1 Comments

The End of the Office File Format War

Open XML has overwhelmingly been approved as an ISO / IEC standard (IS 29500) signaling the the end of the file formats war! More details can be found at Brian Jones' Blog here and an extensive list of resources at Erika Ehrli's Blog here.

Watch a video demo from Brian Jones:

[Apologies... stale video link removed.]

Posted Thursday, April 03, 2008 3:08 AM by asehmi | 0 Comments

More Posts Next page »
Page view tracker