Microsoft Bets on Mobile RIA

Next week, Microsoft is finally showing its cards on mobile RIA. In fact, it's all in.

Ever since Silverlight was announced in 2007, we've wondered about Silverlight for mobile applications. As SL 1,2,3 and the SL4 beta were released by Scott Guthrie's team at Microsoft, the plan for mobile remained a mystery.

Next week at MIX 10, the company's annual conference in Las Vegas for Web developers and designers, Microsoft will finally have some answers. As most people have heard by now, the platform for the new Windows Phone 7 Series is based on Silverlight and XNA.

How closely aligned is Silverlight for WP7 with the upcoming SL4, which is likely to be released at MIX?

Charles Kindel, partner group program manger for Windows Phone Application and Developer Experience at Microsoft, explained some of thinking behind the developer platform in a blog posting earlier this month:

'[O]ne of our principles was to build upon the shoulders of giants; where possible integrate instead of create."

By giants, he is referring to existing Microsoft frameworks, tools and Web 2.0 technologies.

"The expertise and familiarity with our tools is not lost," explained Kindel. "If you are a .NET developer today your skills and much of your code will move forward. If you are Silverlight or XNA developer today you’re gonna be really happy. New developers to the platform will find a cohesive, well designed API set with super productive tools."

The ultimate goal: developers can re-use a lot of the same code to build apps for multiple screens using a consistent platform. For example, apps that run on PCs in and out of the browser and on mobile devices such as Zune and WP7.

Kindel is among the presenters, who will take part in at least one of the 12 technical sessions on WP7 at MIX, March 15-17, where the application development model for Microsoft's new mobile platform will be officially announced and dissected. Attendees have also been promised free tools.

The WP7 platform was outlined this week at the Game Developers Conference (GDC) in San Francisco, March 9-13. Microsoft announced that the XNA Framework, currently used to build Xbox 360, PC and Zune apps, is adding support for WP7 and Silverlight. WP7, as announced in February, supports some Xbox LIVE functionality. In addition, XNA Game Studio 4.0 expected later this month, will support WP7 game development, according to Microsoft.

As Microsoft prepares to unveil its new mobile development platform, the company's clean break from the Windows Mobile 6.5 platform leaves its base of corporate developers without an upgrade path. Previous Windows mobile applications will not run on WP7. Kindel explained:

"To be clear, we will continue to work with our partners to deliver new devices based on Windows Mobile 6.5 and will support those products for many years to come, so it’s not as though one line ends as soon as the other begins."

Express your take on the new WP7 platform. Is it time for a new beginning, or will Microsoft's strategy cause business customers who invested in the WinMo platform to seek mobile solutions outside the company? Drop me a line at krichards@1105media.com.

Posted on 03/11/2010 at 4:50 PM1 comments


Windows 7: Leaving a Legacy

The majority of companies may still be on Windows XP, but the inevitable migration to Windows 7 will spur a lot of legacy code updates. At the Morgan Stanley Technology, Media & Telecom Conference in San Francisco on Tuesday, Microsoft's CFO Peter Klein reported 90 million copies of Windows 7 have sold since the October launch, mainly in consumer and retail sales. During the first half of its fiscal year which ended in December, Microsoft sold 60 million units.

"That was a great result, and we're very well positioned going forward into 2010 and 2011 as we see a pickup in enterprise IT spend, which we haven't seen really start to grow through our first fiscal half," said Klein, who also expects an enterprise refresh cycle to drive Windows 7 into more businesses.

"It's not precisely certain when that will happen and how fast it will happen, but as we've been saying consistently for the last several quarters, we expect it to happen this calendar year and go into next calendar year, and that will be a really good thing," he said. "That will be a really good catalyst for growth for our PC business."

The momentum of Windows 7 will play a big part in the decisions of many companies to modernize their legacy software, which could be painful.

"Right now about 98 percent of our clients are on XP, but we're seeing some acceptance of Windows 7. Some of the larger ones are talking about rollouts," Steve Pownall, chief executive of healthcare claims systems provider BEMAS Software, told me last month when I interviewed him for an article on legacy migration issues. Pownall cited HIPAA regulations as the reason for some of the activity, because Windows 7 supports whole-disk encryption.

"I think [companies] need to do it sooner rather than later, just because Windows 7 looks like it's going to hurt quite a few applications out there when it comes to the legacy apps," he said. "So I suggest people start on the project -- if they haven't started already -- to try to get it out, because Microsoft's not slowing down any."

