Offering regional and national programs, CIO (and CSO) events bring together some of the most respected names and thought leaders in information technology and security. Presented by CIOs and other senior level executives, these invitation-only programs offer timely topics and strong networking. Learn More »
Public Council Teleconference: Application Rationalization — Hidden Costs and Smart Decisions
November 17 at 11:00 am US/Eastern (GMT-5)
Join Honorio Padrón, of The Hackett Group, who will share the drivers for companies to tackle application rationalization and the results of research that define the hidden cost of complexity. Additionally, we will discuss key decision milestones—to start or not, holding the course steady and fulfilling expectations.
Virtual Desktop Cost-Benefit Analysis — Michael Jacobs, Catlin Group
The analysis contained in this presentation measures the cost of everything from the machines and licenses to the infrastructure for virtual vs. traditional desktop environments.
Honor your best senior team members - Apply for the CIO Ones to Watch Award
Get well-earned public recognition for your top up-and-coming team members, your IT organization and your enterprise. Award winners will be announced, publicized and feted in May 2010, great timing to help attract new IT recruits to your company.
Learn more about the CIO Executive Council »November 06, 2007 — CIO —
Mobile computing is taking over. The superhero model for a typical IT worker is surely Batman, with a dozen gizmos hanging off his belt: smartphones, USB keys, MP3 players, cameras. However, Windows software developers who want their applications to synchronize data among those devices and with desktop clients, servers and web services... those developers often would prefer root canal surgery. Every Windows app that requires synchronization has had to be custom-crafted code; everything is built from scratch.
Microsoft's Sync Framework attempts to address that particular toothache. The Sync Framework, now in Community Technology Preview (CTP), extends Visual Studio 2008 to sync-enable applications and services. It will work with both online data (such as rich Internet applications and Web services) and peer-to-peer collaboration (such as file updating across USB keys or smartphone data and setting synchronization). "We now have a common reusable extensible framework to keep information synchronized, from back end servers to devices to peer-to-peer," explained Anthony Carrabino, Microsoft Senior Product Manager for SQL Server Marketing. Carrabino discussed the Sync Framework during the DevConnections conference held in Las Vegas this week.
With the Sync Framework, a developer enables a server or application to be sync-enabled using "sharing extensions" on Microsoft SQL Server 2008, Visual Studio 2008, Windows NTFS file systems and removable drives. Developers don't have to know the nitty-gritty of Internet protocols, as the framework takes care of the gory details, and the framework is also said to have a platform-agnostic architecture. A node that's set to be a willing participant in the sync architecture—such as that USB key or a smartphone—can be set to automatically update whenever a connection is possible. How it's controlled and the data that's exchanged is up to the developer, but the connection and data-swap process is smoothed.
After a developer creates the sync-enabled client, server or web service, endpoints (which may themselves be services, applications or devices) are —bam!—suddenly enabled to do synchronization. The Sync Framework has prebuilt components to make it easier for the programmer to work with particular types of devices or services. After an endpoint is defined as a participant and a network connection is found, they can all "talk" and synchronize the data, said Carrabino.
Ho-hum, yet another framework that keeps developers from having to drill down into protocols. But here's the cool thing for IT teams: once a server or application is set to participate in the synchronization network, other applications can use that predefined synchronization without additional custom development.