Welcome to MSDN Blogs Sign in | Join | Help

MSDN Flash Podcast Show 005 - Gary Short discusses technical debt

This podcast accompanies the July 1st, 2009 edition of the MSDN Flash newsletter. It includes an interview with Gary Short discussing technical debt and the roll refactoring can play in repaying that debt, plus a discussion of my teams new YouTube channel.

Show Notes:

I also found this video from Ward Cunningham discussing the debt metaphor (5mins)

Subscribe:

Subscribe in an RSS Reader:

Subscribe in ITunes:

Or:

Download this podcast

Posted by Eric Nelson | 0 Comments
Filed under:

MSDN Flash Podcast Show 4 – Open Source Frameworks and Libraries with Sara Ford

This podcast accompanies the June 17th edition of the MSDN Flash newsletter. It includes a twenty minute interview with Sara Ford, the Program Manager of codeplex.com, Microsoft's open source project hosting web site. We discuss her famous Visual Studio Tips (for VS 2008 and VS 2005) , how people can get involved in Codeplex and her move from Waterfall to Agile.

Show Notes:

Subscribe:

Subscribe in an RSS Reader:

Subscribe in ITunes:

Or:

Download this podcast

Posted by Eric Nelson | 0 Comments
Filed under:

Can you teach an old dog new tricks? Or… announcing project NEric

I am 41. I started developing software when I was 12 using a Sinclair ZX80. That means I have been developing software for … 29 years!! (Do I get an award of some kind when I get to 30?). I also was a very good developer – but you will just have to take me word for that as I pretty much suck these days :-) The reason “I suck” is for the the last 5 years I have developed relatively little code. Instead I perfected my white boarding skills as a Solutions Architect and my Excel skills as a programme manager. Things did change for the better about 12 months back when I switched roles in Microsoft UK and started doing more development again as a Developer Evangelist (The clue is in the title). BUT… I have still only written hundreds, not thousands of LOC (or better still 10s of thousands).

What I have learnt over the last 12 months is whilst I was off choosing between a red or green pen, the world of .NET development was changing. There are still lots of projects being worked on in a way I recognise from my development days but there is a small but growing number of developers and teams doing things very differently.

Over simplifying hugely, there are broadly two types of developers:

  1. Developers who only use technology, tools, approaches and guidance from Microsoft to build great Windows software. 
    • Most .NET developers fall into this category, myself included (Bear in mind – I am over simplifying hugely)
    • A great example would be the take up of Object Relational Mapping by Windows developers is very low as many developers have waited (years!) for Microsoft to ship an ORM. This is in stark contrast to other parts of our industry – just look at the widespread acceptance of ORMs by Java developers.
  2. Developers who endeavour to use the best technology, tools, approaches and guidance no matter where they originate to build great Windows software.
    • Some of this group of developers align themselves closely with a “movement” called Alt.NET. (For more on Alt.NET check out http://altnetpedia.com/)
    • Some of this group don’t align with Alt.NET – but still are striving to continually improve how they build software. For example, check out Software Craftsmanship.

Which leads me to “Can you teach an old dog new tricks?” In this case Eric is “the dog” and none Microsoft technology, tools and approaches is “the new tricks”. In other words, I want to jump camp from the majority to the minority and see how it feels.

My plan is pretty simple – to have an ongoing background project to build “something” which as far as possible is “Microsoft free” but is still a great Windows application. Which would be fun in its own right but I also plan to share what I learnt in a “Hi, I’m new to this, but I think I just learnt why X is really helpful” sort of way.

Hopefully by the end I will also be able to say that I am a very good programmer again. Or maybe that is a stretch target and a simple “I don’t suck anymore” is more achievable.

The immediate next steps are:

  1. Identify the specific technologies, tools and approaches I want to explore
  2. Identify useful resources and forums to help me when I get stuck (which no doubt will happen a lot)
  3. Identify a fairly simple application to build – but something that can be used to explore the above
  4. Set up my development environment
  5. Build a “hello world” that touches as much of the dev environment as possible
  6. Start building the actual app
  7. Extend out what I’m  doing in ways I can’t think of right now. Perhaps open source it, perhaps simulate large scale refactoring
  8. Importantly, constantly share what I find out.

Anyway – the above was the easy bit. The hard bit starts next.

P.S. NEric is naff name for this – but a handy tag for these series of posts :-)