Pownall's company, acquired by Evolution Benefits in July, faced a separate set of issues, migrating from VB6 to C#/.NET based on market demands. His dev team opted to use a migration tool and then reworked about a third of codebase. The next step is to integrate the product's functionality with Evolution's, already a C#/.NET shop.

The cover story in the March issue of Visual Studio Magazine, Unlocking Legacy Code looks at Pownell's migration project and others. A total rewrite is something people should look at only after considering more phased approaches that reuse assets, advised Microsoft's Matt Carter. "In other words, the IP is the asset but the code is no longer an asset."

Is your company rolling out Windows 7? What does it mean for you as a developer? Express your views on the migration process and share what you learned along the way. Drop me a line at krichards@1105media.com.

Posted on 03/04/2010 at 3:09 PM0 comments


VS 2010 RC IntelliSense Deactivated by Default

IntelliSense in the Visual Studio 2010 RC is getting a bad rap.

A few weeks ago Microsoft issued a patch to fix IntelliSense crashing with high power use of the code editor.

In a separate issue, several developers have found code IntelliSense for C# turned off in the VS 2010 RC by default. This behavior will be modified before the final release of VS 2010, expected April 12.

In the current build, the RC asks and then imports VS 2008 add-in profiles by default. The profiles of some plug-ins use their own autocompletion and "disable" the VS 2010 C# code IntelliSense. This issue crops up with JetBrains' popular refactoring utility ReSharper. Luckily, the fix is to turn C# code IntelliSense back on through a series of menu commands, or use the version of ReSharper that supports the VS 2010 RC.

Scott Guthrie explained the issue and Microsoft's plan going forward in a blog post on Friday:

"If a plugin has turned intellisense off with VS 2008, by default when you import the profile into VS 2010 we will re-enable it. This will ensure that on a clean VS 2010 install intellisense always works by default."

The VS 2010 launch is about five weeks away. On Monday, Microsoft announced an upgrade path for VS 2008 Standard Edition users, as promised. Developer Division head S. Soma Somasegar announced the Standard Offer and an MSDN Essentials promotion for people who purchase VS 2010 Professional at retail in his blog. Michael Desmond interviewed Dave Mendlen, senior director of developer marketing at Microsoft, about the new promotional programs in his article, Microsoft Rolling Out New Visual Studio Promotions.

Are you planning to upgrade to VS 2010 this year? Express your views on the test builds and your upgrade path. Is IntelliSense working for you? Drop me a line at krichards@1105media.com.

Posted on 03/02/2010 at 4:13 PM0 comments


.NET Micro Community Develops

The .NET Micro Framework community dev site went live at the end of January.

Microsoft made its .NET programming model and execution environment for embedded devices available under the Apache 2.0 license in November when version 4.0 was released at PDC09. NETMF 4.0 was the first release under Microsoft's Developer Division; the original technology was developed as part of Microsoft's Startup Business Accelerator program.

The Apache license includes source code for most of the components, Base Class Libraries and CLR. It does not include the TCP/IP stack, which Microsoft licenses from ESBNET or the Cryptography libraries because of their use and distribution in other technologies, according to a Port25 blog authored by Peter Galli, open source community manager for Microsoft's Platform Strategy Group.

The NETMF community dev site is a collaboration portal for users, developers and vendors. Developers can contribute extensions, services or even to the code itself, although Microsoft is still driving the core technology implementation in what it describes as a "community development model."

In November, Galli explained:

"…Microsoft intends to remain actively involved in its ongoing development, working alongside the community. While the license will allow customers to take the code and make specialized versions to fit their needs, customers told us they wanted Microsoft to stay involved to avoid any possible fragmentation of the platform."

Will a community development model work? Express your thoughts on .NET Micro today and its future as an open source project. Drop me a line at krichards@1105media.com.

Posted on 02/25/2010 at 2:51 PM0 comments


Azure Forecast: Cloudy with a Chance of Service Updates

Microsoft's Windows Azure platform and SQL Azure database became generally available on February 2. In the weeks since the commercial launch, the company has continued to advance its services.

The first service update (SU1) to SQL Azure went live last week. According to David Robinson, Microsoft senior program manager on the SQL Azure team and author of the SQL Azure team blog, several Dynamic Management Views (DMVs) similar to the 'views' functionality in SQL Server have been added for monitoring the relational database service. The service is also more flexible, allowing developers to now upgrade from the Web Edition (up to 1 GB/month) to the Business Edition (up to 10 GB/month) and vice versa (downgrade) with a simple command. Idle connections have been extended from 5 to 30 minutes before timing out. Work has also been done on improving support for long running transactions.

