Wednesday, 14 September 2011

Last Post!

I'm closing this blog down and this will be my final post here.

This is partly because I'm not sure Irascian (the company) is going to continue through the rest of the year (the intention was to close down the company when I moved to Switzerland back in May, but I never got around to it)

But it's also because I genuinely think we're moving into a new world of application development, and I wanted a new blog to recognise that, with a different emphasis than this one has had in the past.

One big advantage of a new blog (and new company?) is that I won't have to put up with people asking me how to pronounce 'Irascian' (Clue: it's a fake word derived from 'Irascible' and 'Ian' - pronounce accordingly!).

The new blog is called Fast And Fluid and can be found at FastAndFluid.blogspot.com

There will be a new web site FastAndFluid.com going live soon and, probably, a company of the same name as soon as I've completed the final company accounts for Irascian Limited.

I hope to see those of you that have subscribed to this blog over the last year or two on the new blog. The RSS feed for the new blog is http://fastandfluid.blogspot.com/atom.xml.

Build Conference Day 1: The Links

It was a long day yesterday, with information about the 'new world' of Microsoft development slowly trickling out over my Twitter stream as the day progressed and more and more people digested the keynote and posted their analyses.

Expect more updates in a new blog post as Day 2 unfolds.

Marketing architecture slide

Below is my list of the 'useful information' links I collated over the first 12 hours of Day 1 of the conference, together with added commentary.

Must-see Videos

There are two videos you must see if you want to understand the new world of Windows 8, and how dramatically the world is about to change.

The first is the Day 1 Keynote where Steve Sinofsky gives the big overview of WIndows 8.

The second is the first 'Big Picture' presentation given by Jensen Harris. It runs for 90 minutes, and has a rather 'meh!' title but 8 Traits of Great Metro Style Apps is a tight, well-delivered (unlike the keynote!) overview of the new world of 'Metro Style' apps - the first class citizens of the new Windows 8 world.

If you haven't got time to watch the videos and just want to get to the meat of what's different about Windows RT, then these two articles do a very good job of summarising all the key points: Major UI Themes in Windows 8 and WinRT: An Object-Oriented Replacement for Win32. Alternatively Michael Crump has posted an excellent bullet point summary of the keynote.

If you're a Silverlight or WPF developer just wanting a quick skim of how the announcements are likely to affect you, I recommend reading Mary Jo Foley's analysis Microsoft to Developers: Metro is Your Future.

There's also a surprisingly honest analysis of what Microsoft DIDN'T say at Build from Telerik in their Build Day 1: What Wasn't Said blog post.

Developer Preview of Windows 8

The Developer Preview is available to download immediately at the Official Windows 8 Download site. It's available in several forms, primarily a 64-bit version with or without the Developer tools (preview version of Visual Studio 2012 and Expression Blend 5 for HTML and Javascript which does NOT support XAML :-O) and a 32-bit version that does not contain the Developer tools (so seems completely useless).

If you have an MSDN subscription you will find downloads much faster from there, and you will also find a whole host of other options to download. However if you don't know what terms like 'ADK' mean you might want to review some of the sessions from Build before rushing to download.

Don't forget to also follow the link from the main page to 'Sign up for the Live Technical Preview'. If my experience is typical this involves jumping through a few hoops to sign up, but once you get past the usual Microsoft pain barrier, the Live Preview msi and accompanying documentation are already sat there waiting for you to download.

One thing you'll notice if you install Windows 8 is that at least the lawyers had a sense of humour.

If you want to install Windows 8 onto a VHD then Scott Hanselman (like Scott Guthrie, conspicuous by his absence at the Build conference - this really is a very different new world!) has the definitive guide in his Guide to Installing Windows 8 Off a Virtual Hard Drive (VHD)

Early reports indicate that Windows 8, which needs less power and memory than Windows 7, installs nicely even on old laptops, but that installation in a VM is problematic, with only Virtual Box users having much success. Mr Goodcat has posted some nice step-by-step instructions.

