August 10, 2010

• Windows Azure Security Overview White Paper

A new white paper "Windows Azure Security Overview" has just been released that provides a comprehensive look at the broad range of security features and functionality available with Windows Azure.

The paper describes the array of controls that Windows Azure customers can use to achieve their required level of security, control and compliance most suitable for their unique requirements.

http://go.microsoft.com/?linkid=9740388

Posted by Jorgen Thelin at August 10, 2010 01:18 PM | [PermaLink]

August 04, 2010

• Windows Azure Architecture Guide Part 1 - Moving Applications to the Cloud

Windows Azure Architecture Guide Part 1 - Moving Applications to the Cloud

For an introduction to developing cloud-based services on Windows Azure, check out the new Windows Azure Architecture Guide, Part 1 which covers a migration walk-through for moving existing applications to the cloud.

This interactive guide is the first volume in a planned series about the Windows Azure platform that will cover both "brownfield" and "greenfield" scenarios - migrating existing apps or writing new apps for running on the Azure cloud platform.

The Windows Azure Architecture Guide, Part 1 walks you through the migration of a traditionally developed and hosted service to a Windows Azure hosted service. From architecture to best practices and design concepts, the guide outlines exactly how the application was migrated to Windows Azure.

Use the guide as a reference for key Windows Azure architecture concepts such as:

  • Authentication and authorization
  • Data storage and access
  • Session management
  • Deployment
  • Development life cycle
  • Cost analysis

http://waag.blob.core.windows.net/partone/index.html

Sample code and a PDF version of the doc is available from CodePlex - http://wag.codeplex.com/

Posted by Jorgen Thelin at August 4, 2010 09:15 AM | [PermaLink]

August 01, 2010

• ILMerge

ILMerge is a utility that can be used to merge multiple .NET assemblies into a single assembly. ILMerge takes a set of input assemblies and merges them into one target assembly. The first assembly in the list of input assemblies is the primary assembly. When the primary assembly is an executable, then the target assembly is created as an executable with the same entry point as the primary assembly. Also, if the primary assembly has a strong name, and a .snk file is provided, then the target assembly is re-signed with the specified key so that it also has a strong name.

Posted by Jorgen Thelin at August 1, 2010 09:00 AM | [PermaLink]

July 30, 2010

• Kindle 3 aka Kindle Wi-Fi

Amazon has announced the release of a new version of the Kindle Reader at the new lower price point of $139 for a Wi-Fi only model.

The all-new Kindle model has a new electronic-ink screen with 50 percent better contrast than any other e-reader, a new sleek design with a 21 percent smaller body while still keeping the same 6-inch-size reading area, and a 15 percent lighter weight at just 8.7 ounces. The new Kindle also offers 20 percent faster page turns, up to one month of battery life, double the storage to 3,500 books, built-in Wi-Fi, and a graphite color option.

Trading the 3G wireless feature for a new lower price point makes a lot of sense to me, and would even persuade me to buy one for reading mostly around the house, although i still find the Kindle Reader app on iPhone more contenient for reading on the go.

You can pre-order now for delivery on the August 27 release date.

Posted by Jorgen Thelin at July 30, 2010 07:43 AM | [PermaLink]

July 29, 2010

• Visual Studio 2010 Keybinding Posters

Reference posters from MSDN for the default keybindings in Visual Studio 2010 for Visual Basic, Visual C#, Visual C++ and Visual F#. Provided as print-ready PDF files in letter & A4 format.

http://www.microsoft.com/downloads/details.aspx?familyid=92CED922-D505-457A-8C9C-84036160639F&displaylang=en

Posted by Jorgen Thelin at July 29, 2010 02:58 PM | [PermaLink]

July 19, 2010

• Parallel Programming in .NET Framework 4

The C# team have posted a set of 3 blog articles to help people to grok the basics of using the Task Parallel Library (TPL) and other parallel programming features in .NET Framework 4.0

The articles walk us through how to make a simple Windows Forms use parallel threads to keep your UI responsive to user interaction even while performing compute intensive calculations and operations.

Well worth a read.

Posted by Jorgen Thelin at July 19, 2010 04:09 PM | [PermaLink]

June 09, 2010

• F# PowerPack

The F# PowerPack is a collection of libraries and tools for use with the F# programming language provided by the F# team at Microsoft.

Contents include a functional interface to standard .NET collections, F# versions of lex and yacc, a tool for generating HTML documentation from F# libraries, support for using F# with LINQ-based libraries, parallel LINQ integration, CodeDOM Implementation, F# Metadata Reader and much more.

http://fsharppowerpack.codeplex.com/

Posted by Jorgen Thelin at June 9, 2010 03:20 PM | [PermaLink]

April 26, 2010

• Kanban and Scrum

Kanban is gaining traction in the agile software development community as a process framework that is even more lightweight then Scrum, but which still delivers many of the same benefits for many projects.

