Steve Ballmer on “The Cloud”: We’re all in.

by Marc 4. March 2010 23:14

image

Just finished watching Steveb talk (video will be up here in a bit) – at the University of Washington - about the cloud. He described “5 dimensions of the cloud”:

  1. The cloud creates opportunities and responsibilities.
  2. The cloud learns and helps you learn, decide and take action.
  3. The cloud enhances your social and professional interactions.
  4. The cloud wants smarter devices.
  5. The cloud drives server advances that drive the cloud.

You can take a look at where Microsoft is and where we’re headed right here. We’re all in.

Also on stage was Blaise talking about Bing Maps – really to highlight how cloud services (such as maps) can be enhanced with (for instance) user generated information: geotagged blogs, photos etc. You can try that demo here: http://bing.com/maps/explore

Nice demo of Sky Player on XBox too.

Tags:

Cloud | Windows Azure | wave

TED, Blaise and Bing Maps

by Marc 19. February 2010 21:50

It’d be crazy for me not to spread the love for this awesome video from TED in which Blaise Aguera y Arcas (of Seadragon fame) demonstrates augmented reality integration inside Bing Maps.

I demo’d some of the Photosynth and Bing Maps integration at an internal shindig just a few months ago which I thought was awesome. Looks decidedly old already in the face of this. Fantastic pace of innovation from Bing – which I’m coming to expect.

Other videos I’d recommend (I’m still working my way through) would be Bill Gate’s Innovate to Zero, and Jamie Oliver’s TED Prize Wish: Teach every child about food.

With particular regard to Jamie’s session:

  • It pleases me that Evan (my daughter – 2) does recognise potatoes, tomatoes and lemons already.
  • Jamie has – in one 18 minute slot – validated my “drunken bloke on a ship in a force 9 gale” style of swaying about whilst giving a presentation. They try and change me, but I say no…

Tags:

Events | Cloud | Bing | UX

Microsoft Architect Insight Conference 2010

by Marc 29. January 2010 12:39

image

The fifth AIC is now lined up and ready to go. This year will be a two-day, three-track affair across Enterprise, Solution and Infrastructure architecture with a day 1 focus on Architecting Today: From Cost to Innovation and day 2 focus on Architecting Tomorrow: Implications of Cloud.

Great speaker line-up including:

  • Iain Mortimer, Chief Architect, Merrill Lynch Bank of America
  • Andy Hopkirk, Head of Projects and Programmes and Director e-GIF Programme, NCC
  • David Sprott, CEO, Everware-CBDI International and Founder, CBDI Forum
  • Ivar Jacobson, Ivar Jacobson International
  • Kim Cameron, Chief Architect of Identity and Distinguished Engineer, Microsoft Corp
  • Steve Cook, Software Architect, Visual Studio Team System, Microsoft Corp
  • Ulrich Homann, Chief Architect, Worldwide Services, Microsoft Corp
  • Terry Smith, Senior Director, Partner Technology Unit, Microsoft Ltd
  • Mark Taylor, Senior Director, Developer & Platform Evangelism, Microsoft Ltd

You can take a look at the agenda, and sign up, here.

Tags:

Architecture | Events | Windows Azure | Cloud

Software + Services: Turns out…

by Marc 27. January 2010 19:15

Remember some time back when Ray Ozzie got up and talked about the “Software + Services” vision (or in this case – wrote about it). Do ya?

So what did you think at the time? Maybe you thought:

  • w00t! That’s the way it should be…
  • I don’t get it
  • Bah, the future is the web. Microsoft would say that…
  • Clumsy name…

Philosophically, I figured it was probably right. “Everything returns to centre”, and so much of the client vs. cloud debate is polarised. I don’t believe we have a solely desktop based future any more than I believe there’s a solely web based future. (I use future loosely as a lot of stuff happens really rapidly these days!)

(Another stolen line from my PHB: The paperless office is as likely as the paperless toilet.)

I get annoyed when mutual exclusion is used in this debate. Sure, the “web” is the future in terms of the opportunity it affords – information, connection and so on. But how you interact with the web is not a given. A couple of years ago we were seeing the need for smart management (super-bookmarks) of the vast plethora of web services of one kind or another, but now that stuff sort of comes to you via one of the web platforms: Facebook, Twitter or whatever. (How many websites do you use on a daily basis? I have a handful of destinations, but these are hubs for a massive number of individual services and information sources. And I search of course.)

It was all about the browser. Perceived as the window to quick, efficient, application development with maximum reach it enabled things we couldn’t have imagined. But now where are we seeing growth? “Apps” is the word du jour (been around forever but is seeing a trendy renaissance in the popular press).

I guess the difference here is that we tend to mean clients for existing web service. Or – as a redux – we mean Twitter clients ;) We also tend to mean “delivered by independent developers” – which isn’t really true, but it feels like a cool thing to say with a smattering of ‘new economy goldrush’ about it.

“App” development is also driven by new capabilities in Natural User Interface technology (for instance). Devices are more capable, users have greater expectations and the standard web technologies aren’t quite up to it. Client software in the form of platform-specific code, or Silverlight/Flash cross-platform runtimes is in the ascendency.