Posted by Eric Nelson | 0 Comments

Expression Design + WPF + Silverlight + Touch + Bizspark = startup heaven?

I had an opportunity to catch up with UK Software Startup IPrinciples. IPrinciples specialises in building Rich Internet Applications (RIA) on the Microsoft Platform, predominantly using Windows Presentation Foundation (WPF) but also using Silverlight. I have known Richard and Paul who run IPrinciples for many years and I have been impressed with what they have been building over the last year using XAML. When I last popped in I had my trusty Flip Mino with me and I took the opportunity to interview Richard about “Why XAML?” as well as get a demonstration of a couple of their applications and a chat with the designers who helped create the UX. Whilst the quality of the video will never win an award – it does make for interesting viewing.

To me, IPrinciples is a great example of a startup company benefitting from Bizspark to get access to great software and tools to build first class applications. They are using XAML to deliver rich and compelling user experiences which would be near impossible to do in traditional Windows Forms. Well done guys!

Interview with Richard Godfrey (CEO but also still a coder)

We discuss:

  • The need for designers vs developers
  • The importance of Expression Design when building RIAs (see “Learn Expression Design” videos)
  • WPF vs Silverlight – with IPrinciples favouring WPF
  • Microsoft Bizspark which Richard thoroughly recommended for startups. (I also previously posted on Bizspark in the UK for a little background)

After the interview Richard gave me a demo of two of their applications and I had a chance to talk to the lead designers of each.

Silverlight 2 football team management application

Demonstration covers a walkthrough of the application followed by (3mins 45s in) an interview with the lead designer Adam who shows how he used Expression Design to create it. It was interesting to see Expression Design hosting most of the UI on a single page. I have often wanted that exact feature as a developer as you often work on groups of pages. Something for the wish list for VS2012? :-)

WPF photo album creation application with touch features

Demonstration covers a walkthrough of a feature rich album creation application followed by (4min 16s in) a short interview with the lead designer Phil who shows how he used Expression Design and Blend to create one element, the “big wheel” bottom left. Interestingly they have also started to touch enable the application both for Vista and soon Windows 7.

Posted by Eric Nelson | 0 Comments
Filed under: ,

Only 7 days left to take advantage of great offers on Visual Studio - UK only

ADVERT ALERT but hopefully a useful one …

Don’t delay, buy today!

And that ends my attempt at marketing and coming up with catchy slogans. What do you mean, it has been used before! :-(

More seriously, I just got confirmation that some great offers put together in the UK for Visual Studio end this month.

You can see the detail at the offers site but I think the following pictures do a better job of summarising the three offers on that page that expire June 30th:

“Step Up” – shown as “Get a lot more for a lot less” and “Get even MORE for less..”

image

Or…”Attach an MSDN subscription” – shown as “Save up to £400 on an MSDN Subscription”

image

Posted by Eric Nelson | 0 Comments
Filed under:

Three Men and a Whiteboard: Windows Azure

The third Three Men and a Whiteboard, also known as “The one where we forgot about the 10 minute rule of YouTube again” – hence it comes in two parts :-)

In part one, the Whiteboard sees no action as it remains a discussion on where Windows Azure fits into the Azure Services Platform. In Part Two I actually draw stuff as we dig into Windows Azure – sort of :-)

The diagram I didn’t draw for Part One but helps enormously is this one:

image

The diagram I was (badly) drawing in Part Two is a version of this one:

image

Posted by Eric Nelson | 0 Comments

Three Men and a Whiteboard: Windows Client Technologies