Interesting side note: There are already 3 updates for an O.S. that was only released 5 hours ago! :-O

Expression Blend 5

While the debate about whether or not 'Silverlight/WPF are dead' rages on, I think there's a reason Silverlight and .NET are shown as small boxes in the 'legacy' section of the marketing architecture diagram at the top of this blog post. Although 'XAML' is placed stage centre left there are so far no clues as to which version of XAML this new 'Jupiter' version of XAML is most compatible with - WPF, Silverlight 4, Silverlight 5, Windows Phone, something new? Early reports indicate that most of the Build sessions and examples are focused on HTML5 and Javascript and it's interesting to note that the version of Blend that is included with the Windows 8 download supports only Javascript and not XAML.

The old official Microsoft Blend blog is now apparently dead and there is a new blog (annoyingly with no advertised RSS feed, where the old blog had one!) at BlendInsider.com Blog

For background information on the new version of Blend for HTML be sure to read Christian Schorman's blog post on Blend for HTML which includes links to other important documentation and overview blog posts.

Other Essential Windows 8 Downloads

If you want sample code, you should download 200 Sample Metro Applications from Microsoft, apparently all written by interns over the Summer period.

Essential Reading

Several links were posted to give information on such things as the new Windows shortcuts, the new controls that give you the Metro experience (animations) for free, etc. I've summarised these below:

Developing a Metro Style Application? Start here

Running Windows 8 Touch on Windows 7 Hardware

Quickstart on Touch Input

Windows 8 Controls List

Windows RT Reference

New Windows 8 Control Shortcuts

Kendo UI - Telerik's new Suite for Metro Style Application Development (HTML5/CSS3/Javascript)

Tuesday, 13 September 2011

Build Conference Day 1 Keynote

Well the keynote is over, but things are still pretty muddy with regard to exactly what 'XAML support' (no mention of 'Jupiter' at all) there is going to be in the next version of Windows.

As predicted, the Silverlight shills in the Microsoft echo chamber are all loudly declaring that today's keynote proves Silverlight is not dead. To me, this all reminds me of the time VB6 programmers celebrated VB6 not being dead when .NET was announced even though the emphasis was clearly on the new language C#. At the .NET launch Microsoft even claimed in management briefings that .NET came with millions of programmers who used the world's most popular language, as if a VB6 programmer was the same thing as a VB.NET programmer. Laughable! Silverlight is NOT just XAML people and clearly HTML5/CSS3/Javascript is Windows 8's equivalent of C# where Silverlight is VB6.

In perhaps the most 'echo chamber' moment of all, there is much excitement on the Twitterstream over the news that the next version of Expression Blend will support HTML and CSS. Hoorah! Our skill sets are still valid. We look so much better than those puny HTML/CSS/Javascript guys <snort>

Let's be clear here: takeup of Blend has been pitifully low, despite all the nagging, free licensing and free training incentives from Microsoft. Even the 'You can't be a serious Silverlight Developer if you don't learn Blend' mantra has had little impact.

For good reason.

It's a clunky mess of an IDE. I've worked at enough serious Silverlight development shops now to know that full-time Silverlight developers avoid it like the plague, using it only when they have to (to re-template controls or plot animations, but then cutting and pasting the raw XAML into Visual Studio).

So the idea that this Frankenstein's moster of an IDE can magically transform itself into something elegant, usable and popular, just by shoe-horning HTML5 and CSS3 into it on top of all the other gubbins is plainly ridiculous.

There are LOTS of great HTML5 and CSS3 tools out there - why on earth would you want to use or have to learn Blend instead of one of them?

UPDATE: The free Windows 8 slates given out at the conference come with a copy of Blend that only supports Javascript NO XAML! I think the Microsoft priorities are clear!

The new tablet device (a year away and already wider and fatter than an iPad) looked nice in that it could take a keyboard and drive dual monitors, and featured near instant-on and instant-off. Finally! But what about battery life? Microsoft were unusually silent on this point. There's usually a reason for that!