This week Microsoft expanded its location options for Azure app deployment to Western Europe and East Asia. According to the company, developers can now deploy their apps in six sub-regions: West Europe and North Europe, East Asia and Southeast Asia, South Central U.S. and North Central U.S.

As analysts proclaim the cloud a turning point in application development as disruptive as the Internet, many developers share the "I really don't know clouds at all" sentiment expressed so well in Joni Mitchell's haunting song about life's illusions. This is especially distressing for project managers who need to figure out how billing and subscriptions might play out based on an app's evolving usage data, number and size of compute instances and services. The Windows Azure team tries to shed some light on these issues in a blog posting this week, with a comparison chart and diagrams definitely worth checking out.

Still cloudy? Express your thoughts on the Azure rollout so far. Drop me a line at krichards@1105media.com.

Posted on 02/23/2010 at 2:58 PM0 comments


Hotfix Pops Up for VS 2010 RC

Microsoft has issued a patch for the Visual Studio 2010 Release Candidate. The RC, made available for public download last week, is apparently crashing when developers are using or dismissing IntelliSense as they type in the code editor.

"It turns out that a late fix right before the RC shipped modified a UI input code path that unfortunately exposed this bug," explained Scott Guthrie in a blog posting about the issue.

According to Microsoft, the problem affects machines using UI Automation 3.0 APIs; for example, tablet PCs and scenarios where screen-reader software, multi-touch or pen drivers are enabled. The frequent crashing has been reported mainly on systems running Windows 7 or Windows 2008. However, anyone who is downloading the VS 2010 RC should also get the hotfix, advised Guthrie.

In addition to the VS 2010 RC patch, potential workarounds are discussed in the Visual Studio blog.

The problem will be fixed in the VS2010 RTM, according to Brittany Behrens, program manager on the Visual Studio editor team and the blog's author. "We also have a fix for this bug checked in for VS 2010 RTM," she noted. "You won’t need a workaround for the final release, and you’ll be able to use the RTM build on machines with UIA without experiencing these crashes."

Michael Desmond's news article, Microsoft Addresses VS 2010 RC Issues covers the UIA bug and other reported issues. Is the RC working for you? Express your thoughts below or drop me a line at krichards@1105media.com.

Posted on 02/18/2010 at 3:37 PM0 comments


Windows Phone 7 Finally in Motion

Chief executive Steve Ballmer and his colleagues, as expected, unveiled the new Windows Phone 7 Series platform during a press conference at the Mobile World Congress in Barcelona yesterday afternoon.

The next-generation platform is designed around "integrated experiences," something Microsoft has deemed "life in motion." The user interface moves beyond the mini-me Windows Mobile OS of old into consumer smartphone territory with a design that some people say resembles the Zune HD.

"[F]irst, we want a smart design that puts the user at the center of their experience and moves beyond the phone as a PC-like item, that moves beyond separate applications and brings together some of the key things that are most important to people," explained Joe Belfiore, the VP tasked with program management and design for Windows Phones, during the MWC press conference.

"And then second, we wanted to design integrated experiences, which become destinations for your most common tasks, things like pictures, and music and video, and productivity, so that users have one simple place to go and access their Web services, access the functionality in their applications, access the data on their phones," he said. Belfiore has worked at Microsoft for 20 years, and his UI projects include Windows XP, Windows 95 and Zune, among others.

The Windows Phone 7 Series UI is organized based on six "hubs" that include Office, Marketplace, Music & Video, Pictures, People and Games. For the first time Windows Phone 7 Series devices will integrate Zune music and video capabilities with Xbox Live gaming and Office mobile apps such as Outlook and SharePoint. The revamped UI design also features "live tiles" on the start screen that dynamically update based on real-time information from Outlook emails, contacts and social networks. Check out the Windows Phone 7 Series demo here.

The new interface design sets Microsoft apart from its competitors and is bound to serve as a selling point for carriers and hardware manufacturers. Microsoft says it will work more closely with its OEM partners, and announced commitments from numerous manufacturers--Dell, HTC, LG, Samsung, Sony-Ericsson, among others--and carriers. The Windows Phones will also include a built-in Bing button as part of the hardware specifications and an FM tuner. In the Windows 7 Series phones, Microsoft is controlling a lot more of the architecture and software/hardware optimization from the Qualcomm silicon core, screen resolution and touch technology to the new OS, drivers and sensors. That consistency across devices, if it happens, should ease app development in some respects. The range of configurations, however, from the various manufacturers remains unclear.