The second Three Men and a Whiteboard, also knows as “The one where Mike T strums his guitar” or “The one where the video of Eric was stolen”.

Posted by Eric Nelson | 0 Comments

Three Men and a Whiteboard: ASP.NET MVC

The first Three Men and a Whiteboard session we ever recorded. Possibly the best :-)

Also known as “The one with the squeaky voices” :-)

Posted by Eric Nelson | 0 Comments

Open Source Framework and Library Recommendations

As the technical editor for the UK MSDN Flash I get surprisingly free rein to decide what content to place in it . I suspect one day they will notice – but I will enjoy it while it lasts. Every 3 months or so I do a special edition of the Flash, and this week I chose to go with “Open Source Frameworks and Libraries”. I have written before on Microsoft and Open Source and the rosy future I see ahead and I decided it was time (long overdue?) to give some of the great OSS for .NET developers wider visibility. The Flash newsletter is great for this as it goes out to around 70K developers in the UK. With the help of the UK community (see the provisional list of suggestions), I came up with the following 23 OSS projects.

I have tried to strike a balance between some fairly well known projects and some lesser known but equally well respected offerings. Which means we have “old favourites” such as xUnit and Moq (testing and mocking respectively), alongside Argotic (syndication framework), Excel Data Reader (Excel file to DataSet) and #SNMP (SNMP library) as well as some frameworks primarily developed out of the UK such as Fluent NHibernate (no more XML ORM mapping) and OpenRasta (REST based framework for building web applications).

Enjoy!

  1. Download [TEST] xUnit.net
    One of several very good testing frameworks to aid with TDD.
  2. Download [TEST] RhinoMocks mocking framework
    Ease testing by allowing the developer to create mock implementations of objects.
  3. Website [TEST] White for automation of Windows applications
    Programmatically drive Windows applications.
  4. Download [TEST] Gallio Automation Platform
    Works with many testing frameworks including MSTest, xUnit, NUnit and MbUnit.
  5. Download [DATA] Fluent NHibernate
    Fluent NHibernate lets you write mappings in strongly typed C# code.
  6. Download [OOP] StructureMap Dependency Injection/Inversion of Control
    Enable looser coupling between classes and their dependencies.
  7. Download [OOP] Managed Extensibility Framework
    Make the shift from applications being statically compiled to dynamically composed.
  8. Download [APPFX] s#arp architecture for web applications
    Foundation for rapidly building web applications using ASP.NET MVC with NHibernate.
  9. Download [APPFX]OpenRasta REST based framework for building web applications
    Simplify exposing a REST based API to your application.
  10. Download [APPFX]CSLA.NET Application Framework
    A comprehensive framework for .NET development.
  11. Download [APPFX]Spring.NET Application Framework
    A comprehensive framework for building web applications.
  12. Download [RUNTIME]Mono enables .NET on Linux and Mac
    Use those .NET skills to target Linux, BSD and OS X.
  13. Download [UTIL] Sandcastle Help File Builder
    Create MSDN-style documentation from .NET assemblies.
  14. Download [HELPER] EasyHook for Windows API Hooking
    Extend unmanaged code (APIs) with managed code.
  15. Download [HELPER] Json.NET for working with JSON formatted data
    R/W using the JsonReader and JsonWriter or serialize your .NET objects with a single call.
  16. Download [HELPER] Excel Data Reader for Excel 97 to 2007
    Read Excel files straight into a dataset.
  17. Download [HELPER]#SNMP Library
    A natural API interface to encapsulate SNMP functions.
  18. Download [HELPER] DotNetZip Library
    A great ZIP library plus samples.
  19. Download [HELPER] Visio Automation Library
    Automate Visio from C#, Visual Basic and more.
  20. Download [HELPER] PHPExcel is not just about Excel!
    PHP classes to r/w Excel 2007, PDF, HTML and more.
  21. Download [HELPER] Argotic Syndication Framework for RSS, Atom, OPML and more
    Makes the reading and writing syndicated content in common formats very easy.
  22. Download [HELPER] NLog logging library
    Easily write diagnostic traces from your application.
  23. Website A great directory of C# Open Source software
    Nicely indexed directory of libraries, frameworks and tools.
