Wednesday, November 21, 2007

Microsoft Sync Framework Runtime

http://msdn2.microsoft.com/en-us/sync/default.aspx

Microsoft Sync Framework (MSF) is a comprehensive synchronization platform enabling collaboration and offline for applications, services and devices. Developers can build sync ecosystems that integrate any application, any data from any store using any protocol over any network. MSF features technologies and tools that enable roaming, sharing, and taking data offline.

A key aspect of MSF is the ability to create custom providers using the MSF Runtime. Providers enable any data sources to participate in the MSF synchronization process allowing peer to peer synchronization to occur.

A number of providers have been included out-of-the-box that support many common data sources. Although they are not required, to minimize development, it is recommended that developers use these providers wherever possible. The following are the providers included:

  • Sync Service for ADO.NET: Synchronization for ADO.NET enabled data sources 
  • Sync Service for File Systems: Synchronization for files and folders 
  • Sync Service for SSE: Synchronization for Simple Sharing Extensions such as RSS and ATOM feeds
Developers can ultimately use any of the out-of-the-box providers or can create custom providers to exchange information between devices and applications.

Participants
A participant is the location where information from the data source is retrieved.

Participants Type
  • Full Participants : (Laptop, Smartphone) allow developers to create applications and new data stores directly on the device.
  • Partial Participants : (SD Card) Partial participants describe devices that have the ability to store data either in the existing data store or another data store on the device. These devices, however, do not have the ability to launch executables directly from the device.
  • Simple Participants : (RSS Feeds, Web Services) Simple participants describe devices that are only capable of providing information when requested.

Keywords

  • Sync Service Provider
  • MSF Runtime
  • Sync Session
  • Data Source
  • Metadata : Versions, Knowledge, Tick Count, Replica ID, Tombstones

Tuesday, November 20, 2007

An Introduction to LDAP

http://www.ldapman.org/articles/intro_to_ldap.html
http://www.gracion.com/server/whatldap.html

LDAP, Lightweight Directory Access Protocol, is an Internet protocol that email and other programs use to look up information from a server.

Sunday, November 11, 2007

What's F#?

F# is a statically typed functional programming language that targets the .NET framework. It shares a common core language with OCaml, another popular functional programming language, and draws ideas from many other programming languages, including Haskell, Erlang, and C#. In a nutshell this means that F# is a programming language that has a nice succinct syntax that feels a bit like scripting as we are able to execute the code interactively but has all the type safety and performance of a compiled language. This article is not indented to be an introduction to F#, but there are many resources on the web intended to make learning F# easy. See "F# Resources" later on in the article for a list of these.

http://www.infoq.com/articles/Beyond-Foundations-FSharp

F# Resources

There are a growing number of F# resources available on the web, here's a summary of some of the best ones:

  1. The Official F# Site, find the latest version of the compiler and the F# manual
  2. Don Syme, F#'s lead developer's, Blog, a great place to keep an eye on for F# announcements and short articles about making the most of F#.
  3. The Hub-FS, an F# community site with blogs and forums.
  4. Robert Pickering's F# tutorials and resources.
  5. Flying Frog Consultancy's F# tutorials and resources.