June 2011

Monthly Archive

The Morning Brew #884

Posted by Chris Alcock on 30 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

Information

  • Eduasync part 14: Data passing in coroutines - Jon Skeet continues his series of posts looking at re-implementing the the Async CTP and related functionality, furthering his previous discussions of Coroutines in this post, exploring the passing of data between coroutines, and exploring a simple implementation.
  • Manual Validation with Data Annotations - K. Scott Allen explores the wider use of the System.ComponentModel.DataAnnotations outside of the typical data framework and web UI, looking at their use in a simple console application
  • The Perils of User-Agent Sniffing, 2011 Edition - Eric Lawrence re-iterates the perils of performing User Agent Sniffing in your we applications, showing a number of examples where incorrect sniffing is causing we applications to fail (sometimes completely) on modern Internet Explorer implementations.
  • I Don’t Have Time for Unit Tests - Mike Hadlow discusses some of the initial worries people have about adopting Test Driven Development, looking at some statistics about developer time and suggesting that having a good suite of TDD tests can aid in comprehension of code, the area which research shows most developer time is spent.
  • The history of ASP.NET MVC, so far - Simone Chiaretta looks back over the 3 (and a half) releases which have been made on the ASP.NET MVC project, highlighting the key features and improvements introduced in each, providing a useful background to the features available.
  • Shared rooms synchronization problem - Dzmitry Huba explores a reasonably complex abstract synchronisation problem which allows for an exploration and example of use of some of the locking and synchronisation types available in the .NET platform.
  • Use it or lose it! [New Delay.FxCop code analysis rule helps identify unused resources in a .NET assembly] - David Anson shares another custom FxCop rule implementation, this time looking at the resources included in your application, identifying those which are not referenced in your code. As usual, David provides binary and full source, so this is a double hit of useful functionality and another example to look at when implementing your own rules.
  • How to mock a dynamic object - Daniel Cazzulino takes a look at mocking a dynamic object using the Moq framework, showing how, due to dynamic’s nature you can actually use an anonymous type as the payload for the dynamic object.
  • Quick microbenchmarks in Visual Studio with Code Snippets - Parallel Programming with .NET - Site Home - MSDN Blogs - Stephen Toub shares a snippet of code hich sets up a framework for soing simple performance comparisons between two pieces of code, including the clean up and timing logic between each test run.
  • Just Do It: Command-Query Segregation, Nike-Style - Dylan Beattie likens his CQRS Commands to a psychotic drill sergeant in this short discussion of some of the things he learnt about implementing CQRS at Udi Dahan’s Advanced Distributed Systems Architecture course.

Community

The Morning Brew #883

Posted by Chris Alcock on 29 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

  • Simple.Data 0.6.8 - Mark Rendle announces version 0.6.8 of his Simple.Data library. This project, initially a reaction to the Microsoft.Data library, is rapidly approaching its 1.0 release. The 0.68 release improves the libraries capabilities with joins between tables, adding support for Self Joins and joins where there is not referential integrity in the database.
  • Updated Release for stylecop - The version number is 4.5.24.0. - Tatworth highlights yet another Style Cop release which addresses some issues for processing of async code. This release is the one that will likely become the RTW release on Thursday
  • ReSharper 6 RC2; EAPs for dotCover, dotTrace Performance - The team over at JetBrains have released a second Release Candidate release of ReSharper 6, addressing issues with solution wide analysis and find code issues functionality, and have also opened new early access previews of minor updates to dotCover and dotTrace which improve the integration with ReSharper 6.
  • What is Code Metrics Viewer? - Matthias Friedrich highlights his Visual Studio 2010 Code Metrics Viewer extension which plugs into VS 2010 Professional and uses the Code Metrics Power Tool to provide code metrics information to the IDE. Matthias is blogging a number of posts on this project blog which look at the various features of the viewer and I encourage you to check those other posts out too.
  • Office 365 Launches Globally - US ISV Evangelism - Site Home - MSDN Blogs - Bruce Kyle highlights the official release of Office 365, launched yesterday, highlighting resources for those who want to develop against the Office 365 services.