Posted by Eric Nelson | 3 Comments
Filed under:

Slides and links for Windows Azure session for GL.NET

Had a great time Wednesday night delivering a session on Azure and SQL Data Services at GL.NET. Admittedly I run over hugely but I enjoyed it and I much prefer lots of questions along the way. The venue is very good. The MessageLabs offices offer a pretty decent sized room, wireless internet and a good projector. Jimmy makes for a very friendly host and the folks that attend are equally good guys and as a bonus, the pub is near by :-) In summary, if you develop software using Microsoft.NET and you live near Gloucester, then you should check out the GL.NET user group.

I did a session which combined two session I delivered at Devweek 2009 earlier this year. Therefore I thought it probably made sense to point direct to the two original decks which contain more detail.

Some useful links:

and the presentations:

Posted by Eric Nelson | 0 Comments
Filed under: , ,

UK MSDN Flash Poll for June 17th 2009: How many monitors do you use for developing software?

I have a couple of days leave coming, hence the early poll to accompany the Flash next week.

I bumped into an old colleague who now has a six monitor setup in his home for developing software – which made my “notebook + 19inch monitor” setup look a little sad. Especially as I share that monitor with an Xbox 360 and a PC gaming rig.

Your chance to sneak in a vote.

I was wondering if folks would like me to organise a full hardware (multi-question) survey via the Flash in the future? I for one would love to know what we all use.

Posted by Eric Nelson | 2 Comments
Filed under: ,

MSDN Flash Podcast Pilot Show 3 Bonus Edition on Windows 7 Compatibility

This is the third podcast pilot to accompany the fortnightly MSDN Flash newsletter. This is an example of a  “bonus edition” which we will from time to time interleave with the regular fortnightly podcasts. The good news is we now have a permanent subscription courtesy of Feedburner which will work with ITunes and regular RSS readers.

Feedback good and bad is always welcome.

Enjoy.

Show Notes:

This is an interview with Dave Allen who spent a year travelling the world helping companies get ready for Windows Vista and is now doing something similar in the UK for Windows 7. It contains plenty of good advice on getting your application working on Windows 7.

Subscribe:

Subscribe in an RSS Reader:

Subscribe in ITunes:

Or:

Download the latest podcast

Posted by Eric Nelson | 0 Comments
Filed under: ,

A proper thank you to Guy and the team for DDD SouthWest … and VB won!

After attending DDD SouthWest I went on a weeks holiday before I got a chance to blog out a “thank you” for a great event. Guy Smith-Ferrier and his team did a stirling job deliver a great multi-track event. For me it was:

  • Extremely well organised
  • Good food
  • Great location (an amazing school in Taunton – nothing like the school I went to!)
  • Lots of tracks, lots of choice, lots of knowledgeable speakers
  • Fun yet professional

Guy has written up a summary which included a link to some statistics about the event. Interestingly nearly 1 in 5 folks found out about the event through the UK MSDN Flash (you should sign up?).

On the day I stood in for a presenter to represent VB in the “balloon debate”. Despite my best efforts, VB won against C#, F# and Ruby (despite the fact I would have voted for Ruby!)

Me championing VB while Gary contemplates his efforts on F#. I think there is a caption opportunity on this one NB: Somebody air brushed in that double chin.

The audience “gripped” by the deep discussion ;-)

And something I said made Colin smile, unlike Gary who is looking very serious – or maybe just scared.

image

Posted by Eric Nelson | 1 Comments

Summary of new Visual Basic Posts on Goto100

I have been sitting on a long list of part finished posts on Visual Basic “stuff” intended for my other blog http://blogs.msdn.com/goto100/.

Last week I finally started to finish them and get them published.

Enjoy.

Virtualization and Visual Basic 6.0 applications

