January 25, 2011

Performance Profiling Silverlight 4 Step-by-Step

It turns out you can profile Silverlight 4 applications. Really! But the steps are scattered about the web in bits and pieces, so I wrote this to pull them all together. I'm going to use my reference X-Fit application for this, but you can obviously insert your own. Here we go!
Set up PowerShell
Yeah, we're going to make things a little easier and set up PowerShell. If you're not familiar with PowerShell, don't worry. Here is a decent description of PowerShell, but if you really want to get deep into it, read Wintellectual John Robbin's blog which is full of goodness. Really the main thing you want to do is to enable script support in PowerShell, and get familiar with running scripts.
Set up your Symbol Server
We're going to need a valid symbol server to make things work. If you're not familiar with this, it's basically a place that Windows debug can go to figure out symbols (labels, names, etc) for code as you are debugging, profiling, etc. John Robbins has a fantastic script that you can use to set this up.
  1. Get John Robbins' script here (just copy it and save it to a file called "symbolsetup.ps1" and if I have to tell you without the quotes, you're not ready to profile)
  2. Execute the script in PowerShell. You must specify the full path and add a flag. I do it like this: & "c:\users\jeremylikness\my documents\powershell\symbolsetup.ps1" -public
  3. This should set it all up for you. Beware! The first time you debug, you will have quite a delay as all of the symbols are downloaded - this only happens once.
Prepare your Application
To profile, you must compile the application in release mode. Yes, you read that correctly. The symbol server will provide all of the symbols and details necessary, but you must compile in release mode for this to work.
In our example, we'll pull down the Reference X-Fit Application. Download it, unzip it, and build it in release mode.
While you can debug most applications from a test page, this application uses dynamic modules so it is best to publish it to a site. You can use your local development environment, but it's easier if you just make an application in IIS. I'll leave that to you, but when we profile, the parameter we'll pass to launch it will be some type of URL.
Let's Profile!
First, credits go to the Windows Profiler Team for their detailed post for this. It contains what I'm going to share here, but I was missing some of the setup.
Go to your start menu, navigate to Visual Studio 2010, Tools, and select the command prompt as an Administrator.
Launch the Visual Studio 2010 Command Prompt
  1. Navigate to the release directory for the main XAP file. In this case, it is under XFit/Bin/Release for the main XAP in X-Fit. If you have dynamic modules, you can copy the DLL and PDB files to this directory.
  2. Open Task Manager and sort by image name. Note the PIDs of the existing iexplore.exe processes.
  3. Set up the profiling environment:
    vsperfclrenv /sampleon
  4. Launch a new process, passing the page you want to debug:
    "c:\program files (x86)\internet explorer\iexplore.exe" http://localhost/xfit/
  5. Note the new IE process (Hint: you can also go into Visual Studio and choose "attach to process" to see the title/type of process to narrow down the correct one that is hosting the Silverlight application — don't actually attach, just use this to get the process identifier)
  6. Start profiling the process (in this case, my PID was 4436):
    VSPerfCmd /start:sample /output:xfitdata /attach:4436
  7. Now go into the application and perform some actions. I created an account, then looked at my BMI, then updated my account and put in some errors and hovered over some information icons just to get a good sample
  8. End the session:
    VSPerfCmd /detach
    VSPerfCmd /shutdown
    VSPerfClrEnv /off
Examine the Data
Once I shut everything down, a new file was created called xfitdata.vsp. Now the fun part: analyzing the data. In Visual Studio 2010, you can go to File -> Open File and navigate to the VSP file to open it. You'll see a message that it is analyzing the file. This may take several minutes, so be patient. If you have your output window open, you should see messages as the symbols are analyzed:
Loading Symbols
Probably the easiest way to filter the data is to go to the module view:
Module View
Then you can expand and see where the application is spending it's time:
Expanding Profiler Info
If you double-click on the higher level item, a window will open with the details including (if available) the source code.
Sample Profiler Data
There you have it ... step-by-step profiling Silverlight 4.

C#er : IMage Blog (Jeremy Likness) / CC BY-SA 3.0

January 23, 2011

Microsoft Few things you didn't have a look at.

There are few things in tech world which even the seasoned people miss out.
I have to say what they miss out are the coolest things. Here we are taking about various computer applications, both online and offline.

Now we are going to see few tools from Microsoft,some of these are still in beta or research.

1)First thing is Office support online.
It is the online portal for office suite from Microsoft.Here you can get training and tutorials. Clip arts and templates. It has a good support for resume/CV templates, Business emplates etc.
In its Downloads section you can get best of the plugins most of which are free.
Here is the link. http://office.microsoft.com/en-us/downloads
Take advantage I would say.

