Today – more than ever – complex software architectures, configurations and the implications of parallel software running on multi-core hardware call for a new methodology to make sure that software is of high-quality and does what it is was designed for.
By using a formal approach and going…
IMPORTANT! Moles is now the Fakes Framework in Visual Studio 11. Learn more at http://aka.ms/vs11-fakes. Nikolai Tillman, a member of the RiSE group at Microsoft Research, gives a short demo of Moles, a new framework that allows replacing any .NET method with a delegate. In the context of…
Nikolai Tillmann and Peli de Halleux give a short tutorial on Pex, an automated white box testing tool for .Net. The tutorial is a pair-programming session where they show us how
to get started with Pex in Visual Studio, starting from an (untested) piece of C# code:
how to use…
In mathematics, computer science, and related subjects, an 'algorithm' is an effective method for solving a problem expressed as a finite sequence of instructions. Algorithms are used for calculation, data processing, and many other fields. (In more advanced or abstract settings, the instructions do…
Building applications that are responsive and can exploit parallel hardware poses an important challenge. In particular, enabling applications to execute various tasks in parallel can be difficult if those tasks exhibit read and write conflicts. Revisions are forked and joined…
CHESS is an automated tool from Microsoft Research for finding errors in multithreaded software by systematic exploration of
thread schedules. It finds errors, such as data-races, deadlocks, hangs, and data-corruption induced access violations, that are extremely hard to find with…
Bart De Smet is one of the highly talented software engineers on Erik Meijer's team and the chief architect of the LINQ to Anything dream. You should watch his excellent PDC10 session on this topic.As you learned on Channel 9 Live's PDC10 conversation with Wolfram Schulte and Erik Meijer, Z3…
Mike Barnett and Daryl Zuniga, a high school intern at RiSE, sit down to talk about Code
Contracts for .NET and documentation. Daryl has been working this summer on a tool that inserts contracts elements into the Xml Documentation files generated by the C#/VB…
JavaScript is the most widely used programming language on the web. As the great
Douglas Crockford
likes to say, JavaScript is both the world's most popular programming language and the world's least popular programming language
at the same time.In this episode of Expert to Expert (to Expert),…
Mike Barnett gives a step-by-step tutorial on
Code Contracts, a new way to express preconditions, postconditions and invariants in any .NET language. The contracts team have built a runtime instrumentation tool and also advanced
static checkers that can understand and reason about…