Thursday, 29 November 2007

MIX08 = "Go Live" License for Silverlight 2.0?

Scott Guthrie has just announced that common sense has finally prevailed and that Silverlight 1.1 will be renamed Silverlight 2.0, and that a beta with a 'Go Live' license will be available 1Q 2007.

I thought it was very disingenious of the Microsoft Ireland who gave a talk on Silverlight on the Silver Screen a couple of months back, to indicate that Silverlight 1.1 would go RTM 'very soon', when all the indications at the UK's MIX07 event had been that we were about a year away from it being RTM.

Reading between the lines, I'd be very surprised if Silverlight 2.0 didn't officially go beta, with its associated 'Go Live' license, to coincide with the MIX08 event in Las Vegas as the start of March, hopefully with RTM around June or July next year.

Monday, 26 November 2007

DDD6 at Microsoft Campus, Reading

On Saturday, I attended the sixth Developer! Developer! Developer! day on the Microsoft Campus at Reading.

Ordinarily, I'd have posted a rave review late Saturday night/early Sunday morning, but in truth I've found it harder to write about the event this time around, as I'm wondering if the bi-annual event has become subject to 'the law of diminishing returns'.

It's a few years on from the first DDD and we're now in a new world with many disparate 'community' user groups, all doing their own thing in addition to DDD, and I can't help thinking that maybe too many of the core people - those who are left anyway - are being stretched a little too thin?

On the plus side: taking a day out from a way-too-hectic study/work schedule travelling down to Reading on the train for a bargain price of £13 (with food, drink and even buses to the station provided by the event sponsors free of charge) was worth it. So far, so good!

The main strengths of that original event remain: it's community-lead; it's free; it gives a good opportunity to network; and it takes place at a time when work can't (or shouldn't) preclude attendance. So why aren't I rushing to recommend the next planned event to co-workers, the way I was after DDD1 and DD2?

The big advantage of the first DDD event, as opposed to the more traditional MSDN-styled 'free' one-day events from Microsoft staff that had preceded it, albeit on days that necessitated losing a day's pay, was that none of the talks or presentations resorted to 'marketing future products' and featuring 'canned demos' designed to 'sell' the product at the expense of hiding sometimes quite catastrophic flaws. DDD1 sessions I attended offered some genuinely useful 'at the coalface' information, usually delivered by extremely knowledgeable and passionate experts. When looking at new technologies one needs to know about the pitfalls and problems, not have them swept under the carpet, and I thought it was impressive that Microsoft provided the facilities for community members to give that information to attendees on their premises.

Admittedly, at times, it seemed a little odd that Microsoft should be supporting talks on 'Open Source' products that competed with Microsoft products, but to their credit they seemed to realise that being more open with a community that earnt most of its money working with Microsoft technologies could only be a good thing.

Looking at the list of those whose talks I attended at the first couple of DDD events, and those who talked at the sixth it's noticeable that most of the speakers I'd really rated didn't seem to be in attendance this time around, with Guy Smith-Ferrier perhaps being the exception to the rule. Was it mere coincidence that his session, even though it was on a product - "Astoria" - that is some way away from becoming 'real world', was light years ahead of any other I attended that day? Guy's talk was educational AND entertaining, and although a speaker can get away with being just one of these things, he/she does need to have some real depth of knowledge in the subject they're talking about. Alas, too many speakers failed to be entertaining and educational and knowledgeable. Anybody can download source code from Codeplex and incorrectly cut and paste parts of it into a project that won't then work as intended for 60 minutes! Guy's Grok Talk, which was bravely given in Pecha Kucha format (named by two Japanese folks who 'invented' the format of talks limited to 20 slides, with each timed to auto-display for just 20 seconds at a time before moving on to the next) was also the best of the Grok talks. This was no mean feat as, unlike the more formal, hour-long sessions I attended, the Grok talks were all pretty good.

So... this time around I'm not going to blog one-by-one about the presentations I attended and the technical contents of each. I've learnt the hard way that publicly critiquing presentations wins you no friends and can win you a lot of enemies (despite assurances from presenters that they just want 'genuine feedback'), even if it's restricted to feedback forms or email that only the individual directly involved can see!