Information

  • Introducing the Expected Objects Library - Derek Greer follows on from his recent post on the Expected Objects pattern with the sharing of a library of code, the Expected Objects Library, which makes the implementation of the expected objects easy. Derek outlines the use of the library in this post, and highlights how it can be obtained via NuGet for Binary or GitHub for source.
  • Unit testing and the Scientific Method - Oscar Calvo discusses taking a more scientific approach to your unit testing, looking principally at the tests for addressing a bug fix, exploring each of the stages of the scientific method.
  • Html5 Snooker Club - CodeProject - Marcelo Ricardo de Oliveira shares a detailed article on CodeProject which looks at the building of a snooker game using HTML5 technologies, discussing the various features of the game, and the HTML5 functionality that each use, sharing relevant code snippets in the article and providing the full source as a download.
  • ActiveMQ and .NET combined! - ?ukasz takes an introductory look at getting up and running with the ActiveMQ message queue in your .NET applications, showing how easily the .NET port of the Java API makes this process.
  • Weak references in .NET - Vishwas Sutar explores the use of the Weak Reference in .NET applications by way of an example, showing how weak references allow us to point at an object while still allowing the garbage collector to remove the instance if required by the system.
  • You can’t cache DateTime.Now - Ayende discusses a situation where he was seeing lots of cache misses for a particular set of queries due to their use of DateTime.Now in a criteria which meant that the query was different every time.
  • The Workflow Parallel Activity and Task Parallelism, Windows Workflow (WF4) Task Parallelism with Sequences & Windows Workflow Foundation (WF4) ParallelFor Activity - Ron Jacobs takes a look at task parallelism in Windows Workflow 4, refelcting back on a previous post about the threading used in WF4 and looking at the parallel support in synchronous and asynchronous activities, and Parallel activities.
  • Announcing Four New F# Projects For Creating Web Apps - Robert Pickering highlights 4 projects whcih make creating web applications using F# much easier, all available as source and NuGet packages, covering MVC frameworks, logging, NoSql Database access and Linq.

The Morning Brew #882

Posted by Chris Alcock on 28 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

  • Say Hello to Project jQMvc - Kowsheek Mahmood shares a collection of HtmlHelper extension methods which help when building a jQuery Mobile web application using ASP.NET MVC
  • ASP.NET MVC 3 Docs In Nine Languages - Phil Haack announces the availability of ASP.NET MVC 3 documentation in the 9 languages which the ASP.NET MVC framework is available (Japanese, Korean, Chinese (Simplified & Traditional), German, Spanish, French, Italian & Russian)
  • NETMF 4.2 - Other CodePlex NETMF Projects - Colin Miller highlights some of the other great projects which build on and extend the .NET Micro Framework and are available for your use on the CodePlex site.

Information

Community

The Morning Brew #881

Posted by Chris Alcock on 27 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

  • Stylecop 4.5.22.0 is available - Tatworth highlights the RC10 release of StyleCop 4.5, and the plan for the RTW release on Thursday30th June. Update: Looks like 4.5.23.0 is available now - thanks to cyberzeddk for the head up
  • Nancy 0.6.0 saw the light of day - Andreas Håkansson highlights the release of Nancy 0.6.0, a huge community effort, spanning 220 change sets and 12 authors. This release sees the BootStrapper recieve attention, customisable view , view caching, introduction of the dotliquid view engine, improvements to Razor view support.

Information

Community

The Morning Brew #880

Posted by Chris Alcock on 24 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

  • ReSharper 6.0 Release Candidate - The Team at JetBrains follow up on their beta releases over the last week or so with a Release Candidate build of ReSharper 6. This release addresses issues from all the beta releases, and will no doubt be followed with the official release in short order.
  • Porting Node to Windows With Microsoft’s Help - Ryan Dahl shares the announcement that Microsoft are joining forces with Joyent to produce a native port of Node.js to the Windows Platform, which will bring the Node Platform to Windows 2003 onwards, along with Windows Azure.
  • IronPython - Download: 2.7.1 Beta 1 - The IronPython team announce the first beta release of IronPython 2.7.1. This release brings parity with CPython 2.7.2, disables the built in VS tooling support in favour of the pytools tooling, adds a few modules to the distribution and addresses reported issues.
  • Project Silk Drop 12 - Karl Shifflet announces Drop 12 of the Project Silk Guidance project. This drop does not contain any significant code changes, and as usual contains the latest versions of all chapters of the guidance that goes with the sample.

Information

  • Ref returns and ref locals - Eric Lippert highlights a question from StackOverflow on "ref returns", looking at the background to the basic use of ref to pass variable references, and discusses some of the CLR support for references which is not implemented in C#.
  • Tips for building Nuget packages - Joshua Flanagan shares some great tips for creating good NuGet packages, ranging from managing package version numbers, to the package structure, and automating package builds.
  • FlagArgument - Martin Fowler discusses the use of flag arguments to toggle between different implementations of a functions logic, discussing how he prefers to avoid this by having two specific methods which better explain intent, and looks at some more complex cases of this scenario.
  • Model binding XML in ASP.NET MVC 3 - Jimmy Bogard explores the support within ASP.NET MVC 3 for custom Model Binder implementations to be pulled in using Service Location, allowing you to support additional formats of data, and Jimmy explores this by showing the creation of an XMKL based model binder.
  • 404 errors fixed! Goodbye /Glimpse/Config, hello /Glimpse.axd - Anthony van der Hoorn discusses a change to the URL for accessing the Glimpse Client side functionality which is in the latest release. The change was brought about due to users running into 404 errors with the way Glimpse used to work. Anthony discusses what the problems were, and how they ended up fixing by moving to a .axd implementation.
  • Cool stuff in FubuMVC No. 1: Behaviors - Chad Myers moces his series on from FubuCore to look at features of FubuMVC, with this first part exploring the background and approach used in the creation of the Behavior model in FubuMVC.
  • Silverlight WebBrowser Control for Offline Apps (Part 2) - Mike Taulty continues his exploration of HTML content in Silverlight applications, looking at embedding HTML content into the Silverlight application as a resource, and dumping it to disk on the the clients machine to read offline.

