Welcome to MSDN Blogs Sign in | Join | Help

MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Allin Consulting, a Microsoft Gold Certified Partner in the U.S., recently implemented Glu Mobile’s website at www.glu.com. Glu Mobile is a leading publisher of mobile games and entertainment. Allin has been developing solutions around SharePoint and .NET since version “1.0” of both platforms. This is Part 1 in a three part series in which the Allin team (Shawn Parker, Robert Sweeney, Eric Hansen, Stefan Nilsson, and Karl Kuhnhausen) will describe how they architected and developed the glu.com website.
image

<Lawrence />

 

Overview

Shortly after the Glu Mobile website (www.glu.com) went live in late April, it attracted quite a bit of attention in the SharePoint community and at Microsoft. Microsoft invited us (the team at Allin Consulting) to write a “How We Did It” series of blog entries to provide some insights into how you can leverage MOSS 2007 to build a really cool looking, fast, and dynamic Internet facing website. Some people still don’t believe that we could develop such a rich, interactive user experience on SharePoint, so we kept the standard blue and orange “Site Actions” menu (for users who are logged in and have sufficient permissions) just to prove that it is indeed SharePoint underneath!
image 

Our series of blog entries will have the following three parts:

  • Part 1: Overview of the Solution - A survey of the solution with a focus on content targeting and multi-language capabilities
  • Part 2: Master Pages and User Controls – How we provide the rich user experience with our master pages and custom web parts
  • Part 3: Performance – Cache is King – How we optimized various features to get the site to perform to the expectations of a web audience

Business Needs and Solution

Glu needed to redesign and relaunch their website to drive increased revenue globally and to coincide with their upcoming IPO (talk about business criticality!). The previous site provided some marketing of their products, but they had limited ability to easily manage content and target and sell products to their growing community of customers. The previous site (screenshot below) was built in PHP and required developer intervention to publish content.
image

Glu looked to our team at Allin Consulting to develop their next generation “Glu 2.0” website as a dynamic, richly branded, commerce-enabled solution with efficient web content management. Their business model was to make available very quickly a targeted list of games that a user’s mobile phone carrier and device will support, encourage them to try the games online, and then easily buy and download any game to their device. Key features of the site included:

  • User profile management and personalization with targeted content and promotions in multiple languages
  • Modular components – content published as a set of functional modules; e.g. hot games, my games, new games, promotions, ad rotations
  • Search – enable users to quickly find popular games with full text search
  • SMS integration to quickly enable the sales and download of games
  • Distributed content management and publishing – non-technical regional content owners can manage their own content
  • User analytics for tracking browsing and purchasing behavior

Technical Approach

Our design philosophy from the start was to integrate the best of ASP.NET 2.0 and MOSS 2007 to implement a highly functional, manageable, and scalable site within a short amount of time. We were competing against open source LAMP-based (that would be Linux, Apache, MySQL, PHP/Perl/Python) CMS solutions in the bidding stage of the project, and MOSS 2007’s Web Content Management (WCM) and platform capabilities gave us a solid foundation to build upon. The entire solution took about 16 weeks to develop in time for the initial launch of the site.

All text and graphical content (except for the Flash-based trailers and game emulators – these are better streamed from media servers) are stored and managed in SharePoint lists and dynamically rendered via a set of 11 common pages with custom web parts. Management of the content is facilitated by the “Glu Content Manager,” which leverages SharePoint’s out-of-the-box WCM features. Without having to develop any custom WCM features, we were able to focus our efforts on functionality and user experience in the master pages, web parts, and a light custom framework to meet Glu’s business requirements. Here's a screenshot of the Game Genre Navigation Graphics in the Genre List.
image

Public vs. Publish

There are two sides of glu.com, each with a completely different purpose and user audience. The first is the public site with the rich graphics, streaming video game trailers, demo games, and SMS integration with mobile carriers for purchasing and downloading games. This site can serve hundreds of thousands of users around the world in multiple languages, and finding, trying and, buying games are the use cases. You can browse the games list and try any of the available games for a predefined time limit in an emulator to get a sense of the game play experience. Personalization is also critical for this audience. Based upon a user’s preferences of region, language, mobile carrier, and mobile device as well as a product’s popularity, the site automatically promotes relevant mobile games, ring-tones, or wallpaper. Since we are Allin (“all in”), this is our favorite game to play. :-)

The other side of glu.com is a secure environment that supports internal Glu employees, who are primarily content publishers. They manage all of the content, graphics and language variations of games, wallpapers, ring-tones, and product reviews as well as corporate information like press releases and job postings. What is most important to these users is efficient management and publishing of digital assets. The users manage and update all of the web content in this environment, and the changes are then pushed out to the public site.

Authentication

In order for the site to support both the public Internet users and the content publishers, we used two separate authentication providers. For internal content publishers, the standard Active Directory membership provider worked just fine, but we didn’t want to store any of the external users in AD, so we created our own custom authentication provider built on the ASP.NET 2.0 provider model, which MOSS, by way of WSS 3.0, readily supports. In fact, all external users remain anonymous as far as IIS and MOSS is concerned, even when they appear “logged-in” the site. This was adequate for our solution because external users did not require any standard MOSS membership features since we were providing a set of custom controls for personalization and content targeting.