Examples like XBox Live, and Apple’s iTunes were useful beacons to the S+S ideas. There’s quite a few folk referencing the principle of Software + Services since then though:

So Software + Services? Yes indeed.

Besides, 100,000 apps (or whatever today’s Really Big Number is) in the AppStore can’t be wrong. (OK, not all of them are connected apps – there’s a bunch of games and fart simulators).

From a Microsoft POV, the key thing is delivering on the Services part of “Software + Services” and we’re seeing that now with the Azure platform, Bing, our Online Services and so on. To an individual developer, it means tools and technologies that enable you to work easily across the scope of Software + Services environment: so everything from WPF and Silverlight through to ASP.NET and the stacks that go with those.

From your POV it probably means different things – maybe you’re not covering the whole of S+S in what you do – you’re maybe just working across component parts of it:

  • Are you a developer or architect? What are you developing these days? Software? Services? You’re probably thinking about RIAs and cloud-based aspects of the services as your next gen architecture… (Show me a business plan that doesn’t have cloud and API in it these days and I’ll show you someone getting frogmarched out of a posh VC luncheon…)
  • Are you in IT? You’re probably thinking about the implications of issues such as compliance, security, governance, management.
  • Are you in business? You’re probably thinking about whether/how to leverage the cloud? What’s the ROI? What does is it mean for your business model? Who do you integrate with? What horses do you back?

Some of these questions are being answered. Some remain outstanding, or require pathfinding. But one thing seems certain: we’re living in a world of Software + Services. You can call it what you want. Turns out Ray was right. Crafty.

Tags:

Thought | Cloud | Software | Services

NerdDinner hosted on Windows Azure and SQL Azure

by Marc 2. November 2009 22:49

I recently got my hands on a Windows Azure and SQL Azure token to try out a little cloud goodness.

The challenge I set myself was to host an ASP.NET MVC application (including data) in the cloud. Hopefully just an hour or so of fiddling about, but as I hadn't really used Azure before, it would also be a bit of a learning experience.

3 steps seemed to be in order:
    1) Create an MVC Application
    2) Move the application data from SQL Server -> SQL Azure
    3) Move the application hosting to Azure

It turns out that everything I needed to do this is already published but I wanted to pull the threads together. As a result, I haven’t gone into particular detail below – you can find everything you need in the Azure Training Kit.

Step 1 - Create an MVC Application

OK, I couldn't be bothered with that to be honest, so instead I downloaded the reference NerdDinner application from CodePlex - relatively trivial and already working.

Got that, unzipped and then a quick F5 in VS2008 proved that all was well with the app.

Step 2 - Move the application data from SQL Server -> SQL Azure

This is where a little bit of work starts. In principle this is a straightforward migration - script the database and run the script elsewhere - in practice we need to configure SQL Azure, connect to it and also check that the script will run (there are differences between SQL Server and SQL Azure in terms of supported capability).

imageSo, assuming you've got a SQL Azure token, then you should activate the account and set-up a new database. I called mine NerdDinner. You also need to add firewall exceptions so that you can access the database from your dev machine.

I then generated the schemas and data from the original DB via VS.

In principle, you can then run this script into SQL Azure, but in practice, there are differences in the support for various bits of SQL Server functionality. Fortunately, there's a handy migration tool on CodePlex which can provide some validation.

Running the script into that tool confirmed it should be valid. So, then I used the SQL command line to run the script into the SQL Azure database. 

(At this point I should also set up specific user roles for that DB of course).

You can then grab the connection string to the database from the SQL Azure dashboard and change the connection string config file (Connectionstrings.config) in the NerdDinner project. An F5 later, and the original NerdDinner app is now using the SQL Azure database instead.

This step was surprisingly painless, though depending on the complexity of your database YMMV. Oh, NerdDinner uses Linq-to-SQL, but I also did the same thing with Entity Framework and it worked fine for a trivial example.

Step 3 - Move the application hosting to Azure

Now, it would be wonderful if we could just move the Membership provider databases (et al) to SQL Azure too but we can't as there are certain functions not supported. Fortunately - again - the Azure Training Kit provides some code to enable a Membership provider using Azure Table storage.

At this point then, we need to create the Azure solution (so you need to have installed the VS Tools). This involves:image

  • Creating a new 'Cloud Service' project - just use the ASP.NET Web Role. (There’s no default MVC option).
  • Deleting the default ASP.NET Web Role.
  • Adding the existing NerdDinner project to the solution.
  • Associating the NerdDinner project with the cloud service. (Right click Roles –> Associate With… and choose the NerdDinner MVC Project).

This is well documented in the Azure Training Kit.

Also covered in the kit is how to get the Membership provider working. Essentially, that involves:

imageAdding two projects that came with the Azure Toolkit to the solution.
Adding a reference to the membership provider from the NerdDinner MVC project.

Ensuring the storage service is running in the development fabric.
Amending the web.config file to take advantage of this provider.