Then there's the whole 'first class citizen' thing with XAML support (but not .NET/SL, relegated to a legacy 'Desktop apps" box in Microsoft's own architecture diagram). Notice that I said "XAML" and NOT Silverlight because the two are NOT the same thing.

Taking a very simple Silverlight 2 (yikes! What happened to Silverlight 5?!) application and changing a few lines to make it run on Windows 8 is NOT the same thing as taking an Enterprise application in SIlverlight 4 or Silverlight 5 built around the MVVM pattern using PRISM, MEF etc and having it run nicely on this new 'WinRT' platform.

We've all seen Microsoft 'drag and drop' demo's before, and we know how much they have to do with the real world of enterprise development! It's depressing to see so many developers get excited over such a poor, unrealistic marketing demo as if it reflected any kind of reality.

Hopefully some real detail, instead of a 10,000 feet marketing slide with the word XAML above WinRT on it, will emerge over the next few days.

In the meantime I can't resist re-quoting some of my favourite "laugh out loud" tweets of the day that appeared before and after the Build keynote.

@MossyBlog RT @DotNetGlobalPR: This friday we will be giving free phones to people that have deployed Silverlight applications. All 43 of you.

@MossyBlog RT @DotNetGlobalPR: I am really looking forward to tomorrow morning's keynote and my retirement party tomorrow night.

@dotMorten My second #bldwin prediction: VB.NET gets killed of and replaced by the superior punch cards

@Teleriker I <3 alec #bldwin but why is he all over twitter today? :-)

@edmontalvo First slide at Build: "You really need to be at our next conference. It will be epic"

@SteveHebert Build upside down is "plinq". Coincidence? I think no.

@IdeaKitchn I heard at #bldwin the attendees are getting a half Courier

@Zunetracks Holy crap. There's a girl at #bldwin ?

@cuancalgo I see dead languages

@GoldenTao So when does Disney on Ice start?

@martin_evans Feeling embarrassingly geeky watching the #bldwin keynote. If my wife comes in I'll have to alt-tab to some porn.. #ClosetGeek

@Erik_Mork I'm not hearing about the ribbon

@escoz All the 5 people who have touchscreen PCs will be delighted with Win8


@Mathiasshapiro "Today is the day we change everything" Except the way we do keynotes.

@RabidLionGames "Oh Lord. It's like watching Eurovision".

@SittenSpynn "Wow. Look at all those fingerprints"

@AlanNorthern "Did she just whisper 'Don't touch me'?"

@IDispose "Anyone wanting to present should watch Steve Jobs. 10 times."

@MossyBlog "@DotNetGlobalPR Tomorrow's session 'The Future of Silverlight' will be held at 3PM in parking space 33B.""

@MossyBlog I often compare event attendee's as 18yr kids attending their first rave while on ectasy.. at the time it was awesome..then photos emerge.

Monday, 12 September 2011

The "Build" Conference Reboot

It's hard to believe it's 9 months since I last blogged, but in truth very little has changed with regard to the whole Silverlight situation, and I didn't want to get pulled into the whole 'Silverlight isn't dead' shill nonsense that dominates the blogs.

On a personal note, I've just finished my second contract (this time for a Swiss investment bank) where Silverlight was mandated from on high, despite the fact the real requirements for the application's UI were for simple, fast data entry and the delivered app cost way more, and is far less maintainable than if a much simpler design and more widely-used technology had been used. It's great that they mandated Silverlight - it gave me some work that helped pay the bills - but it was the wrong technology for the job, which required lots of 'reach' and very little 'rich': an inappropriate usage of Silverlight, something which I've seen far too often over the last three years.

The icing on the cake of this particular experience was hearing the same manager who'd mandated 'Silverlight across the board' refer in literally the same breath as he extolled the virtues of Silverlight, about 'the new world of iPads and iPhones and other devices'!

So here's a message to managers considering Silverlight 'across the board': if you're on some sort of back-hander from Microsoft, or have some hidden agenda for choosing a basic technology, at least do the basic research before telling the people paying your bills that you will run across all devices!

