Archive for May, 2011

Podcast- Don Smith on Project Silk

Don Smith is a Senior Program Manager in Microsoft Patterns and Practices Group and a principal stakeholder in the SILK project.

Project Silk provides guidance for building cross-browser web applications with a focus on client-side interactivity using modern technologies (HTML5, jQuery, etc) and  appropriate distributed architecture !

Resources

Listen

Subscribe

MP3 WMA M4A Zune iPod

Download

3GP File
3GP
iPod File
iPod
MP4 File
MP4
MP3 File
MP3

M4A File

M4A
M4V File
M4V
PSP File
PSP
WMV File
WMV
ZIP File
Zip
WMA File
WMA
Zune File
Zune

SDK and Sample – leverage the scalability of Azure with PHP

We just announced the availability of the Windows Azure SDK for PHP version 3.0, which include new features making it easy to take advantage of Windows Azure scalability.

This announcement is the showcases the www.hotelpeeps.com case study, a Facebook application powered by PHP on Windows Azure and to highlight code contribution to the SDK by the community.

Along with the SDK announcement, we also released a new PHP sample application called the “Deal of the Day”, showing how PHP developers can build scalable application on Windows Azure, with the new features included in the new SDK for PHP version 3.0.

We’ve also deployed a live version of the “Deal of The Day” on Windows Azure, to let developers test it for real and get a chance to win actual fun prizes (sweepstake eligibility valid only in the US).

So….

1. There is a new version of the Windows Azure SDK for PHP v3 , with major new features enabling to easily to take advantage of Windows Azure scalability.

2. Experts from the PHP community are building real world scalable applications on Windows Azure and are contributing back to the Windows Azure SDK for PHP open source project

3. We released a  “how-to scale on Windows Azure with PHP” series and a sample application “Deal of The Day”, deployed on Windows Azure as a sweepstakes (prizes eligibility valid only in the US)

4. Windows Azure is an open and interoperable platform, and offers choices to developers by allowing use multiples languages (.NET, PHP, Java) and development tools (Visual Studio or Eclipse)

Q&A

· What’s new in the SDK 3.0

The most notable enhancement with version 3.0 is the new Service Management API, which gives PHP developers simple way to pilot how and when application should scale. See also the list of new features announced with the Beta: http://blog.maartenballiauw.be/post/2011/04/21/Windows-Azure-SDK-for-PHP-v3-0-0-BETA-released.aspx

· Do you need the Windows Azure SDK for PHP to run PHP on Windows Azure?

The Windows Azure SDK for PHP is not required to run PHP on Windows Azure, but it simplifies considerably to work to make web applications take advantage of Windows Azure cloud oriented features. The SDK for PHP provides speed dial to these features, which are available through APIs (using REST protocol for the most part)

· Is the “Deal of the Day” sample application a blueprint for building scalable application with PHP on Windows Azure?

No, “DotD” is a sample application meant to teach the fundamental options available to developers to build scalable applications. It is not a complete blueprint. Microsoft will continue to publish additional samples and guidance to help developer pick the right architecture.

For more info :

http://blogs.msdn.com/b/interoperability/archive/2011/05/26/new-sdk-shows-how-to-leverage-the-scalability-of-windows-azure-with-php.aspx

http://blogs.msdn.com/b/interoperability/:

User Experience Design Guidelines for Windows Phone

In a collaboration between Microsoft Developer Guidance and the Windows Phone team, a new version  of the design guidelines for the Windows Phone has just been complete completed.

A comprehensive set of documentation is now available with guidance for every aspect of Windows Phone UX development.

The documentation can be found here – http://msdn.microsoft.com/en-us/library/hh202915(v=VS.92).aspx

This guide is for application designers and developers who need guidance on how to structure the user interaction model of their phone application.

It gives them all the necessary information to enable them to make the best user-experience design decisions.

There are five parts to the guidelines:

1. The Windows Phone Platform: Introduces the types of applications that can be written for the Windows Phone and what specific user needs they fulfill.

2. The Application Design Process for Windows Phone: Walks people through the steps of designing an application from Design principles, Conceptualization to Implementation.

3. Application Structure and Navigation Models for Windows Phone: Presents different types of Windows Phone application navigation models and best practices for each style.

4. User and Platform Interactions for Windows Phone: Guidance on specific feature areas and user interactions for Windows Phone such as – Themes, animations, gestures, notifications, touch targets, advertising etc.

5. Controls Design Guidelines for Windows Phone: All the important Silverlight controls along with guidelines for usage.

Jump into Windows Phone Development now !!

Patterns & Practices Project Silk Documentation

Project Silk from patterns & practices provides guidance for building cross-browser Web applications with a focus on client-side interactivity. These applications take advantage of the latest Web standards like HTML5, CSS3 and ECMAScript 5 along with modern Web technologies such as jQuery, Internet Explorer 9 and ASP.NET MVC3.

To illustrate this guidance, the project includes a reference implementation called Mileage Stats that enables its users to track various metrics about their vehicles and fill-ups. Much of the effort in building Mileage Stats was applied to the usability and interactivity of the experience. Animations were included to enhance the enjoyment of the site and Ajax is used to keep the interface responsive and immersive. A great deal of care was also taken to ensure the client-side JavaScript facilitates modularity and maintainability. To accomplish these design goals, the JavaScript code was structured into “widgets” that benefit from the jQuery UI Widget Factory.