Content Targeting

One of the most important aspects of the public view of the site was the ability to tailor the content on the pages to the individual user. To accomplish this, we allow each user to create a player profile with a username and password along with some basic information like mobile phone number, which is needed in order to purchase products over the website. In order to prevent spammer bots from auto-registering on the site, a CAPTCHA control was added as part of the user registration page (shown below).
image

As the user navigates through the site, product clicks are logged and used to display content for similar products back to the user. Even for those users who are not “logged-in,” their clicks are also tracked and are associated with a proxy profile that will be replaced with an actual profile if/when the user eventually registers. This helps to encourage users to register as the site focuses more and more on the types of products they have shown interest. The user will also be presented with teasers for new games, coming soon titles, and related titles as well as top games and hot games in the genre where they spend most of their time. All click tracking data is stored in an SQL Server 2005 database.

The entire public site was broken up into logical components that were built as custom ASP.NET 2.0 web part modules and then placed on SharePoint pages. We consciously did not develop SharePoint web parts as we did not need their added functionality (and weight) over the custom functionality we could build with the standard ASP.NET 2.0 web parts. Each module was coded to render SharePoint list content based on the type of page and on the country and region the user resides. If a web part is placed on a home page and the user logged in is in the United States, it will only display content that applies to U.S. customers sorted in the order of most popular games. That same web part placed on a genre (Casual, Classic, Sports, etc.) or product page will filter the content further to only show content of the active genre or genre of the product detailed in the product page. For example, Cricket and Football (Soccer) games are highlighted in the Sports genre if you select the U.K. as your preferred country (shown below).
image

Multi-Language Support

Glu had a critical business requirement for the website to support 10 languages used in 64 countries. Using MOSS’s variations feature where each variation site is based on the country code and the language code for the 11 common publishing pages we had built would have resulted in over 7,000 pages to support (e.g. 64 countries x 10 languages x 11 pages = 7040 total pages). This conflicted with our goal of providing the lowest possible number of common pages that would dynamically render content.

In order to reduce the number of total pages, we came up with a replacement site variation feature that supports geographic regions (North America, EMEA, etc.) and takes language completely out of the equation. By consolidating the 64 countries into 5 regions resulted in the reduction of total pages to just 55, which greatly simplified the localization effort and ongoing maintenance. Our custom variation engine gave us much more flexibility to pair any language with any country and then dynamically render the appropriate page. We still detect the browser’s country and language and redirect to the correct region site that covers the respective country, but through the user profile, the user is able to select any combination of the 64 countries and 10 languages.

Here's a screenshot of a localized page on which all of the content and controls have been localized.
image

The user can select the preferred language in the control, whose close-up view is shown below.
image

Summary

Since MOSS 2007 is built on top of WSS 3.0, which is built on top of ASP.NET 2.0, it provided us with the flexibility to create the custom solution that Glu needed to differentiate themselves in the marketplace. At the same time, we were able to rely on MOSS to provide all of the web content management capabilities that would have taken us months to develop. In Part 2 of this blog series, we will drill down on how we developed the rich user experience with master pages and custom web parts. If you have any questions at this point, please leave a comment here or e-mail us at glu-team@allincal.com.

 

The Glu.com Team at Allin Consulting

  • Shawn L. Parker - Solutions Architect
  • Robert Sweeney - Sr. Consultant
  • Eric Hansen - Project Manager
  • Stefan Nilsson – Practice Manager
  • Karl Kuhnhausen – Practice Director
Published Thursday, June 14, 2007 3:48 AM by sptblog

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Looking forward to Part 2 of this series!

Thursday, June 14, 2007 5:36 PM by Leef

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

I just tried it and the site appears to be down.  It's bouncing me to

http://www.glu.com/Pages/VariationRoot.aspx

And then I get a blank page.

:(

Thursday, June 14, 2007 10:11 PM by Allan

# Link Listing - June 14, 2007

TechEd Session: Deploying Smart Client Architectures [Via: brian@softinsight.com ] TechEd Session: WPF/Windows...

Thursday, June 14, 2007 11:32 PM by Christopher Steen

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Same here... site is broken, not good!

Saturday, June 16, 2007 12:30 PM by Aaron

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

this is not good. if MS want to show case Sharepoint, at least provide us with site that is not broken! it is not even slashdotted or digged. it make you question if sharepoint/iis6 is capable to handle large traffic.

Monday, June 18, 2007 4:16 AM by Jack

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

I'm having the same problem....

The redirect page is http://www.glu.com/Pages/VariationRoot.aspx... My guess is that it's a Culture problem, and the Netherlands isn't a valid culture...

Looks cool do! :-)

Monday, June 18, 2007 10:22 AM by Bryan van Rijn

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Thanks everyone for the feedback on the issues that you are experiencing with the site, it is greatly appreciated. We have investigated the issue, and while it only happens to a very small set of users, during specific circumstances, we want every user’s experience to be great. We have identified a fix, and it is currently going through our testing procedures before we launch it. Thanks again everyone for alerting us to this issue, it is truly great to see the SharePoint community responding so quickly.