Not that Silverlight doesn't have its place. I'm still a fan of the technology WHERE IT'S APPROPRIATE, it's just that too many organisations I've worked at seem to be using it where it's inappropriate, with the result that their customers are paying far more than they need to for an application they don't actually want or need.

By the way, if you want to read some compelling arguments around where Silverlight IS appropriate I recommend you check out Jeremy Likness' excellent book on Silverlight Enterprise Application Development. Finally another book I can recommend on top of Pete Brown's introductory volume.

Update: There is also an excellent blog post comparing HTML5 and Silverlight that I forgot when I first posted this blog entry

In the meantime, the glimmer of hope for those of us that have happily stuck with Silverlight over the last 3 years, while Microsoft have shat all over us with their constant over-hyping of HTML5 and JavaScript as the way foreward, is that 'Jupiter', rumoured to be announced at this week's Microsoft Build conference will at least give us a way forward without having to return to basics and go re-learn tedious JavaScript, HTML and CSS.

For me, and a few other developers that I respect, Build will be 'make or break' on whether we stick with the Microsoft stack - Yup, they've pissed us off that much with their complete inability to undersand the marketplace, the competition, or how to deal with developers who help them sell their platform.

The problems with Silverlight and WPF are well-known, if not widely publicised, and exist mainly around huge memory leak problems and poor performance.

Hopefully the 'lessons learnt' from Silverlight and WPF, will fix all that in the new 'Jupiter' XAML-based technology. Let's just hope it isn't the rushed, botched job that resulted in the Windows Phone 7 fiasco or in the usual Microsoft 'smoke and mirrors' take on things they pretend that Jupiter is Silverlight 6!

I'll be kick-starting this blog over the next week as more news comes out of Build. This is Microsoft's last chance, after all the mistakes of the last few years, to redeem themselves and show they can compete with the likes of Apple, Google and Adobe. Let's hope they don't screw it up, although I have to say the signs are not great. Here's just one example (of many over the last 12 months) that indicate they're losing the fight even with their own best advocates.

Couple the different changes of the last 12 months with Steve Sinofsky's unbelievable arrogance when discussing developers or DevDiv rather than WinDiv, the effective removal of Scott Guthrie from public blogging, the departure of Ray Ozzie and Bob Muglia, and a whole multitude of other events, and it's very hard to keep faith or have any kind of optimism that Microsoft have finally woken up to all the mistakes they've made over the last couple of years.

Silverlight is not dead, for reasons Scott Barnes, former Silverlight product manager, pointed out in a tweet this morning: "If Bill Gates got a tattoo 'Silverlight is dead' on his forehead and announced it the same day..it'd still take 5yrs+ to kill it marketwise" (Actually I think he's too optimistic and it will take less than that for it to be killed because it has so few mainstream users in the first place).

But it's on life support (there's a reason why the usual high profile bloggers have all been quiet for the last six months), and a rushed Silverlight 5 RTM release to 'clear the decks' for next year's Jupiter is not the 'proof' that Silverlight has a strong future that many claim it to be, just as calling 'Jupiter' Silverlight 6 is disingenious to say the least.

If you're following Build remotely, as I am, make sure you follow folks like @MossyBlog (hilariously cynical about what Microsoft say vs what they do, but nearly always right), @TimAnderson (ruthlessly honest journalist who won't be bullied by Microsoft marketeers) and @mtaulty (Microsoft employee who is loyal to his employer without resorting to being a shill and has a knack for unemotionally getting to the heart of what's important). Amongst all the noise of the 'wanna-be MVP shills' (or just the plain naive/stupid), their analysis of the next 5 days announcements will be essential reading.

I'll also be making my own quick comments on my new Twitter account of @IanSmithUK (Yes, @irascian is gone for good :-)).

To quote a line from one of my favourite movies: 'Fasten your seat belts. It's going to be a bumpy week.' (last word changed to make more appropriate! ;-))

Footnote: Can't help quoting my friend Dave Evans who describes Jupiter as 'a gas-filled planet completely inhospitable to human life' ;-)