Wednesday, October 01, 2008

Constructive Engagement...with Developers

I thought I’d summarize a few recent developer tool announcements from Microsoft. Taken individually each of these announcements is certainly positive but may appear somewhat inconsequential.  Taken together I think they constitute a very important trend.  First, let’s enumerate them:

  • Visual Studio Team System Database Edition, known informally as “Data Dude,” will be merged into Visual Studio Team System Development Edition.  Current software assurance licensees of either product are being immediately granted a license to the other.  The same is true of subscribers to MSDN editions that include either Team System product (subscribers will be able to download the other product from the MSDN Subscriptions site). This goes into effect October 1, i.e. just a few hours after I will be posting this.  The announcement itself appears in a post on Brian Harry’s blog.
  • Microsoft is shipping the Open Source jQuery JavaScript Library and providing Visual Studio integration for it as a free stand-alone Web download, and as part of the forthcoming ASP.NET MVC release.  Microsoft will also integrate jQuery in future versions of Visual Studio.
  • Microsoft joined the Object Management Group (OMG) earlier this month.

Each of these announcements is a win for the developer.  Many influencers in the .NET community have been saying for a long time that Microsoft should ship a single version of the Visual Studio Team System client and dispense with most of the separate product SKUs.  While the current Team Suite SKU is that unified edition, it’s viewed by many organizations as cost prohibitive and so Development Edition has seen the strongest uptake.  For Microsoft shops to  have to choose between the Development and Database Editions was really awkward.  Most developers need both feature sets, but were forced to pick the Developer Edition.  That caused them to miss out on the Database Edition features that they needed.  Now that will no longer be the case.

The jQuery library, beyond its feature set (allowing developers to determine and modify HTML content programmatically), is an Open Source tool enjoying great popularity.  Microsoft is working with the jQuery team in their efforts to integrate it into Visual Studio and has pledged not to fork the code (build their own custom version).  In other words, Microsoft is embracing an Open Source technology, without reservation, and decided to do so in spite of an initial intent to build such functionality on their own.  From Scott Guthrie’s blog post on the subject: “Rather than duplicate functionality, we thought, wouldn't it be great to just use jQuery as-is, and add it as a standard, supported, library in VS/ASP.NET, and then focus our energy building new features that took advantage of it?  We sent mail the jQuery team to gauge their interest in this, and quickly heard back that they thought that it sounded like an interesting idea too.”

Remember that initial ad campaign for Vista?  “The Wow Starts Now.”  Well, maybe it hadn’t then, but it definitely has now.  Scott’s quote demonstrates an uncanny display of common sense, that is not necessarily, ummm…, Microsoft’s hallmark.  I believe strongly that this pragmatist, a-political approach to making .NET better and working with the broad developer community to serve their interests has a strong believer and advocate in Scott Guthrie and that his rising influence in the developer division means we’ll continue to see such announcements made and measures taken.  This is Microsoft at its best.  Bravo.

Continuing in this extra-Redmond peacemaking (“extra” as in “outside of”, not as in “more”), or at the very least, extra-Redmond détente, Microsoft has re-joined the Object Management Group and has, in effect, staged a reconciliation with UML (Unified Modeling Language).  This means that the forthcoming Oslo modeling technologies are likely to “play well with others.”  That is to say, other companies, other products, and other (skeptical) developers.  That’s good citizenship and it’s good business.  Again, the display of pragmatism is noteworthy.

An effective price drop on Team System, and an embrace of Open Source, UML and an open standards body.  Is this the new, more open Microsoft that some predicted would take root post-Gates?  Perhaps.  Is it a merely a marketing ploy?  Elements of it may be, though I think the earnest component of the announcements is the dominant one.  But even, if in self-defense, developers wish to take a skeptical outlook on these moves, there’s tangible benefits for them to enjoy, and more for them at least to look forward to.

#    |
 Friday, September 19, 2008

P.C.: Free to be You and Me