There may be some circumstances where upgrading a VB6 application is not feasible, for example it may rely on a control that simply does not work in the target operating system. I came across a couple of articles on MSDN that discussed the ways that virtualisation

In VB6 we had the API Viewer, In VB .NET you get the P/Invoke Interop Assistant

VB6 programmers will remember a useful little utility called the API Viewer, the helped out when you needed to make a Windows API call. There is now an equivalent tool for .NET, the P/Invoke Interop Assistant ( http://www.codeplex.com/clrinterop ). Not

Enhancing your VB6 Application with Interop

I’ve been having a look at some of the samples on the Visual Basic Resource Center to see what’s possible when we start using interop between VB6 and .NET. Here are some of my favourites. This article, “Sharing ADO Recordsets Between Visual Basic 6 and

Adding to the My namespace in VB .NET

Just as an aside - after experimenting with the Interop Forms Toolkit earlier this year I wondered how InteropToolbox ended up in the My namespace – it seems like a useful thing to be able to do. I didn’t have to look far, the answer was in the ActiveXControlHelpers.vb

That old friend Binary Compatibility – and a FREE eBook on COM Interop

A favourite topic for VB6 programmers! Adding a reference to a COM component in Visual Studio adds a reference to a specific version of the VB6 component, so rebuilding the VB6 component without binary compatibility will break the .NET project (you’ll

VB6 Migration tools are not as expensive as you might think

How long would it take you to manually convert 50,000 line of Visual Basic 6.0 code to Visual Basic .NET. My guess is… quite a long time :-) However two of the key partners in this space have special versions of their enterprise class tools targeting

Aberdeen Group report on Migrating from VB6 to .NET

Aberdeen Group have created a new report “ Migrating from VB6 to .NET: The challenge of software agility in a volatile economy ” Some bits that stood out for me: 50% will migrate all the applications, 36% will migrate some (86% in total will migrate)

Visual Basic 6.0 Migration – due diligence is a good thing

Choice in general is a good thing. When faced with moving a Visual Basic 6.0 application to .NET there is plenty of choices to be made. One of those choices is “Which tool should I go with to migrate the code?”. My advice in general is “Try as many as

 

Posted by Eric Nelson | 0 Comments
Filed under:

32minutes of me at Qcon talking on Visual Studio 2010, VB, F#, .NET 4.0, Parallel, Azure

Back in March I presented at Qcon 2009 in London which is a great conference although I had a little moan (Does Microsoft smell?). I also was interviewed which is now up on InfoQ. TBH – it isn’t a bad interview yet at the time it felt awful right from the first moment when after agreeing the opening question before the camera rolled, I got asked something completely different :-) Then it went pretty broad :-)

You can watch the video on the InfoQ site which includes a transcript.

image

(Above is a link not an embed)

The questions I was asked were:

  1. Eric, what's going to be coming up in .NET 4.0 Visual Studio 2010?
  2. You’ve mentioned Visual Basic - there is an impression that I've personally heard in the software development environment that Visual Basic is not really at the same level as languages with curly braces like C# or Java. What's your perspective on that?
  3. You've also mentioned F# as being one of the new in the box languages for .NET 4.0. Is that also a part of the co-evolution? Is it going to start off with the same feature set?
  4. What would you like to see in future versions of .NET beyond 4.0? Where do you think the focus should lie?
  5. You mentioned the Parallel library, which is upcoming in .NET 4.0. Can you describe that more detailed?
  6. One of the other things which you mentioned is Parallel and there is also the existing LINQ. Is there a way to combine the 2 of those?
  7. You've mentioned F# as an upcoming language, the inclusion of VB.NET and C#. You've only had a brief mention of C++. Is that losing its focus?
  8. What exactly is Cloud Computing?
  9. Can you tell us a little bit more about Azure?
  10. How does Azure compare against other Cloud offerings that are in the marketplace, such as the Amazons, for instance?

Enjoy

Posted by Eric Nelson | 0 Comments
Filed under: , ,
More Posts Next page »
 
Page view tracker