January 2012

Monthly Archive

The Morning Brew #1033

Posted by on 31 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Software

  • Beta release of the Amazon Web Services (AWS) SDK for Windows Phone – Lee Stott highlights the release of the Amazon Web Services SDK for Windows Phone allowing you to consume the range of Amazon Services (S3, SimpleDB, SQS Cloud Services) from the comfort of a sensible Windows Phone compatible API. Lee highlights a good set of resources for getting up and running with the library including video content from Channel 9.

Information

  • Anonymous Types Unify Within An Assembly, Part Two – Eric Lippert continues his discussion of anonymous types within assemblies, and the unification of types which contain the same definition.
  • Currying vs partial function application – Jon Skeet discusses the differences between the functional programming concepts of currying and partial application, looking at doing both in C# when programming in a more functional programming style.
  • Hazards of Converting Binary Data To A String – Phil Haack picks up on an interesting group of questions on StackOverflow discussing how you can represent binary data as a string, and looking at the implications of the encoding used as to what it does to the data being encoded, and how it can result in changes to the actual bytes being written.
  • About Orchard Governance and Microsoft – Bertrand Le Roy discusses the recent change to the Orchard project, and how the project which was initiated by Microsoft has now been formally handed over to the community in a more complete way than many company created open source projects have been in the past.
  • The new OpenEverything organization – While on the topic of Open Source project involvement, Sebastien Lambla discusses some of the organisation changes for the OpenEverything (OpenWrap, OpenRasta, OpenFileSystem,…) projects and how he is now focusing his involvement.
  • From Concept to Code in 6 hours: Shipping my first Windows Phone App – Scott Hanselman walks through the creation of his very first Windows Phone 7 Application, from concept to application in 6 hours, sharing the key bits along the way.
  • 31 Weeks of Windows Phone Metro Design – #5 Choosing between Panoramas, Pivots and/or Pages. – Arturo Toledo is into week 5 of his 31 post series looking at all aspects of Windows Phone Metro design. This post takes a look at the three key UI concepts beginning with ‘P’ – Panorama, Pivots and Pages, looking at their use and how they are similar to other more familiar design concepts.
  • The Big Dummies Guide for Windows Phone Developer Resources – Bil Simser shares a great collection of Windows Phone development resources, ranging from articles, frameworks, design concepts, training, to marketing and monitzation of applications.
  • Winning on the Marketplace: The differentiation game – Paul Laberge discusses how you can make your applications stand out in the Windows Phone Marketplace, including how some application feature will make users love your application all the more.
  • Introducing Apache Hadoop Services for Windows Azure – Roger Jennings discusses the use of Apache Hadoop Services on Windows Azure, looking at and highlighting some posts on the concepts and product, before walkig through two tutorials, and highlighting plenty of further resources.
  • Find the jQuery Bug #3: Give Me Truth – Elijah Manor is running a series of posts looking at common bugs found in jQuery consuming code, and discussing what the problem is, and how you can resolve the issue.
  • Testing a jQuery Plugin with ExpectThat and Mocha – Dan Mohl continues discussion of his ExpectThat library for CoffeeScript / JavaScript assertions, looking in this post at the application of the library in testing a jQuery Plugin
  • Using SpecFlow to drive Selenium WebDriver Tests – Eli Weinstock-Herman discusses the use of SpecFlow combined with the Selenium WebDriver to provide a way fo executing tests derived from human readable requirements, running through the process from scenario to working test

Community

  • SQL Bits X – The Biggest SQL Event in Europe – Sara Allison highlights the SQL Bits X SQL Server event and the associated training days. SQL Bits is a great conference, with SQL experts from all over the world, and this event is particularly special as it also doubles as the UK launch event for SQL Server 2012. Spaces are limited (although it is a large limit) and registrations for both the ‘pay for’ conference / training days and the Free Community Day are currently open.
  • NxtGenUG – Event – Straighten Spaghetti with C# 5 – Jon Skeet takes a trip to Microsoft Research in Cambridge on Thursday 16th February for the NxtGenUG where he will be delivering a session on how C#5 and the new async functionality can help straighten out complex spaghetti code. Be sure to register early for what is bound to be a very popular event.

The Morning Brew #1032

