Tuesday, 27 January 2009

DDD South West – Saturday 23rd May 2009

Are you a .NET Developer in the South West of the UK?

Do you want to attend a FREE one day event, covering all that is new and great in .NET?

The DeveloperDeveloperDeveloper (DDD) South West meeting is where you need to be, this event is held on a Saturday so you do not need to worry about taking time from your busy work schedule to attend.  For those of you who know the DDD events, which happen in Reading yearly, this event will follow the same high standards for speakers and topics covered. 

As we are aware that the South West has lacked this kind of event for a very long time we will be holding the event in Taunton at the Queens College.

The exact agenda for the day is still being finalised but rest assured as soon as it is you will know well in advance, to show you how we have organised ourselves our timeline for the run up to the meeting is as follows;

  • Tuesday 27th January - Website goes public, Call For New Speakers opens
  • Tuesday 3rd March - Registration goes live
  • Tuesday 31st March - Call For New Speakers closes
  • Tuesday 7th April - Vote for favourite sessions opens
  • Thursday 30th April - Vote for favourite sessions closes
  • Saturday 23rd May – DDD South West

To stay in touch with the latest news about the event or find more information about the venue and the team running it please visit the official website @ http://www.dddsouthwest.com

Tuesday, 13 January 2009

Web Client Software Factory (WCSF) Event Broker

To get the EventBroker to work with version 2.0 of the Web Client Software Factory read this blog.

Although the code change in the above blog entry allows the Event Broker to work you may still come across some problems, the one I recently encountered was related to generic method overloads.

Before generics you could not overload a method without changing its signature, but with generics you can alter the method signature with a type T return for example;

string Get(sting value1)

overload to;

T Get<T>(sting value1)

Now to the compiler the two methods are different, however when you use reflection to find methods and you use the Type.GetMethod, supplying the method name ‘Get’ with the correct types you will receive a ‘System.Reflection.AmbiguousMatchException’ exception. You receive this exception because to find the generic method you supply ‘Get’ and not ‘Get<T>’ which is also how you return the non-generic ‘Get’ method.

Due to the issue above when the Event Broker runs its sanity check by reflecting all your method the ‘System.Reflection.AmbiguousMatchException’ exception is raised when you have a generic overload to overcome this replace;

EventBrokerSanityCheck.cs, ln 147

interfaceInfo = @interface.GetMethod(subscribingMethodInfo.Name, types.ToArray());

With;

MethodInfo interfaceInfo=null;
try
{
    interfaceInfo = @interface.GetMethod(subscribingMethodInfo.Name, types.ToArray());
}
catch (System.Reflection.AmbiguousMatchException)
{
    //Bug fix for generic overloads
    interfaceInfo = @interface.GetMethods().Where(w =>
            w.Name == subscribingMethodInfo.Name
            && w.IsGenericMethod == subscribingMethodInfo.IsGenericMethod).First<MethodInfo>();

    ParameterInfo[] parametersInterface = interfaceInfo.GetParameters();

    if (types.ToArray().Length == parametersInterface.Length)
    {
        for (int i = 0; i < parameters.Length; i++)
        {
            if (parametersInterface[i].ParameterType != types[i])
            {
                interfaceInfo = null; //clear the interface info as we did not find the method
                break;
            }
        }
    }
    else
    {
        interfaceInfo = null; //clear the interface info as we did not find the method
    }
}

[Disclamer : I give no warranty to the correctness of this solution or that there is not a better way to do it, I just hope I help you out of a hole as it did with me]

Tuesday, 6 January 2009

Patterns & Practices - Pocket Guides

The Patterns & Practices team at Microsoft spend their time looking at the best methodologies to design and build software and as part of this they produce many frameworks to build software with and guidance documents which outline their proposed best approaches to designing certain software.

Some of these guidance documents have been made available in pdf format covering the following architecture topics;

  • Web Applications
  • RIA Clients
  • Services

Each guide gives practical guidance on what you need to consider when creating software for each environment, these should be your first stop when stating the creation of your software.

To download each guide go here

Thursday, 18 December 2008

The .NET Developer Network - January 2009

When: Tuesday 27th January 2009, doors open 6:00pm, meeting starts 6:30pm

Where: UWE (University of the West of England), Frenchay, Bristol (see FAQ for directions and a map) - Room 2q49 (in Q block)

What: Parallel Extensions to the .NET Framework (.NET V4.0)

Who: Mike Taulty, Microsoft Developer Evangelist and absolutely fabulous speaker.

