4Afrika App Stars is a Microsoft reward program for developers. We are looking to equip a special group of developers with the world-class technical skills needed to build highly relevant, immersive applications and cloud-based solutions. We had our first training in Nairobi last week where I got the chance to introduce Microsoft Team Foundation Service (TFS) is the cloud platform of Team Foundation Serve which is the heart of Microsoft’s Visual Studio ALM solution. TFS was announced in late 2012, and since its general availability, the vendor has been working toward co-opting major trends such as distributed version control. Support for Git was announced in January 2013, only a few months after the service itself was announced. Git is a popular open source distributed version-control system (DVCS), and by supporting it Microsoft embraced both DVCS and open source in a single sweep.
With Git support in TFS, developers can use either Team Foundation Version Control (the existing centralized version control system) for their projects, or they can use Git. Moreover, they can use their Visual Studio IDE as a Git client after installing some patch updates and a Git for Visual Studio package that is available for free download. Once configured, the Visual Studio client can be used with any Git service, even without TFS. So while Microsoft is pulling out all the stops to provide a seamless, integrated Git experience for its Visual Studio developers and TFS users, it is also trying hard not to get in the way of seasoned Git developers.
Another noteworthy aspect of TFS is that it is free for a team of up to five users, and does not put caps on the number of projects that can be created. Microsoft is also trying to make TFS a development hub by supporting development for non-Microsoft platforms. Developers can use IDEs of their choice, such as Visual Studio, Eclipse, and even XCode, to develop applications for platforms such as Windows 8 desktop, Windows App Store, Android, Java, and web applications.
Figure #1: Cross-Platform Development with TFS
Time is ripe for Cloud ALM
The software development market has been relatively stable, but many more cloud PaaS players have recently entered the market. Their offerings are complementary to the cloud ALM platforms offered by the leading vendors, and are indicative of the cloud ecosystem’s growing strength. Now, large and small organizations have not only the ability to define, develop, and deploy applications in the cloud, but also to manage application performance. Cloud-based ALM tools cater to a range of small software developers, from one-man mobile application development shops and small development teams with few resources to invest in on-premise ALM platforms, to budget-conscious boutique IT consultancies. The subscription pricing model also works well for this segment. In addition, as a delivery model, SaaS has succeeded in taking innovation to end users, with the latest features, patches, point releases, and major versions available as soon as they are deployed by the tool vendor. While the economic incentive for SaaS ALM was always present, the tools initially lacked the capabilities to manage the application lifecycle end to end, but this is no longer the case. TFS on the Cloud provides tools that can support the entire application lifecycle in the cloud to ensure that the developers ship code on time, every time.