Posted by on 30 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Software

  • jQuery Mobile 1.0.1 Released – The jQuery Mobile team announce the release of jQuery Mobile 1.0.1, their first maintenance release which brings support for the Samsung bada platform and UCBrowsers on the Android platform, along with a number of other bugfixes and enhancements.
  • IcedCoffeeScript – IcedCoffeeScript is a fork of the main CoffeeScript which adds a number of additional features, most notably await and defer keywords which extend the power of the language with respect to asynchronous control flow, implementing continuation passing style, much like C#5.
  • Umbraco CMS – Download: Umbraco CMS 5.0 RC 3 – The 3rd Release candidate of Umbraco CMS V5.0 is now available on CodePlex. This release candidate is likely to be the final one before a production release later this week, so is a great opportunity to get your hands on the new stuff first.
  • Windows Azure Toolkit for Social Games Version 1.2.2 Released – Nathan Totten announces the release of 1.2.2 of his Windows Azure Toolkit for Social Games. There are no new features over the 1.2.0 beta, but this release is considered to be a stable one, and includes some perforamcne tweaks and improved use of AutoFac for dependency injection.

Information

Community

The Morning Brew #1031

Posted by on 27 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Update: Some broken HTML merged Derick Bailey and Davy Brion’s links in todays edition – thanks to Oded for letting me know.

Software

  • Announcing SQL Azure Data Sync Preview Refresh – The Windows Azure Team announce the release of a refresh to the preview of the SQL Azure Data Sync. SQL Azure Data Sync provides a means for you to synchronise data between your on premise databases and those in the cloud, and this refresh addresses a number of issues customer raised, including making it available in all Azure datacentres
  • Rockford Lhotka – CSLA 4 version 4.3.0 alpha available – Rockford Lhotka announces the alpha release of his CSLA 4 v4.3.0 application framework. The major feature for this release, in addition to the usual bugfixes, is some significant performance improvements to the MobileFormatter which supports serialisation on Silverlight and Windows Phone platforms.
  • NuGet Project Uncovered: Anna – Jason Jarrett continues his series of posts looking at interesting projects hosted on the NuGet Feed. This post gives a short introduction to Anna, a HTTP Server library based around the Reactive Extensions,

Information

  • C#/.NET Little Pitfalls: Implicit Zero To Enum Conversion – James Michael Hare continues his ‘Little Pitfalls’ series with a look at how a constant zero value can be converted to result in the use of an overload of a function you might not expect
  • Modularity And Security In Composite JavaScript Apps – Derick Bailey discusses securing client side applications and preventing users from accessing functionality they are not allowed on the client by making clever use of the module pattern to control the functionality delivered to the client.
  • (Ab)Using Conventions To Enforce Good Practices – Davy Brion shares a neat trick using Fluent NHibernate conventions which will help force developers to specify the lengths of strings in the mapping ensuring optimal database performance.
  • 3. Pattern Matching – Be Explicit – Dorian Corompt continues this series looking at the various aspects of Functional Programming, in this post exploring the use of Pattern Matching, illustrating its use in F# and discussing some best practices for its use.
  • SqlBulkCopy for Generic List<T> (useful for Entity Framework & NHibernate) – Jarod Ferguson discusses the use of SQL Bulk Copy to provide a quick and efficient way of getting large volumes of data into SQL Server data tables
  • MVVM on MVC: HTML is not XAML – Jeremy Likness discusses the MVVM pattern, some of its benefits and explores how well it fits with HTML development using libraries like Knockout.js
  • Understanding SQL Azure Throttling and Implementing Retry Logic – Scott Klein discusses the throttling behaviour of SQL Azure and looks at how you should handle throttling and the retry capabilities you need to bake into your data access to account for it.
  • One reason why HTML5 gaming is limping along – Christian Heilmann discusses the disservice that the conversion of games from other platforms to HTML5 based implementations, discussing the disadvantages of this conversion approach rather than writing on the platform from the start, illustrating with discussions of the plight of Commodore 64 games in their later years.
  • Happy birthday Commodore 64 – Marcin Dembowski highlights the 30th birthday of the Commodore 64, the computer which started it all for me, and for many others I suspect.
  • The HTML5 History API and ASP.NET MVC – Dan Maharry shares an extract from the Manning book HTML5 for .NET Developers which discusses the use of the HTML5 History API.

