Microsoft is hosting a two-day workshop on the Microsoft Biology Foundation (MBF), an open-source Microsoft .NET library and application programming interface for bioinformatics research. The MBF workshop will take place October 20 and 21, 2011, at the University of California, San Diego. On both days, the workshop will start at 9:00 A.M. and end at approximately 5:00 P.M. It will include a quick introduction to Microsoft Visual Studio 2010, the Microsoft .NET Framework, C#, and the MBF object model. Attendees will participate in hands-on labs and write a sample application that employs the file parsers, algorithms, and web connectors in MBF.
The program will cover the modules that are listed on the Microsoft Biology Foundation Training site. The sessions will combine lectures and hands-on labs; in order to participate, please bring a laptop with Microsoft Visual Studio 2010 installed. Students and educators can acquire Visual Studio 2010 through the Microsoft DreamSpark program or through the MSDN Academic Alliance (MSDNAA) program (if your department is a member). Alternatively, anyone can install Microsoft Visual C# 2010 Express for free (product registration is required). Note that the feature sets for Visual Studio vary and Visual Studio Express will work but will not have all the functionality of the Professional or Ultimate versions and our trainer may utilize these more advanced features during the course.
Module 1: Introduction to the Microsoft Biology Foundation and Command Line Tools
This module provides an overview of the Microsoft Biology Foundation (MBF), its intended scenarios, and included command-line tools. It shows you how to obtain MBF, what is required to use it, and, most importantly, how to get started with MBF by using scripting environments such as Python and PowerShell. It also introduces several free tools for batch file analysis that were built with MBF, as well as a few add-ins for popular numeric and scientific analysis programs that you can use even if you do not have much programming knowledge.
Module 2: Programming with Visual Studio 2010 and C#
This is a comprehensive introduction to the Microsoft Visual Studio programming environment and Microsoft .NET. Learn how to create a project, what is .NET, how to get started with C#, and runtime debugging. The hands-on lab helps you get experience building applications in Visual Studio 2010. It walks you through the steps that are required to create a console application, interfaces and types that implement those interfaces in C#, a library to hold common (shared) code, and a simple Windows Presentation Foundation (WPF) application by using the shared library.
Module 3: Building Applications with MBF
To really take advantage of the power that is offered by MBF, you can write programs in .NET that build on top of the core features MBF provides. This module provides an overview of the types that are included in MBF, and introduces you to the core features of the programming platform—including how to represent sequences, load and save data, and analyze and run algorithms on sequences. The hands-on lab helps you gain experience working with sequences, parsers, formatters, and the transcription algorithm that is supplied in MBF. It walks you through the steps that are required to build a simple Windows Forms application that can load a set of sequences from a file, transcribe them, and then write those sequences to the same or a different file.
Module 4: Working with Sequences
This module examines the Sequence data type in MBF. Learn how to load sequences into memory and save them, the different sequence types that are available, how to use sequence metadata, and how data virtualization support enables support for large data sets. The hands-on lab familiarizes you with managing sequences and sequence items by using MBF interfaces, properties, and methods to create a WPF application to visualize the data.
Module 5: Parsers and Formatters
This module explores MBF’s built-in sequence parsers, formatters, alphabets, and encoders. It also introduces the method of expanding MBF with custom alphabets, parsers, and formatters. The hands-on lab walks you through the steps that are required to build a simple custom parser and formatter for a fabricated biology data format, and then plug it into MBF and the sequence viewer/editor that were created in Module 3.
Module 6: Algorithms
This module examines the algorithms that are defined in MBF for sequence alignment, multi-sequence alignment, sequence fragment assembly, transcription, translation, and pattern matching against sequences, and explains how to create custom algorithms. The hands-on lab walks you through the required steps to build an application that runs algorithms against sequences that are loaded with MBF and perform sequence alignment, assembly, and transformations.
Module 7: Web Services
This module introduces Microsoft .NET web services, the web service architecture in MBF, the built-in web service support in MBF for BLAST, and ClustalW; how to call these services asynchronously; and presents a detailed example of how to build custom service wrappers. The hands-on lab walks you through the steps of building an application that executes the BLAST algorithm by using web services against sequences loaded with MBF. You will get some experience loading and identifying web service handlers for BLAST, passing sequences and sequence fragments to BLAST, changing the BLAST parameters, and displaying the results from a BLAST run.
Date and Venue
October 20–21, 2011
University of California, San Diego
Atkinson Hall, Room 4004
San Diego, CA, United States