-The Glu Development Team

Tuesday, June 19, 2007 9:20 PM by Glu Development Team

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Just a quick follow up re: the VariationRoot issues some were experiencing. As we investigated it turned out to be a configuration issue (DNS) that was overlooked during some production maintenance. Nothing to do with SharePoint, multi-language support or the implementation itself. Thanks for the feedback as it helped us to diagnose and correct the issue.

-The Glu Development Team

Thursday, June 21, 2007 12:43 AM by Glu Development Team

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Simple and good implementation of MOSS.

Its mentioned you developed a custom authentication which integrates with MOSS. How scalabale is that?

I am really looking forward for the 2nd part.

The site is working for me and looks cool :)

Friday, June 22, 2007 2:07 AM by Vinod

# Great Post on Creating Public Sites with SharePoint 2007

Here is a fantastic post on how to create a public website with SharePoint 2007. This does more than

Friday, June 22, 2007 7:05 AM by Technical Weblog of Eric Charran

# MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 2 of 3

This is a continuation of the guest blog series by Allin Consulting that started with Part 1 . &lt;Lawrence

Wednesday, June 27, 2007 7:58 PM by Microsoft SharePoint Products and Technologies Team Blog

# WSS 3.0 & MOSS: Recopilación de enlaces interesantes (II)

Siguiendo con la recopilación de recursos iniciada en un post previo , en la nueva entrega de recursos

Thursday, June 28, 2007 5:43 AM by Blog del CIIN

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

tried to view the site, but got blank page http://www.glu.com/Pages/VariationRoot.aspx.

Friday, June 29, 2007 11:15 AM by Julia

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

I am getting the blank page as well (from the US, in English).

Friday, June 29, 2007 1:21 PM by Mike Gil

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

All,

Thanks for your interest in the series. We are working on part three this weekend.

In order to resolve some of the earlier DNS issues the site experienced in the server farm, the IT team is conducting some DNS reconfiguration and testing that may result in a periodic display of the blank VariationRoot.aspx page. It should be ironed out by Friday afternoon US PST, but if you experience it, please shoot an email to glu-team@allincal.com. Thanks.

-Glu Development Team

Friday, June 29, 2007 7:33 PM by Karl Kuhnhausen

# SharePoint 2007 : Un Exemple de Customization

Entre la rédaction de deux articles, je voulais vous faire part d'un serie de post publiés sur le site

Monday, July 02, 2007 6:02 PM by Philippe Sentenac [Usual Coder]

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Hi all i'm from South Africa and also tried link, getting a blank page

Wednesday, July 04, 2007 11:02 AM by eugene

# MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 3 of 3

Welcome to the third and final entry in Allin Consulting’s guest blog series on how we built the Glu

# MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 3 of 3

Welcome to the third and final entry in Allin Consulting’s guest blog series on how we built the Glu

Thursday, July 19, 2007 8:47 AM by Noticias externas

# How to get over the "OOTB syndrome" for MOSS WCM

Body: I rarely rant, but in some cases I have very little choice. As it seems I had little choice but

Friday, July 27, 2007 2:12 PM by Mirrored Blogs

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Really cool ..

A good boost for Sharepoint to Internet space..

Thursday, August 09, 2007 3:09 PM by Atul nisar

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

Ive tried the link and works jes fine for me. glu.com that is. It looks cool! Cant believe MOSS 2007 produce such a cool website. Well, with experts to handle all the customization n all. way to go "ALLIN" team.

Cheers!!!!!!

Tuesday, August 14, 2007 5:32 PM by John John

# High Traffic MOSS site & WPF

Tuesday, January 29, 2008 7:29 PM by snowcounty

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

excellent development. keep it up. nice moss.

we are also planning to make a site like this but not as this good.

Friday, February 08, 2008 4:40 AM by sasi kanth paritala

# Exposing your MOSS WCM to Mobile Devices

Exposing your MOSS WCM to Mobile Devices

Tuesday, April 15, 2008 5:25 AM by Sharepoint Nirvana

# Contract Mobile Phone Deals

Great blog:

I really appreciate your blog about "MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3", i have bookmark it for later review and share with my all friends

visit in my site www.bestcontractmobiles.co.uk its offer latest mobile phones with cheap mobile phone deals on 12 months contract side by side lots of free gifts and best mobile offers with 12 months free line rental on best tariff plans.

Wednesday, August 06, 2008 9:58 AM by Nancy Hardey

# re: MOSS Has Got Game - Glu Mobile’s Website (www.glu.com) - How We Did It - Part 1 of 3

I have a few short queries on the blog. If you could kindly throw some

more light on these please:

1) What kind of functionality did you introduce in the Glu Application

Base objects from which you are inhereting your webparts and server

controls. Any infor/ links/ related resources please.

2) Caching - Are you like using HttpRuntime.Cache and datatables to

cache list data? Any kind of lead will really help.

3) Is your website running entirely on Webparts? Or are you using

Custom Types/ Field controls too? Please throw some light on multi

language implementation inside webparts

Thursday, August 21, 2008 12:52 AM by Dhiman

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
 
Page view tracker