The Morning Brew #1030

Posted by on 26 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Software

  • PhoneThemeManager: allow your app to have the Light, Dark, or Inverted theme with 1 line of code – Jeff Wilcox shares a library for Window Phone 7 Mango which allows you to have your application use the light theme even if the device is set to dark theme, allowing you to give you applications a contrasting look, much like the built in Mail application does. The library is available on NuGet in both source and binary format, and code is also available on GitHub.
  • NuGet Project Uncovered: NFeature – Jason Jarrett continues his series of posts looking at some of the interesting recent additions to the NuGet package feed, highlighting NFeature, a library which provides support for Feature Toggles.

Information

  • Event Centric: storing and consuming events – Daniel Cazzulino continues his series of posts discussing the various aspects of event sourcing, taking a look in more detail at the storage of the domain events in an event store and how you can go about consuming them.
  • Structure your code by feature – Urs Enzler discusses an alternative approach to structuring your code, looking at structuring it based on feature / requirement, building more structure on top of the standard layered approach and easing maintainability in the long term.
  • Implementing resource oriented controllers in ASP.NET MVC – Pablo M. Cibraro discusses the tendency for ASP.NET MVC controllers to be used as a grouping of actions to share URL structures, and looks at an alternative which allows your controller to be simpler and better observe the SOLID principles.
  • Solving Real-world Theming Challenges with MVC4 and Sass – Harvey Kandola discusses the lack of theming support in native ASP.NET MVC, and shares his solution to this building upon Sass and utilising some useful IDE extensions to make working with Sass and CSS better.
  • Windows Communication Foundation 4.0 – Simplified Configuration Feature – Melissa Amanna highlights one of the key improvements made to WCF in .NET 4, an improvement to the amount of configuration required for your services.
  • MicroFinance App, Creating the Front End – Sara Allison shares a piece from Matt Robinson discussing a proof of concept application using HTML5 Canvas, Modernizr and Knockout.js which he was involved in the creation of.
  • Debugging IndexedDB Applications – Israel Hilerio discusses and shares the IDBExplorer tool that the Internet Explorer team use to help debug client side code which makes use of the IndexedDB data storage features.
  • Software Release Management – Why You Can’t And Shouldn’t Force People to Use the Latest Version – Rob Reynolds discusses the variety of factors which you need to consider when dealing with versioned software releases, looking at the many reasons why people may choose not to use your latest and greatest version.
  • Rant: That’;s Not Rest – Derick Bailey wades into the world of REST, a topic which has more than its fair share of confusion about what it actually is and how it should be correctly implemented. Derick shares a collection of resource (and has updated the post with addition ones people suggested).
  • Building a large text file editor – Part I – Costin Boldisor kicks off a two part series looking at some of the concepts behind the creation of a text editor which can handle large files, discussion the concept of a revision stream in this first post.
  • Deploying "Cloud Numerics" Sample Applications to Windows Azure HPC Clusters – Roger Jennings walks through the process of deploying a sample application of the new Microsoft ‘Cloud Numerics’ platform onto Windows Azure in this step by step post.
  • Now, more than ever, you need a designer – Pete Brown discusses the value that a good UX designer can bring to your project, looking back at the history of UX design in software development and highlighting the importance of getting designers involved early in a project.

The Morning Brew #1029

Posted by on 25 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Software

  • Json.NET – Download: Json.NET 4.0 Release 6 – The JSON.NET Team announce their latest release – 4.0 Release 6. This version adds line numbers to deserialization errors, additional BinaryReader/BinsaryWriter constructor overloads on BSON Readers / Writers, along with fixse for a number of issues.
  • Introducing Dragonfly &#8211; another .NET HTTP server – Louis DeJardin introduces a new .NET HTTP Server implementation which provides the OWIN functionality to allow it to act as an application host. The intention of this projects is to provide another reference implementation to validate OWIN and the Gate implementation.
  • dotTrace 5.0 Performance Early Access Program – Hadi Harari announces the openign of the Early Access Program for dotTrace version 5.0. This is an opportunity for you to get your hands on the latest pre-release version of dotTrace, and for you to help feedback on the product and assist the development team.

