2009 Microsoft MVP Award

I'm so delighted to see an email with subject "Congratulations Microsoft MVP" in my mailbox this morning!

It's so warm and I'm happy to see this kind of email every year, especially I was so nervous and hand sweating in the last few weeks as I received an email from my MVP lead telling me that the MVP selection is very strict this year, and I have prepared lots of statistic figures and re-submit my application twice. (maybe it's because of the economic turmoil?) Anyway, it's my honor to receive this award in 2009.

Posted by Colt | with no comments
Filed under:

MSDN Web Application Toolkits

Just go through the Bing Search Toolkit, it's straightforward and simple.

All toolkits can be found at: http://code.msdn.microsoft.com/Project/ProjectDirectory.aspx?TagName=WebAppToolkits

Posted by Colt | with no comments
Filed under:

Green IT and Client Computing Webcast by INETA APAC

A new webcast session is scheduled this Sat and details are:

Topic: __ Green IT and Client Computing __

Presenter: Benjamin Cassell

Session abstract:

By 2010, 75% of organizations will use full life cycle energy and CO2 footprint as mandatory PC hardware buying criteria (Gartner Group 2008). Thin clients are the obvious choice, but require significant change. An easier way to make the transition is to buy energy efficient computers or computers containing less pollutants. Pollutants in our waterways and carbon emissions are the two separate areas that need to be addressed. Some products claiming to be green may compromise one of these concerns for the other. In this session you will learn about the client computing technologies, their power consumption and ways to make your client computing environment more environmentally friendly.

Presenter Bio:

After finishing school, Benjamin enrolled in a Diploma in Photojournalism and after 2 years and some other study in Computing and Literature he completed this qualification and had a couple of travel articles published. For the next year he fell into Scuba Dive Instructing and then went back to Computers. Ten years on Benjamin is still a IT specialist in software with a degree in Technology majoring in Information Systems. However having worked for several different types of organisations of different sizes it taught Benjamin what he really wanted out of his career – having always been quite independent and concerned for the environment and people's health, the emergence of 'Green IT' was the break he needed to start his own business, Green Earth IT.

Date: 12th Sept 2009 (Saturday) 5-6 PM (Sydney time) [Time in your location?]

How to Join:

or

Regards,
Colt

Posted by Colt | 1 comment(s)
Filed under:

Name variable meaningfully all the times

I'm rushing for a SharePoint POC before my vacation next week, and what I have to do is a standard scenario by creating a grid listing items from a custom list, then users click on the first column and redirected to an edit form. I wanted to complete this task as soon as possible but turn out I spend more time than usual.

No item exists at http://SERVER/SITE/mypage.aspx?ID=1. It may have been deleted or renamed by another user.

OK, I admit that I don't want to work this weekend, and I google that there's a well explained article on the support site and importantly -> Always name your variable or method a meaningful name not only (in addition to readibility and supportability reasons. :)

Posted by Colt | with no comments
Filed under:

Four handy utilities in my day job

Just want to highlight four very useful utilites that I use everyday and one important advantage is that all of the tools are very small, handy and able to store and run in my thumb drive.

  1. FastStone Capture - Capture screen shot and video easily (good for documentation and webcast)
  2. ZoomIt - Zoom in / out and highlight anything on screen (good for presentation and meeting)
  3. BgInfo - Display computer information on background (good for demo and development in virtual machine)
  4. VNC Viewer - Remote control computer, even behind firewall (good for remote assistance and support)

Regards,
Colt

Posted by Colt | 1 comment(s)
Filed under:

Best Practices Webcast by INETA APAC

INETA APAC had conducted two webcasts in the last two months, the topics are:

  1. Presenting at large events such as TechEd (by Greg Low)
  2. Sustainability and Green IT Overview (by Alan Dayeh)

 The first webcast is all about presentation skill and common tips & tricks when delivering a large event/conference. It have lots of great tips by an experienced TechEd presenter - Greg. The second one cover the overview of the hottest topic - Green IT and Alan share some information about corporate responsbility and sustainability issues. Both are very informative and relevant to our daily operation and life. You can download and view the recorded sessions at the links above, and may I suggest you to bookmark this link so as to keep track of our series of Best Practice webcasts organized by INETA APAC?

FYI, INETA APAC will have a series of Best Practice webcast scheduled and the next topic will be: Green IT and Client Computing (Wednesday 19th August or Friday 21st August, 5-6pm Sydney time tentatively).

BTW, you can subscribe to our INETA APAC blog or join our group on Facebook and stay connected:

Regards,
Colt

Posted by Colt | with no comments
Filed under:

PowerShell Script with ASP.NET and Console Application

I have two projects that need to incorporate Windows PowerShell, Exchange Management Shell and ActiveRoles Management Shell for AD (by Quest) in a ASP.NET and a Console Application recently, so I started to look for information about PowerShell scripting with .NET and below are two important articles in my opinion:

  1. HOWTO: Using PowerShell in ASP.NET (.NET Framework 2.0)

The first article explains the most challenging issues in hosting PowerShell scripting with ASP.NET - Security context and permission and describe three common optioins. The second article describes the logic and tips in writing PowerShell in .NET managed code application.

I wrote a small class to execute the PowerShell script, by passing in various script text on the fly. Below is a small code snippet:

  private const string PS_SNAP_IN_MICROSOFT = "Microsoft.Exchange.Management.PowerShell.Admin";
  private const string PS_SNAP_IN_QUEST = "Quest.ActiveRoles.AdManagement";

            RunspaceConfiguration rsConfig = RunspaceConfiguration.Create();
            PSSnapInException snapInException = null;
            rsConfig.AddPSSnapIn(PS_SNAP_IN_MICROSOFT, out snapInException); // Add Exchange Mgmt SnapIn
            rsConfig.AddPSSnapIn(PS_SNAP_IN_QUEST, out snapInException);  // Add Quest Mgmt SnapIn
           
            Runspace myRunspace = RunspaceFactory.CreateRunspace(rsConfig);
            myRunspace.Open();

            Pipeline pipeLine = myRunspace.CreatePipeline();
            pipeLine.Commands.AddScript(scriptText);  // Pass in the script text on the fly
            pipeLine.Commands.Add("Out-String"); 

            Collection<PSObject> cmdResults = pipeLine.Invoke();

            myRunspace.Close();

After preparing these PowerShell scripting in .NET app, I'd suggest to stick with PowerShell because it's handy and flexible. I'd prefer it over DirectoryServices or CDOEXM commands. :) Read the useful articles mentioned above in sequence then you are ready to start coding!

Regards,
Colt

Posted by Colt | 4 comment(s)
Filed under: ,

Data Refresh Failed in Excel Services

I prepared a SharePoint Report Center portal by using SharePoint 2007 recently, but I was unable to refresh the Excel workbook on my portal and got an error message:

Unable to retrieve external data for the following connections:

Connection_Name

The data sources may be unreachable, may not be responding, or may have denied you access. Verify that data refresh is enabled for the trusted file location and that the workbook data authentication is correctly set.

I'm sure my data connection and document library are trusted and I can view the workbook without problem. Here is my detailed situation:

  • Enable Excel services and workbook refresh functionality
  • Upload an Excel workbook to a document library
  • Add a Excel services webpart and point to the newly uploaded workbook
  • Excel workbook render correctly
  • BUT, an error occur if I click "Refresh" button on the top menu

Thanks to my friend Qifeng, he told me that it's related to security restriction and execute three commands. Finally it works:

  1. stsadm -o set-ecssecurity -accessmodel delegation -ssp sspname
  2. stsadm -o execadmsvcjobs
  3. iisreset
Posted by Colt | 2 comment(s)
Filed under:

ASP.NET MVP Award and MVC

I still don't have a chance to blog about my personal achievement recently - I got my MVP status renewed on Oct 1! Yes, it's a great news for myself and I enjoyed it so much since 2001.

BTW, I'm very happy to meet few friends this week, including Greg Low and Phil Haack. Greg is a SQL expert and I knew him for years in the space of INETA and online community personally. Phil is obviously a star and I really enjoy his presentation about introducing MVC at local TechEd today (even the session is around level 100-200 though)

(Phil, if you're reading this post, please don't code in front of the audience but simply insert code from snippet next time ;) just kidding)

Posted by Colt | 2 comment(s)
Filed under: ,

Activate SharePoint Publishing Infrastructure Feature Failed

In a recent deployment of a SharePoint site, I have to add a Content Query Web Part (CQWP) so what I need to do is to activate the SharePoint Publishing feature. However, I cannot do it because of an "access denied" error that I got whenever I activate the SharePoint Publishing Infrastructure feature at the top-level site.

This kind of issu is not new for me, and I quickly change the AppPool account after a little googling. However, I got another error of "value does not fall within the expected range" despite I made such tweak and execute the STSADM command manually. So finally, I have to re-create the site by using the administrative AppPool, restore the contents and templates and then change the AppPool account to a more restrictive one according to the best practice.. <sigh>

Posted by Colt | 1 comment(s)
Filed under:
More Posts Next page »