Learning to Love HTML5

 From my own vantage point — aside from a few disputes about what the term “HTML5″ should and shouldn’t mean — the web design and development community has for the most part embraced all the new technologies and semantics with a positive attitude.

 While it’s certainly true that HTML5 has the potential to change the web for the better, the reality is that these kinds of major changes can be difficult to grasp and embrace. I’m personally in the process of gaining a better understanding of the subtleties of HTML5′s various new features, so I thought I would discuss some things associated with HTML5 that appear to be somewhat confusing, and maybe this will help us all understand certain aspects of the language a little better, enabling us to use the new features in the most practical and appropriate manner possible.

(Smashing's side note: Have you already bought the brand new Smashing Book #3? The book introduces new practical techniques and a whole new mindset for progressive Web design. Get your book today!)

The Good (and Easy) Parts

The good stuff in HTML5 has been discussed pretty solidly in a number of sources including books by Bruce Lawson, Jeremy Keith, and Mark Pilgrim, to name a few. The benefits gained from using HTML5 include improved semantics, reduced redundancies, and inclusion of new features that minimize the need for complex scripting to achieve standard tasks (like input validation in forms, for example).

I think those are all commendable improvements in the evolution of the web’s markup language. Some of the improvements, however, are a little confusing, and do seem to be a bit revolutionary, as opposed to evolutionary, the latter of which is one of the design principles on which HTML5 is based. Let’s look at a few examples, so we can see how flexible and valuable some of the new elements really are — once we get past some of the confusion.

An <article> Isn’t Just an Article

Among the additions to the semantic elements are the new <section> and <article> tags, which will replace certain instances of semantically meaningless <div> tags that we’re all accustomed to in XHTML. The problem arises when we try to decipher how these tags should be used.

Someone new to the language would probably assume that an <article> element would represent a single article like a blog post. But this is not always the case.

Let’s consider a blog post as an example, which is the same example used in the spec. Naturally, we would think a blog post marked up in HTML5 would look something like this:

01 <article>
02 <h1>Title of Post</h1>
03 <p>Content of post...</p>
05 <p>Content of post...</p>
07 </article>
08 <section>
09     <section>
10     <p>Comment by: Comment Author</p>
11     <p>Comment #1 goes here...</p>
12     </section> <section> <p>Comment by: Comment Author</p>
13     <p>Comment #2 goes here...</p>
14     </section> <section> <p>Comment by: Comment Author</p>
15     <p>Comment #3 goes here...</p>
16     </section>
17 </section>

For brevity, I’ve left out some of the other HTML5 tags that might go into such an example. In this example, the <article> tags wrap the entire article, then the “section” below it wraps all the comments, each of which is in its own “section” element.

It would not be invalid or wrong to structure a blog post like this. But according to the way <article> is described in the spec, the <article> element should wrap the entire article and the comments. Additionally, each comment itself could be wrapped in <article> tags that are nested within the main <article> tag.

Below is a screen grab from the spec, with <article> tags indicated:

Articles nested in an article
Article tags can be nested inside article tags — a concept that seems confusing at first glance.

So, an <article> element can have other <article> elements nested inside it, thus complicating how we naturally view the word “article”. Bruce Lawson, co-author of Introducing HTML5, attempts to clear up the confusion in this interview:

So keep in mind that you can nest <article> elements and an <article> element can contain more than just article content. Bruce’s explanation above is very good and is the kind of HTML5 education that’s needed to help us understand how these new elements can be used.

Section or Article?

Probably one of the most confusing things to figure out when creating an HTML5 layout is whether or not to use <article> or <section>. As I write this sentence, I can honestly say I don’t know the difference without actually looking up what the spec says or referencing one of my HTML5 books. But slowly it’s becoming more clear.

As a result, you might wonder why we have both. The main difference is that the <article> element is designed for syndication, whereas the <section> element is designed for document structure and portability. This simple way to view the differences certainly helps make the two new elements a little more distinct. The important thing to keep in mind here is that, despite our initial confusion, these changes, when more widely adopted, are going to help developers and content creators to improve the way they work and the way content is shared.

Headers and Footers (Plural!)

Two other elements introduced in HTML5 are the <header> and <footer> elements. On the surface, these seem pretty straightforward. For years we’ve marking up our website headers and footers with <div id="header">, <div id="footer"> or similar. This is great for DOM manipulation and styling, because we can target these elements directly. But they mean nothing semantically.

HTML5′s introduction of <header> and <footer> elements is the perfect way to remedy this problem of semantics, especially for such often-used elements. But these elements are not as straightforward as they seem. Technically speaking, if every website in the world added one <header> and one <footer> to each of their pages, this would be perfectly valid HTML5. But these new elements are not just limited to use as a “website header” and “website footer”.

A header is designed to mark up introductory or navigational aids, and a footer is designed to contain information about the containing element. For example, if you used the footer element as the footer for a full web page, then in that case copyright, policy links, and related content might be appropriate for it to hold. A header on the same page might contain a logo and navigation bar.

But the same page might also include multiple <section> elements. Each of those sections is permitted to contain its own header and/or footer element. Keith sums up the purpose of these elements well:

These explanations help dispel any false assumptions we might have about these new elements, so we can understand how these elements can be used. Really, this method of dividing pages into portable and syndicatible content is just adding semantics to what content creators and developers have been doing for years.

Headings Down A Different Path

Prior to HTML5, heading tags (<h1> through <h6>) were pretty easy to understand. Over the years, some best practices have been adopted in order to improve semantics, SEO, and accessibility. Generally, we’ve become accustomed to including a single <h1> element on each page, with the other heading elements following sequentially without gaps (although sometimes it would be necessary to reverse the order).

With the introduction of HTML5, to use the new structural elements we need to rethink the way we view the structure of our pages.

Here are some things to note about the changes in heading/document structure in HTML5

  • Instead of a single <h1> element per page, HTML5 best practice encourages up to one <h1> for each <section> element (or other section defined by some other means)
  • Although we’re permitted to start a section with an <h2> (or lower-ranked) element, it’s strongly encouraged to start each <section> with an <h1> element to help sections become portable
  • Document nodes are created by sections, not headings (unlike previous versions of HTML)
  • An <hgroup> element is used to group related heading elements that you want to act as a single heading for a defined or implied section; <hgroup> is not used on every set of headings, only those that act as a single unit outside of adjacent content
  • To see if you’re structuring your document correctly, you can use the HTML5 Outliner
  • Despite the above points, whatever heading/document structure you used in HTML4 or XHTML will still be valid HTML5

So, although the old way we structure pages does not amount to invalid HTML5, our view of what constitutes “best practice” document structure is changing for the better.

Block or Inline? Neither! (Sort of…)

For layout and styling purposes, CSS developers are accustomed to HTML elements (for styling and layout purposes) being defined under one of two categories: Block elements and inline elements (although you could divide those two into further categories). This understanding simplified our expectations of an element’s display on any given page, making it easier (once we grasp the difference between the two) to style and manoeuvre the elements.

HTML5 evolves this concept to include multiple categories, none of which is block or inline. Well, theoretically, block and inline elements still exist, but they do so under different labels. Now the different categories of elements include:

I certainly welcome this kind of improvement to more appropriately categorize elements, and I think developers will adapt well to these changes, but it is important that we promote proper nomenclature to ensure minimal confusion over how these elements will display by default. Of all the areas discussed in this article, however, I think this one is the easiest to grasp and accept.


While this summarizes some of what I’ve learned in my study of HTML5, a far better way for anyone to learn about these new features to the markup is to pick up a book on the topic.

These new elements and concepts don’t have to be confusing. We can take the time to study them carefully, avoiding confusion and dispelling myths. This will help us enjoy the benefits of these new elements as soon as possible, and will help developers and content creators pave the way towards a more meaningful web — a web that, to paraphrase Jeremy Keith, ‘wouldn’t exist without markup’.

Happy Coding


Windows 8 Consumer Preview Keyboard Shortcuts

The Windows 8 Consumer Preview is now available for public download, and it offers a very different experience from what Windows users are accustomed to. However, while the operating system is optimized for touchscreen input, that doesn't mean Microsoft forgot about users who are confined to traditional keyboards and mice.

In fact, the Windows 8 Consumer Preview supports a ton of keyboard shortcuts to help make input and interaction a little easier. Some of the new shortcuts are touchscreen-related, such as pressing Windows-O to lock the orientation of the device, while others relate to new features, such as pressing Windows-C to open the Charms bar.

Below is a chart of the keyboard shortcuts we know about, including shortcuts unchanged from Windows 7, as well as a list of brand-new shortcuts. If you're using Windows 8 with a keyboard and mouse or laptop touchpad, these will go a very long way toward improving your experience.


Hotkeys unchanged from Windows 7
Key combinationWindows 7 functionality
Windows Display or hide the Start menu.
Windows-Left Arrow Dock the active window to the left half of the screen (does nothing to Metro-style applications).
Windows-Right Arrow Dock the active window to the right half of screen (does nothing to Metro-style applications).
Windows-Up Arrow Maximize the active window (does nothing to Metro-style applications).
Windows-Down Arrow Restore/minimize the active window (does nothing to Metro-style applications).
Windows-Shift-Up Arrow Maximize the active window vertically, maintaining width (does nothing to Metro-style applications).
Windows-Shift-Down Arrow Restore/minimize the active window vertically, maintaining width (does nothing to Metro-style applications).
Windows-Shift-Left Arrow Move the active window to the monitor on the left (does nothing to Metro-style applications).
Windows-Shift-Right Arrow Move the active window to the monitor on the right (does nothing to Metro-style applications).
Windows-P Display projection options.
Windows-Home Minimize all nonactive windows; restore on the second keystroke (does not restore Metro-style applications).
Windows-number Launch or switch to the program located at the given position on the taskbar. (Example: Use Windows-1 to launch the first program.)
Windows-Shift-number Launch a new instance of the program located at the given position on the taskbar.
Windows-B Set focus in the notification area.
Windows-Break Display the System Properties dialog box.
Windows-D Show the desktop; restore on the second keystroke (does not restore Metro-style applications).
Windows-E Open Windows Explorer, navigated to Computer.
Windows-Ctrl-F Search for computers (if you are on a network).
Windows-G Cycle through Windows Desktop Gadgets.
Windows-L Lock your computer (if you're connected to a network domain), or switch users (if you're not connected to a network domain).
Windows-M Minimize all windows.
Windows-Shift-M Restore minimized windows to the desktop (does not restore Metro-style applications).
Windows-R Open the Run dialog box.
Windows-T Set focus on the taskbar and cycle through programs.
Windows-Alt-Enter Open Windows Media Center. Note that Windows Media Center must be installed for this key combo to function; in many Windows 8 builds, it is not present.
Windows-U Open Ease of Access Center.
Windows-X Open Windows Mobility Center.
Windows-F1 Launch Windows Help and Support.
Windows-N Create a new note (OneNote).
Windows-S Open screen clipper (OneNote).
Windows-Q Open Lync. Note that in Windows 8 the Search function overrides this key combo.
Windows-A Accept an incoming call (Lync).
Windows-X Reject an incoming call (Lync). Note that this key combo does not function if Windows Mobility Center is present on the machine.
Windows-Minus Zoom out (Magnifier).
Windows-Plus Zoom in (Magnifer).
Windows-Esc Close Magnifier.

New hotkeys for the Windows 8 Consumer Preview
Key combinationWindows 8 functionality
Windows-Space Switch input language and keyboard layout.
Windows-O Lock device orientation.
Windows-, Temporarily peek at the desktop.
Windows-V Cycle through toasts.
Windows-Shift-V Cycle through toasts in reverse order.
Windows-Enter Launch Narrator.
Windows-PgUp Move the Start Screen or a Metro-style application to the monitor on the left.
Windows-PgDown Move the Start Screen or a Metro-style application to the monitor on the right.
Windows-Shift-. Move the gutter to the left (snap an application).
Windows-. Move the gutter to the right (snap an application).
Windows-C Open the Charms bar.
Windows-I Open the Settings charm.
Windows-K Open the Connect charm.
Windows-H Open the Share charm.
Windows-Q Open the Search pane.
Windows-W Open the Settings Search app.
Windows-F Open the File Search app.
Windows-Tab Cycle through apps.
Windows-Shift-Tab Cycle through apps in reverse order.
Windows-Ctrl-Tab Cycle through apps and snap them as they cycle.
Windows-Z Open the App Bar.
Windows-/ Initiate input method editor (IME) reconversion.
Windows-J Swap foreground between the snapped and filled apps.


Posted by karthickreddyk with no comments

4.5 Framework Hosting - Model Binding Feature in .NET 4.5

 In ASP.NET 4.5, we can adopt an approach using which the Model can be directly bound with the DataBound controls and CRUD and pagination operations can be implemented very effectively. It incorporates concepts from the ObjectDataSource control and from model binding in ASP.NET MVC. We will see this shortly. ASP.NET 4.5 is based upon .NET 4.5 and it gets installed once you install Visual Studio 2011 preview.

Note: If you want to install Visual Studio 2011 preview, you can also use the Windows 8 Developer preview.

In this article I will be explaining a new ASP.NET 4.5 exciting feature called ‘Model Binding with Web Forms’. Up to previous versions, webforms for data-binding used to make use of the ‘Eval’ method. During runtime, calls to Eval makes use of reflection against the currently bound data object and reads value of the member with the given name in Eval method. (Read Why Eval is Evil). Once this value is read the result is displayed in HTML. Although this is easiest way of data-binding, it has limitations like checking the binding name during compilation time etc.

Update: Also check out the second part of this article ASP.NET 4.5: Filtering using Model Binding in ASP.NET Web Forms

In ASP.NET 4.5 the Model Binding has improved. We will be going through the complete model binding feature using the following steps:

- Model binding with Web Forms.
- Value Providers.
- Filtering.
- Performing Update Operations.

For this article I am using Sql Server 2008 R2 and a ‘Company’ database, with following Tables:

Department - DeptNo (int) Primary Key, Dname (varchar(50)),Location (varchar(50)).
Employee - EmpNo (int) Primary Key, EmpName (varchar(50)),Salary (int), DeptNo(int) Forwign Key.

Let’s get started.

Step 1: Open Visual Studio 2011 Developer Preview and create a new Web Application, make sure that the Framework version you select is .NET 4.5. Call this application ‘ASPNET45_ModelBinding’.

Step 2: In this project, add new folders and name them as Model and Department. In the Department folder, add two Web Forms (with master page). Name them as ‘Departments.aspx’ and ‘DepartmentDetails.aspx’.

Step 3: In the Model folder, add a new ADO.NET entity data model and name it as ‘CompanyEDMX.edmx’. In the Wizard, select Company Database and select Department and Employee table. After the completion of wizard, the below result will be displayed:

Step 4: Open the Departments.aspx in the ‘Source’ view and add the Repeater control in it with the Department model bound to it as below.

The above code shows some modified databound features for DataBound controls in ASP.NET 4.5. The Department Model is assigned to the ‘ModelType’ property of the repeater. This property is available to all DataBound controls. This allows us to define the type of data that is bound to the control and also allows to bind properties of the Model inside the control. The above code defines ‘ItemTemplate’ inside the repeater control which refers to the ‘DepartmentDetails.aspx’ by passing DeptNo value using QueryString to it.

Step 5: Go to the Departments.aspx.cs code behind, and write the following code:

The above code sets the datasource property for the repeater control.

Step 6: View the Departments.aspx inside the browser and the following result will be displayed: 
In your OS, observe the lower right corner of the System Tray. Instead of the ASP.NET Development server, ASP.NET 4.5 uses IIS Express as shown below: 

Step 7: In Step 4, we added the repeater control which has the ItemsTemplate and contains an <a href=””> to navigate to DepartmentDetails.aspx using a query string. This page is designed for displaying details of a particular Department. Open DepartmentDetails.aspx in the ‘Source’ view and add a DetailsView web UI databound control inside it. As explained Step 4, we need to assign the ModelType property of this control to ‘Department’ model.

All those who have used controls like DetailsView or FormView knows that these control are used for performing DML operations. Now to perform DML operations in earlier versions of ASP.NET i.e. from 2.0 to 4.0 we used to make use of ObjectDataProvider and this provider was usually configured using Get,Insert,Update and Delete methods form the source object. However the ASP.NET 4.5 DataBound controls e.g. GridView, FormView, DetailsView etc, exposes the following properties:

- SelectMethod: Used to make call to a method which returns IEnumarable.
- InsertMethod: Used to make call to a method which performs Insert operation.
- UpdateMethod: Used to make call to a method which performs Update operation.
- DeleteMethod: Used to make call to a method which performs Delete operation.

Configure the DepartmentDetails.aspx as shown below:

Step 8: Open the DepartmentDetails.aspx.cs and add the following code in it: 

Now carefully have a look at the above methods. None of these methods make use of any of the UI controls in the user interface. All these methods strictly work on Model objects and this feature drastically reduces additional coding. One more important fact is, if you observe the ‘GetDepartment()’ method, it has defined the ‘DeptNo’ input parameter with the QueryString Value provider. This automatically reads the DeptNo in the QueryString and displays the Department details inside the DetailsView.

Note: In previous versions of ASP.NET we could have done this using Request.QueryString[“DeptNo”]

Step 9: Now open Site.Master and add the following menu item:

<asp:MenuItem NavigateUrl="~/Department/Departments.aspx" Text="Departments"/>

Step 10: Make Default.aspx as a startup page and run the application. You will see the Default.aspx with Department and Employee menu. Once you click on ‘Department’ menu, Departments.aspx will be displayed. Now click on any Department and you will be transferred to ‘DepartmentDetails.aspx’ as below:

The QueryString has the DeptNo and based upon the value of the DeptNo, the DetailsView will display the  Department details. Here you can now test the Update and New (insert) functionality.

Check out the second part of this article ASP.NET 4.5: Filtering using Model Binding in ASP.NET Web Forms

Conclusion: The Model binding feature provides facility to the developers to develop Webforms which can be independent from the Model


What's New in .Net 4.5


Visual Studio Enhancements

Project Compatibility:-

This is the one feature that I liked a lot. If you have worked on a long running project which involved up gradation to a higher version then you have seen that once you open a project created in earlier version to a new version then it gets converted to new version via Visual studio conversion wizard. Problem with this approach was that a project once upgraded cannot be opened in earlier versions of visual studio. This created nuisance more so since sometimes it takes time to procure licenses for your entire time and we also wanted to save time by converting project at earliest to avoid any issues arising out of conversion. With VS 2011 developer preview Microsoft has done away with conversion wizard and improved compatibility.

Current Cursor line Code Highlighting:-

This is a cute little enhancement which actually saves a lot of time. While working on project many times you do a find which shows results in find window. On double clicking the result it takes you the line where it found the matches but many times I lost the cursor and then used down arrow key to track the movement and position of cursor. Now visual studio highlights line on cursor is placed currently.

Solution Explorer Enhancements

Solution explorer now combines Class view so that you can get more details about the class as you are working..

Quick Launch Box

This is another cool addition to visual studio menu bar which makes it easier to execute commands. As you can see the toolbar is much light weight now with only the commands that you use most often. Rest of the commands can be found by clicking the small dropdown button as shown below. Also see the highlighted Quick Launch(Ctrl+) box

You can see in image below as I type Form in Quick Launch it gives me plethora of options to choose from.

Posted by karthickreddyk with no comments
Filed under:

SIX COOL - Tips and Tricks with VS2010

 Tip 1 - Generating Sequence Diagrams To Inspect And Document control flow

Another cool feature in Visual Studio 2010 is the ability to generate Sequence diagrams. You may right click inside a method and select “Generate the sequence diagram”  from the pop up menu, to generate the diagram. In this example, you may see that my SubmitOrder method in OrderViewModel class is instantiating an OrderServiceClient, to call AddOrderAsync method inside the same.


Tip 2 - Architecture Explorer

A cool addition in VS2010 is the Architecture Explorer (Click View->Architecture Explorer). The Architecture Explorer will provide you a very friendly interface to browse through and navigate to your solution assets. You can right click on an item (Namespace, Class Name, or Class Member etc) and select ‘View Content’ to navigate to the definition as well.


Also, you can export the selected items to a graph document from the Architecture explorer. You can do this by selecting the members, and clicking the ‘Create new graph document’ button (in top left corner) of the Architecture Explorer. Let me export some of the members in my OrderViewModel class, and have a look at the generated graph. You can also use the graph document to understand your code members in a better way, to analyze circular references, un referenced nodes etc (see the image below.)


Tip 3 – Code Navigators

Visual Studio 2010 has a number of useful code navigators. A simple yet useful code navigation/identification feature is ‘Highlight Reference’ - you can double click on any member to view the references highlighted, and can navigate across references using the Ctrl + Shift + Up/Down arrows.
Another cool code navigator is the ‘Navigate To’ window. You can use ‘Navigate To’ to search code members quickly when you work with the editor.


You can bring up the “Navigate To” window using the shortcut Ctrl , (press Ctrl and comma). You can search by any term, and you can even search using camel case. See that I’m searching for ‘OV’, to get a list of all code members following the OV convention.

Another cool code navigation feature in Visual Studio 2010 is the ‘Call Hierarchy’ window. You may right click any member to bring up the popup menu, to select ‘Find All References’ to bring up the call hierarchy window. So, next time when you change a method, you can have a look at where all you are going to impact. You can also view all overrides of your method, if you have any.


Tip 4 – Pinning Data Tips While Debugging

When you are debugging, you can pin variable values, so that they’ll be there for you to see later.


Also, you can even enter comments for a pinned data tip, so that you can view the comment later.


VS 2010 has also got a tone of other Debugger Enhancements, read about them from Scott Gu’s blog if you are interested.

Tip 5 - Consume First Development

Visual Studio is so smart that it can stub your classes, members etc on the go, when you type the code. For example, assume that you have a customer class, and you thought it should have a new method while doing something. You can just type the member name (method, property etc), rest your mouse on top of the tiny blue line under your new method to bring up the popup menu.


Click that, and you’ll see VS stubbing the method for you, as shown below. Note that VS has inferred the parameter type.


You can do that with constructors, properties, method overloads etc as well. That is super cool, especially if you are a TDD guy.

Tip 6 – Extension Manager for downloading and installing plugins

The Extension Manager in Visual Studio 2010 will allow you to download and install cool plug-ins for your VS IDE. You can bring up the extension manager window by clicking Tools->Extension Manager. Extension Manager will connect to Visual Studio 2010 online Extension library, and you can search and find cool plug-ins there.


Once installed, you may also Disable or Uninstall your plug-ins from the extensions manager.  Happy Coding!!

10 to improve WP 7

As a Developer’s Perspective: 

Let me start by saying that I love Windows Phone 7 (wp7); it’s a modern, well-throughout, and refreshing OS. However, in as many good things there are about it, and there are many, it suffers from a metaphorical “death by a thousand cuts”. Nonetheless, I think all the issues are correctable by either technical or strategy changes, and looking from a developers perspective the following ten suggestions (in particular order) could change the game for Microsoft in so far as being able to match the best-of-the-best:

1. UI Virtualization

As everyone knows, most of the time within the screen confines, we are privy to only a part of total viewable UI – and so the idea with UI virtualization is that we only have to realize visuals for the view-elements that are (at the time) viewable on the screen. It’s not a new concept by any means, but it’s a critical piece of technology for a limited resource device – and the problem is that Silverlight’s support for UI virtualization is very anaemic. For example, out-of-the box we don’t get UI virtualization support for things like wrap-panels, pivot/panoramic panels, elements with non-similar heights, grouped items etc.

VirtualizeLike above, the potential field of view is one panel to the left and one to the right, everything else could be (optionally) virtualized. Furthermore, one of the other related issues is scrolling, either because of lack of UI virtualization or container recycling performance – which let’s be honest is a prevalent usability failing on wp7 apps. So what I’d like to see is that we get across-the-broad and optimized UI virtualization support for wp7 out of the box. And, this is critical because for one thing, resources are limited on phones, and virtualization-performance or even the lack-of-virtualization issues are particularly perceptible with touch-based input.

2. Hardware Acceleration

The other big ticket item that must be addressed is that Silverlight’s rendering should be done on the GPU, and not on the CPU – and unlike the desktop version, where the excuse that user might not have some sort for compatible hardware is null and void on wp7, as it only runs on a well-known hardware. The potential performance gains from hardware acceleration are in such order of magnitude that this shouldn’t even be debatable, even though technically it might not be the simplest thing in the world to achieve.

In terms of the benefits, having the rendering done on the GPU will speed up other things like networking, data-processing etc. because as of now the CPU is being overtaxed; furthermore, it will also improve the memory footprint, and even help with extending the batter life. All big wins in my book.

3. Improve Navigation and Navigation State Management

Navigation is a topic close to my heart, and I’m not particularly happy with the way navigation is done on wp7. For one thing the navigation model must be truly asynchronous, to have the ability to cancel, confirm, delay etc. And the current recommended approach to delay passing the event argument to the base class is one the weirdest view-related pattern I’ve ever seen. And the other thing is it’s not MVVM friendly, because most of the logical reasons as to proceed or cancel with navigation should be taken in the ViewModel.

Further, the hydration and de-hydration of the visual tree as a tool to manage the navigation state is simply spurious. It’s actually quite similar to the much-hated ViewState model in asp.net, and consequently I think it’s wasteful, it has a significant memory footprint, and just hits performance. The right navigation state model should do two things, one, only store the visual-cues that matter to the experience at hand and this has to be determined by the developer, and second, it should allow storing of the logical state which in my books means it should be MVVM friendly. If done correctly, it would both improve performance and reduce the memory footprint, because remember navigation is just another form of UI Virtualization.

4. Fix Push Notifications

In wp7 push notifications are serious broken, especially from a usability perspective. For example, the channel identifiers required for sending notifications are temporary, because they get reset every time the device is restarted (which because of how the marketplace app locks-up is almost a daily exercise for me). This is such an unintuitive and unexpected behaviour, that it defies any privacy arguments for resetting the identifiers – especially for people coming off iOS. Then there is the issue of capping the number of apps that one can receive notifications from (16 I believe) – again this is a usability disaster; because it is counter-intuitive (again as compared to iOS), it’s an arbitrary limit which I don’t understand the reasons for, and also just because a user has no central place to either know or manage such subscriptions.

In terms of improvements, I think we could have the idea of public and private notifications channels – such that if one is subscribe to a public channel then notification goes to all those who’ve subscribed to that channel (in a broadcasting kind of way). And private channels would be the ones that target a particular user. And I think, with a little bit of thought, Microsoft can extend the notification infrastructure to allow intra-application communication – this is something that, if done well, can bring to bear a lot of interesting apps mash-ups.

5. Design for Extensibility

I’ve already done a rant on this, but in many other ways there is still a case to be made that because wp7 is a managed platform the onus is on Microsoft to provide infrastructural capabilities for apps to built-upon. Now the problem lies with the fact that you have to wait on the underlying platform to be updated as a whole, to a gain a new capability. That I think is a fundamentally flawed approach, especially keeping in mind how fast the market and hardware capabilities are moving – so how about, if we could have independent trusted/certified dlls, that could be added to the xap and used to consume additive capability in isolation – like say NFC capabilities that might be introduced by one set of phones.

Essentially, what I’m talking about is embedding interops that are smart-enough to test if the capability can be availed on the device, and if true then wp7 gets the necessary installers and install it from Microsoft directly (into maybe something like a GAC). So lets take an example of sockets capability – in such a setup, Microsoft can in isolation make an interop available and apps can avail them before they are introduced into the platform as a whole itself – and just to note, once the capability has been subsumed in the underlying platform then Microsoft could just disallow any app from including the interop. With something like this the time-to-market can be significantly cut-down because you can test and add capabilities in a piece-meal fashion. And the benefit being wp7 as a platform can potentially be on the cutting-edge of hardware/services – without the negatives of dll hell or the delays with moving the platform as a whole.

TaskSwitcher6. Introduce Pseudo Multitasking using Tomb-stoning

Multi-tasking, or pseudo multi-tasking (or apple’ish multi-tasking), has two facets – one the ability to do certain tasks in the background (like play music) and two, resume from where you left. The second facet is essentially what we call tomb-stoning in wp7, so how about availing the state whenever an app starts – why should it be only restricted when accessed by navigating back. This is so easy to avail that I was surprised it wasn’t in the box, because we already have the application-side of the infrastructure in place. So the only thing that is really needed is a task-switcher kind of UI (as shown on the right), which again taking cues from iPhone, could be triggered by double-clicking the home button. The running apps tiles too could be made “live”.

And with respect to the other capability of having certain tasks execute in the background is again not difficult, all that is needed is to provision “named” background threads that can only do non-visual tasks. And in Silverlight we already have a background-worker approach, and we could foreseeably use something very similar to that – with the main idea being you have a qualified interface that does dispatching back-and-forth. Technically, I don’t think it’s a big challenge – especially because apple has put in the though-process already in so far as the types of background tasks we need.

7. Improve the Home Screen

Tiles are an excellent idea, but the current implementation of the home-screen comes at the expense of application discovery and limited usability. In as much as Microsoft parades the grid’ish approach to apps listing, the one thing they do provide, in terms usability, are big bold graphical hit-targets that are conducive to developing muscle memory. However, in wp7 because live tiles and apps listing require heavy scrolling and in the other case we have text-oriented targets, the muscle memory ability is severely diminished, and consequently it takes longer and requires more metal involvement to get to any app. And I can feel that extra effort’s pinch when I compare it to my experience on my iPad, not exactly fair but still, where I’ve put everything into folders in just one screen and it doesn’t take me more than two touches to get to any app; plus you also get the speed because of the muscle memory you’ve developed over time.

MultiPanelHomeScreenWithout radically changing the home screen, I think one of the things that can really help is having multiple sets of live-tiles. I can imagine organizing various live-tile sets – one of people I contact often, one for games I play often, apps by category etc. Yes, it adds lateral scrolling/swiping but that not necessarily a bad thing, it’s same idea of an “infinite canvas” in play. Secondly, it’s so ironic that despite having a hardware search button you can’t search for your apps – that needs to be corrected, a press on search button should allow you to search for apps when on the home screen, period.

8. Update Back and Search Buttons Behaviour

I seriously think Microsoft got the back button and search button functionality somewhat wrong. I think the back-button should only navigate within the context of an app. Hoping apps by walking up the back-stack is counter-intuitive, it might work for task-like application hops, but it’s just not right in terms of app-to-app usability. So my suggestion is this, one, let the back-button only work within the boundaries of an app (i.e. it shouldn’t cause one to exit an app – when was the last time your browser kicked you out when you backed-up? or where is the forward button to recover from an accidental exit?), and second, introduce a long-press on the back-button that takes you to the previous application (with tomb-stoning and all). Using the long-press, as opposed to backing up n-times, would also preserve the back-stack on the running application, and that is sometimes important with things like the browser (plus we won’t end-up backing up over POST actions, which is bad bad bad!).

Similar to the back button, the search button should be contextual to the app running – and in cases where the application doesn’t handle it, it should do nothing. This behaviour would be consistent with the use of the search button in native apps, plus it would also allow its use within the home screen. Now as for accessing Bing, introduce a long-press on the search-button to get to Bing – like the back button, this would consistently hop the app-boundary and also maintain the availability of Bing from basically anywhere in the phone. And for those like me with fat fingers, we won’t constantly be jumping out games and apps because of unintended hits.

9. Introduce Built-in SkyDrive API for Apps

One of the big visions of the mobile era is that of apps that fully “live in the cloud” – we’re somewhat there in an ad-hoc and patchy kind of manner, but not quite there in a truer sense of a platform. This is a vision that wp7 can take the mantle for, since Microsoft already has a lot of the technology and assets in place – namely, the 25GB provided through Sky-Drive and Live Mesh / Live Sync technology.  Imagine, having a cloud version of IsolatedStorage that could be shared across devices and Microsoft platforms – I reckon it would have a profound impact on how app’s user experiences flow across platforms and devices.

10. Introduce a Companion WP7 based Tablet

Of all the points here, nothing riles me the more than Microsoft’s inane tablet strategy, it’s like they just can’t grasp the failing of windows mobile – and the consequent ceding of billions-of-dollars worth of market to Apple and Google. What was the single biggest problem with windows mobile? Not features, not app count, rather it simply wasn’t designed for a touch device and it just didn’t work from a touch UX perspective. Now, contrast iPad with a Windows 7 tablet device – was Win7 primarily designed for a touch device? No. Does it work well from a touch UX perspective? No. It’s history repeating itself, Microsoft is ceding time and market to both Apple and Google again – and this is all despite, again like with smartphones, having a unique heritage in the tablet form-factor. Insane!

The Windows 8 System-on-a-Chip (SoC) is a laudable goal, if you can unify multiple form-factors – wonderful, it’s what sci-fi looked liked couple of years back. But, this strategy has got two problems, by the end of 2012 you will be three years out from the introduction of the iPad (ahem, just like 3+ years from iPhone to wp7’s introduction), and two, you could potentially hit a fundamental/technical issue(s) that could make it less than an idea solution (maybe like jack-of-all-trades but master-of-none) because really it is a such a challenging undertaking (Longhorn anyone? Pesky little history again). So why not take a path that has proven to be successful, take your phone OS and scale it up. And I believe, Silverlight, because of it’s awesome layout sub-system and MVVM type separation capabilities, would make for a wonderful application platform for tablets. And this can be achieved rather so quickly and cheaply (ironically on the back of Android tablets coming out now), that conceivably devices can be made available in time for holidays.

Lastly, from a developer’s perspective – iOS and Android developers get a one-for-two deal, in that they can at the same time make apps for two platforms. That’s twice the monetization opportunity with minimal effort – yet, don’t forget the fact some apps are just about only practical on a table-form factor which totally isn’t even an option for wp7 developers. That’s a handicap, that’s a loss-of-mindshare, and that makes the wp7 platform less attractive. These are just simple business 101 facts, and so it boggles my mind how does the biggest software company in the world miss the boat by such a large margin – and mind you this is not some iffy stuff, this has a profound and real effect on the long-term vitality of the windows eco-system.



Posted by karthickreddyk with no comments

Shortcuts keys for Developing on Windows Phone 7 Emulator

14.00 Normal 0 false false false EN-US X-NONE X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0in; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} table.MsoTableLightGridAccent1 {mso-style-name:"Light Grid - Accent 1"; mso-tstyle-rowband-size:1; mso-tstyle-colband-size:1; mso-style-priority:62; mso-style-unhide:no; border:solid #4F81BD 1.0pt; mso-border-themecolor:accent1; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-border-insideh:1.0pt solid #4F81BD; mso-border-insideh-themecolor:accent1; mso-border-insidev:1.0pt solid #4F81BD; mso-border-insidev-themecolor:accent1; mso-para-margin:0in; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} table.MsoTableLightGridAccent1FirstRow {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:first-row; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-border-top:1.0pt solid #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:2.25pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1; mso-tstyle-border-insideh:cell-none; mso-tstyle-border-insidev:1.0pt solid #4F81BD; mso-tstyle-border-insidev-themecolor:accent1; mso-para-margin-top:0in; mso-para-margin-bottom:0in; mso-para-margin-bottom:.0001pt; line-height:normal; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; mso-ansi-font-weight:bold; mso-bidi-font-weight:bold;} table.MsoTableLightGridAccent1LastRow {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:last-row; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-border-top:2.25pt double #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:1.0pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1; mso-tstyle-border-insideh:cell-none; mso-tstyle-border-insidev:1.0pt solid #4F81BD; mso-tstyle-border-insidev-themecolor:accent1; mso-para-margin-top:0in; mso-para-margin-bottom:0in; mso-para-margin-bottom:.0001pt; line-height:normal; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; mso-ansi-font-weight:bold; mso-bidi-font-weight:bold;} table.MsoTableLightGridAccent1FirstCol {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:first-column; mso-style-priority:62; mso-style-unhide:no; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; mso-ansi-font-weight:bold; mso-bidi-font-weight:bold;} table.MsoTableLightGridAccent1LastCol {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:last-column; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-border-top:1.0pt solid #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:1.0pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1; font-family:"Cambria","serif"; mso-ascii-font-family:Cambria; mso-ascii-theme-font:major-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:major-fareast; mso-hansi-font-family:Cambria; mso-hansi-theme-font:major-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:major-bidi; mso-ansi-font-weight:bold; mso-bidi-font-weight:bold;} table.MsoTableLightGridAccent1OddColumn {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:odd-column; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-shading:#D3DFEE; mso-tstyle-shading-themecolor:accent1; mso-tstyle-shading-themetint:63; mso-tstyle-border-top:1.0pt solid #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:1.0pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1;} table.MsoTableLightGridAccent1OddRow {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:odd-row; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-shading:#D3DFEE; mso-tstyle-shading-themecolor:accent1; mso-tstyle-shading-themetint:63; mso-tstyle-border-top:1.0pt solid #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:1.0pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1; mso-tstyle-border-insidev:1.0pt solid #4F81BD; mso-tstyle-border-insidev-themecolor:accent1;} table.MsoTableLightGridAccent1EvenRow {mso-style-name:"Light Grid - Accent 1"; mso-table-condition:even-row; mso-style-priority:62; mso-style-unhide:no; mso-tstyle-border-top:1.0pt solid #4F81BD; mso-tstyle-border-top-themecolor:accent1; mso-tstyle-border-left:1.0pt solid #4F81BD; mso-tstyle-border-left-themecolor:accent1; mso-tstyle-border-bottom:1.0pt solid #4F81BD; mso-tstyle-border-bottom-themecolor:accent1; mso-tstyle-border-right:1.0pt solid #4F81BD; mso-tstyle-border-right-themecolor:accent1; mso-tstyle-border-insidev:1.0pt solid #4F81BD; mso-tstyle-border-insidev-themecolor:accent1;}

The Windows Phone 7 emulator in the SDK comes with some shortcut keys that help to speeding things up while Developing on the Emulator. Following are some of the keys that i explored on …




Use F1 key on the keyboard instead of back button on the phone


Use the key F2 on the keyboard for the Windows key in the Windows Phone 7


Enables the keyboard in the emulator when the focus is on the textbox


Disables the keyboard in the emulator


To open the Bing Search


To Activate the Physical Camera


Increase the Volume


Decrease the volume


BangaloreITPro 7th Anniversary Celebration

Event Registration URL: http://www.eventbrite.com.au/event/2652422467

Group Site: http://bitpro.in

Event Agenda:


Speakers Profile:

Topic Speaker Speakers’ photo

Keynote (Relationship between User Group Communities & Technologies)

Pradipta K Sharma

Founder & CEO | Beahead Private Limited

Pradipta has over 15 years of hands-on experience leading business strategy, product management, marketing and business development for a diverse set of organizations including Microsoft, Drishtee, Strider, Northwest Architectural Company and Planet 3 Studios. Pradipta was instrumental in starting 3 companies - Planet 3 Studios, Strider and Drishtee. Prior to starting Beahead, Pradipta worked with Microsoft for 7 years as an Audience Marketing Lead, specifically focusing on audience reach, satisfaction and product adoption.

Pradipta Sharma-2
Windows7SP1 Deployment using MDT2012 Beta2 Mr.Saravanan Rajappa,

Saravanan is the infrastructure architect at Honeywell Technology Solutions lab and has over 13 years of professional experience in the field of IT Infrastructure Services as an Infrastructure Designer, Technical Consultant, and System Administrator
He has worked in technology project lifecycle which includes planning, designing, deployment and support of Windows Server 2008, 2003 and 2000, server roles, Windows 7, Vista, XP and 2000, SQL 2005, IIS, System Center, Data security, VMware ESX, VDI and other prestigious IT Infrastructure related projects.
He was involved in multiple IT service delivery projects and poses good process knowledge on ITSM using ITIL framework. He has been involved in various consulting engagements such as end to end design of IT Infrastructure for clients, Technology Refresh, AD Migration, Server Consolidation and Transformation programs. He is currently holding the following certifications – MCITP Enterprise Administrator in Windows Server 2008, MCSE with AD DS specialization in Windows Server 2003, MCITP - SQL 2005, MCITP – Hyper-V Virtualization, VMware VCP and ITIL v3 Certified Professional.


Exchange 2010 SP2 Overview

Mr.Ismail Mohammed, Microsoft India Ismail_Mohammed
Top 5 Free Desktop Deployment and Planning Tools for Every IT Professional

Aviraj Ajgekar, Technology Evangelist, Microsoft Corporation

Aviraj is a Computer Engineer from Mumbai and currently working with Microsoft Corporation India as aTechnology Evangelist. In his present role he's working with IT Professionals across India evangelizing Microsoft Technologies.

A real blogger, he is very compulsive on adding his thoughts to online blogs,  forums, community and media. He a regular speaker at various Microsoft Events such Microsoft TechEd, MS TechDays, Virtual TechDays, Microsoft India Webcasts and many more technology events.

In his spare time he likes to spend time with his family, hang around with friends & listening to the rock music. He’s also passionate about Photography & Long Drives. You can follow him on twitter @aviraj111

PowerShell 3.0 features in Windows 8 and Windows 8 Server Mr.Ravikanth Chaganti, Dell R&D

Ravikanth has over 10 years of experience in the IT industry. At the beginning of his career, he worked at Wipro Infotech managing Windows, Solaris servers and Cisco network equipment. He currently works at Dell Inc. as a lead engineer in the SharePoint solutions group. As a part of his work, he authored several whitepapers on MOSS 2007 and SharePoint 2010 that provide guidance around infrastructure elements of a SharePoint deployment. His work also involves performance testing and sizing of SharePoint workloads on Dell servers and storage.

Ravikanth is passionate about automation and outside of work, he writes regularly on his blog http://www.ravichaganti.com/blog about topics related to Windows PowerShell, Microsoft SharePoint and Windows Server virtualization. In 2011, Ravikanth received – for the second year in a row -- Microsoft's Most Valuable Professional (MVP) award in Windows PowerShell. You can also hear him speak regularly at BITPro (http://bitpro.in) user group meetings and other in-person events at Bangalore, India

Private Cloud Architecture Design & Demos Mr.Anand MS, Microsoft India
M.S.Anand has been with Microsoft India for seven years and is currently working as a Technology Specialist with Microsoft Technology Center at Bangalore. He has a wide range of experience during his 14 year career in the industry and has undertaken numerous projects in assisting medium and large customers architect and design their infrastructure. He is a familiar face at many Microsoft events and is a MCITP Enterprise Administrator on Windows Server 2008, and also holds MCTS for SCVMM 2008, SCOM 2007, ISA 2006, Exchange 2007 & Forefront Client Security.
Windows Server 8 Preview Mr. Gaurav Anand, Microsoft MVP

Gaurav Anand works at HP Technology Services and provides solutions for Microsoft, VMware and Storage technologies. He likes to work on Core Infrastructure optimization and Cloud Design projects and enjoys troubleshooting complex technology issues. Gaurav has also done various training deliveries for Microsoft products. He is Microsoft Most Valuable professional, public speaker and a certified PMP. Gaurav blogs at http://itinfras.blogspot.com/ and you can catch him on twitter @gauravanand121
Microsoft Indic in Windows 7 and Windows 8            (নমস্কার! नमस्ते! ನಮಸ್ಕಾರ! സ്വാഗതം! வணக்கம்! నమస్కారము!) Dr.Pavanaja, Vishwa Kanada Softtech
Vote of Thanks & Closing Note

Kaliyan currently holds a position as Sr.Technical consultant for Microsoft Enterprise Solutions for Dell India. He is specialized in Microsoft Technologies like Windows Server, Active Directory, Exchange Server and SCCM. He is co-founder and Manager of BangaloreITPro User Group. He also serves as an ITPro Group Leader at GITCA & SQL PASS, he also member of STEP.

Kaliyan received Microsoft’s Most Valuable Professional Award / Network Professional Association’s Top of the Mark – Volunteer award based on his contribution to the IT community.


Windows Phone 7 WiFi Connection Unsuccessful

Windows Phone HTC 7Pro tried to access internet through my WiFi when I tried on my WP7phone the “Connection unsuccessful” contact your network administrator error, I spent four days to figured out the solutions.

Initially I doubt on Windows Phone device may be missing some of the fixes, I have done the all the update and tried to connect to WIFI again the same issue, then I started looking at my WiFi Device.

I got suspect on my WiFI device may be the this device firmware old or configuration issues.

before updating the firmware on my device, I have checked the Authentication Settings

I was set as below Figure.


Authentication Set to “ WAP2-PSK

I have checked to new setting as below


I have changed to “WAP-Auto-PSK” now I am able to connect to my WiFi from windows Phone 7.5mango.

if you face similar issue, first try to update your WiFi device Firmware then then check the configurations.


Posted by kaliyan with no comments

BILLGs’ Photo

Take ur time off to check this out.


Young CEO

Bill Gates, about 27, in his Microsoft office in 1982.


Bill Gates: The Early Years2 of 9   Geniuses at Work

Gates watches his friend and future Microsoft co-founder Paul Allen typing on a teletype terminal at the Lakeside School in Seattle in 1968. Gates was 13 when he entered the exclusive prep school, which was around the time this photo was taken.



Much of the computer equipment at Lakeside was bought with proceeds from a rummage sale organized by the students' mothers. Gates was drawn to programming the machines and was excused from math classes to pursue his interest.



Gates during Commencement at the Lakeside School in 1973.



In 1977, Gates was arrested by New Mexico police for speeding.



Gates and Allen in Microsoft's offices in 1982. Started initially in New Mexico, the company moved to Bellevue, Wash., in January 1979.


The Staff

The early team at Microsoft paused for a group portrait in 1978. Gates is at the bottom left.


Lots of Memory

Gates demonstrates the memory power of a CD in 1987.


Bill Introducing Microsoft


Bill's Lexus


Bill and Melinda Gates


Gates' 40,000 sq. ft. "ecology house" in Seattle - 7 years to built at estimated cost of $97 million (1998)


Bill Gates gets knighthood from Queen Elizabeth (2005)


Bill Gates playing video games at CES (2005)


Bill Gates hands over beta 2 of Windows Vista, Office 2007 and Longhorn Server at WinHEC 2006 in Seattle (2006)


Bill Gates launches Windows Vista and Office 2007 at New York's Times Square (2007


Bill Gates and his wife Melinda cuddle Samuel Baltazar (right) and Ires Mahnica during a visit to the Manhica Health Research Centre .



Posted by kaliyan with no comments

Windows Phone Developer Contest "I Unlock Joy"

Dear BITPro Members!

At the recent Mobile Developer Summit which took place on November 2, 2011 at Bangalore Microsoft announced the details of the developer programme for Windows Mobile in India with ‘I unlock Joy’, a unique Application Development and Submission Program, where technology professionals and students get an opportunity to develop applications and showcase creativity.
‘I unlock Joy’ programme for developers has started from November 1, 2011 and will continue till June 30, 2012 whereas the program for students will begin on December 18, 2011 and conclude on March 30 next year.
Developer competitive categories: 
“SUBMIT & WIN” CATEGORY: A registered participant submits THREE qualified Windows Phone Application in the Marketplace and gets a chance to win a Windows Phone. In this category, the Applications must be distinct and of non-trivial utility value for the Application User. A “Spam” or close replicas of existing Windows Phone Applications are disqualified.
“PORT 2 APPS & WIN” CATEGORY: A registered participant submitting TWO qualified Windows Phone Applications in the Marketplace which are ported from existing Android or iPhone Applications get to win a Windows Phone.
“WOMEN SPECIAL” CATEGORY: A first of its kind in the developer space. The first 100 registered Woman Developers who submit ONE (1) qualified Windows Phone Application each in the Marketplace qualify to win a Windows Phone each. The applications can be based on Entertainment, Fashion, Leisure, Sports, Recreation or Travel themes.
Student competitive categories:
“STUDENT” CATEGORY: Calling on the community to be a part of the initiative, the “I unlock Joy” programme is customized to unfold their innovative and creative best and become among the select first few proud owners of the Windows Phone.
The contestants need to build one or more applications using Dev Tools and submit on AppHub. If their apps get certified and published on the Windows Phone Marketplace during the contest period which ends November 18, they can claim goodies like a brand new Windows Phone, certificate of acknowledgment from Microsoft and Windows Phone T-Shirts as well as USB flash drives.

 Note: T&C apply as per Microsoft Norms.

Posted by kaliyan with no comments
Filed under: , , , , , ,

SCOM 2007 R2 Reporting Server Installation–Error

I tried to install the SCOM 2007 Reporting Service, it was getting failed with the following errors.

“ Could not verify if current user is in the sysadmin role”


I have spent couple of days to resolve this issue:

Resolutions / workaround:

1.As soon as you install the SQL Server Reporting Service, open the SQL Reporting Services configuration manager and set the proper service account, reporting URL and backup the encryption key. If required Reset Service account and backup.


Open the SQl Reporting URL and check whether your able to open successfully as shown below.


Now start the SCOM 2007 R2 Reporting Service installation, it should solve the above said issue.

Note: This is one of the workaround which I have observed during the SCOM deployments.

Posted by kaliyan with no comments
Filed under: ,

Free Teacher Resources from Microsoft

Microsoft Mathematics 4.0 – the free tool helps to do the complex graph calculations.

Mouse Mischief – provide option in PowerPoint to have interactive Q&A

Interactive Class room – this is free add-in for PowerPoint and OneNote to have real time polling in the class room presentation.

Photosynth – this tool helps to create 3D-Experience with multiple images.

Songsmith – this tool match your singing voice

much more free tools at http://www.microsoft.com/education/teachers/default.aspx

Credit to Mr.M.S.Anand, who has showcased some of these applications in http://bitpro.in User Group Meet on 18th June 2011.

Why Should You Attend PASS Summit?

Whether you’re a seasoned PASS Summit veteran or thinking about attending your first conference, you don’t want to miss PASS Summit 2011, Oct. 11-14, in Seattle, WA. PASS Summit is all SQL Server, all of the time – offering the most useful, top-quality technical SQL Server and BI training available and at a great rate. This year’s conference is shaping up to be one of the best ever, and I encourage you to go. Here’s why.
Why you should attend:
Choose from 160+ technical sessions and 2 full days of pre-conference seminars by top experts in the field: Itzik Ben-Gan, Kalen Delaney, Adam Jorgensen, Adam Machanic, Brent Ozar, Kimberly Tripp, and many more.

Get instant answers to your SQL Server questions, including face-to-face support with the Microsoft CSS and SQLCAT teams.

Network and build contacts with thousands of industry experts, SQL Server MVPs, Microsoft employees, and peers. 

Learn new skills and best practices that you can apply immediately on the job.

Save $600 when you register by June 30 (plus use your Chapter Member discount code CHM11 for an additional $200 off – a total savings of $800 if you register this month).
Consider the value, and then join me at PASS Summit 2011 – I hope to see you there!


Posted by kaliyan with no comments
More Posts Next page »