Why: Because all new PCs have more than one processor and this is the future of computing. The problem that we have as developers is that our code is primarily single tasking so the other processors are going to waste. Parallel Extensions is part of the .NET Framework 4.0 and they allow us to make use of additional processors. Also because Mike is quite simply the best presenter on the UK user group circuit and you will be hard pushed to see a better example of how to present all year.

How do I sign up for this meeting: Send an email to meetings at dotnetdevnet.com and quote your user name and the January meeting.

Abstract:

The next version of the .NET Framework will come with new classes that start to chip away at the difficulties in building multi-threaded applications that are well placed to take advantage of the modern multi-core processor architectures and the future many-core architectures that are coming over the next few years. In this session, we'll introduce what that Parallel Extensions are, what they can do for you and take a tour around what's available in the current previews for you to start evaluating.

Bio:

Mike Taulty works in the Developer and Platform Group at Microsoft in the UK where he has spent the past few years helping developers understand and get the best from the Microsoft platform. Prior to this, Mike spent 3 years with Microsoft Consulting Services as a consultant on developer technologies.
Before joining Microsoft, Mike spent the previous 9 years working as a software developer for a number of enterprises, consultancies and software vendors working with a variety of operating system, client, communication and server technologies. Mike holds a BSc Hons (1st Class) in Computer Science from the University of Leeds.

Wednesday, 17 December 2008

Visual Studio Ora

Code navigation and organisation can become an issue in the real world of development, eventually most code files contain a significant number of lines.  Aware of this problem the Visual Studio team gave us regions which work great but only work to hide code in expandable sections.

At the begging of December a new version of Ora was released, Ora is a Visual Studio 2008 add-in which solves the problems of code navigation (I know I am using it).

With the add in running you are presented with an grouped overview of your classes, whith methods and properties organised by interfaces, scope etc.  The tool removes the need to encase your code in regions and makes the issue of navigating code files so much easier.

To download the source or binaries please visit the codeplex : http://www.codeplex.com/ora

orascreenshot.png

As good as a tool like this is, its no excuse for an unorganised file, please keep this in mind.

Tuesday, 16 December 2008

Visual Studio 2008 Spell Checker

For years I have been so grateful that Word comes with a spell checker, before it arrived I spent alot of time with a dictionary at my side. Although my spelling has greatly improved there are still to odd word I get wrong and these usually show up in my developments, and there is nothing worse than having a client call you up to tell you that your latest release has a spelling mistake (which is usually in a spurious label hidden away).

What we need is a spell checker that knows what to check and what not, well surprisingly there is, the Visual Web Developer Team have created such a spell checker.  The spell checker works only in Visual Studio 2008 SP1 and only for web projects so unfortunately WinDev developers are still out in the cold.