Information

  • Inside the Concurrent Collections: ConcurrentQueue – Simon Cooper continues his series of posts looking at the internal implementations of the various Concurrent Collections introduced in .NET 4.0. This post explores the Concurrent Queue, looking first at the non-concurrent queue, and seeing how the concurrent one differs, before deriving some key concurrency principles from the implementation.
  • Advanced APM Consumption in Async Methods – Stephen Toub discusses how you are able to consume an existing Asynchronous Programming Model implementation without first wrapping it in a task, an advanced approach which reduces some of the overheads of the task wrapping approach.
  • NuGet Project Uncovered: PineCone & NuGet Project Uncovered: xizzle – Jason Jarrett highlights two NuGet packages as a part of his NuGet Project Uncovered series which aims to look at interesting and less well known projects which have recently been released as NuGet Packages.
  • Picking a domain for CQRS Journey RI – Grigori Melnik feeds back some of the initial findings and thinking following the Patterns and Practices CQRS questionnaire, discussing one of the key questions – what domain should the reference implementation cover.
  • Windows Azure and Cloud9 IDE at Node Summit – Glen Block highlights the work undertaken in getting Node.js running as a platform on Windows Azure and summarises the goings on at the NodeSummit, giving particular attention to the use of the Cloud9 web based IDE which can be used to develop and deploy Node.js based applications straight to Windows Azure, as demonstrated by Scott Guthrie.
  • Some Thoughts On Functional JavaScript – Derick Bailey shares some of his experiments writing Functional Style code in JavaScript, looking at how some of the key fundamental principles of Functional Programming can be implemented using JavaScript.
  • Resources for getting started with Backbone.js – Jarod Ferguson shares a great collection of resources about Bakbone.js which will help you go from zero to hero with this client side framework.
  • Get involved in Open Source today – How to contribute a patch to a GitHub hosted Open Source project like Code 52 – Scott Hanselman highlights the Code52 project which is aiming to develop a new application each week of the year, and with 3 interesting projects under their belt already is certainly one to watch. Scott discusses how you can get involved with open source projects like this by running through the process of submitting a patch to a project hosted on GitHub.
  • Add HTML5 Geolocation plus Bing Maps into ASP.NET MVC views – Rachel Appel discusses the use of the Bing Maps API in your ASP.NET MVC views, walking through the getting started and consuming some of the basic features of the API
  • "A Lap Around Windows Phone 7.5" webcast now available on-demand – Paul Laberge highlights the availability of the video recording of his ‘A Lap Around Windows Phone 7.5′ webcast from last week. This is 3 hours of content looking at how to build applications on the Windows Phone 7.5 platform, from idea to marketplace.
  • If I can build a phone app anyone can: Changing the keyboard and IsNumeric – Susan Ibach continues her Windows Phone Development series which is exploring some of the common questions which arise in Windows Phone development. This post looks at adding validation to inputs and controlling which mode the onscreen keyboard appears in.

Community

The Morning Brew #1028

