 So this is Dave here and we're down in Lakeside House, I believe down in Sunny Uxbridge. I'm here with Juval Löwy, from iDesign all away from across the States. Juval would you like to introduce yourself and tell us a little bit about what you do?
So my name is Juval Löwy, I'm the principle of iDesign, we specialise in .NET Architecture Consulting, True Architecture and Actual World, meaning designing systems. We do a fair amount of advanced training which is what I'm doing here this week. I'm also the Microsoft Regional Director for the Silicon Valley. I've published a few .NET books, latest one " Programming WCF Services", I speak at development conferences, I chair 2 large developer conferences, I publish a lot of articles, I write the WCF column for MSDN Magazine Been participating in the internal design reviews at Microsoft for future version of .NET. I've been privileged to be part of the strategic design effort of WCF for the last 4 years. So ...
 So what else do you do? [Laughs]
[Laughs]
 Is that all? Is that all you do, goodness gracious me [Laughs]. OK, so you're over here teaching a course, can you tell us a little bit the background behind that course and what your aims of the course were?
So the class is called the WCF Master Class, and what I'm showing in that class is not just how to be a WCF expert, but how to design modern software systems. And ... I'm almost using WCF as a reference model because I'm showing all the design issues behind a particular thing and I'm showing how to solve it in various ways and from various angles using WCF. I'm showing a lot of my original techniques and helper classes that address various things. And ... I try to convey the message that WCF is fundamentally the next generation developer platform. It's more than just a new API or anything, it's literally a new way of programming. In many respects it deprecates .NET as people know it now...
 That's a pretty big statement
It is a big statement, and it definitely goes against the ... common statement that Microsoft will make on what is WCF, right?
 Also I believe that the general statement is that the next developer platform is SharePoint so how do you reconcile those two points of view?
Well I mean, there's always a need for something like SharePoint and for something like WCF. Sharepoint is definitely for quick cut of application, sharepoint site and so on, and you can certainly extend SharePoint. WCF is how you write systems right? Which is a totally different perspective on just bringing up a form with a few checkboxes on it right?
 So what brings you to say its the next developer platform, what particular aspects of WCF allow you to make that statement?
Right, so what's unique about WCF is that it takes care of much of the things a developer used to handcraft, predominantly plumbing. Most application developers spend a totally disproportionate amount of the effort on things like hosting, instance management, security, transaction, reliablilty. WCF comes along and it just takes care of all of that, and basically lets you focus on the business logic, on things that your customer and your manager cares about. And by doing so there is a huge productivity boost and also a quality boost. You don't spend time on the bugs, but more time on the features right? And that's a shift from the way you used to develop an application before. Now its definitely not a 'Silver Bullet', you still have to spend some time understanding what is going on, the relationship between various things how to extend it, but compared to normal development, I say its like using power tools for a carpenter. You can use a screwdriver with a noraml screw and you could just turn, turn, turn. If you use a powertool its like VRRRU! and you're done right? Its an order of magnitude faster, right? And that's really why its so compelling...
 Right, OK. So as far as your company iDesign, I mean, you say you're doing some real world solutions. Have you actually deployed WCF in real-world solutions as far as your company is concerned? And can you give an example of how it helped this productivity side of things?
So, I would say that categorically over the last ... certainly over the last year and a half probably over the last two years, every customer we engaged in, we engaged using WCF. And before that even if it wasn't WCF, we made a forward looking solution that would be migrateable easily to WCF. Categorically, anybody that's doing today "File, New, OK" should be using WCF. There's no if's, no but's, there's nothing in between [Smiles]. Obviously if you're still maintaining your legacy code base, then you can't take advantage of WCF or maybe everything WCF has to offer. There's certainly some migration strategy, some way of exporting endpoints to cater for the more basic applications ... but moving forward is there is really no excuse to use raw .NET. .NET not just WCF but all X.0 is a huge step forward as far as capabilities right? Its a bit hard to relate to something as abstract as WCF and if you talk about legacy windows application compared to a slick rotating, 2 dimensional, rotating icons in the air WPF application its obvious there's more things going on there ...
 Yeah, the Microsoft guys always hated demonstrating WCF, because there's nothing to demonstrate! [Laughs]
Exactly! [Laughs] How can you demonstrate plumbing right? IN fact I helped a rumour once that .. er .. in the old COM+ days, where they had the COM+ explorer, with the 'spinning balls' and so on?
 Oh Yes ...
That's adds no business value whatsoever in spinning balls right, but they had to put it in ...[Laughs]
 Because its something to see [Smiles]