2) Microsoft is working hard in its research area.
Check out Microsoft research for ongoing research in its labs.
This is some I found out.
Academic Search.  What Microsoft says about it? Have a look...
Academic Search is a free engine developed by Microsoft Research Asia to help users quickly find information about academic researchers and their activities. It is also a test-bed for our object-level vertical search research. With Academic Search, you can easily find top researchers, their papers, conferences, and journals. You can also find relationships between researchers in terms of co-authoring papers.

3) This one is again from Microsoft Research. Image Composite Editor.
Microsoft Image Composite Editor is an advanced panoramic image stitcher. Given a set of overlapping photographs of a scene shot from a single camera location, the application creates a high-resolution panorama that seamlessly combines the original images. The stitched panorama can be shared with friends and viewed in 3D by uploading it to the Photosynth web site. Or the panorama can be saved in a wide variety of image formats, from common formats like JPEG and TIFF to the multiresolution tiled format used by Silverlight's Deep Zoom and by the HD View and HD View SL panorama viewers. 
Image Composit(32bit)
Image Composit(64bit)

4)HD View Utilities  from Microsoft Research.
The HD View Utilities are a set of tools that help you create stunning HD View images. This package includes a Photoshop plug-in that enables you to export an HD View Web page or a cross-platform Silverlight Deep Zoom page from within Photoshop. Also included is hdmake, which a simple command-line utility that provides the same function for users who don’t own Photoshop.
HD view 32bit
HD view 64bit

5)Chemistry Add-in for Word from Microsoft Research
The Chemistry Add-in for Word makes it easier for students, chemists, and researchers to insert and modify chemical information, such as labels, formulas and 2-D depictions, from within Microsoft Office Word. In addition to authoring functionality, Chem4Word enables user denotation of inline “chemical zones,” the rendering of high-quality and print-ready visual depictions of chemical structures, and the ability to store and expose semantic-rich chemical information in a semantically rich manner.
chemistry add in

Image editor with cut and paste tool, based on sequential curve growing with interaction.

7)Last but not the least is Microsoft Office labs.
Here you can see what tools is Microsoft working on , What is there future Visions etc.

8) You should also try Microsoft Fuse labs.

Try social gadgets project, Montage, Project Emporia on it.

Usefull Links.

All Materials Courtesy to Microsoft.
Related articles

Top features of Webmatrix

What is WebMatrix?
WebMatrix is a free tool that makes it extremely easy to create, configure and publish your web sites , web applications, blogs etc.  It can be trusted upon Microsoft’s in depth knowledge of web platforms,programming tools,  frameworks. It is surfaced in a more approachable and very straightforward way. 
As for ASP.NET WebMatrix comes with everything you need to get started building websites and web applications:
A complete and integrated development environment, with a small download and a simple install. 
You get a database engine (SQL Server Compact Edition) to handle your data. All the structures you create in this database engine will be compatible with professional versions of SQL Server.
WebMatrix supports a Web Server (IIS Express) to serve all your web pages. This web server is compatible with the professional versions of IIS as well.
WebMatrix also comes with a new, simple programming framework that allows for rapid development of web sites and web applications. It supports Razor, the latest and simplified way to code web sites. It also provides a gallery of free open source applications to complement your development. It comes with an integrated installer that manages the heavy lifting of downloading and installing each component.

January 15, 2011

New Update in Facebook, Privacy Understanding

There Has been an update in facebook Privacy related feature.
User Address and Mobile Phone Number

Please note that these permissions only provide access to a user’s address and mobile phone number, not their friend's addresses or mobile phone numbers.

For More details Visit.

January 12, 2011

Imagine Cup 2011 Competition

What is Imagine Cup?
Simply put, it’s the world’s premier student technology competition. Beginning with local and regional competitions, Imagine Cup 2011 comes to an exciting finale at the Worldwide Finals held in New York City.

Referral code : M618.
Add it so You can get in touch with me for resources and other things.

Software Development:
You? Change the world? Yes you can!
Poverty. Hunger. Education. Environment. Health. There are many challenges facing our world today, but did you ever imagine you could help solve them? It's true. The Software Design competition is all about you (yes you!) creating real-world applications and solutions that can help people and communities around the globe.

Embedded Development:
Use your creativity and work on tomorrow's technology today.
They're smart. They're powerful. And people around the world use them every single day. Yes, we're talking about embedded devices. Think you're ready to take this technology to the next level? Go for it in the Embedded Development competition. Not only will you gain real-world experience, you might just create a next-generation device. Embedded Development