Posted by on 24 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Information

  • Anonymous types unify within an assembly, Part One – Eric Lippert fulfills an old promise to show an example of anonymous type unifying within an assembly in this new series of posts, showing how the C# specification allows for use of the same anonymous types in differnent locations are combined into a single type within an assembly.
  • Modifying Code with Project Roslyn – Jason Bock takes a look at using Project Roslyn to modify source code, looking at the removal of region elements from a code file, and integrating this with Visual Studio.
  • Using Async for File Access – Alan Berman takes a look at the use of the new Async / await functionality in C#5 to perform file access in a non-blocking way to help maintain responsiveness and improve the performance of your applications.
  • SOLID JavaScript: The Dependency Inversion Principle – Derek Greer completes his series of posts looking at applying the SOLID principles to JavaScript code, taking a look at Dependency Inversion in this post, looking at the theory behind dependency inversion and how it can be implemented in JavaScript.
  • Javascript and CSS Minifying/Bundling with the Microsoft.Web.Optimization Nuget package – Frédéric Harper takes a look at implementing compression and minification of JavaScript and CSS Resources using the Microsoft.Web.Optimization NuGet package
  • NuGet Project Uncovered: An Introduction to the Series – Jason Jarrett kicks off a new series of posts looking at some of the interesting packages which are being published via NuGet. This first post introduces the criteria used to select the packages which will feature in the series.
  • HTML5 And Internet Explorer: Modernizr To The Rescue! – Derick Bailey discusses the use of Modernizr to make your HTML 5 web applications work with older browsers by way of the shim implementations which patch the missing functionality into browsers, illustrating with a real world example of its use.
  • Please ship your next Windows Phone app with GZip: speed requests 50-80% – Jeff Wilcox highlights GZipWebClient library by Morten Nielsen which brings GZip Compression capabilities to your Windows Phone applications allowing them to retrieve compressed data and benefit from the performance improvements.
  • Mythical man month : 10 lines per developer day – Patrick Smacchia discusses the use of LoC (logical lines of code) to measure development performance, and how the actual numbers of lines of code we craft on average over the long term is surprisingly low, sharing example stats from his NDepend project to illustrate.
  • Skip Intro – CSS3 is the new Flash – Scott Hanselman looks back at the evolution of Flash and other browser plugins which supplement browser capabilities and takes a look to the future where angle brackets will likely rule the roost in these areas with HTML5 and CSS3 bringing a lot of the capabilities developers and users require.

Community

The Morning Brew #1027

Posted by on 23 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Software

  • Boo-yah!!! Caliburn.Micro v1.3 RTW is Here – Rob Eisenberg announces the release of Caliburn.Micro v1.3, the latest release of this MVVM framework for Windows Phone 7 Mango, Silverlight 5 and WPF. This release also includes basic MVVM support for WinRT / Metro apps, improves the ViewModelLocator/ViewLocator implementation along with addressing issues from previous releases and improvements to the API.
  • IE10 Compat Inspector – The Internet Explorer Team announce the release of the IE10 Compat Inspector, a JavaScript based testing tool which will allow you to verify that your sites and applications will work correctly in IE10. The tool consists of a single JavaScript reference, which can be manually inserted into your pages or added via the use of Fiddler.

Information

  • Modern Web Development – Part 2 – Shawn Wildermuth continues his series looking at the world of modern web development, taking a look at the structuring and architecture of your JavaScript in this second part in this series of 10 posts.
  • Introducing Microsoft Codename "Cloud Numerics" from SQL Azure Labs – Roger Jennings rounds up a collection of resources on the recently released Microsoft Codename ‘Cloud Numerics’ project for performing numerical calculations on a large scale using Windows Azure.
  • Visual Studio 11 ALM Advances – S.Somasegar wraps up the 5 post series on Visual Studio 11 he has been posting since the //Build conference with a look at the key Application Lifecycle Management features of Visual Studio 11
  • Rx – Exception Handling – Bnaya Eshet continues his series of posts looking at the reactive extensions, looking at how you should handle exceptions occurring when working with observable streams of events. Also well worth checking out the previous two posts from Bnaya where he took a look at async / await and error handling.
  • Mango Sample: a Secondary Tile in 5 Minutes – Jerry Nixon continues his series exploring the various features of Windows Phone 7 and the techniques for developing with them with a looking at the support for secondary tiles which allow you to present information to the user before they launch your application.
  • The flowchart of the IE rendering modes – Chun Liu shares a flowchart originally created by Henri Sivonen which explains how the browser gets into the various rendering modes based upon a variety of settings and page content.
  • Aggressive Inlining in the CLR 4.5 JIT – Sasha Goldshtein discusses the CLR JIT compiler’s inlining support, and highlights some new capabilities included in .NET 4.5
  • F#, WebSharper, JavaScript, HTML5, Mobile etc – Don Syme gives a catchup on the world of F# and the happenings over the Christmas break, including the releasing of WebSharper as open source, compilation of F# to JavaScript, and some of the recent Azure releases.
  • Speaking of Dev video resources… UserGroup.tv (with ‘State of .NET – The Road to Windows 8′ now available) – Greg Duncan highlights UserGroup.tv, a community site which aggregates recorded Usergroup presentations and materials. The site has a fantastic range of content covering all kinds of developer topics and is well worth checking out.
  • Await, SynchronizationContext, and Console Apps & Implementing a SynchronizationContext.SendAsync method – Stephen Toub discusses how async / await attempts to ‘bring you back to where you were’ with a look at some of the goings on under the covers of the framework in the form of the SynchronizationContext and TaskScheduler.