Following this, hitting F5 will fire up the project inside the development fabric - using the new membership provider and still using SQL Azure for application data. There’ll be some messages about creating the storage tables as the solution builds and runs. (We could also remove the redundant membership connection string from ConnectionStrings.config in the MVC project).

So we’re done for tweaking config. At this point, we can move the application to Azure.

Again, presuming you have an account and it is activated, you're going to need a couple of things:


image Hosting for the application – I’ve set-up a host called NerdDinnerService.
Storage for the application – mine is called NerdDinnerStorage.
An affinity group for these 2 services so they can interact.

Now, you can publish the NerdDinnerService project, and then upload the package and config file to Azure. We're not done yet though, as we need to tweak the config on the production cloud. If you've followed the instructions on setting up the membership provider, you'll have a config file with the following entries (for use in the development fabric):

image

So these entries need to be changed for production. Instructions are a bit vague on this, but here's what you need to do:

  • First of all, the “AccountName” is whatever you said when you set-up the storage service. If you can't remember, it's the first part of the service URLs you can see in the Azure dashboard for the storage service that read http://<AccountName>.table.core.windows.net
  • Then you need the shared key - you can see that on the storage service page too.
  • Then you need the URL for the TableStorageEndpoint. You should use https://table.core.windows.net (note the HTTPS which is required if you're NOT allowing Insecure Remote Endpoints as above).

Finish updating the config, save, wait for the package to sort itself out, then run it up and away you go.

You can see my effort at http://mmw.cloudapp.net. DON'T ENTER ANY REAL DATA INTO THE DATABASE (LIKE USERNAMES AND PASSWORDS). I'll take it down in a few days.

I’d like to say “It works on my machine” but then it’s not supposed to. So “It works on my cloud” instead.

Tags:

Cloud | Development | Windows Azure

Bing! Bing! Bing!

by Marc 28. May 2009 21:18

After a bunch of speculation, Bing is indeed the new decision engine from Microsoft. There’s a great article in the Times covering the launch.

preview image

If you want to see it in action and can’t wait then I noticed that Long has a nice video embedded on his blog.

I always said that the real point of Search was Find…

Tags:

Microsoft Life | Live | Cloud

The Arc

by Marc 20. March 2009 14:53

You may have already discovered Arc magazine (it’s a series of 4) which aims to describe Software + Services for Architects, but if not, you should know that apart from the physical copies, you can get the digital versions from our Architect Portal

Tags:

Architecture | Cloud

GlaxoSmithKline and Microsoft Online Services

by Marc 10. March 2009 20:26

Filed under “stuff that happened while I was away” is this fairly important announcement that GSK is to deploy 100,000 seats of hosted services from Microsoft (they’d previously been on Notes).

As ZDNet reports, it makes Google’s 15,000 seats at Genetech look small by comparison. Of course, size isn’t everything, but as Ron Markezich (Corporate VP of Microsoft Online Services) says: “If a customer like GlaxoSmithKline comes over to Microsoft Online Services, then any customer in the world can.” There’s a real benchmark being set here.

Given further reports of GMail issues today (and then those more major issues from the other week), I think that it has to make one wonder whether Google is up to the rigours of delivering enterprise software.

It’s certainly clear that GSK think that Microsoft Online Services are able to deliver the enterprise capability they require. There’s a video of Bill Louv (CIO of GSK) talking to Ron about the drivers for the decision here.

Tags:

Services | Cloud | Microsoft Life

S+S and Mardi Gras

by Marc 10. March 2009 18:46

From my Aussie buddy Greg Willis’ blog, there’s news of a DeepZoom-y/Azure-y solution bringing to life the Sydney Mardi Gras that he and Michael were involved in.

My erstwhile colleague, Brighty, is Down Under working with Greg & Co, and I can certainly sense his involvement in this somewhere.

You can do a lot with DeepZoom but there’s a lot to be said for simply bringing large collections of images to life in this way, particularly with a repeatable process and then a scalable platform behind it. A useful differentiator.

As is the norm with such things, there’s a little Easter Egg. You’ll never find it.

Tags:

Cloud | Silverlight

Gee, Software + Services Makes Sense

by Marc 24. February 2009 20:33

OK, so obviously I’m going to have a bit of a dig at Google suffering from a few problems on the email front (and apparently some weird stuff on the Groups front). Of course this is because the typical news coverage they get is ‘Ooh, they have a new Favicon’ (Come on BBC…) or ‘Hey, they did/did not discover Atlantis”. Er, no, but they did discover an enormous amount of free PR from a ho-hum feature addition to Google Earth.

The more worrying possibilities of information control tend not to make the mainstream news.

Anyhoo, from seems that the sensible GMail users have been using Gears to good effect. That is, they’ve used it to get their email offline, as in client, as in software sense.

Now, any system can fall over, or anything can happen in the middle to prevent access or whatever. The problem with the pure SaaS approach is that it leaves you blind as well as functionally incapable, with – likely – a wider effect. That’s cool for my junk mail address – I can live with it. Not so much if your business depends on it.

S+S even more redux:

Alright, back to seeing if I can find the real Atlantis…

Tags:

Cloud | Software | Services