Exactly! THey had to convey to managers what they were doing, and show that something is going on, when you launch a COM+ host and you launch the services ... so there's no spinning balls in ...
 I was about to say is there a spinning balls equivalent for WCF?
So I asked the very same question a few years ago, and the WCF architect told me back that no, but using WPF I could have these spinning balls, spinning with a mirror image of each other. And I told him that's probably the first real Use Case to find value with WPF! [Laughs]
 That's fantastic. So you're talking here, you're doing this course here and we were chatting briefly beforehand that you're off to Sweden fairly shortly, what are you doing out there?
So, I'm going to help a customer of ours with ... technical issues they have with some WCF usage , I can't really go into details now, its a big financial company and they need expert advice on how to do something. So its a lucky strike for them, as I was already her in the UK, they said "Can you spend another week with us?" and I obliged so that's why I'm going next week.
 Great, great ... so as far as WCF is concerned, and this is a loaded question here, can you recommend a good book on WCF [Smiles]
 [Dave] OK, That's a good recommendation!
You can take a look at the comments and reviews for it on Amazon. Its ... a different book from the average technical book. The average technical book or a common one, talks about how the technology is implemented perhaps or some shallow cursory look at maybe some piffle and such. My book is a tour de force, I'm not holding back any blows. If something sucks I say it sucks, this is how you fix it. I'm not taking anything lying down. I extend WCF to compensate perhaps for some oversight, I emphasise things they did well and show how not to do things that are perhaps possible with the product. I mean there's no WCF policy, there are still bad things that you can do, that the product lets you do, so I showing how not to do these things. I am definitely at the intermediate to advanced developer not necessarily in WCF knowledge but more in professional skills and overall attitude to how to design systems, in experience, in being a veteran right? I would say if you are junior to intermediate developer, you should probably take a look at Michelle's book, its called " Learning WCF". It looks very much like my book, most of our books have got the fish on the cover [Laughs]. She aims more at the introductory level, she doesn't go into every rathole like I go. I would say that ... start to finish you probably need both books right? You need her to shoehorn yourself into the whole mindset of Service Orientation ... and then you need my book to really pick it up. In some respects I almost assume you know WCF before you pick up my book. So I have a lip service which is chapter one which is like "What is WCF?" but that was to appease by editor [Laughs]
 With Windows 2008 Server coming out and we have this facility Windows Application Services. Are you aware of that? Is there any relation between that and WCF. Does it use that?
It can use it I don't think its related.
 So $55,000 question then. What's your favourite feature of WCF?
........ Wow. What's my favourite feature?
 Don't say ABC [Laughs]
No because its not by the way ... ok.. so lets maybe lets have separate a favourite feature versus a favourite capability right?
 That's fair enough ...
Separate feature is synchronization contexts ...
 That's fair enough ...
Separate feature is synchronization contexts ...
 Is the?
Synchronization Contexts. In the next edition of MSDN Magazine in my column I'm going to have an article on what it means and show how to extend WCF to have custom synchronisation contexts and so on. But as far as capability I would say it's that finally we're disconnected from the object, from direct references to objects that there is this interception between the client and the server which adds all this value where we never see the object, we're decoupled from its version, from its assembly from its language, from its platform all these things you don't want to be coupled to and you can focus on the abstract, contractual relationship between the service and the service provider this is probably the most compelling one from a capability standpoint.
 Fantastic. OK so just rounding it off on a lighter note. My compatriot Richie Costall who's not here asked me to ask you do you play any XBOX games?
I'm embarassed to say that not only do I not have XBOX I have never played ANY computer games probably in my life. I could never find it interesting. I mean I left computer games at Digger and Pong and that's probably also dated myself. [Laughs] You're laughing, you know what I mean ... and space invaders of course, don't forget space invaders, but those were almost television games they weren't computer games right? As soon as I could put my paws on a computer when I was much younger I did modern algebra, and matrixes and such ... I did the Math stuff .. I didn't find time. The first software I ever wrote was a linear algebra matrix manipulation thing because I didn't want to do it by hand, so its like that was the things that compelled in computers early on. However I do have a vice, and that is the software Simulator called Real Flight which lets you control a model aeroplane or a model helicopter ... and the graphics and the quality of the product is just absolutely unbelieveable. You can get addicted to that ... I'm doing amazing things on aerobatics and so on and you can jump to the cockpit and do it from inside the cockpit.
 Can you actually fly a real aircraft?
Oh I could long ago, I can't do it any more. I would probably not trust myself doing it with a real aeroplane [Laughs]
 Juval Löwy, thanks very much for spending some time with us. Thanks very much.
My pleasure.
|