The new UI design, integrated services and a push for consistency among devices is all good, but what does the new core OS and UI design mean for Windows Mobile developers?

"You'll see us continue to invest in our Windows Mobile 6.5 offerings, but we start a whole new generation here with the arrival of Windows Phone 7 Series," said Ballmer.

For developers, more light will be shed on the Windows 7 series platform at MIX10, March 15-17, where the big announcements will likely include the release of Silverlight 4 and Silverlight's role in the Windows Phone developer platform. Why else would Microsoft be talking about a mobile platform at MIX, a Web design and development conference?

Like the iPhone, based on this week's announcement, the Windows 7 Series v1 phones, expected in the holiday season, will not support Adobe Flash.

"[W]ith the 7 Series of Windows Phones we really raised the platform on which people can build, the operating system and the set of integrated services that people can extend," said Ballmer, "a new foundation with a rich set of development tools that we'll have a chance to describe at our MIX conference next month: built-in and consistent service availability, Bing, some of the Live Services, that software developers can assume as a foundation and not have to re-engineer and repeat themselves."

Whatever happens, Windows Phone 7 is finally in motion. For many developers, that's a relief. At the same time, numerous questions need to be addressed at MIX. Is it really a new operating system or a major revision still based on Windows CE? Will developers need to totally rewrite existing WinMo apps to port them to the new platform? Can developers write one app that works on multiple hardware configurations or will they still need to worry about getting their software to work on numerous carriers' devices?

Microsoft has invested heavily in user experience and UI design and it shows. Has the same due diligence been given to the developer experience? MIX10 should provide some answers. Is Microsoft's new strategy a gamechanger? Express your thoughts on the new platform below or drop me a line at krichards@1105media.com.

Posted on 02/16/2010 at 8:01 AM3 comments


Ballmer Makes the Call

The nor'easter that was supposed to clobber the Boston area yesterday didn't happen. It is now designated the no' easter. After all the buildup and school closings, I had to brush about a quarter of an inch of snow off my car this morning. Other parts of the northeastern corridor weren't so lucky.

Ever since the weather forecasters completely missed the severity of the blizzard of 1978, which also happened in early February, and dropped close to 30 inches; the meteorologists around here regularly sound the alarm. Technology has undoubtedly improved forecasting techniques in the last 30 years, but you wouldn't know it, if you lived in New England.

A similar frenzy occurs anytime Microsoft participates in a conference of late that has mobile technology on the agenda. There's the Windows Mobile 7 forecasting, the buildup about the unveiling of the next platform – will it include Zune-like functionality? And then nothing happens.

On February 15 - 18, the Mobile World Conference takes place in Barcelona. Yesterday, Microsoft issued a media alert announcing that Steve Ballmer would host a press conference on February 15, about Windows Phones. The one-hour event starts at 3:00 Central European Time. You can watch the live web cast here.

The first Windows Phones with Windows Mobile 6.5 shipped in early October. Microsoft is likely to discuss WinMo 6.5.x, an incremental update that appeared on some phones at CES. The UI layout is slightly different to accommodate a capacitive touch screen (fingers, no more stylus). A writer for WMExperts, gives a good overview of what's new in this incremental update in his WinMo 6.5.3 Recap blog.

As the saying goes, if you don't like the weather in New England, wait a minute. For Windows Mobile developers, the wait for a coherent mobile strategy, and some inkling of the direction that WinMo7 is headed, is unacceptable for developers who support the platform.

Google's chief executive Eric C. Schmidt is keynoting at MWC, and as demonstrated by the numerous devices at CES, Google's Android system continues to generate excitement. According to comScore MobiLens research, in December, Microsoft had an 18.0 percent share of the smartphone platform market in the U.S, third after RIM with 41.6 percent and Apple with 25.3 percent. Google had a 5.2 percent share in December, up 2.7 percentage points from Q3. Microsoft had dropped one percentage point from 19.0 in Q3 to 18.0 in Q4.

I expect Ballmer to at least discuss Windows Mobile 7 at MWC and show off some of its features. My forecast could be wrong.