Many people have now seen the first “I’m a PC” television ad from Microsoft.  (If not, see it here.)  And whether or not you believe that the rather sudden transition from the Gates and Seinfeld ads to this new theme is mere coherence to a plan, the overwhelming reaction to the new spot seems to be positive.

What I really liked about the ad was its focus on diversity.  Showing people from all walks of life, and from different countries (without being smug about it) is a good message.  This really serves as a metaphor for the Windows platform: a diversity of OEMs, of software, of partners and, yes, of users.

In the Mac campaign, most of the spots feature just two people, both white, and both of some celebrity (being Bruce Willis’ side kick doesn’t make you a mega-star, but still…). The ads present a  simplistic, dichotomized view of how computers are used in the world: for business and for “cool” stuff.  The sub-text is that Windows = corporate = evil.

Now look at the “I’m a PC” spot: numerous people, some white, some of color.  An Obama blogger and a McCain broadcaster.  Regular people and an intellectual celebrity (Deepak Chopra).  People with glasses, who aren’t nerds.

This shows the Windows platform to be democratic, and the Mac platform to be, essentially, elitist (turning the Mac dichotomy on its head…elitism isn’t cool) and dictatorial (in that the platform is so tightly controlled).

And the sub-text there is very important too: dictatorships run smoothly but offer less freedom; democracies offer more opportunity, but sometimes they can be messy.  And that’s a good thing.

A world without walls indeed.

#    |
 Tuesday, September 02, 2008

Browser Wars: A New Hope

I was excited today to download Google’s new “Chrome” Web browser.  Even I, a Microsoft technology die-hard, was intrigued by the idea of more competition in the browser space.  While I am impressed with what I have seen so far in the Beta of IE8, I still feel that, viewed over roughly the last decade, Microsoft’s browser has changed so little as to be an embarrassment.  Microsoft does a lot of things, and they have to prioritize.  I suppose it’s not surprising that an area in which it has little competition has been the place where it has chosen to coast.  Only stiff competition will push Microsoft out of complacency, it seems.  And so Chrome is potentially good for IE.

I downloaded Chrome, and surfed with it for several hours.  My initial experience was a good one.  First, the thing felt very clean.  There is no overload of toolbar buttons, menus, tool tips and dialog boxes.  Chrome’s merging of the address bar and the search box into a single input control is intuitive; in fact it almost seems obvious, after the fact.  Another nice touch: instead of a home page or a collection of home pages in different tabs, Chrome provides a thumbnail gallery of recently visited sites.  Chrome’s ability to create shortcuts (on your desktop or QuickLaunch toolbar) that go directly to Web applications and bring them up in stand-alone, normally-framed windows, without all of the browser UI paraphernalia, is nice as well.

Of course, these features are really pretty easy to implement (the merged search and address bar with auto-complete being somewhat an exception).  And given that the guts of Chrome’s rendering engine is essentially the WebKit Open Source code base, Google’s attempt at an innovative re-think of the browser seems more like a simple ergonomic skin on top of Safari.

But Google rightly points out, and cites as Chrome’s motivation, that browsers were designed for documents and yet are used by most of us for applications.  So an important question hinges on a part of Chrome where Google has invested some real engineering effort: the JavaScript engine.  Beyond the hype, it’s simply too early for me to know whether it offers any important advances over what’s already implemented in IE and FireFox.  But if it does, then Chrome will represent an important stake in the ground for Google and its goal of making AJAX in the browser a true application platform.

That is Google’s Holy Grail, and it’s essentially the same agenda championed by Netscape some 10 years ago, with the same goal: fashion the browser into an operating system (or at least an application substrate) in its own right, and thus render Windows insignificant.  Netscape failed, magnificently, at making this happen.  But they also lacked cash and a real business model (a common problem for technology companies in that era).  Google, meanwhile, has tons of cash, a very good business model in classified advertising, and a vested (perhaps even desperate) interest in delivering on this old challenge.

Google won’t wither away the way Netscape did, but it may hit a real cul de sac in its growth if it can’t hurt the Windows franchise in a substantive way.  Can Google do it?  Odds are against it, but it’s not impossible.  If Google can’t do it, might it at least wage a costly war of attrition on Microsoft’s market share and caché, wherein Microsoft’s customers get cranky and restless (and slow to upgrade or renew their enterprise license agreements)?  I think that’s a strong possibility. 