Community

  • PacMan Kata – Phil Trelford highligjhts the first meeting of the F#unctional Londeners Meetup Group on Thursday 26th January at Skills Matter. The event will be a Code Kata event looking at the the PacMan kata.
  • NxtGenUG – Event – MicroORMs: Making data access – The Coventry NxtGEnUG welcome Ian Russel for a session on Micro ORMs on Monday 30th January. In the talk, Ian will explore the world of the MicroORM showing where they can be useful and how much functionality they provide with such little code and configuration.
  • Teched Europe 2012 Registration now open – Lee Stott highlights the opening of registrations for TechEd Europe, running from 26th – 29th June 2012 in Amsterdam. The Early Bird discount price of 1695 Euro runs until 31st March, after which the price rises to 1995 Euro.

The Morning Brew #1026

Posted by on 20 Jan 2012 | Tagged as: .NET, Development, Morning Brew

Apologies for the late edition today – I was too quick closing my laptop this morning and managed to do it before the edition had posted to the server :( Thanks to Libor for letting me know about my posting snafu

Software

  • Announcing OData T4 for C#, Preview 1 – WCF Data Services Team Blog – Site Home – MSDN Blogs – Ahmed Moustafa of the WCF Data Services Team announces the first preview release of OData T4 for C#, T4 Templating for Add Service Reference for OData Services. This release works alongside the October 2011 CTP release of WCF Data Services, and give you a preview and ability to feedback on this feature which will eventually be in the main product.
  • RaptorDB – The Key Value Store V2 – CodeProject® – Mehdi Gholam shares and discusses RaptorDB 2.0, a key value NoSQL database whcih makes use of MGIndex and MurMur2 Hashing. Full Code is available, alongside this detailed CodeProject article which discusses the implementation.
  • A framework for building of WP7 application – Ilya Builuk shares a detailed look at his PhoneCore library for implementing Windows Phone 7 applications. The library provides a framework for building applications including features for Navigation, Dependency Injection, Configuration, Tracing, and much more. Full source and binaries along with sample applications are available from CodePlex

Information

  • Getting Started with Windows Azure – Scott Guthrie continues his discussions of the Windows Azure in this blog series, discussing the options to get you started with Azure including a look at the signup process and discussing the 3 month trial options.
  • C#, Async, Limits, oh my! – Peter Ritchie explores the limits of Async in C#, discussing how Async implements a state machine with integers representing the states, discussing how he generated 45GB C# Code file to probe the absolute limits.
  • Abusing the Microsoft Research’s Touch Mouse Sensor API SDK with a Console-based Heat-map - – Scott Hanselman discusses the Microsoft Touch Mouse and the recently released Touch Mouse Sensor API SDK from Microsoft Research, exploring the use of the API to read data from the mouse and visualising it, along with pondering the possibilities this could be put to work in.
  • PhoneGap now fully supports Windows Phone – Architects Rule! – Site Home – MSDN Blogs – Bart Vande Ghinste highlights the level of completeness now offered by PhoneGap for targeting Windows Phone 7 devices, discussing the general coverage, and some of the plugins which enhance the integration with various aspects of the phone, along with highlighting a number of resources for learning more.
  • Mango Sample: Delete Dramatically – Jerry Nixon continues his Mango Windows Phone samples series with a look at the implementation of another ‘must have’ animation, exploring the removal od data from a list.
  • How Wikipedia uses HTML5 to save bandwidth – Jef Claes discusses how Wikipedia are making use of the HTML 5 support for SVG in browsers to render images such as flags and saving bandwidth along the way.

Community

  • Into testing? Want to learn? Come to Testfest 2012 – Sara Allison higlights Testfest 2012, a 1 day event organised by the folks at Testing Stuff. The event isn’t going to be a traditional conference, with a mix of exhibit, discussions and a lack of Powerpoint silides. The event is on Wednesday 22nd February, at the Brighton Metropole, and tickets are priced very reasonably at £60.

Next Page »