الأحد، 31 أكتوبر، 2010

Synch Framework vs. Gears


Microsoft Sync Framework
is a data synchronization platform from Microsoft that can be used to synchronize data across multiple data stores. Sync Framework can be used for offline access to data, by working against a cached set of data and submitting the changes to a master database in a batch, as well as to synchronize changes to a data source across all consumers (publish/subscribe sync) and peer-to-peer synchronization of multiple data sources
Unlike Gears, which Google launched in late May, Sync Framework's purpose is not only to provide a way to save data both locally and in the cloud -- a prerequisite for enabling a Web-based application to work offline.
"It's a general purpose tool. It's not just for applications, but also for services and devices," Carrabino said
According to the download site, Microsoft Sync Framework will enable "collaboration and offline scenarios for applications, services and devices." That includes P2P synchronization of relational databases, NTFS/FAT file systems and all sorts of data ranging from contacts to music, videos, and user settings

We're doing something different from Google, said Anthony Carrabino, a senior product manager for SQL Server. "Sync Framework is really a tool that lets developers build applications that can sync any data -- files, contacts, it could be anything -- over any type of protocol.



Google Gears
is software offered by Google that "enables more powerful web applications, by adding new features to your web browser. It allows some online files to be used offline

it's important to note that because the database portion of Gears is really just a client-side database accessible from javascript, there's nothing in Gears that specifies a specific server-side implementation, or even a specific server api. Thus, doing things like the data partitioning you describe are up to the developer, as is interfacing with the server in general


Several web applications from a variety of companies have used Gears at some point, including Google (Gmail, YouTube, Docs, Reader, Picasa for mobile, Calendar, Wave), MySpace (Mail Search), Zoho (Writer, Mail), Remember The Milk, and Buxfer.[15] WordPress 2.6 added support for Gears, to speed up the administrative interface and reduce server hits

References:
Microsoft launches Google Gears competitor
A quick overview of Gears
Microsoft: Sync Framework isn't Google Gears
wikipedia-Microsoft_Sync_Framework
wikipedia-Google Gears

الجمعة، 15 أكتوبر، 2010

Version Control Systems



Version Control System (VCS) is a software that allows to manage changes of documents, programs, images and other information that is stored in form of computer files.

Some popular Version Control Systems:
Subversion - cross-platform open source VCS with great User Interface implementations (TortoiseSVN is the most known implementation for Windows shell integration).
Git - open-source VCS for distributed development that does not require a central server, yet lacks a convenient UI.
Mercurial - yet another distributed open source version control system which is less popular than Git (5 times less popular, if you trust Google).
TFS - is a Microsoft product offering source control, data collection, reporting, and project tracking, and is intended for collaborative software development projects. It is available either as stand-alone software, or as the server side back end platform for Visual Studio Team System (VSTS).

Martin Fowler conducted the survey on 99 developers in his company ThoughtWorks and its the result
The results were this
:











































































































Tool

BestOKProblematicDangerousNo
Opinion
Active ResponsesApproval %

Subversion


20


72


6


1


0


99


93%


git


65


19


1


0


14


85


99%


Mercurial


33


27


2


0


36


62


97%


ClearCase


0


3


14


41


41


58


5%


TFS


0


0


32


22


44


54


0%


CVS


0


14


59


11


15


84


17%


Bazaar


1


13


3


0


80


17


82%


Perforce


1


26


16


1


54


44


61%


VSS


1


1


11


64


22


77


3%