If the unveiling of Windows Mobile 7 doesn't happen at the MWC, Microsoft's MIX10 is March 15-17 in Las Vegas and "sessions" about developing for the next generation of Windows Phone will be on the agenda, according to this January blog posting. If Silverlight is part of the mix, Microsoft may be on its way to a winning strategy.

Express your thoughts on Microsoft's mobile platform and what's needed to get developers on board. Comment below or drop me a line at krichards@1105media.com.

Posted on 02/11/2010 at 3:09 PM1 comments


Got Time for the VS2010 RC?

The Visual Studio 2010 RC is ready for the Microsoft development community to road test. The Microsoft Developer Network got access to the downloads on Monday. Tomorrow the new bits will be available to the public.

With the RTM about a month away -- depending on what the RC feedback shows – is it worth uninstalling VS2010 beta 2 and .NET 4 beta 2 and loading this latest build?

Common complaints, showstoppers and loud protests may still get some grease. If you want Microsoft to make your life easier and tackle some of the issues that you could do without during the work day, give it a spin. Fill out the surveys, click on the "Got Feedback?" button and spend a few minutes telling 'em what you think on Visual Studio Connect.

Silverlight 4.0 beta testers should stick with VS2010 beta 2 -- the RC supports SL3, the latest technology release. Azure developers can use the project templates in VS2010 RC, but .NET 4 support for the cloud will not be available until after the framework RTMs. Microsoft has not committed to a timeframe.

How much can the Visual Studio team realistically optimize and fix in a month? The team is likely in the QA phase and looking for any red flags, bugs or performance issues that may cause large numbers of users to wait on the upgrade.

The folks in DevDiv are dealing with modernizing a legacy codebase and optimizing a WPF frontend. They don't want a Vista repeat on their watch. If the RC testers spot too many ongoing problems, the RTM may be pushed beyond April. Make yourself heard.

Read more about the VS2010 RC here.

Express your views on the latest test build. Will you download it and give it a spin or wait for the RTM? How do you rate the RC versus earlier test builds? Comment below or drop me a line at krichards@1105media.com.

Posted on 02/09/2010 at 5:25 PM0 comments


Debugging VS2010 Crashes

Microsoft is slated to offer a public release candidate (RC) of Visual Studio 2010 this month. With the RC imminent, many developers are hoping that the company has addressed the stability issues in beta 2.

Based on feedback after beta 2 was released last October, Microsoft delayed the "launch" of VS2010 by several weeks to work on performance optimization and virtual memory usage improvements. The release to manufacturing is now expected on April 12, which coincides with the official launch event.

As I reported in a news article on the upcoming RC: With beta 2, developers reported problems with hanging when XAML files are being worked on, crashing if debugging is done with the XAML editor open and other Silverlight and ASP.NET 4 issues. Similarly, sluggishness around Windows Presentation Foundation (WPF) and bugs in the automation models of the WPF command bars for VS add-ins have caused headaches for some people.

In response to that article, several people shared similar experiences and voiced their concerns about how much progress Microsoft has made. The article raised the question of whether the Dev10 improvements are worth it, if the result is slower IDE performance.

At this point, Ken Smith of Woodinville, WA is a lot more worried about stability:

"I'm actually more concerned about stability than performance. If I get through a day with VS2010 Beta 2 with less than 5 crashes, I'm doing well. I keep hearing good things about the new builds, but I'll reserve judgment until I get my hands on the RC."

Jamie Clayton of Brisbane, Australia writes:

"Beta 2 didn't allow me to do much with any of my existing projects. I couldn't get existing WPF application to run without the IDE crashing completely. The SQL reporting viewer isn't even a WPF one! The VS2010 RC what scares me is that I've got to wait for a RC and rush test/report and pray that MS offers to fix the problems, or we have to wait for SP1."

Another reader echoed Ken Smith's concerns, hoping for "stability, stability, stability":

"Since I am using Silverlight 4.0 beta, I must use VS10. As I read the blogs, I read "Great work!" relative to VS10. This brings on the question, "Is anyone (even Microsoft) using this with a real application with hundreds of source files?" The new XAML designer crashes on 2/3rds of my XAML files and is quite unresponsive. What happened to C++ with pointers. This "managed code" environment is so sssssllllllooooowwwww that for all the speed increases in hardware, we give it all away (and much more!) with managed code. And then we call this an "advancement" in technology…