Part of me did wonder if I was just being a little too 'half glass empty' - something I'm admittedly prone to, although I prefer the term 'gloomy optimist' - about the event, but the evidence of overheard comments on the bus back to the station, and feedback from former work colleagues in the breaks seems to indicate that my overall feelings were pretty typical. Admittedly, a few years spent in technical marketing and then two years delivering technical courses full-time, albeit more than 10 years ago now, means I DO tend to be more critical about presentations and talks than most. And after all there are quite a few blogs full of the usual enthusiastic, if somewhat bland and even at times rather incestuous, praise. But these blogs all seem to come from the same crowd one sees at every user group event and geek dinner - how typical are they of the 'average developer', at whom presumably the event is aimed?

It was interesting this time around to see several former work colleagues at DDD6 who aren't part of the core of people one tends to keep seeing at user group and Microsoft events. One of those former colleagues left at lunchtime, expressing disappointment in the two sessions he'd given up his Saturday to attend, although the early departure may have been his intention from the start - unfortunately I didn't get a chance to ask. A couple of others agreed that the quality of the talks they'd attended had been disappointing or not lived up to the short, advertised description, leading me to think my experience was not that untypical.

This all seemed in marked contrast to the heady praise everyone I spoke to after DDD 1 had about the event. This is feedback from what I call the 'average' developer - ie someone who doesn't typically have a blog or live on Twitter - someone who's too busy at the coal face or - God forbid! - having a life to get directly involved in 'community'. But aren't they exactly the sort of people who need to be engaged by both 'the community' and Microsoft?

So, while it was good to catch up with a bunch of folks I hadn't seen for a while, and to get the big picture on some of the stuff headed our way next year (or the year after), for me this felt too much like one of the bad old MSDN events of old - too much superficial technical content; too many poorly rehearsed, or even poorly understood, demo's that weren't very exciting to behold; and too many sessions which I felt just told the 'Microsoft Marketing' story as opposed to the one I need to better understand the technology and its applicability in solutions I might need to develop in my job.

I wanted to leave DDD6 feeling the same way I did leaving DDD1 and DDD2, but that didn't really happen. Instead I left somewhat frustrated at what I felt was too often a wasted opportunity. And wasted owing to far too much complacency on the part of those responsible for giving most of the sessions. I guess I need to find a subject I feel I can talk authoritively about at the next event!

Monday, 19 November 2007

Visual Studio 2008 Team Suite is now RTM

Apparently Visual Studio 2008 Team Suite RTM (Release to Manufacturing) is now available for download on MSDN.

I've only just taken out a new 3 year volume license agreement on MSDN and am waiting for Microsoft to activate it, but hopefully can start working with the new release of the software I seem to spend 90% of my working life in by the end of the week.

I suspect download speeds will be a nightmare given the number of subscribers who've been waiting for this.

Sunday, 18 November 2007

Weekly Link Dump (Part 1)