InfoQ have a free online PDF version of a book by Henrik Kniberg and Mattias Skarin comparing Kanban and Scrum, including examples and case studies where each process might be most useful.

http://www.infoq.com/minibooks/kanban-scrum-minibook

Scrum and Kanban are two flavours of Agile software development - two deceptively simple but surprisingly powerful approaches to software development. So how do they relate to each other?

The purpose of this book is to clear up the fog, so you can figure out
how Kanban and Scrum might be useful in your environment.

You can also purchase a printed copy of the book if you prefer.

Posted by Jorgen Thelin at April 26, 2010 02:09 PM | [PermaLink]

April 19, 2010

• Ten Reasons To Use The Managed Extensibility Framework

 

Jeremy Likness posts 10 reasons why he prefers using the Managed Extensibility Framework (MEF) instead of other .NET dependency injection frameworks such as Unity.

  1. It's available out of the box [with .NET Framework 4.0]
  2. Dependency injection and inversion of control
  3. Lifetime management
  4. Configuration
  5. Factories with dependency resolution
  6. Import Many
  7. Strongly typed Metadata
  8. Extensibility
  9. Modularity
  10. Customization

He also talks about the successes he's had using MEF within deployed enterprise applications.

http://csharperimage.jeremylikness.com/2010/04/ten-reasons-to-use-managed.html

Posted by Jorgen Thelin at April 19, 2010 03:10 PM | [PermaLink]

April 16, 2010

• The Many Faces of Publish/Subscribe

Here is an article that has been recommended by a colleague as the best overview paper on event-driven systems:

"The Many Faces of Publish/Subscribe" by Patrick Th. Eugster, Pascal A. Felber, Rachid Guerraoui, and Anne-Marie Kermarrec

Abstract:

Well adapted to the loosely coupled nature of distributed interaction in large-scale applications, the publish/subscribe communication paradigm has recently received increasing attention.
With systems based on the publish/subscribe interaction scheme, subscribers register their interest in an event, or a pattern of events, and are subsequently asynchronously notified of events generated by publishers.
Many variants of the paradigm have recently been proposed, each variant being specifically adapted to some given application or network model.
This paper factors out the common denominator underlying these variants: full decoupling of the communicating entities in time, space, and synchronization.
We use these three decoupling dimensions to better identify commonalities and divergences with traditional interaction paradigms.
The many variations on the theme of publish/subscribe are classified and synthesized.
In particular, their respective benefits and shortcomings are discussed both in terms of interfaces and implementations.

http://se.inf.ethz.ch/people/eugster/papers/manyfaces.pdf

Posted by Jorgen Thelin at April 16, 2010 04:36 PM | [PermaLink]

March 31, 2010

• Building Document Generation Systems from Templates with Word 2010 and Word 2007

Document generation systems are one of the most compelling uses of Open XML WordprocessingML. Content controls provide a great way to give structure to your content and to make it easier to build document generation systems.

This MSDN article contains a summary and guidance for this scenario and links to other useful MSDN articles and blog posts.
http://msdn.microsoft.com/en-us/library/ff433638(v=office.14).aspx

Posted by Jorgen Thelin at March 31, 2010 12:37 PM | [PermaLink]

March 24, 2010

• 13 Easy Ways to Craft More Efficient Emails

Jessica Nielsen of vibrant-marketing.com provides a list of 10 Easy Ways to Craft More Efficient Emails

While all 10 are great tips, personally I find the first three to be the most useful ones:

  1. Begin the body of your email with a quick statement of why you are writing.
  2. Separate questions with bullets.
  3. If you have a lot of information to cover, [write] several emails [one for each seperate topic].

Plus I would add three more suggestions:

  • Always include a Title for the email in the Subject box.
  • Try putting some structure into what you are writing, to break up the "wall of text" into more easily digestible chunks - you know, like paragraphs, sections, headings, line breaks and all that other good stuff that we all learned back in school
  • Always re-read your e-mail before sending it. And not just to catch obvious spelling mistakes and other typos, but also to confirm that you really do want to send that e-mail because you can never get it back after you press Send!

How many times have people sent you those unidentifiable "wall of text" emails that makes it very hard to see what they are talking about or what follow up action is expected?

Sorry to be blunt, but people will often simply ignore emails that take too long to read and/or understand.
When in doubt, remember the Internet slang phrase "TL;DR" which is widely used in various online forums - and which very pointedly means "Too Long; Didn't Read" !

Life is short, and we all have better things to do with our time than read lots of verbose emails every day!

Posted by Jorgen Thelin at March 24, 2010 03:54 PM | [PermaLink]

February 19, 2010

• Top 25 Most Dangerous Coding Errors

A new study from MITRE describes the top 25 programming errors that can open up security holes in software.
http://cwe.mitre.org/top25/

Posted by Jorgen Thelin at February 19, 2010 03:28 PM | [PermaLink]