"One would think that if we have a 100 percent speed improvement in hardware over the last 5 years, we could possibly add 10 percent of that improvement to the speed of software rather than subtract from it. The dichotomy that exists between MSFT and GOOG is one where MSFT is aimed totally at the corporate environment with managed code, MVVM (or whatever flavor), etc. whereas GOOG is aimed at speed, speed, and speed for the consumer. Let's hope that processor speed is increased 4-fold so that MSFT wins! Let's not continue to go backward."

Microsoft is getting ready for the RC, and announced today that it is "unpublishing" the VS2010 beta 2 extensions hosted on Visual Studio Gallery.

Weston Hutchins, a Microsoft program manager on the Visual Studio Shell Team explains in the Visual Studio blog:

"We do this because we want to ensure that all extensions are tested and work on the latest release (RC) so that users aren’t treated to numerous errors either when installing or using the extension. This same process was used to convert Beta 1 to Beta 2 extensions. The extension author will have the responsibility of testing and republishing the extension."

This same process will happen again when the VS2010 RTM is released in April. In addition, online extension manager access for beta 2 will be disabled two weeks after the RC is released, according to Hutchins.

Express your thoughts on what you'd like to see in the upcoming RC and the April release of VS2010. Share your VS2010 experiences below or drop me a line at krichards@1105media.com.

Posted on 02/04/2010 at 1:37 PM1 comments


Windows Azure Is GA

The cloud services rollout at Microsoft continues this month as Service Level Agreements and actual billing goes into effect for paying customers of Windows Azure and SQL Azure.

The Windows Azure team announced today on its blog:

"As a number of time zones apply to our customers and partners worldwide, Microsoft will begin charging for Windows Azure and SQL Azure starting at 12:00 AM February 2, 2010 GMT to ensure that customers and partners are not charged for their free usage in the month of January."

The billing metrics for Windows Azure and SQL Azure start at midnight but some services remain free for paid subscribers until April, according to the blog:

"The Windows Azure platform AppFabric Service Bus and Access Control will continue to be free until April 2010 for those that sign up for a commercial subscription."

The Windows Azure and SQL Azure services are available in 21 countries, with an expanded rollout planned for later this year.

Microsoft is also warning developers who do not plan to upgrade to paid accounts to export their data in the coming weeks. Starting today, Windows Azure CTP users who have not upgraded to commercial accounts will have their accounts disabled and read only access to Windows Azure Storage, according to Microsoft. Accounts that have not been upgraded by April 1, 2010 will be deleted.

SQL Azure CTP users can continue to use their existing databases but accounts that are not upgraded to paid subscriptions will be deleted on March 1, 2010, according to Microsoft.

Azure support beyond .NET is also ramping up. Last week, Zend Technologies released an upgrade to its Zend Framework that integrates the PHP SDK for Windows Azure, developed by Belgium company RealDolmen and funded by Microsoft. RealDolmen submitted the technology to Zend last July for approval.

The new Zend_Service_WindowsAzure component allows developers to call Windows Azure Storage (BLOBs, queues and tables) from their PHP applications. An IIS FastCGI Web role is supported in Windows Azure, enabling access to the Microsoft cloud from PHP and other third-party programming languages. The latest Zend Framework v1.10 also adds support for the Deutsche Telekom Developer Garden platform.

Express your views on the commercialization of Microsoft's cloud. Is the technology ready to go live? Are you? Comment below or drop me a line at krichards@1105media.com.

Posted on 02/01/2010 at 12:02 PM1 comments


Points of ViewState

Scott Guthrie wrote a compelling blog this week about the endless nature of technical debates. He then used that context to discuss ASP.NET Web Forms vs. ASP.NET MVC.

The irony: As more and more people weighed in on his blog, it turned into a debate about the merit of Microsoft's classic Web framework versus the relatively new MVC extension.

In Guthrie's view, a developer's problem solving and communication skills often matter more when creating great software than their choice of tools, frameworks and APIs. That may be true, but it sure sounded strange coming from a vice president in Microsoft's developer tools division.

That said, he offered excellent advice on how to approach debates, engage with clients and make use of whatever abstractions feel most natural, while still learning and remaining open to new technologies. The chosen tools and technologies need to meet the requirements of the project, dev team and business scenario.

Web Forms is an interesting dilemma for Microsoft. If change is constant in the technology industry as Guthrie observed, why are so many people still using Web Forms for stateless Web development?