The tool is supports checking of text in the following areas;

  • HTML style comments <-- HTML -->
  • ASP.NET server side comments: <%-- ASP.NET --%>
  • JScript, C# and C++ comments: // C++ style comments
  • CSS and C style comments: /* C style comments */
  • VB and VBScript style comments: 'This is VB comment
  • The spell checker also has an ignore list and works for multiple languages.

    To read the full details and download please visit the Visual Web Developer Team Blog

    Monday, 15 December 2008

    50 CSS Tools

    Smashing Magazine have produced another one of their 50 useful tools posts, this one is concentrated on CSS tools and has a number of useful links. For example there is a tool for formatting text (through CSS) to any shape and a tool which will allow you to test your JavaScript in the browser in real time!

    To see the full list for yourself go to www.smashingmagazine.com

    Thursday, 11 December 2008

    Cheat Sheets

    How often do you need to know the life cycle of an ASP.NET page or you need to know what code snippets are in Visual Studio 2005, for me these kind of things make me head for google in hopes that someone has this information.

    Now you do not need to search google anymore Jon Sheehan has put together all the cheat sheets he has found related to .NET into one place.

    To see the following cheat sheets visit his blog http://john-sheehan.com

    • .NET Format String Quick Reference
    • ASP.NET 2.0 Page Life Cycle & Common Events
    • Visual Studio 2005 Built-in Code Snippets (C#)
    • ASP.NET Page Life Cycle Diagram (PNG)
    • ASP.NET Runtime Cheat Sheet 
    • Microsoft .NET Framework 3.5 Commonly Uses Types and Namespaces (PDF)
    • Visual Studio 2005 Default Keybindings C# | VB (PDF)
    • Visual Studio 2008 Default Keybindings C# | VB
    • Microsoft ASP.NET AJAX Library
    • Microsoft ASP.NET AJAX Client Life Cycle & Events (PDF)
    • LINQ
    • VB.NET/C# Comparison
    • SQL Server
    • HTML Character Entities
    • RGB Hex Color Chart
    • CSS
    • jQuery
    • JavaScript
    • XHTML (PDF)
    • Regular Expressions
    • Microformats

    Wednesday, 10 December 2008

    ASP Chart Control

    Almost every business application needs to support some kind of reporting, regardless of weather the stakeholders realise it.

    Microsoft realise that the ability to view data online is important to us and have just released a new Charting control which can produce charts like this;

    The control is free and Scott Guthrie has all the information in his blog

    Monday, 8 December 2008

    Microsoft Bluprints

    Creating code can be boring! Do not confuse this statement with the fact that enjoy my career immensely and I spend every waking moment reading, learning and doing.  The things that bore me the most is creating the same code over-and-over (boilerplate code), I know how to structure my RIA and my Web Services etc its all taken from best practices and my previous experience.

    To get me past the boring bits I will use software factories, they take the pain away and allow me to concentrate on solving the problems.  The current factory I am using is called "The Web Client Software factory (WCFS)" which uses the Guidance Automation Toolkit to create the wizard interface and hold the code templates for generation. 

    The use of the WCFS is great and really speeds up development and unification in code bases between developers, all I need to do to create another module of functionality is select a special menu option on Visual Studio, follow the wizards, make some decision on name etc and all the boilerplate is done.

    The Guidance Automation framework, on which the WCSF is built, has been around for quite a while however it has not really caught on and not many people use to create this own software factories, in fact this technology has never really hit the main stream even though so many people need a framework to build their own factories in.

    With the release of Blueprints Microsoft hopes to make the software factory work more accessible and replace the Guidance Automation Tool.  Blueprints is a tool for creating and using software factories however this tool seems to be better as it is easier to use by providing a unified environment to run your factories from, the factories can also be accessed from RSS feeds allowing you to always access the latent version.  Also unlike the Guidance Automation Toolkit this tool provides a creation tool already build.

    Blueprints is the next step into software factories so expect to hear alot more about this and code automation in the coming month as we start to become more educated against writing the same code over-and-over and spend more time dealing with the problems and getting though right.

    To read a full description of Microsoft Blueprint go here : http://msdn.microsoft.com/architecture/blueprints

    Download the tool here http://www.codeplex.com/blueprints

    Tuesday, 25 November 2008

    PDC 08 Videos

    Since I first heard about the PDC I have always wanted to go, its the event which Microsoft uses to promote its business and provide developers and architects with information on how the tools they use will evolve.  It is also held in Los Angeles, which is cool, imagine being sent to LA on work time!

    The PDC is not a cheap event and I suspect unless you have a boss who is enlightened to how important this event is and work for a fortune 500 company you are very unlikely to be able to attend, although if you can convince your family to holiday in LA then I am sure its a good way to combine the two!

    However do not fear for those of us with no holiday budget, other than a week in Skegness, and not working for fortune 500 you can still see every session at the PDC just by going to www.microsoftpdc.com.

    I have spent the last couple of weeks listening to the video sessions, while working, and the videos are great most of them include a small picture of the presenter and the slide deck so nothing is loosed in not attending.  The keynotes are the best videos, especially as if you had tried to attend the event yourself you would have had to content with looking over quite a few hundred people to get a glimpse of the stage.

    PDC 08 videos @ www.microsoftpdc.com

    Monday, 24 November 2008

    Windows Vista SP2

    Service pack 2 for Vista started development not long after SP1and contains fixes created since SP1 and new enhancements, these include;

    • Windows Search 4.0 integration
    • Bluetooth 2.1 feature pack
    • Blu-Ray enhancements
    • Windows Connect Now

    Vista SP2 is currently being beta tested by a number of developers but is not publicly available, however roomers suggest that Vista SP2 will be available in the first quarter of next year.

    Thursday, 20 November 2008

    New .NET Logo

    I know I am a bit behind the times, however at the end of October Microsoft released their new .NET Logo;

    net_h_rgb_2

    The release of the new logo coincided with the start of the PDC 08. 

    Personally I like the new logo however I tent to be drawn to most things new, maybe because I like change when it comes to .NET.

    Expect to see the wavy 'N' all over the place when it comes to .NET and associated technologies.

    Check out the site re-branding and details of "Oslo" and "Dublin" @ www.microsoft.com/NET/

    Thursday, 13 November 2008

    JQuery Intelliscene In Visual Studio 2008

    As part of the process of Microsoft using JQuery for some of their new web enhancements (MVC being one and the next version of AJAX) they have decided to enhance the JQuery library to include Visual Studio code comments for JScript IntelliSense.

    To get the IntelliSense enhancements there is a new file to load and a hot fix, to read the full story go to the Visual Web Developer Team Blog @ Microsoft

    Tuesday, 11 November 2008

    CodeRush Xpress for Visual Studio 2008

    For those of you who have never heard of CodeRush it is a tool developed by DevExpress which provides a number of productivity enhancements in Visual Studio through automation of repeatable tasks for example it can repeat lines of code, highlight references, refactor and more.

    CodeRush has gained quite a following for the enhancements it provides for .NET developers and the time saving tasks it provides.

    Personally I have been a fan of the tools, but have not invested (yet), however I do use their free version called 'Refactor! for ASP.NET' which even with its limited tasks has made an impact on my development. If you are like me you have wanted Code Rush then you can come one step closer as announced at the PDC '08 DevExpress and Microsoft have teamed up again to provide CodeRush Xpress for Visual Studio 2008.

    CodeRush Xpress is a cut down version of CodeRush bit still has a healthy number of tools which would enhance most developers working practices, there are 26 refactions including;

    • Combine Conditionals
    • Convert to Auto-implemented Property
    • Convert to Initializer
    • Decompose Initializer
    • Decompose Parameter
    • Expand Lambda Expression
    • Expand Ternary Expression
    • Extract Method to Type
    • Flatten Conditional
    • Inline Delegate
    • Inline Temp
    • Introduce Local
    • Make Explicit
    • Make Implicit
    • Reverse Conditional
    • Split Conditional
    • Use String.Format
    • Use StringBuilder

    Also you will see a number if Visual elements for hints, smart tags and code layout as well as a enhanced code navigation tool.

    To download this great FREE tool go here

    Monday, 10 November 2008

    The .NET Developer Network - December Meeting

    When: Tuesday 2nd December 2008, doors open 6:00pm, meeting starts 6:30pm

    Where: UWE (University of the West of England), Frenchay, Bristol - Room 2q49 (in Q block)

    What: "What’s New In C# 4 ?" and "Strategic Development Methodologies Using Rock Band"

    Who: Guy Smith-Ferrier, co-founder of The .NET Developer Network, MVP, author, rather dodgy singer.

    Why: Because knowing what's in C# 4 allows us to know where to spend our precious R&D time and to make better long term decisions. Also because it's Chistmas and Rock Band is just a whole load of fun that everyone should be able to share.

    How do I sign up for this meeting: Send an email to meetings at dotnetdevnet.com and quote your user name and the December meeting.

    Abstract: What’s New In C# 4 ?
    Microsoft are keeping C# 4 under wraps until PDC 08 at which point we start the roller-coaster of catch up all over again as we desperately struggle to keep up with what’s new and why we should be interested in the latest flashy feature. This session is only a month after PDC so you should be way ahead of the game this time.

    Abstract: Strategic Development Methodologies Using Rock Band
    Developers tend to get stuck in a rut using the same old tools over and over again. Visual Studio, C#, .NET Framework, SQL Server, NUnit, Cruise Control. It might come as a shock to learn that one of the best development tools is Rock Band on the Xbox 360. This session introduces us to Rock Band and through the use of numerous demos drawing on heavy audience participation we learn to code better, be not just better developers but better people and, most importantly to solve world hunger and develop peace and harmony for everyone. (And just so we’re clear here – this session has absolutely nothing to do with strategic development methodologies – it’s just a clever title).

    Bio:

    Guy is an MVP in ASP.NET. He is the author of ".NET Internationalization" published by Addison-Wesley (http://www.dotneti18n.com). He is a Microsoft Certified Professional developer, author, trainer and speaker, has spoken at many European and US conferences, is the winner of the NxtGen Best Presentation 2006/2007, has been voted best speaker three times and is an INETA Speaker. He runs The .NET Developer Network (http://www.dotnetdevnet.com), a free .NET user group in the South West of England. He is the author of C#/.NET courseware and much of the official Borland courseware including courses on COM and ADO. He has written over 50 articles for numerous magazines, has co-authored an application development book and is the author of the ADO chapter of "Mastering Delphi 6". You can read his blog at http://www.guysmithferrier.com.

    Wednesday, 22 October 2008

    DDD 7 Registration IS OPEN

    Register for DD7 at the following url;

    http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032393874

    DO IT NOW it takes less than 48 hours to sell out!!!

    Tuesday, 21 October 2008

    November 3rd Meeting of The .NET Developer Network

    When: Monday 3rd November 2008, doors open 6:00pm, meeting starts 6:30pm

    Where: UWE (University of the West of England), Frenchay, Bristol - Room 2q50 (in Q block)

    What: "A Developers Guide To Network Admin..."

    Who: Dave McMahon, Developer and Network Administrator at Ridgian, co-founder of The Next Generation User Group, MVP, podcaster, game show host, singer/song-writer, conference organiser, wearer of silly wigs.

    Why: Because developers just aren't too good at this bit and we should be. Stand up to your network administrators, tell them to configure their subnets and DHCP servers correctly. And also because you get to meet the face behind the voice of so many podcasts and so much giggling.

    How do I sign up for this meeting: Send an email to meetings at dotnetdevnet.com and quote your user name and the November meeting.

    Abstract:

    After building our magnificent applications, we developers have to lower ourselves to deploy our works of art on live servers so that ... (gulp) ... people can use them ... After working as a developer AND as a company Network Administrator for 6 years Dave will take you on a Developers journey through IP Subnets, DNS, DHCP, Firewalls, Routers, Domains, Active Directory, Network Configurations, IIS Configuration, SQL Server Configuration and that all time favourite of Developers ... permissions. He will explain what Default Gateways are, and what a DNS Suffix for, what application pools do, why you should throttle back SQL Server memory, how does DNS work, and DHCP. All these things can impact our application and make deployment time a painful time. It pays to know how some of this IT Pro stuff works and Dave will pack the 2 hours full of demos and examples from the last 6 years so that you have a better understanding of how our Windows networks function and how they affect your application. After this session if some IT Pro blokey/blokess says to you "Your problem is that the IP Subnet Mask doesn't match you Default Gateway, your DNS Resolution is failing and you need a DHCP Reservation on your local subnet", you can smile and nod knowingly and have some idea of what the heck they're talking about ...

    Bio:

    Dave McMahon studied Theoretical Physics at York University and on graduating with a First Class Honours he moved into the obvious career path of The Royal Air Force ... After spending 10 years Skiing, Climbing, Mountaineering and carefully avoiding any posting that might involve any threat to life and limb, he took the peace dividend money and ran. There ensued a period of stocking shelves, driving forklift trucks and fitting curtains before somehow managing to wheedle his way into the software industry in 1998, something he'd always dreamed of doing since leaving the RAF in 1991.

    Four halcyon years were then spent writing VB6/VBA/Access and SQL Server 7.0/2000 applications, sigh ... Then a move into .NET from version 1.0 onwards with numerous forays into SQL Server 2005 and Oracle 10g systems right up to the present day working with Windows Workflow Foundation and SharePoint 2007. For the last 6 years Dave has also been venturing into the world of IT Professionals whilst being a Developer through his role of company Network Administrator for Ridgian http://www.ridgian.co.uk.

    Dave is co-founder of The Next Generation User Group http://www.nxtgenug.net and runs the Birmingham Region for NxtGenUG. He has spoken at many developer conferences including VBUG, DeveloperDeveloperDeveloper, MIX UK and TechEd Europe. He has also written articles for MSDN, Industry Insiders and IDM. When not playing with software, Dave is a keen guitarist, and if you know of a band short of a lead, rhythm or bass guitar, please let him know the details ...

    Thursday, 16 October 2008

    VS2008 & 2005 : Order Your Code Tabs By Usage

    How often do you find yourself working on a project with multiple code files open?  I do this often, you could say I am lazy as when I finish with the file close it down but you never know I might need it again soon and how often can you keep your train of thought from code-file-to-code-file while remembering to close and open each one, for me not much I must be easily distracted!

    This means that I spend the day with multiple code files open, the VS2008 IDE is great with tabs for each code file and I can use 'Crtl+TAB' to get an 'Alt-TAB' view however this is still a bit clumsy what would be good is if the code tabs where sorted by usage....and if by magic I have such a solution;

    Sara Ford recently posted on her VS IDE Tips blog a registry change which will reorder code tabs in VS2008 and 2005 by usage, this means the last code file you use will appear to the left followed by the next as so-on.  To read the exact change please go here.

    Monday, 29 September 2008

    JQuery With Microsoft

    Recently I started development on a brand new web site project, which gave me the opportunity to use JQuery with AJAX on the client side.

    I would like to say that I carefully chose JQuery over Prototype, Scriptaculous or one of the other javascript libraries but with time short I picked the first one which seemed the most popular and looked easiest to pick up.

    Luckily for me I chose correctly and JQuery has turned out to be an amazing library with the ability to manipulate the client side DOM with ease and has some nice UI effects like fade, shrink and grow for HTML elements.

    My choice has further been backed up by the recent announcement the Microsoft will be distributing JQuery with all their future releases, in addition they will be adding increased intelliscence to the library making it even easier to use.  Also all future AJAX Toolkit releases will build on the JQuery library.

    To read the full announcement from Scott Guthrie go here