Community

The Morning Brew #879

Posted by Chris Alcock on 23 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Information

  • Eduasync part 11: More sophisticated (but lossy) exception handling, Eduasync part 12: Observing all exceptions & Eduasync part 13: first look at coroutines with async - Jon Skeet continues his EduAsync series of posts looking at implementing the async functionality from the Async CTP in C#, with parts 11 and 12 taking a look at improving the exception handling, and looking at the differences between async and the TPL, before moving on to look at coroutines in part 13, exploring the background theory and looking at basic uses.
  • Lazy Exceptions for Fake LINQ Queries - K. Scott Allen takes a look at mocking / faking exceptions in LINQ Queries, discussing how the standard technique of throwing on access to the property / method doesn’t truly mirror reality where the exception would occur at enumeration time.
  • Cleaning up POSTs in ASP.NET MVC - Jimmy Bogard takes a look at simplifying the logic of dealing with POST actions in ASP.NET MVC, identifying the common patterns that occur in handling these requests and looks at defining a mechanism for cleaning up the process.
  • Announcing Free Ingress for all Windows Azure Customers starting July 1st, 2011 - The Windows Azure Team announce a significant change to the pricing model for the Windows Azure service. From 1st July all inbound traffic will be free during both on-peak and off-peak times.
  • The ASP.NET Daily Community Spotlight - How posts get there, and how to make it your Visual Studio Start Page &My ASP.NET news sources - Jon Galloway discusses how he goes about selecting the daily link which goes into the ASP.NET Community Spotlight on the ASP.NET site, shows how you can get these links on your Visual Studio start page, and also discusses where he finds his .NET News. I’m very proud that The Morning Brew is featured highly in Jon’s news gathering, and I also follow similar processes to Jon for finding the links for TMB. I’d also like to echo Jon’s frustration about blogs which don’t have the author’s name in an easy to find location - I really like to give decent attribution in TMB and it’s a real annoyance to not have a name to use.
  • Silverlight, HTML and the WebBrowser Control for Offline Apps - Mike Taulty discusses the interoperability between Silverlight and the HTML DOM, looking at the cases when Silverlight is hosted in an HTML page, and the new Silverlight 5 features which allow the Silverlight application to also host the WebBrowser Control to display HTML inside the application
  • Passing parameters between Silverlight and ASP.NET - Part 1 - Brij Mohan is also looking at Silverlight Interoperability with the containing HTML page, exploring how your Silverlight application can pass values back to the ASP.NET Application hosting the Silverlight application in the first part of this new series
  • Why You Should Never Use DATETIME Again! - Susan Ibach discusses the new datetime data type in SQL Server 2008 which allows better control and accuracy of the values you store for date time fields and allows you finer control of the data storage requirements.

Community

The Morning Brew #878

Posted by Chris Alcock on 22 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

Information

  • How to Run Unpatched CLR Side-by-Side - Jeroen Frijters discusses the steps to allow you to run multiple copies of a particular .NET Framework version on your machine - a useful trick for exploring the differences between different patch versions, and also useful for testing your applications on different minor versions.
  • Exploring CoffeeScript Part 1 - And Then There Was Coffee - Jan Van Ryswyck kicks off a series of posts looking at the CofffeeScript programming language which compiles down to JavaScript, discussing reasons why this language is interesting, and exploring the process of writing and compiling some coffee script by way of a Hello World example.
  • Windows Azure AppFabric SDK - June CTP - Download issues - Charles Young highlights some issues he has been having getting the June CTP of the Windows Azure AppFabric SDK from the Microsoft Downloads site. If you are also having problems, either try patience or let Google (or Bing) help you out
  • C# Light Syntax - Phil Trelford takes a look at reducing C# down by removing some of the braces and unnecessary keywords, and making white space important, ending up showing that it would be very similar to F#, and how F# makes defining business entities concise, and that they can be consumed by C# (and any other .NET language)
  • Design, Code, Release: 100% Coverage is not enough - Nathan Gloyn discusses the trend towards 100% code coverage by tests, discussing the places where testing doesn’t add value, or is disproportionally expensive, and discussing that even with 100% coverage using Unit Tests you still need to consider actually using the system, be it manually or via automated UI tests to verify that everything works as intended.
  • Mercurial Cheat Sheet - Greg Duncan highlights a nice simple cheat sheet for the Mercurial (Hg) Distributed Version Control System from Robert MacLean, providing a nice 1 page summary of the command line commands
  • The Importance of Feedback in Software Development - Brian Harry discusses the agile principles and how feedback is so important in agile software development, looking at how the Visual Studio and TFS v.Next release helps enhance the feedback cycles in development.
  • Metro In Motion #8 - AutoCompleteBox Reveal Animation - Colin Eberhardt continues his series of posts looking at creating his own versions of native UI features in Windows Phone Applications, allowing him to use the effects in his own applications. In this post, Colin explores the creation of a fluid auto complete reveal effect like that used in the Windows Phone email client.