Game Design:
3-D or 2-D. Multilevel or single player. The structure of the game is entirely up to you. But the goal all comes back to one thing: using technology to help solve the toughest problems. So create a game that's accessible for folks with disabilities. Or help children learn about the environment. The Game Design Competition makes changing the world a little more fun. 

Digital Media:
Photos. Videos. Music. Digital media is everywhere and around the world people are using it to share their unique points of view. Forget about dancing pets and washed up pop singers. With the Digital Media Competition, your big idea could enlighten folks around the world about major global issues. So spread the word!

Windows Phone 7:
It’s all about originality, appeal, and being unique. Be one of the first developers – ever – to build an XAP Application for the revolutionary Windows Phone 7 platform. Create an XAP Application the world cannot wait to get their hands on. Your Team’s XAP Application needs to scream originality, have major consumer XAP appeal, and integrate unique mobile-oriented features. So… develop a Windows Phone 7 application that people will love having on their phone today!windows-phone-7

Interoperability Challenge:

IT Challenge: 

Orchard Challenge:

Windows 7 Touch Challenge.


January 11, 2011

Cloud Computing and Windows Azure.

What is cloud Computing?
Cloud-based computing is basically a method of processing data in a central hub or cloud and then streaming only the outputs to the consumer, while channelling inputs back to the cloud and running the cycle over.

Where cloud computing really offers benefits?
when a website or application gets hit with a lot of traffic in a very short amount of time.

Cloud Services offerings..

The industry has defined three categories of services:

  • IaaS(Infrastructure as a Service)– a set of infrastructure level capabilities such as an operating system, network connectivity, etc. that are delivered as pay for use services and can be used to host applications.  
  • PaaS (Platform as a Service)– higher level sets of functionality that are delivered as consumable services for developers who are building applications.  PaaS is about abstracting developers from the underlying infrastructure to enable applications to quickly be composed. 
  • SaaS(Software as a service) – applications that are delivered using a service delivery model where organizations can simply consume and use the application.  Typically an organization would pay for the use of the application or the application could be monetized through ad revenue.

What is Windows Azure?

The Windows Azure Platform is a set of cloud computing services that can be used separately or together. Windows Azure is hosted in Microsoft data centers around the world. Windows Azure provides compute power, storage, and automated service management, as well as easy connectivity to other applications and access control to provide secure authorization and authentication of access to cloud resources. Also hosted in the Windows Azure platform is Microsoft SQL Azure, providing relational database services and automated management of relational service. SQL Azure can help reduce costs by integrating with existing toolsets and providing symmetry with on-premises and cloud databases. Windows Azure AppFabric helps developers connect applications and services in the cloud or on-premises. This includes applications running on Windows Azure, Windows Server and a number of other platforms including Java, Ruby, PHP and others. Windows Azure AppFabric provides a Service Bus for connectivity across network and organizational boundaries, and Access Control for federated authorization as a service. 

Why Windows Azure?

Microsoft is one of the largest operators of datacenters in the world
Years of Experience
Large scale trustworthy environments
Driving for cost and environmental efficiently
Windows Azure runs in 3 regions and 6 datacenters today
Data center innovation is driving improved reliability and efficiency
PUE = Power Usage Effectiveness = Total Facility power/IT Systems Power = Indication of efficiency of DC
Under 1.8 is very good, modern cloud DCs approaching 1.2
Multi-billion dollar datacenter investment
700,000+ square foot Chicago and the 300,000+ square foot Dublin, Ireland data centers
Microsoft cloud services provide the reliability and security you expect for your business: 99.9% uptime SLA, 24/7 support

Further Reading.

Tech Impressions: Imagine Cup 2011

Tech Impressions: Imagine Cup 2011

Imagine Cup 2011

What is Imagine Cup?
Simply put, it’s the world’s premier student technology competition. Beginning with local and regional competitions, Imagine Cup 2011 comes to an exciting finale at the Worldwide Finals held in New York City.


January 6, 2011

A sneak peek at Google Android 3.0, Honeycomb

Google has made it BIG in Mobile OS segment with Android. It has been launching Many new versions Latest stable release is Android 2.3.
But here comes the new video of Android 3.0. It is an first video ever of Android 3.0

With over 200,000 applications, games, widgets Google's Android seems to make a mark in year 2011.