Microsoft can fight back successfully, but it has to get hungrier and scrappier.  Summer’s over; the Yahoo deal is comatose, if not dead.  Microsoft needs to foster some indigenous competitive momentum on the IE team and it needs to do it now.  It has Google to thank for giving it a swift kick in the rear.  Let’s see if that action yields meaningful results.

 

#    |
 Friday, August 08, 2008

It's the Data, Stupid

SQL Server 2008 was released to manufacturing yesterday (and simultaneously to the Web, without a hitch).  This works out well, as the SQL 2008 update to my MS Press book on SQL Server 2005 is almost done!  The book, now under the leadership of Lenni Lobel, should be out in October.  It will be even better than the last one, trust me.

With SQL Server 2008 ships Service Pack 1 to the .NET Framework 3.5. Its companion, SP1 to Visual Studio 2008, should be shipping very, very, soon.

“So what?” you might say. “It’s just a service pack.”  Well, not really.  This service pack is also a roll up of a collection of technologies, many of them data-related, that had been previously released as stand-alone Betas, Community Technology Previews and “futures” releases.  These include the ADO.NET Entity Framework (an Object Relational Mapping —ORM— framework), ADO.NET Data Services (formerly project “Astoria” — which allows you to create RESTful Web services around your data, very easily) and ASP.NET Dynamic Data (which creates entire functional data bound Web sites, simply by inspecting your data model).  And with these technologies, will come an added emphasis on LINQ To SQL (another ORM framework), which was only recently released itself, in November.

“And that’s not all.”  With SQL Server 2008 comes a new version of SQL Server Compact, as well as the Sync Framework and Sync Services for ADO.NET.  And don’t forget SQL Server Data Services, a cloud-based data service from Microsoft, currently in private Beta.

Is 2008 the year of the database?  Is Microsoft trying to compete for attention with the Beijing Olympics?  (I doubt that, given that NBC is using Silverlight to show every single Beijing event live and on demand.)  Are people at Microsoft so bored that they had nothing better to do than come out with five different data tools and a new release of their flagship database?

Nope.  Let go of your conspiracy theories.  Here’s an anecdote that might shed light: when I started writing for Visual Basic Programmer’s Journal (now Visual Studio Magazine) 14 years ago, I focused on database topics.  When I was offered a regular spot, it was to share the Database Design column with Roger Jennings.  It’s what I wanted; it’s what I fought for.  Because back then, business software development was all about database management and access.  And today’s no different in that respect. 

But what is different is that we have AJAX, Rich Internet Applications, Web services, cloud computing, smart phone applications, and a strong desire to automate the production of code that is common to a critical mass of applications.  That’s what all these new tools are about: addressing the new platforms and reducing menial coding tasks on any and all of them.  And with a new version of SQL Server ready to tie it all together.

Will all these tools survive?  Maybe not, but I think most of them will, and they’ll integrate more and more.  Some of the products are ground breaking, others represent Microsoft’s adoption (and adaptation) of tools that have abounded in the third party and open source spaces for a while.  Some are must-haves, others need to be treated more skeptically.  But all of them will strengthen the .NET platform, because active enhancement is a software platform’s lifeblood.  As in 2001 when .NET was still in Beta, developers should take advantage of the slower economy and study this new stuff hard.  When things turn up again, they’ll be ready, and customers are going to be happy.

#    |
 Monday, July 14, 2008

Microsoft, Netflix and Internet Delivery vs. Physical Media

I like writing about digital home media because I invested in it significantly when I renovated my home.  My family lives in a brownstone in New York City that was built in 1846; nonetheless, we have CAT6 cabling behind the walls and, among other things on our Gigabit Ethernet network, we have connected a Vista Media Center, two XBox 360s (used exclusively for media; we’re not  gamers), Windows Home Server and several Sonos devices.