Community

  • SQLBits - Query across the Mersey - 29 Sep 2011 - 1 Oct 2011 - Liverpool - The SQLBits team announce their 9th conference, to be held in my current home of Liverpool between the 29th September and 1st October. As usual there will be two days of low cost in depth SQL sessions on the Thursday and Friday, followed by the free event on the Saturday.
  • Continuous Delivery & DevOps - The team over at ThoughWorks share a recording of one of the sessions from their UK Quarterly Briefing, where Sam Newman and Nick Hines discuss the theory and application of continuous delivery of projects

The Morning Brew #877

Posted by Chris Alcock on 21 Jun 2011 | Tagged as: .NET, Development, Morning Brew

Software

  • Announcing the Windows Azure AppFabric June CTP! - The Windows Azure AppFabric team announce the release of the June CTP release of the Windows Azure AppFabric. This release aims to make multi-tier application building and managing easier and contains the AppFabric Developer Tools, AppFabric Application Manager, support for compositional applications, support for Windows Work Flow and WCF.
  • Chutzpah - Chutzpah - A JavaScript Test Runner Released - Matthew Manela announces the release of Chutzpah, a JavaScript test runner for Visual Studio. The tool is both a Visual Studio Extension and a command line tool allowing you to run your JavaScript tests from the IDE and build server
  • Announcing datajs version 0.0.4 - Marcelo Lopez Ruiz, of the WCF Data Services Team, announces the release of datajs 0.0.4. This release adds support for the Reactive Extensions for JavaScript, along with extended metadata, improved cache filtering and a number of performance improvements. The next planned release is the v1.0.0 release, so this is effectivly the final CTP release.
  • New dotPeek Early Build + Pioneering dotPeek Plug-ins - The JetBrains team announce an updated Early Access Program build of dotPeek, their .NET disassembler. The team also highlight two plugins for the tool from the community which extend the functionality of the tool.
  • ReSharper 6.0 Beta 3 - The JetBrains team also announce their 3rd beta release of ReSharper 6 which addresses feedback from previous betas, offering improved memory footprint, improved performance across the new JavaScript and Razor support, along with a number of other fixes.

Information

  • Using Syntax to Model the Domain | Girl Writes Code - Sharon Cichelli discusses how the syntax of your domain model can help bridge the gap to the actual business domain, looking at some examples of how using syntax and Semantics and help you build better domain models.
  • Performance Testing Quick Reference Guide - Bryan Group the Performance Testing Quick Reference Guide version 3.5. This ‘e-book’ contains 241 articles (of which 51 are new or updated) which discuss all aspects of performance testing in Visual Studio 2010.
  • Using NuGet for Application Plug-Ins & NuGet with MEF - Matt Hamilton takes a look at programmatically using NuGet to pull in packages which are actually extensions for your application, and explores the use of MEF to have these extensions dynamically loaded into your application.
  • 35+ Use Cases for Choosing Your Next NoSQL Database - Todd Hoff continues looking at the best choices for NoSql Database use, exploring the various types available and the use cases they best support
  • Securing .NET Release Build - Slava Gomzin discusses the securing of your built assemblies to give customer trus in your application, exploring strong naming, digitally signing and obfuscation
  • Trying out jQuery Mobile on our blog - Christiaan Baes highlights the jQuery Mobile project, and takes a look at using it to create a nice mobile experience for the LessThanDot blogs
  • Rendering JQuery Templates With Backbone Views - Derick Bailey continues his series exploring the Backbone.js library, taking a look at combining Backbone with jQuery templates in this post. Full source for all the examples in his series are available to download.

Community

  • Mind Control Your Computer In C# - Guy Smith-Ferrier highlights his new talk which he will be delivering at VBUG Bristol on Wednesday 22nd June, and Fest#11 on Friday 1st July. This session takes a look at controlling your application using the power of your mind (and a neuroheadset) - sounds fascinating

Next Page »