As I reported last week, Scott Hanselman re-issued his "unscientific" 2008 .NET features survey earlier this month and in the 2010 poll, Web Forms was still the most widely used technology, although ASP.NET MVC showed definite traction.

A reader of my blog commented:

"[I] just hope that Microsoft does not use these results to try to justify making a marketing push to promote more use of ASP.NET MVC. This poll should let them know that not everyone is going to switch from using ASP.NET Web forms. I am not! So I hope it will never go away, just get better."

LINQ to SQL has a loyal and vocal following, that appeared to be growing, but Microsoft abruptly announced its support for the Entity Data Model going forward, part of the emerging Entity Framework, which needs lots of work, and requires developers to learn a new paradigm.

ASP.NET MVC also requires learning a new paradigm—no more ViewState or postback--that some developers describe as "complex," and "like reinventing the wheel." The upside is a separation of concerns, source code with an MS-PL license and testability.

Microsoft's Rob Conery, the creator of open source, data access tool SubSonic, is a strong proponent of ASP.NET MVC and the co-author of "Professional ASP.NET MVC 1.0" (Wrox, April 2009) along with Hanselman, Guthrie and Phil Haack.

Conery's "Web Forms is a lie" blog last April got quite a reaction. His opinions haven't changed –- developers should learn MVC even if they don't use it. Conery argues that ASP.NET MVC requires a better understanding of how the Web works, standards and current technologies such as HTML 5. Conery commented on Guthrie's blog this week:

"It comes down to this, really: the Web development landscape is maturing and evolving. HTML/CSS are evolving to do a lot of really wonderful things. It's not a question of 'is this bad' -- it's a question of is this abstraction *needed* and at this point I'd be hard-pressed to come up with a reason for saying 'yes'."

Updates to Web Forms will continue, according to Guthrie. Many people don't realize that Web Forms and MVC share a lot of code, APIs and infrastructure. Web Forms is still the better choice for SharePoint, which doesn't currently support MVC. Guthrie outlined several other scenarios, including this response to Conery's comment:

"In terms of Web Forms specifically - note that a lot of developers using it keep all but their form pages completely stateless (with no or minimal postbacks). What some developers really like about it is that it can provide a nice way to encapsulate UI and functionality - especially for complex form scenarios (inline datagrids, etc.) where they either don't want to write lots of JavaScript (or can't use JS for accessibility reasons or because older browsers need to be supported). Being able to use a datagrid control that helps encapsulate this (as well as browser differences) can make some common scenarios easy and relatively clean. New releases of Web Forms like ASP.NET 4 also now emit pretty clean HTML markup that is easily styled with CSS or customized with client-side JavaScript, and support the URL Routing capabilities first introduced with MVC."

What's your take on developers' allegiance to Web Forms? Is it time to move beyond abstractions and learn Web platforms that demand a firm grasp of HTML/HTTP, standards and today's Web issues? Express your thoughts below or drop me a line at krichards@1105media.com.

Posted on 01/26/2010 at 4:47 PM1 comments


UX Evolution Lead by Microsoft

For those of us who have spent precious time searching for basic menu commands in Word (then tried to retrace our steps or explain to a colleague how we turned off smart quotes) it's kind of ironic that Microsoft is pioneering so many tools -- WPF, Silverlight, Expression Blend -- that enable developers to take user experience (UX) to a new level.

Technology, the Web, the popularity of Apple and the move to bring RIA to the desktop, point to a phenomenon that can't be ignored: Developers need to start paying attention to UX. You may be noticing the hiring trend here.

UX development is a lot more than user interface design. There's connectivity with backend systems, Web services, navigation, interactivity, consistency across platforms (RIA and browsers), UI libraries, user testing and feedback, collaboration with designers, project leads and business stakeholders.

Some early proponents in this field have become household names. Jesse James Garrett wrote a landmark book, "The Elements of User Experience." If you thought UX was something that only Web designers needed to pay attention to, check out Garrett's diagram. Randy Pausch, the Carnegie Mellon professor who gave the last lecture, specialized in human computer interaction and design. I was reminded of that when I checked out the Microsoft Jobsblog recently, and read an interview with a former student of his, Cheryl Platz, a UX designer for System Center Configuration Manager.

Pausch piqued her interest when he talked about design, programming and psychology on her first campus tour. "It's a complex problem space, and I love solving these problems and improving the user experience for a group of users often taken for granted," she said.