So much for planned daily updates! Weekly updates seems much more do-able with the current workload (even when I'm not working on a specific contract)! Some of the links below are a few months old but saving them here means I can clean down my ridiculously long bookmark list! Alas, these constitute just half my current backlog so there'll be another post in a day or two with the ones that didn't make this blog entry!

Anyway... the biggest news of the week has to be that Visual Studio 2008 is going to go RTM (release to manufacturing) early next week. MSDN Subscribers will be able to download the 'shipping' product, but the rest will have to wait until Februrary 2008 for retail versions!

On a personal note, looking forward to Developer! Developer! Developer! Day 6 at Reading next Saturday - the first time I'll be travelling down by train.

Recently Discovered Useful Links

Apps: Wallpaper Generator - Generate custom wallpaper for your desk-top using your own photo snaps. A neat little WPF application from Joris Kalz.

Apps: WittyTwitter - a useful Vista/XP desktop client application for those of us using Twitter (see right hand side-bar for my most recent Twitter 'tweat's).

ASP.NET: Clean up your use of ViewState - A plea for a tidier and more consistent approach to using ViewState, with an interesting debate in the Comments section of this blog entry from Bernal Schooley.

ASP.NET: ASP.NET and Hierarchical Data - Gunnar Peipman looks into new hierarchical data support in ASP.NET 2.0, focusing on the IHierarchyData and IHierarchyEnumerable interfaces.

ASP.NET: HTTP Error 406 with .Net Framework 3.0 - warning about possible HTTP 406 errors when using the User Agent string with ASP.NET 3.0 from Carlo Cardella.

ASP.NET: Are your VS2005 web applications having an identity crisis? - if you move a webinfo project file to a new location you'll probably find your nice neat ASP.NET web application has reverted to being a more primitive ASP.NET web site. It's all explained here.

ASP.NET: Building your first Server Control (Tutorial) - a good introduction to writing your first ASP.NET server control from Bipin Joshi.

ASP.NET: The ASP.NET MVC Framework Announcement - Scott Guthrie starts to explain the distant 'replacement' MVC framework for ASP.NET. The endless gushing of the MVC pattern fan boys on different blogs has completely turned me off the endless 'let's throw everything away for the latest fad' approach that makes being a Microsoft developer so time-consuming these days. Am I throwing out the baby with the bathwater by ignoring the MVC pattern framework for now, or are Microsoft the ones doing that by over-promoting it? Here's an overview of what it's all about.

ASP.NET: The ASP.NET MVC Framework - More Details (Part 1) - Scott Guthrie dives a bit deeper into specifics of the forthcoming MVC framework.

ASP.NET: ASP.NET Futures: Introduction to the XAML and Media Controls - an interesting post on the upcoming ASP.NET Futures release, but the arguments over Microsoft's poor AJAX support and 'throw the baby out with the bath water' obsession of the MVC fanboys in the comments below it are perhaps more interesting.

ASP.NET: ASP.NET Futures: Use the MVC Framework to Write Web Apps without ViewState or Postbacks - Jeffrey Palermo gives his spin on the recent MVC Framework announcement, in an article written for Code Magazine.

LINQ: Use LINQ with WPF: Styles and DataTemplates in Code - good code samples from Calvin Hsia for those working on the bleeding edge. Make sure you read the comments before rushing in to code!

Misc: Community Antipattern: Gloryhound - the blogosphere seems full of 'glory hounds', and hopefully I'm way too low key (and old) to be one myself. If you're not sure what a glory hound is then read this entertaining article from Scott Bellware to find out.

Office 2007: Guidelines for Creating PowerPoint 2007 Templates - Office 2007 is a whole new world. If you're confused by templates, themes and custom slide layouts in the latest version of Microsoft Office there are some handly links in this blog entry from the Inside Office blog team.

Silverlight: DoJo GFX and Silverlight Test - In my view there are way too many JavaScript libraries out there, but if you're using DoJo then Adam Kinney has been testing it for integration with Silverlight and experienced some encouraging results.

Silverlight: Silverlight 1.1 (Alpha) Developer's Reference Poster - It's pretty, but not entirely sure how useful this rather marketing-oriented 'reference poster' will actually prove to be! Oh well if you have a big colour printer I guess it will look pretty on your wall.

UX: User Experience in the Enterprise - David Isbitski presents a video of his talk from MIX07 as the first in a video series on User Experience in the Enterprise.

VS2003: Uninstall cleanup tool for .NET Framework 1.0/1.1, VS.NET 2002/2003 - A bit late in the day perhaps, but this cleanup uninstall tool for pre- VS2005 versions of the framework and Visual Studio itself may sort out a broken Add/Remove Programs control panel dialogue if you're suffering from a bad uninstall.

Windows Live: Windows Live Tools for Visual Studio 2008 - A Windows Live toolkit for Visual Studio 2008 developers, but you'll also need to install Microsoft ASP.NET AJAX (no worries!) and their ASP.NET Futures beta/alpha/CTP/whatever they're calling it these days (lots of worries!).

Windows Server 2008: Step-by-Step Guides - Windows Server 2008 will soon be upon us. Get a head start by downloading these Step-by-Step guides from Microsoft.

WinForms: Splash Screen Control - Lloyd Franklin has the code and words to enable you to easily add a splash screen to any of your WinForms applications.

WPF: Building WPF Applications with the Page Navigation Framework - "It's just like ASP.NET, but with state" says Phil Winstanley. Judge for yourself after reading through his screenshot tutorial.

.NET 3.5: How to avoid OS Reboot Prompt when Installing .NET 3.5 on Windows Vista - Aaroon Stebner has advice and an explanation of why installing .NET 3.5 on Windows Vista can get very messy very quickly.

.NET 3.5: Possible .NET 3.5 Install Failure if MSXML registration is broken - Aaroon Stebner again has advice on how to diagnose and fix a .NET 3.5 framework installation failure caused by a poor MSXML registration.

Friday, 9 November 2007

I'm booked for MIX08

The Venetial Resort Hotel Casino and a ticket for Microsoft's MIX08 conference in Las Vegas are now booked. Hotel is booked for the week 3rd March to 8th March, with the conference just taking up 2.5 days at the end of that week. I've never been to Las Vegas so looking forward to a couple of days R&R beforehand. I missed MIX07 last year because I'd booked Microsoft's PDC conference in L.A. for later that year but then they went and cancelled it, so this year I'm not taking any chances. The UK version of the MIX conference which I attended a few weeks ago here in London was a pale shadow of the US version of these things and it's better to go direct to the source, especially as they're usually timed to coincide with major new releases from Microsoft.

Will book flights when I get back to the UK (late on Sunday) - not sure at this stage whether I'll also be able to fit in a trip to Los Angeles as well.

Friday, 2 November 2007

Information Overload!

Sod's Law says that just 2 days after blogging about and hoping for a Silverlight training course they add one! It's only four hours long (although with the speed at which Mike Harsh talks it's probably equivalent to 8 hours from anybody else), only covers Silverlight 1.0 (which is fine as 1.1 is an ALPHA, not even a beta yet) and is fairly basic (which is good in that Mike assumes you know absolutely nothing), but it's a good start.

I'm suffering serious information overload with a pile of unread new books and the links below all being important, and all appearing just over the last couple of days. Trying to keep track of all the 'required' Microsoft technologies is a complete nightmare for anybody holding down a full-time job AND wanting to have any kind of life as well. I think it's much tougher starting out in the industry now than it was when I started, or even as recently as 5-10 years ago.

Recently Discovered Useful Links

ADO.NET: The Entity Data Model Designer Video A videotaped early look at the Entity Data Model Designer that's currently in CTP from the ADO.NET Team blog.

Architecture: Patterns and Practices 'Reference Implementation' of the Web Client Bundles - Microsoft's Patterns and Practices have been working on Web Client best practices for some time and now there's a reference implementation available. Brad Abrams has all the details.

Architecture: Performance Testing Guidelines for Web Applications - it's a horribly dry read, but an important new document from Microsoft's Patterns and Practices group. J.D. Meiers has the list of contents and the appropriate download link.

ASP.NET: ASP.NET Futures - Scott Guthrie's been dropping hints about what will be in a bundle called 'ASP.NET Futures', shipping after Visual Studio 2008 has released. Chris Koenig announces his upcoming series on what exactly will be in that bundle.

ASP.NET: TIP: Hard Drive Speed and Visual Studio Performance - Scott Guthrie has some good advice on where best to spend your money on new hardware when you want the best possible ASP.NET performance.

ASP.NET: Tip: How to grab bulk data from a GridView on Postback - all it takes is a few simple lines of code. Kevin Isom talks you through those few lines.

ASP.NET: Cachine in 10 minutes - essentials about the options available for caching under ASP.NET in an easily digestible article by Todd.

ASP.NET: Expresso - a .NET Regular Expression Development Tool You Should Not Be Without - I hate writing regular expressions, so any tool which helps is 'a good thing'. Joseph Guadagno has all the info on his blog.

ASP.NET: How to Write a Web Service that returns a DataSet - a nice code walkthrough from Naga Satish.

ASP.NET: Two ASP.NET Features that are usually missed or misunderstood - Ryan Ternier talks about the tilde character and use of the ALT-SHIFT keys in Visual Studio.

ASP.NET AJAX: Are you making these 3 common ASP.NET AJAX mistakes? - Dave Ward asks the awkward questions on his Encosia (it's another word for quality) blog. The UpdatePanel has a lot to answer for if you don't understand what it's doing (quelle suprise!)

ASP.NET AJAX: In Depth Performance - Omar Al Zabit walks us through analysis of an ASP.NET AJAX performance issue.

ASP.NET AJAX: Delayed Content Loading using the ASP.NET AJAX Timer and UpdatePanel - A tutorial for loading sections of a page after the main page has loaded using ASP.NET AJAX controls, written by Joshua Stengel.

ASP.NET AJAX: Under the Hood Secrets - Tips and tricks for ASP.NET AJAX developes but, as author Omar Al Xabir says, 'not for the faint-hearted'!

ASP.NET AJAX: Everything has its place: Tread lightly with UpdatePanels - Well you can't say I didn't warn you (former work colleagues please take note!). Peter Laudati explains why the UpdatePanel may be a quickfix too far for many developers.

Expression: Expression Blend and Design training. - Microsoft have been on the road giving 2 days free training on Expression Blend and Expression Design. Now they've made all the code and the self-paced training kit availabe for free. Very generous, and the material is excellent and pretty idiot-proof. You will however need a color printer and a good broadband connection as the download material is over 1GB in size.

IIS 7: Modules for IIS 7 and ASP.NET - Mike Volodarsky has written quite a few modules for IIS 7 and ASP.NET. Here he provides links for them, and solicits requests for new modules that might be of use.

IIS 7: How to set up remote logging between workgroup computers - A frequently asked question gets answered by Steve Schofield walks you through the process step-by-step.

LINQ: LINQ to SQL: Some of the best blogs - a useful set of links from Wriju Ghosh.

.NET: .NET '4' - I don't know whether to laugh, cry or just shout 'I need a life goddamit'. Allan has some links you should probably try and find the time to follow through.

Powershell: Automated Web Site Deployment using Windows Powershell - title says it all really. Omar Al Zabir (he's responsible for a LOT of today's links, split across different sites!) has all the details.

SandcastleSandcastle October CTP - Sheesh! Just when you've finished spending several hours installing the September CTP of Microsoft's auto-documentation product, they go and release another one. Please it's been month after month of CTPs. Just give us an RTM version already!

Silverlight: Silverlight doesn't require any JavaScript - OK, so hands up who thought you had to write JavaScript to at least load the Silverlight plug-in. Jon Galloway explains why this assumption that JavaScript is needed is a misconception.

Silverlight: Optimise your Silverlight Install experience - UX guidelines for Silverlight installation are now available for download from Microsoft. Laurence Moroney has the download link and thinks it's essential reading for anyone having to deploy a Silverlight application.

Silverlight: Treeview and Animated Panel Wrap Controls for Silverlight - details and source code from Pete Brown.

SQL Server: Audit Trail Generator - A discussion of audit trail techniques and a script to automate audit trail generation on a SQL Server databse from Cedric Baelemans.

SQL Server: My take on why SQL Server 2008 is interesting - Eric Nelson has a couple of slides with the highlights of the forthcoming SQL Server 8, just to give developers a quick heads up.

Visual Studio 2008: Get up to speed on Visual Studio 2008 - Videotaped versions of Scott Guthrie's current presentation deck on what's new in Visual Studio 2008, as given internally to Microsoft employees, but seemingly identical to the presentation given at MIX07 UK.

Windows Live: Professional Windows Live - Windows Live APIs are starting to shape up very nicely and now there's a Wrox Press book available. Angus Logan has the details.

Windows Server 2008: Microsoft Development Centre for Windows Server 2008 - The MSDN Development Centre has just been launched - Check it out!

Windows Server 2008: Training Kit for Windows Server 2008 (Beta 3) - the new operating system will soon be upon us, and Microsoft have made available 'Beta 3' of their developer training kit, which includes hands-on labs and presentations on IIS 7, WCF, CardSpace, Powershell and a whole lot more!

WPF: Future of WPF Guidance - there are lots of changes coming with regard to WPF, CAB and Acropolis. Michael Puleio has pulled together the relevant links.

WPF: WPF Control Development: 3 ways to build an ImageButton - WPF is complicated and can get real confusing really quickly. Knom looks at three different ways for the control developer to develop the same 'simple' control, and then picks 'the best'.