Latest Drops

The Documentation Drop can be downloaded here: http://silk.codeplex.com/releases/view/66995. Documentation is in both pdf and chm formats.

The latest code drop (Drop 9, 10 May 2011) can be downloaded here: http://silk.codeplex.com/releases/view/66045

The following chapters are ready for community review:

· Architecture

· jQuery UI Widgets

· Server-Side Implementation

· Security

· Unit Testing Web Applications

· Widget QuickStart (updated)

· How to: Check UIElement Properties with Coded UI Test

· How to: Create Automation Negative case with Coded UI Test

· How to: Create Web Client Test Automation with Coded UI Test

Project Silk’s Details view is shown below.  A HD video of the running application can be viewed here: http://www.vimeo.com/22980548

clip_image002

Working with the $(this) object in jQuery

I’m working on an HTML application. It’s a Workout Timer and will become an HTML5 experiment that is “desktop deployable” and will store user profiles using HTML5 local storage, etc.

Though the application is in the very early stages, I know where I’m going and I want everything to be highly configurable, and for those customizations to be savable by the user.

Using the following prototype code I’m displaying a “stop watch” type display.


<!DOCTYPE html>
<html>

<head>
<meta content='en-us' http-equiv='Content-Language'>
<style type='text/css'>
    
 .fighttimer {
     text-align: center;
     padding: 5px;
     width: 96%; 
    }

</style>

<script type='text/javascript' src='js/jquery.js'></script>
<script type='text/javascript' src='js/jquery.fighttimer.js'></script>

</head>

<body>

<table class='fighttimer '>
    <tr>
        <td>&amp;nbsp;</td>
        <td>&amp;nbsp;</td>
    </tr>
    <tr>
        <td class='timecountdown'>00:00</td>
        <td>00</td>
    </tr>
    <tr>
        <td>
        <input type='button' class='timestart' value='Start' />
        <input type='button' class='timestop' value='Stop' />
        <input type='button' class='timereset' value='Reset' />
        </td>
        <td>&amp;nbsp;</td>
    </tr>
</table>

<script type='text/javascript'>
    $(function() {
        $('.fighttimer').fighttimer();
    });
</script>
    
</body>
</html>


I’m using a table for layout because I want all the features of the timer to be displayed in a grid and dynamically resizable by the end user.

Each part of the User Interface will be manipulated in JavaScript code.

Note in the markup above the inclusion of a JavaScript file on line $17 in which we define a jQuery plugin for our Timer Application.

Note also here JavaScript code block starting on line #42 where we wire up our custom plugin to elements whose class is “fighttime”.

In our case this is a single table object.

Read the rest of this entry »

Podcast- Scott Hanselman

Scott Hanselman is a member of the ASP.NET team and discribes himself as the Program Manager of MISC.

In this episode Scott and I discuss teh ASP.NET Team, different models for web development and evolving how we approach Web Based Problem Solving !

Resources

Listen

Subscribe

MP3 WMA M4A Zune iPod

Download

3GP File
3GP
iPod File
iPod
MP4 File
MP4
MP3 File
MP3
M4A File
M4A
M4V File
M4V
PSP File
PSP
WMV File
WMV
ZIP File
Zip
WMA File
WMA
Zune File
Zune

Find Existing ODATA providers.

· The OData Producers list on the OData.org site.

· On the ODataPrimer wiki site.

In the previous post in this Contoso Karate MVC Series we re-factored our LogIn control widget into a PartialView. We did this for a few reasons.

  • Views want to be associated with only one model and we want to reserve that model for one that is more central to the particular page being displayed. (Specifying the Model for the view in the page _Template is generally a bad idea since that model will then be THE model assumed for every page that derives from that template. Partial views are one of the ways that we can solve this problem, a ViewModel is another.)
  • Partial views are very easily reusable.
  • If other considerations don’t preempt their use, Partial Views can make your actual View Markup easier to understand.

In this post I’ll build another Partial View. Please read the previous post to understand why we need partial views in the context of our fairly complex user interface design.

So, lets suppose that we have a requirement for an alert / notice box on our home page. It could contain special data, like for example a notice that classes are canceled due to bad weather.

It might look like this.

In this case our UI Widget is slightly more complex because we will need to retrieve data from a database to display from inside our partial view. We will store all the site notices in the database so that we have a historical record but we’ll only display the most recent one.

So, we’ll need a data table to store our notices. I like to keep the ASP.NET Services data (membership, etc) separate from my domain specific data so I created a new database named CKCMS for Contoso Karate Content Management System.

You probably know the drill. Right-Click in the solution, select Add -> New Item, choose the data items collection and select New SQL Server Database.

In Visual Studio, Switch from the Solution Explorer to the Database Explorer.

Expand the view on the database that was just created and right-click on the tables folder.

Add the fields as shown in the following table view.

When you save the table, name it “Notices”.

Note that the IsLive column will not be used in this demo. I’ve added it for future use. (We may want to be able to display more than one notice at a time in a future version of the application.)

Since we’ll need to access the data, I created an ADO.NET Entity Model.

Right-Click on the Models folder and choose add new item.

Select “Data” to see the data items collection and choose ADO.NET Entity Data Model and specify the name “CKSMSDBModel”  (Contoso Karate Content Management System Database Model.)
Read the rest of this entry »