As many developers look to Silverlight, not investing in UX defeats the purpose of the technology. Earlier this month, Microsoft announced its annual Phizzpop Design Challenge, which requires use of Microsoft Web Platform Installer and Silverlight. The $50,000 prize winner is slated to be announced at MIX10 in March.

This year, Microsoft wants participants (professionals who work for U.S. based companies offering Web services) to revamp the Boys & Girls Clubs of America site. It's a great non-profit and an exciting challenge. The deadline for the presentations, which need to outline "strategy and design elements" is February 19, 2010.

If you haven't had much exposure to UX, how can you learn about basic patterns? Infragistics sponsors Quince, a free community-based UX Patterns Explorer for searching public UI designs and sharing experiences. This week the company launched Quince Pro, a collaboration tool and repository for private UI libraries, hosted on Amazon Web Services.

Share your experiences with UX or links to sites that in your view have raised the bar. Should Microsoft provide more guidance for Silverlight and WPF developers? Express your thoughts below or drop me a line at krichards@1105media.com.

Posted on 01/22/2010 at 6:08 PM0 comments


The 2010 .NET Survey Says

In October 2008 Scott Hanselman ran an informal poll on twitter asking people which technologies they used in the .NET Framework. The poll, which got about 5000 responses, showed some interesting results. ASP.NET WebForms was the .NET feature used by the most respondents with 3108 votes, followed by WinForms with 2668, and AJAX with 2379.

Earlier this year, he tried it again. The only change Hanselman made in the survey from a technology standpoint was adding Silverlight as an option.

In the 2010 survey, which got 1250 responses, WebForms still had the most responses with 723, followed by AJAX with 629, and WCF with 609. ASP.NET MVC had 553 responses and WinForms held its own with 516. Silverlight with 398 responses narrowly beat WPF, which had 386.

On the data management side, LINQ to SQL got 598 responses compared to Entity Framework at 287. Microsoft has indicated that it is focusing its resources on EF going forward. ADO.NET DataSets received 295 responses, ADO.NET Data Services got 109 and DynamicData seemed to be faltering with 66 responses. Hanselman thinks that maybe people are using DynamicData, but don't realize it.

Out of all the .NET technologies in the 2010 survey -- most, but not all, are mentioned here--CardSpace was at the bottom of the poll, getting no love with only 8 responses.

After a disclaimer pointing out that the poll was far from scientific, Hanselman, a high profile developer, who now works for Microsoft, said in his blog, "the results feel intuitively right to me, personally." Check out his .NET Subsystem Survey results here. Both the 2010 and 2008 survey results are shown.

As people weighed in on Hanselman's 2010 survey results, one commenter on his ComputerZen.com blog noted the difference between asking about technologies that you use everyday versus technologies that you use on new projects. Good point.

What .NET technologies are you using on new projects? How does this differ from what is used in your existing codebase? Does Hanselman's poll mirror what you are seeing?

Express your thoughts below or drop me a line at krichards@1105media.com. I'm also working on an upcoming feature for VSM that profiles projects that involve moving legacy code forward. If you have a migration story that is worth profiling, let me know.

Posted on 01/19/2010 at 10:54 AM3 comments


The New Normal for App Dev in 2010

Forrester Research outlines five changes in 2010 underscoring a new lean and mean approach, which suggests dev teams operate in some respects like an under-funded startup. In a new report, out this week, the analysts advise app dev professionals:

"Embrace cloud computing as an emerging platform." Cloud computing is here to stay, according to Forrester. Learn more about how the platforms and services available in today's public cloud offerings may benefit your projects and set up accounts to experiment.

"Find your inner startup." Think like a Web startup and make sure that your team understands the business, the competition, the user's experience and the best ways to apply limited resources during slow times or to meet fast changing requirements. Streamline your dev processes where it makes sense.

"Favor flexibility and cost over platform loyalty." Identify platform alternatives (open source, RIA, dynamic language frameworks) and consider a fit-to-purpose approach.

"Become passionate about user experience." Customers are more loyal to applications that offer great user experience, according to Forrester. Teach your dev team UX best practices and reward people for improving user experience along with features.

"Find and coach your talent." Look beyond technical skills and find great developers that understand business requirements and can offer creative solutions. Recognize the existing talents of your team. Consider hiring top talent, instead of simply expanding "your resources" with a number of hires.

What changes are you making this year to get the most out of your application development and processes? Express your thoughts below or drop me a line at krichards@1105media.com

Posted on 01/05/2010 at 3:11 PM3 comments