Many times when we are developing the site structure, we are given the options of running different part of the site on either sub domain or sub folder. An example will be:
sub-domain – http://career.microsoft.com
sub-folder – http://www.microsoft.com/career/
As discussed in previous post, search engine view subdomain site as a different site so the work you have done on the sub domain does not directly affect the parent domain as they are viewed as a separate entity.
Thus, I will personally not recommend having a sub domain unless it’s absolutely necessary. I will rather have a sub-folder which basically still sits on your parent domain (http://yourdomain.com/myfolder) thus inherits and contributes to the overall pagerank of your site.
Furthermore, forums and blogging engine these days help to generate a lot more content on your site and you want those content to contribute to your parent site so that you site will appear in the search result page (SERP) of more keywords. (e.g. of your visitor starts talking about “Zune” and generate enough content on Zune, you want your site to appear in the SERP when people search for Zune. However, if we are using sub-domain, only your sub-domain will appear in the SERP and your parent site will not be shown.
Also, search engine algorithms will usually not return all the sub-domain of your site as there is a “two-page limit” for SERP result (thou not always… but it’s a lot harder for you to get more than 2 listings on the same SERP page unless all your subdomain is highly relevant to the keyword).
In conclusion, I will strongly encourage site owner to make use of sub-folders whenever possible. They should only consider a sub-domain if the sub-domain is serves a totally different purpose from the parent site and significant SEO investment into the new site is available as launching a sub-domain is similar to launching a brand new site from scratch. 
In SEO, one of the main thing to perform before any activity is to do keyword analysis. Keyword analysis will determine the route you take for future SEO actions and also how you model the type of content you want to publish on your website. The first question a person has to ask himself when doing keyword analysis is:
“What sort of keyword do I visualize someone who doesn’t know of my site typed into search engine and I want them to see my site appearing in the search result page?”
In general, there are a few category of keyword. We shall name them big, small and medium sized keyword. For our case study, we will choose a website such as MIX09 which is a Microsoft event for designers and web developers.
If you are the site owner of MIX09, you will want to do some brainstorming with your team to identify potential keywords which may be related to your site. You can use tools such as mind-maps to identify those potential keyword.
| Big Keyword | Medium Sized Keyword | Small Keyword |
- Designer
- Microsoft
- Web
- Internet
- Technology
- ….
| - Web Designer
- Internet design
- Microsoft Expression
- …
| - Microsoft Web Designer
- Microsoft Expression Web
- Web 2.0 Design
- Windows Presentation Platform
- AJAX designer web
- …
|
As you can gather from this,
Big Keywords: Generic keyword that most people will search. Such keyword will tend to receive the most amount of traffic and are the hardest to be ranked. They are usually short in length and a lot of your competitors are probably targeting the same keyword. However, these are keyword that are most important.
Medium Sized Keyword: These keyword are an extension of big keywords. They may contain parts of a big keyword + <something else> or they can be a mixture of 2 or more big keyword. They receive moderate amount of traffic and they are most likely targeted by your close competitor so it’s fairly easy to get onto the top ranking of such keyword.
Small Keyword: For small keyword, they are pretty specific keyword that is only relevant to your site. These set of keyword usually gets the least amount of traffic and people who do searches using this type of keyword probably knows what they are searching for.
To generate the list, it will be good to involve as many people as possible even if they are not on your team. It’ll be even better if you have the consumer of your product brainstorm with you on keywords as they have the best knowledge in the type of keyword they use to search your site. Once you are done with the site, you can make use of search engine tools such in the various webmaster center to see the traffic generated from those keyword. Most search engine do provide some data on the trends of the keyword. Simple modification to your keyword will sometime makes a huge difference such as “sport” and “sports”. (Sports received more than 10 times more traffic than Sport in certain countries).
Once you keyword list is out, you start implementing simple SEO changes to your site. You should try as much as possible to capture the traffic from big keyword as they are the main crowd puller and allow potential visitors who doesn’t have knowledge of your site to visit your site because they are searching on the terms you are targeting. That being said, it’s very important to track your Search Engine Result Page (SERP) ranking over a period of time to see if they improves after you implement some SEO fixes to your site. That is being discussed on this post: http://cloudfex.com/cs/blogs/cloud/archive/2009/03/30/start-with-seo-in-mind-to-get-more-traffic-to-your-blog.aspx 
Follow up to the blog post I’ve made here: http://cloudfex.com/cs/blogs/cloud/archive/2009/03/30/start-with-seo-in-mind-to-get-more-traffic-to-your-blog.aspx
The blog is started on the 19th March and I’ve been tracking the progress closely for the past 2 weeks. On 24th March, I ran a campaign reaching out to about 200-300 students. Before the campaign, I am getting pretty low traffic especially in terms of unique hit (in most cases, it’s single digit).
The action item of my campaign is for people to click a link in an email which will bring them to my blog – hoping that those people will return to the blog after the initial visit for more content.
After the spike across 3 days when I get near to 500 unique hits, traffic dropped significantly to an average of around 40-50 unique per day with average of around 70-80 page view. I observed that:
- The campaign “primary” action of referring people to the site should be completed by March 27 (3 days after I sent out) as I am very sure students checked their mailbox at least once during the 3 days period
- Thus, it implies that majority of the traffic after that is derived from other sources excluding the campaign
- Comparing pre-campaign to post-campaign period, traffic and unique increased significantly
- It remains in growth trend after gapping up from pre-campaign to post-campaign
This is an interesting finding that running small campaigns over and over again in intervals will not only help boost your traffic (the spike) but will also bring you more visitors in the long run. However, it is important to note that I’ve been posting to my blog very regularly over these period and has started a small exercise on link-building. 
Recently, I started a blog at (http://cloudfex.com) to blog on topics like Windows Azure, Cloud Computing, .NET and any interesting technology news I receive in my mailbox. Before setting off to start this blog, I wanted to make sure I started off with search engine optimization (SEO) in mind so I don’t have to reinvent the wheel a few months down the road. Doing it right the first time will give you more benefit as SEO is a time-driven process (your site benefit more when you do it earlier).
I started the blog about 10 days ago on 19th March and here’s how I start my SEO planning (I’m just using simple SEO tips/tricks):
1. Determine the topic that I want to talk about and write down a list of them
It is important that we identify keyword that we wish to target. An example of keyword is what do you visualize your visitor will search on the search engine (SE) when trying to locate your site. This is also the same set of keyword you use to track your SEO progress (in this case, trying to be listed and climbing up the SERP (search engine result page).
In my case, the keyword I’ve selected are “Windows Azure”, “Cloud”, “Technology”, “Yizhe”
2. Start to select a good domain name. Your domain name has a strong significant on the type of content that exist on the site thus the search engine placed a huge emphasis on this area. For example, if you want to talk about sports, it’s best to have sports being part of your domain name (e.g. mysportsite.com, sports.com). If you are unable to get a domain with the keyword in it, you can also use it as a subdomain (sports.mysite.com)
3. Once you have your domain, you can start to install your own blogging software. I will skip the installation instruction but if you need information about installing Community Server on Windows 2008: http://cloudfex.com/cs/blogs/cloud/archive/2009/03/23/installing-community-server-on-windows-server-2008.aspx.
4. After installing it, it’s time to do some simple SEO on your site page. Firstly, choose a good title for your blog pages. In most blogging software, you can specify the following properties of your site:
- Title
- Meta Description
- Meta Keyword
- H1
These 4 properties are extremely important when the search engine crawlers search your site and try to figure out what content exist on it. When finding the content for the 4 properties, it is important to make use of keyword placement. For example, my blog site have the following:
Title:
Since I am targeting Windows Azure as my primary keyword, I have to make sure it is shown prominently on the title page of my landing page at (http://cloudfex.com)
I’ve also selected the following meta description:
Meta-Description is extremely important as it will be shown on the SERP and it should be a call-to-action statement to entice visitors to click on it. Your target keyword should also be in the meta-description as it is weighted heavily by the search engine.
Meta-Keyword are a set of keywords that search crawlers will identify and associate your site with those keyword. However, it isn’t being weighted heavily these days as most crawler will ignore this. But nevertheless, there’s no harm including it.
Lastly, do include your keyword in your H1 tag as the crawler will make use of H1 to find the topic that is being discussed on the page. In my case, this is my H1:
Once all of these is completed, it’s time to load up content onto the site. I’ll discuss this further in my subsequent post but here’s the 3 core tips that everyone should keep in mind.
1. The content is the only reason why your visitor is visiting your site. No amount of SEO can help your site if the content you write is not relevant to your target visitor group. Write good content and you will be rest assured that people will come to your site.
2. Try to get the crawler to reach your site.
To do so, the easiest way is to submit your site directly to the search engine.
http://search.live.com/docs/submit.aspx
http://www.google.com/submityourcontent/index.html
Another interesting way to get your site crawler is to start asking your friends (especially those who owns blog that is very popular) to start linking to your site. Crawlers usually crawl sites that are popular more frequently thus the crawler will be directed to your site from your friend’s popular site. If you happen to own other website, do put links to your site too.
Furthermore, popular and reputable sites who provide you with in-bound links will help boost your ranking of your domain as search engines trust those site to link to reputable site too.
3. Submit your site to feedburner or blog aggregation site.
This is an important step as you will get a lot more viewership from those site. Keep your topic attractive and exciting so that people will click your URL. Blog regularly and start to build up your loyal friend. It is also important to ensure that things you blog have a follow up action such as revisiting your site later for updated news so that people will keep coming back.
For my experiment, I’ve managed to boost my ranking of my site [with my keyword] to the top ranking SERP result on search engine within a week with an average of 150-200 pages view and 50+ unique per day.
I’ll blog more about page specific SEO in the next post. Happy SEO-ing! 
For those who are interested to learn more about Search Engine Optimization from a web developer perspective, MIX09 has a session on that which you can download now at :
T86M Search Engine Optimization (SEO) for Web Developers (Thomas Deml) WMV WMV (High) Zune 
Want to learn more about SEO and news related to search and web technologies as a whole? Check out my technical blog: http://www.cloudfex.com which I am using to post technical guide on how to boost your SEO ranking on your web asset and other cool technologies like Windows Azure. 
Location aware applications are great! But then… there is a scary side. One of our interns in the Singapore MIC sent me a great article in Wired.
http://www.wired.com/gadgets/wireless/magazine/17-02/lp_guineapig?currentPage=1
We are working on a number of local innovation projects on LBS (the enabler of location enabled apps)… it will be interesting if we these concerns in the article will ever show up here in Southeast Asia.
The folks from BzzAgent (an agency focused on word of mouth marketing) released a really interesting e-book about word of mouth. This book gives some great examples of it but does not go much into the “how to” except maybe to hire them. None the less, a very interesting read.
http://s3.amazonaws.com/bzzagent/The_Word_of_Mouth_Manual_Volume_II.pdf 
We get a lot of ISOs (typically through MSDN) and getting them on DVD/CD is a painful process given all the reinstalls I do on my machine. Recently found a great (and FREE) tool to burn ISO images. AND IT WORKS WITH WINDOWS 7. Yeah!
http://isorecorder.alexfeinman.com/isorecorder.htm
We love you Alex Feinman.
I’ve been working with the interns in our Microsoft Innovation Center (Singapore) on some cool Windows Mobile demos. One of the biggies we encounter is how aggressive Windows Mobile manages power. Not a bad thing for end users wanting to use their phone for days w/o charging… bad for proof of concept demos.
Well, turns out writing power efficient code is not hard. You need to first understand how WM PM works.
http://brianpeek.com/blog/archive/2008/07/03/windows-mobile-devices-and-power-states.aspx
A guy named Joel Ivory Johnson even wrote up a few low level tools (exposed as managed code / .NET) to help normal people like us write power efficient code. Check out his articles below:
http://www.codeproject.com/KB/mobile/WiMoPower1.aspx
In the end, the approach we took to best handle power concerns is to schedule our app to do something at certain intervals. When the work is done, the app will shut down completely until the next run. Joel also have something for this via a low level CeRunAppAtTime call. Yes, he even provided a nice .NET managed wrapper.
http://www.codeproject.com/KB/mobile/WiMoAutostart.aspx
I love Windows Mobile as it took us no time what-so-ever to go from concept to proof. Also, the amount of resources (and smart people like Joel) on the web makes proofing concepts super easy.
Over the weekend, I receive a few questions about naming convention that will help improve SEO. Although correct naming doesn’t have too much of an impact in SEO, it does help in certain situation when the crawler needs to infer the content of your page.
Some tips and tricks:
- If you are using space, delimit it by using a – instead of a _; to a crawler,
this_is_a_page means “thisisapage” while this-is-a-page means “this is a page”
so whenever a crawler wants to match a keyword, you will want to have zune-music-player instead of zune_music_player
It is also advisable to give meaningful names to your pages or pictures, 12312inwf23.jpg doesn’t help tell what the picture is to a crawler but zune.jpg does help a lot.
That same advice applies to all other files that you want the crawler to crawl to (e.g. .mp3, .jpg,. html, etc)
In order for the crawler to know which page to crawl, the crawler will try to infer the site structure either using sitemap or simply crawling the links on the main page. You can generate a sitemap XML based on specification located at http://www.sitemaps.org/ from http://www.xml-sitemaps.com/
A short introduction of sitemap: (abstracted from http://www.sitemaps.org/)
What are Sitemaps?
Sitemaps are an easy way for webmasters to inform search engines about pages on their sites that are available for crawling. In its simplest form, a Sitemap is an XML file that lists URLs for a site along with additional metadata about each URL (when it was last updated, how often it usually changes, and how important it is, relative to other URLs in the site) so that search engines can more intelligently crawl the site.
Web crawlers usually discover pages from links within the site and from other sites. Sitemaps supplement this data to allow crawlers that support Sitemaps to pick up all URLs in the Sitemap and learn about those URLs using the associated metadata. Using the Sitemap protocol does not guarantee that web pages are included in search engines, but provides hints for web crawlers to do a better job of crawling your site.
http://www.xml-sitemaps.com/ is a site with a free tool to generate the sitemap.xml.
After generating the sitemap.xml document, you will need to inform the crawler of this change: (abstracted from http://www.sitemaps.org/)
Informing search engine crawlers
Once you have created the Sitemap file and placed it on your webserver, you need to inform the search engines that support this protocol of its location. You can do this by:
The search engines can then retrieve your Sitemap and make the URLs available to their crawlers.
Submitting your Sitemap via the search engine's submission interface
To submit your Sitemap directly to a search engine, which will enable you to receive status information and any processing errors, refer to each search engine's documentation.
Specifying the Sitemap location in your robots.txt file
You can specify the location of the Sitemap using a robots.txt file. To do this, simply add the following line:
Sitemap: <sitemap_location>
The <sitemap_location> should be the complete URL to the Sitemap, such as: http://www.example.com/sitemap.xml
This directive is independent of the user-agent line, so it doesn't matter where you place it in your file. If you have a Sitemap index file, you can include the location of just that file. You don't need to list each individual Sitemap listed in the index file.
You can specify more than one Sitemap file per robots.txt file.
Sitemap: <sitemap1_location>
Sitemap: <sitemap2_location>
Submitting your Sitemap via an HTTP request
To submit your Sitemap using an HTTP request (replace <searchengine_URL> with the URL provided by the search engine), issue your request to the following URL:
<searchengine_URL>/ping?sitemap=sitemap_url
For example, if your Sitemap is located at http://www.example.com/sitemap.gz, your URL will become:
<searchengine_URL>/ping?sitemap=http://www.example.com/sitemap.gz
URL encode everything after the /ping?sitemap=:
<searchengine_URL>/ping?sitemap=http%3A%2F%2Fwww.yoursite.com%2Fsitemap.gz
You can issue the HTTP request using wget, curl, or another mechanism of your choosing. A successful request will return an HTTP 200 response code; if you receive a different response, you should resubmit your request. The HTTP 200 response code only indicates that the search engine has received your Sitemap, not that the Sitemap itself or the URLs contained in it were valid. An easy way to do this is to set up an automated job to generate and submit Sitemaps on a regular basis.
Note: If you are providing a Sitemap index file, you only need to issue one HTTP request that includes the location of the Sitemap index file; you do not need to issue individual requests for each Sitemap listed in the index.

Hi everyone! My name is Yizhe and I’m taking care of SEO related activities in the MSN family for SEA. I’m very passionate in technology – coming from a developer background and live search is my latest love. My primary job scope is to produce SEO best practices and to help web companies make their website friendlier to search crawlers. I love hearing from you so if you are interested to know more, drop me an email and I’ll get back to you. You can reach me at v-yishenTAKEOUTATmicrosoft.com
Have you seen Photosynth from Microsoft Live Labs? Super cool. Honey made a quick “synth” of the Online Services Group – Southeast Asia office area.
Check out other cool photosynths (and even create YOUR OWN) here… http://photosynth.net/default.aspx
Drum roll please....
After many months of hard work, we would to introduce the people of Southeast Asia to our "WhereAmI" project (http://locationpinpoint.com). The goal of the project is to help facilitate location based services through FREE location-ing information. Think of it as a GPS device that works off of WiFi and/or cell tower data and doesn't need to be outdoors.
I won't go into too much technical details but essentially:
- Input = WiFi access points you hear around you AND/OR the cell towers you hear around you
- Output = an estimated longitude and latitude of where we think you are
Doesn't sound like much but this is currently the key "missing link" to build much cooler (and useful) services to service scenarios such as:
- Are my friends around me? If so, I'll give them a shout.
- I lost my phone but my phone will tell me where I left it.
- I want to find all the top rated restaurants around me but I'm not exactly sure where I am (or I don't know my exact address).
- I want to go home, which is the next bus that can take me there and where is the bus stop.
There are services like this here and there but they are all commercially executed (fees). We intended to provide this service to the people of Southeast Asia (SEA) FOR FREE!
Built by the people of Southeast Asia... for use by the people of Southeast Asia.
No, this service isn't a Microsoft offering but rather... something fun that we built on the weekends BY MANY OF YOU in the community (we have a few uni and poly students, a Singapore scholar and a few people at Microsoft).
The project has a few pieces:
- WhereAmI Service (the service you would use to query your location)
- Infrastructure (the gooey-goodness in the middle)
- Survey (the tools we use to survey the information which gets sent back to you when you use the service)
Here's a quick 2 min video on how it works and how it all comes together.
http://video.msn.com/video.aspx?vid=85238949-6807-47a9-b66b-c78427d41eb6
We're in the middle of an update from our test servers to something more robust to handle the public's load. Will put an announcement when the service is up (in about a week).
Coverage is currently Singapore but we're keen to grow the service. If you're in SEA and interested in offering this service to your region for free, we'll provide all the tools, equipment and infrastructure... all we need you to do is to help with the survey. Feel free to drop me a note. :)
More exciting stuff to share shortly. I'll also introduce the people who's hard-work is making this all possible.
Chewy (chewyc at microsoft dot com)
Head of Search - SEA