What does Android 3.0 offers
  • Updated Browser for better browsing,
  • Support for Google Ebooks

  • New Gmail specially optimized  for Tablet PCs and Mobile platform

  • Gtalk video chat support, for tablets and Mobiles

  • Google maps with 3d view
  • designed from the ground up for the devices with larger screen sizes like tablets.
Here is the official Video:

Must Read
New Year Eve: Android Money For developers
Google Labs: 8 Applications You missed.

30 ways: How to Publicize your Blog and make most of internet. Part one

Here is the updated version of this Post.

01. write an introduction and submit it to share sites like Digg, Reddit.

02. Create a Yahoo Group or Google+ group in the category your site sits, also create a facebook group for focused discussion.

03. Create a Facebook account and use it to publicize your site, create a facebook page

04. Bookmark your site on Del.icio.us and also add a Del.icio.us button to your homepage.

05. Create a Technorati account and “claim” your blog. Must Must Must!!!

06. Submit your site to free, search engine friendly directories.

07. Conduct a survey. This is an excellent way to generate offline publicity.

08. Place a free ad for your company on www.gumtree.com

09.Syndicate your site’s content by using an RSS feeds.MUST DO!!!!


10.Submit your RSS feeds to  sites like FeedBurner, Squidoo, Feedboy, Jordomedia, FeedBomb, FeedCat, rssmad, feeddirectory and feedfury. 

11.Write an article related to your site and submit it to article sites.

12.Sign up to StumbleUpon and ask your friends to Stumble your site.

13.Create a custom 404 page so that even if someone encounters an error on your site, they are re-directed somewhere good.

14. Set up a 301 redirect to take traffic from your non-www address to your www address.

15.Add a link to your site in the signature of any forums you post on.

16.Tell your friends about your site. It’s free advertising people!!!!

17.Spell check your site. Nothing appears more amateur than a site with typos or spelling mistakes.

18.Test your site and make sure it appears correctly in all major browsers.

19.Buy enough hosting. No one likes a slow site, it is considered nightmare.

20.Don’t worry about PageRank it is not updated every now or then

21.Offer something for free. Free is always good. People tell their friends about free stuff.

22.Tell your friends and colleagues, you never know what contacts they might have.

23 Offer your users as many ways as possible to contact you. MSN, Skype, Yahoo, Facebook, Myspace, Gmail etc 

24. Advertise your site on Craigslist. It’s free, relevant and localised.

25.Do NOT use frames.

26 Submit your site to dmoz.org. It may take time, but it’s worth it.

27 Create an XML sitemap of your site and submit it to Google.

28 Get a custom t-shirt made with your website url on it, and wear it often.

29 comment on flicker photos and links on sites.

30 Sign up with an affiliate program to sell your product, or if you’re a famous, make some cash!

Must read.

1)How to Publicize your Blog and make most of internet. Part two 
2)How to avoid copying of Data from website or Blog using javascript with Comments
3)Blogging with windows Live writer: An amazing Blogging tool 

January 5, 2011

Google Labs: 8 Applications You missed. part 1

Google Labs is an ultimate stop for every enthusiast.Most of us visit Google's Labs once in while.
Google Labs has all applications which are in Beta Aka Testing stage. Some of this are really worthwhile and awesome. Many of these come handy in our day to day life.
So today I am going to suggest some of these apps to you.
Go and check it out.

App Inventor for Android:

You can use App Inventor to build just about any android app you can imagine. Often people begin by building games like WhackAMole, Tic-Tac-Toe and Pong, or games that let you draw funny pictures on your friend's faces. You can even make use of the phone's sensors to move a ball through a maze based on tilting the phone.

But app building is not limited to simple games. You can also build apps that inform and educate. You can create a quiz app to help you and your classmates study for a test, or a Math Blaster quiz for your little sister to work on her multiplication tables. With the TextToSpeech capabilities, you can even have the phone ask the questions aloud.

You Don't need Knowledge of any programming language. Because App inventor provides good visual editor for your help.


A DataWiki extends the idea of a normal wiki to:

make it easy to create, edit, share and visualize structured data, and
interlink the data formats to enhance the understanding and usefulness of each.

Image Swirl: Google Image Swirl organizes image search results into groups and sub-groups, based on their visual and semantic similarity and presents them in an intuitive exploratory interface. Try this tool to resolve an ambiguous query visually (apple, jaguar, beetle) or to explore a concept from different visual perspectives (Eiffel Tower, beach, impressionism).

Body Browser: This is for anatomy and physiology of the human body fans.

Body Browser is a detailed 3D model of the human body. You can peel back anatomical layers, zoom in, and navigate to parts that interest you. Click to identify anatomy, or search for muscles, organs, bones and more.