But I also write about digital home media because Microsoft is making bigger and bigger bets on it and living room PC/AV convergence is one area where they are beating their consumer entertainment competitors, including Apple and Sony.  That doesn’t mean Microsoft is doing everything right though. For example, they backed HD DVD and lost.  And they haven’t exactly embraced Blu Ray.

Today though, Microsoft and Nextflix announced that with a software update this fall, XBox 360 will gain a client for Netflix’s “Watch Instantly” content.  This means that Netflix subscribers who take advantage of this service won’t be forced to use a browser plug-in or a dedicated set top box to get the content.  That’s a good development and a good partnership for Microsoft.  But I wonder how many analysts and reporters who are covering this and praising the deal actually use these services.  Because if they did, I think they’d realize Internet-delivery of video is so limited as to be nearly unusable.  Blu Ray (and Playstation 3), on the other hand, offer great entertainment with uncompromising video and sound quality.

Here’s why, at least for the time being, (non-pirated) streaming and downloadable TV and movie content is mostly fantasy:

  • Studio opposition and paucity of downloadable content: only a very small percentage of new home video releases are available in Internet-delivery format.  Netflix Watch Instantly has over 10,000 movies and TV episodes, but that’s but that’s compared to over 100,000 titles in their DVD library.  For all intents and purposes, blockbuster titles are not available over this network delivery medium.  Cable on-demand can do it, but Internet-based services do not.  That’s not a technology problem at all; it’s a legal one.  But it’s going to be difficult to overcome, and Microsoft is learning (again) that DRM isn’t a good compromise to break the logjam.
  • Lack of HD content: most downloadable programming is Standard Definition (SD) video, with two channel audio.  Blu Ray offers HD video, and a multitude of 5.1, 6.1 and 7.1 encoded and un-encoded audio formats.  Even standard DVDs on an upconverting player offer very nice picture (though certainly not as nice as HD) and almost always offer 5.1 audio as well.
  • Low bandwidth: The download times for feature-length HD films over the typical U.S. broadband connection are unacceptably high.  Streaming delivery mitigates this to some extent but then hampers your ability to select random chapters in a film, or even to perform simple rewinding and fast-forwarding.  Beyond the raw bandwidth provided, many broadband carriers are working actively to limit the amount of rich media traffic that consumers can generate.  This policy is undoubtedly futile in the long-term, and certainly misguided.  But it’s here today, and further reduces the short-term viability of Internet-delivered film and TV content.
  • Lack of portability: streamed content isn’t portable beyond the console it’s being viewed on and even non-DRM downloaded content is, at best, portable to a laptop, with an inconvenient amount of effort.  DVDs, on the other hand, play on inexpensive, rentable, portable players and in-car seat-back systems.  Anyone with children can attest to the fact that losing that capability makes the technology much less attractive.  Arguably, Blu Ray faces the same challenge since its players are far from ubiquitous.  But the assumption is that Blu Ray will replace DVD in much the same way that DVD replaced VHS (for movie playback).  That may or may not come to pass.  But a specific encoded, downloaded content format doesn’t even have a chance.

I’ll agree that physical media is old-fashioned, and that network delivery is, in the abstract, more sensible.  But physical media is a standard, and standards are powerful.   Manufacturers, studios and consumers adopt standards rather universally.  That makes for ubiquity, interoperability and usually ease of use as well.  CinemaNow, Movielink and Akimbo don’t offer that.  Neither do Apple TV and iTunes.  Nor does Netflix Watch Instantly. 

Make a standard that supports consistent HD video and 5.1 audio, convince the studios (including, yes, producers of adult programming) to distribute all their home video content over it, make truly high-bandwidth connections ubiquitous and get the telcos to end their prohibition on unfettered consumer use of the bandwidth they’ve paid for.  Then you might have something.  But that’s a lot of work to do and a lot of negotiation to conduct and conclude.  And until and unless it happens, the only real competition to physical media for major motion pictures is cable pay-per-view and on-demand service.  Microsoft can break this regime, but only if it’s committed to the heavy-lifting required to do it.

#    |