You can also share the exact scene you are viewing by copying and pasting the corresponding URL.

You will need a web browser that supports WebGL, such as the new (free and publicly available) Google Chrome Beta.

Google Scribe::Get autocomplete suggestions as you type. Supported for Arabic, English and Spanish
Google Goggles:Google Goggles lets you search Google using pictures from your camera phones. We take an image as input, and using several image recognition backends (object recognition, place matching, OCR, etc).

People just go and check all this Applications in Google Labs.

Will rest for now and come with new ones next time.

January 4, 2011

Development with C #.net, VB.NET, ASP.NET

So My last post was about will the be More programming jobs available from now onwards.Or the survival of programming fields.And good response for that, now let us have a look at what are the needed tools and resources if you are going to develop applications using .Net Framework.
Let us take into consideration that you are a newbie and don't have lots of money to buy expensive softwares.
Therefore I am going to give you list of all free tools I used when I started development on .Net Framework.
And of-course + plus new must have tools.
1) Notepad ++(Lets say NP++), now If you are in development(Programming) field and don't know about Notepad ++, please Google yourself .NP++ is an text editor which acts as a replacement to our sweet notepad in windows Operating System.But NP++ has been designed specially keeping in mind the programmers point of view. It supports every major programming language.It has line numbering like the IDE(Integrated Development Environment)ex. Turbo c++, Visual studio, Netbeans etc. It has multiple tabs support giving flexibility to work on multiple documents at a time.So must download for any platform.

2)Visual Studio 2010 express edition.  Now thats a offprintof   premier flagship IDE(integrated development environment) from Microsoft Visual studio 2010. Supports 
Visual Basic 2010 express
Visual c# 2010 express
Visual c++ 2010 express
Visual Web developer 2010 express.

Don't forget to Register Visual studio freely: Procedure at the end of Post.

3) Visual Studio 2010 professional: Applicable only if you are able to verify student status.

4)Microsoft's SQL server 2008 R2 express: Database and Management tools

5)WebMatrix :WebMatrix is everything you need to build Web sites using Windows. It includes IIS Express (a development Web server), ASP.NET (a Web framework), and SQL Server Compact (an embedded database). It streamlines Web site development and makes it easy to start Web sites from popular open-source apps. The skills and code you develop with WebMatrix transition seamlessly to Visual Studio and SQL Server.
I had written posts for this software 

Don't tell me you are a linux fan!!!
I have something for you
It is called Mono Project.

6)Mono project: Mono is a software platform designed to allow developers to easily create cross platform applications. It is an open source implementation of Microsoft's .Net Framework based on the ECMA standards for C# and the Common Language Runtime. We feel that by embracing a successful, standardized software platform, we can lower the barriers to producing great applications for Linux.

Learning Resources:

First learning stop for any developer is 
Learning about ASP.NET http://www.asp.net/
MSDN Forums http://msdn.microsoft.com/en-us/default.aspx.
SilverLight http://www.silverlight.net/

Want more get in touch..........

Now how to register Visual studio 2010.

New Year Eve: Windows 7 Gain 20%, Android Money For developers

Ok we have new year . 2011 So happy new year. 
 So the first great news is that Windows 7 OS market share has increased to 20%. Which means atleast 20% computer user in this world are using windows7 operating system. I say a big relief to Microsoft after the Not-That-good Windows Vista.
As reported by Net Applications.
Although the overall market share of windows has dropped.

As shown in above chart.

The second news is for developers.
What I saw on android blog, Is that Google is going to reduce its money share from android applications. Meaning the developers will get more share of money from their applications.
seeing the fast pace of Google in bringing new Android versions this seems to be a excellent move . Of course from Developer point of view. and May be from end user point of view coz it is possible that many of the developers can reduce prices of their apps. So as to increase the appeal of their android applications.

And Here is new android 2.3 official introductory Video

January 2, 2011

Microsoft plans new Windows system for mobile devices - Hindustan Times

Microsoft plans new Windows system for mobile devices - Hindustan Times

Microsoft is working on a new Windows system for mobile devices like tablet computers, according to reports. The system would focus on devices using energy-saving chips designed by the British company ARM. Many of ARM's chips are currently used in both the iPad and iPhone from Apple.
Now windows Will reportedly offer versions of its Windows CE and Windows Phone 7 systems that run on ARM chips. Its standard Desktop Windows system will be designed for x-86 architecture chips from Intel and AMD.

Courtesy: Hindustan Times