To read my PDC Day 1 recap, click here.

Ray Ozzie once again kicked off the keynotes for the day.  Today, the focus was on the client and the Live Services component of the Windows Azure platform.  In his opening remarks, Ozzie further solidified our story around the integration of the PC/Web/Phone and how our strategy will fundamentally change how we as consumers interact with these devices and that consumers demands for this type of integration is growing.  Our approach is to seamlessly integrate our S+S platform across these devices, exploiting the power of the PC through our investments in Windows and client runtimes such as Windows Presentation Foundation (WPF), the power of the web through our investments in Silverlight 2 and Internet Explorer 8, and the power of the mobile device (e.g. Phone) through our investments in Windows Mobile and our Windows Live Services.  In his commentary, he basically broke down the 3 aforementioned areas as follows:
 
PC

  • Full and high-performance access to displays & peripherals
  • Natural UI & common controls for ink voice/audio, camera, touch
  • Local data privacy, portability, reliable/fast/full access
  • Use & recombine applications, data, documents, media
  • A personal environment, trusted & assumed under your control

Web

  • One common way to find, access, assemble & interact with people
  • One common way to find, access, share & transact information
  • One common way to connect devices, services, organizations & activities

Phone

  • Like the PC, provide a natural UI & common controls for voice/audio, camera, touch
  • Like the PC, provide facilities for local data privacy, portability, and reliable/fast/full access to data
  • Like the PC, use & recombine applications, data, documents and media
  • Provide a secure and reliable experience
  • Provide rich access to media/data through similar facilities afforded by the PC and Web "tiers"

KEY TAKEAWAY: Microsoft's Software + Services strategy includes driving rich user experiences across multiple mediums highlighting the strategic advantage afforded to us through the Internet.  Our client runtimes such as Silverlight and WPF, coupled with our Windows brand (to include mobile) and key advances in our Internet Explorer technology will position us to deliver the next generation of user experiences on top of our investments in our Windows Azure Services Platform.
 
Windows 7 is Coming!
A lot of emphasis was put on Windows 7, as it was one of the main things PDC attendees wanted to see.  Most of the other topics discussed during the keynotes were further fleshed out during the breakout sessions, but I'll provide some commentary about those in this post.  Steve Sinofsky, Senior VP, Windows division discussed our strategy around Windows and it's future as it relates to delivering next generation experiences.  During his keynote, Sinofsky laid out our strategy around Windows 7 as it relates to what investments we're making in the OS to build upon the platform established by Windows Vista, learning from the mistakes we made with Vista (and yes, he openly said we made mistakes :-)) while at the same time building upon the groundbreaking work we've done in the area of Windows security, to deliver a product that we'll be proud to sell and our customers will be proud to use.  In his "Transition from Windows Vista" discussion, he highlighted several lessons learned from our Vista experience:

  1. Ship solid Windows Server 2008 and Windows Vista SP1 products - With the negative press we got from the initial launch of Windows Vista, it was imperative that we shipped a solid Windows Server 2008 product and SP1 update to Windows Vista.  In reference to Vista SP1, we needed to ensure that we addressed the key issues highlighted by our customer feedback in efforts to drive broader adoption of Vista (and not just on new PC sales)
  2. Ecosystem Readiness - Driving Vista readiness was a key area during the launch lifecycle where we needed to spend more energy.  Through working with our partners, ISVs, OEMs, we need to ensure that they are equipped with the information they need in order to make Vista the platform of choice for new deployments, highlighting the enhanced capabilities of the OS, and showing clear evidence of the value add for customers making the investment
  3. Standards - Our investment in standards support as it relates to security, network protocols, etc has positioned us as a leader in driving industry standardization around the aforementioned areas in addition to new capabilities we introduce in future versions of the OS
  4. Compatibility - Working closely with our OEMs to drive more hardware compatibility with Vista is key.  Microsoft is making significant investments in this arena, particularly as we drive towards the RTM of Windows 7, to ensure that customers have the best possible experience with Windows 7
  5. Scenarios - Clear identification/clarification of Windows usage scenarios is key for us in improving the overall quality of the product.  We are taking very proactive measures to learn how the product is being used and what critical areas we need to focus on to deliver the best possible experience

Julie Larson-Green gave the PDC audience a demonstration of the Windows 7 (build 6933) and it was met with much applause and "ooohs and aaahs" :-)  To quickly summarize the things she demoed/discussed:

  • "One click" experience when navigating Windows taskbar and menus.  For example, if you have multiple instances of an application (say Internet Explorer) open on your desktop, by hovering over the any of the windows in the taskbar, you get a thumbnail view of all the instances, thereby allowing you to select whichever instance you want from a single mouse click
  • Taskbar "Jump List" which essentially gives you an MRU list of the most recently launched applications & documents.  For example, if you have an Excel icon in your taskbar that you use to launch Excel, by hovering over the icon you can see a MRU list of Excel workbooks you've opened.  This capability extends to the Windows menu as well.
  • "Libraries" which help you aggregate and search content across multiple hard drives and machines connected within your network
  • "Homegroups", which gives you the ability to creates groups of Windows 7-based machines or other computing resources (ex: printers) within your home network and when your machine is connected, have any one of those machines automatically discover/connect to those resources.
  • Ability for Windows 7 to automatically detect whether you are on your home or work network and automatically change your connection to network resources (such as printers) without you having to do any manual configuration :-)
    Docable windows which essentially allows you to drag an application window to the left/top/right side of the screen and have it dock (or "snap") to that location.
  • Windows Gadgets, which now work differently.  No more dependency of the Windows Gadget Sidebar.  Gadgets now float freely on the desktop
  • Enhancements to the task tray that essentially allow you to organize what goes into the task tray (and not have it "dictated" to you by the installed application/driver/service)
  • Windows 7 touch features extend to Windows Live Services such as Virtual Earth

Sinofsky stressed our focus on "Fundamentals" in our engineering efforts as we drive towards the RTM of Windows 7.  In his fundamentals discussion, he focused on the following:
 
Decrease

  • Memory Footprint
  • Disk I/O
  • Power Consumption

Increase

  • Speed (Faster Boot, Device Ready)
  • Responsiveness (Start menu, Taskbar)
  • Scale (256 processors)  - Yes, you read it right, Windows 7 is being positioned to support up to 256 processors)

It is important to understand though that Windows 7 shouldn't discount the benefits of moving to Windows Viata.  This essentially goes without saying, but opting Windows Vista positions enterprises to more easily migrate to Windows 7 when it becomes available.  Windows 7 is going to present some very compelling features that may have folks thinking they should wait, however, it's key that Microsoft wil continue to drive Windows Vista as the base platform to build upon.  Sinofsky made it evident in his keynote that we're still committed to Windows Vista.
 
What about Windows XP?
We will continue to push out updates to Windows XP for our XP customers.  It is important though to get them moving towards Windows Vista.
 
Developer Platform
Scott Guthrie came on stage and talked about our investments in our client runtimes (e.g. Silverlight, WPF) as well as our enhancements in Internet Explorer and IIS7, and our web development platform (e.g. ASP.NET, ASP.NET AJAX, ASP.NET MVC, ASP.NET Dynamic Data) as well as laid some groundwork for where our future investments are as we evolve these platforms/technologies.
 
Windows Live Services
David Treadwell rounded out the keynote to talk about our investment in the Live Services component of the Windows Azure platform.  He discussed the Windows Live Essentials offering (currently in beta and available for download at http://download.live.com/) which provides capabilities like email, blogging, messaging, photos, etc. In addition Treadwell talked about the rich integration of Windows Live Platform with Windows 7 and how key Windows Live capabilities will be a natural part of the Windows 7.
 
Announcements

  • Windows Live Framework - Provides a developer framework for building applications on the Live Services platform.
  • Office Web Applications - Web-based equivalents of the Office client applications (Word, Excel, PowerPoint and OneNote) During the keynotes, the Group PM of Office demonstrated the Office Web Applications.  This provides a solid platform for delivering web-enabled versions of our popular office suite that BLOWS THE DOORS off the competition.

IMPORTANT NOTE: As it relates to Office Web Applications, this should NOT be viewed as a replacement for the client suite.  As a matter of fact, the web applications should be viewed as complementary and a part of of the Microsoft S+S strategy.  It is important that this not be positioned as an alternative, but as a solution to further extend the reach of Office. 

The day was filled with great breakout sessions that covered the following products/technologies:

Resources

  • Engineering Windows 7 Blog - Great blog that gives a "behind the scenes" view, from the perspectives of the product team themselves, on how Windows 7 is being built
  • Windows Azure Portal - Provides information on the Windows Azure platform as well as it's sub-components (ex: Live Services)

That's about all I have for now :-)  Hope it's useful.

A lot of exciting things came out of day #1 at the PDC.  I’m sure you’ve already started to see/hear about the great technology that we are unveiling.  During the keynote, I saw laptops being pulled out and I’m quite sure there are tons of blogging going on in the blogosphere

Today, Ray Ozzie kicked off the 2008 PDC with a keynote that basically laid the foundation of our software plus services strategy and highlighted the key investments we've been making over the last few years in bringing our cloud platform to fruition.  In his talk, he focused on the landscape as we see it in 3 tiers:

  • Experience Tier – The experience tier focuses on the end-user and their user experiences with the desktop/mobile device
  • Enterprise Tier – The enterprise tier focuses on people interaction with enterprise systems and system-to-system interaction within the enterprise
  • Web Tier – The web tier focuses on leveraging the web as the backbone for next generation computing.  Our cloud computing initiative is focused on leveraging the web through providing scalable hosting services for applications services.

Windows Strata becomes Windows Azure

During the keynote, Ray made the "formal" announcement of the name of our new cloud platform.  For those of you who knew this as codename "Windows Strata", the platform has now been officially branded as Windows Azure.

 

 

Windows Azure provides a hypervisor-based model for providing secure and scalable hosting services.  It separates the application/service being hosted from the underlying operating system.  It is also important to note that Azure is not only for managing server infrastructure, but also web services as well and provides an end-to-end approach for accomplishing this.  At the heart of Azure is a "Fabric controller" which dynamically manages resources within the data center to preserve the health of services/applications that are deployed to the Azure Platform.

Windows Azure will provide support for both managed (.NET) and unmanaged code which essentially allows you to host non-.NET applications within this cloud fabric.  From a developer perspective, developers will be able to take advantage of this platform locally, through the Azure SDK and supporting tools for Visual Studio, that'll provide facilities to support the development/debugging of cloud-based applications.  Through a "publish" operation in Visual Studio, developers will be able to publish their solution to the Azure services Developer Portal.

The Azure Services Platform consists of the following platform technologies:

  • Windows Live Services
  • Microsoft .NET Services
  • Microsoft SQL Services
  • Microsoft SharePoint Services (this is not to be confused with WSS)
  • Microsoft Dynamics CRM Services

The Azure platform should also not be confused as a replacement of our one-premise offerings, but rather a complementary, cloud-based equivalent.  our on-premise offerings as a part of our strategy include:

  • SQL Server 2008
  • BizTalk Server
  • SharePoint Server
  • Dynamics CRM
  • Windows Server
  • Systems Center

The platform will provide capabilities that allow developers to model the services deployed on the platform.  Service modeling consists of:

  • Roles and Groups (e.g. who has access to the services that are being published and what operations/actions they can perform
  • Channels and Endpoints (e.g. defining how the services will be exposed and over what transport protocols)
  • Interfaces
  • Configuration Settings

During the keynote, there were partner demonstrations of solutions that are already taking advantage of the Azure Services Platform.  Jonathan Greensted, CEO of Sentient, gave a demonstration of a solution that his company has been working on called, Bluehoo.com (http://m.bluehoo.com) that integrates cloud-based services with mobile devices.  You can download and starting playing with the solution from http://m.bluehoo.com.  In addition, Shawn Davison, VP of RedPrairie, a Supply-chain manufacturing solutions firm, demoed a "one button" product recall orchestration running on Windows Azure and leveraging .NET services like workflow.

Bob Muglia came on stage and discussed our roadmap leading into 2009+.  He focused on the theme of the "5th generation computing".  In his discussion, he highlighted where we've been and where we're going

  • 1970s - Monolithic
  • 1980s - Client-server
  • 1990s - Web
  • Today - SOA
  • 2009+ - Services

Bob’s “evolutionary” discussion provided additional context to what Ray covered in his keynote and further solidified our messaging around the Windows Azure platform and the investments that we’ll be making from now, until we ship.

What's in Microsoft .NET Services?
.NET Services (formerly known as BizTalk Services) are a set of Microsoft hosted, scalable, developer-oriented services that provide key building blocks upon which developers can create cloud-based or cloud-aware applications.  Essentially, it breaks down into the following 3 components:

  • A full end-to-end service bus solution – Makes it easy to connect disparate applications over the internet
  • Facilities that support Identity/Access Control – Provides an easy way to control web applications and services using standards-based identity providers, including enterprise directory services such as Active Directory and web-based identity stores such as Windows Live ID
  • Workflow Services – Provides a highly scalable host for running workflows in the cloud. 

What's in SQL Services?
SQL Data services extend the capabilities of SQL Server to the cloud as web-based services, which enable you to store your data in a highly-scalable and internet-facing distributed database service infrastructure.  It contains the following key components:

  • Database
  • Data Sync
  • Reporting
  • Data Mining
  • ETL
  • Reference Data

What about Microsoft Online?
Our Microsoft Online Strategy still remains intact and will take advantage of the new Windows Azure platform as it evolves.  The Microsoft Online platform is geared at addressing many customer challenges we've heard, including:

  • Best in class collaboration
  • Staying up-to-date with software versions/patches/updates
  • Lower, predictable costs
  • Scarce IT resources
  • High Security
  • High Availability

NOTE: It is important to note that the current version of Microsoft Online IS NOT built on the Windows Azure platform.  Over time, it will take advantage of our investments in Windows Azure.

Can customers host Windows Azure within their own data centers?
This question was asked several times within today’s breakout sessions.  The answer to this is that as the features/capabilities of Windows Azure evolve, we (Microsoft) will take a look at the capability stack and identify key features of Windows Azure and roll it into our enterprise server products.  There is still significant value within our enterprise server platform and overtime, those products will benefit from the rich investments being made in Windows Azure.

When are we going to ship Windows Azure?
Answer: When it’s ready. :-)  

Essentially, we’re targeting some time in calendar year 2009, however, we’re largely basing our release on when our customers think that it’s ready to be released, and not a moment sooner.  We will follow a similar process that we’ve followed with CTP services we’ve already released and will be doing frequent updates.  However, the final ship date was not disclosed.

Are there any resources available to learn more about Windows Azure?
You can find more information about the Azure Services Platform, including whitepapers, SDK and tool downloads, datasheets, and a link to sign-up for a test/dev account to the Windows Azure cloud platform at the Azure Services Platform website.

That about sums up day #1.  I hope you find this recap helpful.

Came across this blog post by Dare Obasanjo, PM on the Windows Live Team, about our approach to data center management where he highlights a paper written by Michael Isard of Microsoft Research, called Autopilot: Automatic Data Center Management, which describes the technology that Windows Live and Live Search uses to manage their web server farms. 

The paper provides a high-level overview of AutoPilot, while Dare’s post goes into more of its practical implementation.  Both are definitely worth reading :-)

I mentioned in a previous post the work I've been doing with the Library of Congress.  It has been a great effort and an excellent showcase of the power and flexibility of our platform.  On April 12th, we closed another chapter in this unprecendented effort by officially launching their myLOC.gov website.  The website has been architected and built on top of a platform consisting of SharePoint Server 2007, Silverlight, Windows Communication Foundation, and Windows Live ID.  The launch of the myLOC.gov site on this past Saturday marked the culmination of 9 months of work to deliver a compelling solution that's geared at reshaping how Americans view American History by literally bringing many of the historical treasures contained within the walls of the Library of Congress to life and allowing not only the American people, but the entire world to experience this great treasure.

The launch of the myLOC.gov website capped off a great week for the Library of Congress and Microsoft.  As a part of the revitalized digital experience, coined the "Library of Congress Experience", is also the launch of Windows Presentation Foundation (WPF)-based interactive touch screen kiosks that's running within the Library of Congress's Thomas Jefferson Building in DC.  There, US citizens, and people travelling to DC from around the world, will be able to enage within an immersive technology experience that allows people to interact with the Library's historical collections in new and exciting ways.  The myLOC.gov site takes this onsite experience and brings it to the web!

In the coming weeks, myself, in combination with our great partners, Portal Solutions and Schematic will be creating a "How We Did It" article (likely to be posted on the SharePoint Team Blog), in the same vein as the two-part article I published on another great effort with Conservation International, that'll dive deeper into the overall solution architecture and cover specifics around logical and physical architecture as well as discuss implementation details of key features and functionality.

So stay tuned!

Over the past year, I've had the opportunity to work on some really cool and unique projects.  I'm proud to add yet another project to my portfolio, which is the current work we're doing with the Library of Congress and the delivery of what they're calling their "New Visitors Experience", set to launch in the next month.  As the Microsoft Solutions Architect for this effort, I must say that to date we've produced some compelling solutions around Windows Presentation Foundation and Silverlight.  This work has been met with a tremendous amount of press but yet is only the tip of the iceberg of what's yet to come.  We've recently posted a video case study on our MIX website that highlights some of our efforts to date.  Stay tuned for more from this blog regarding the Library of Congress project and the really, really cool things we're doing around Silverlight, WPF, WCF, Windows Live and SharePoint Server 2007!

Microsoft Live Labs Volta Announced

Posted in .NET 3.0 | .NET 3.5 | Architecture | ASP.NET AJAX | Service Oriented Architecture (SOA) | Software+Services | Volta | Windows Live Services at Friday, December 07, 2007 7:46 AM Eastern Standard Time

Microsoft recently announced an experimental developer toolset for building multi-tier web applications using existing and familiar tools, techniques, and patterns, called Microsot Live Labs Volta.

Volta’s declarative tier-splitting enables developers to postpone architectural decisions about distribution until the last possible responsible moment. It enables new end-to-end profiling and testing for higher levels of application performance, robustness, and reliability. In effect, Volta extends the .NET platform to further enable the development of software+services applications, using existing and familiar tools and techniques.

You architect and build your application as a .NET client application, assigning the portions of the application that run on the server tier and client tier late in the development process. You can target either web browsers or the CLR as clients and Volta handles the complexities of tier-splitting. The compiler creates cross-browser JavaScript for the client tier, web services for the server tier, and all communication, serialization, synchronization, security, and other boilerplate code to tie the tiers together. In effect, Volta offers a best-effort experience in multiple environments without requiring tailoring of the application.

You can download a technology preview of Volta from the Live Labs website.

Video.Show: A Silverlight Reference-Quality Sample

Posted in .NET 3.5 | ASP.NET AJAX | LINQ | Microsoft Silverlight | Windows Live Services at Sunday, November 11, 2007 1:37 PM Eastern Standard Time

  

Tim Sneath introduces a new Silverlight sample developed by Vertigo Software (excerpt taken from his blog post)

"Video.Show is an end-to-end solution that provides a reference-quality sample for user-generated video content sites. Taking advantage of all of our latest technologies: .NET Framework 3.5, ASP.NET AJAX, LINQ, Silverlight, Expression Encoder and Silverlight Streaming, Video.Show provides support for uploading, encoding, tagging, viewing and commenting on videos. Since not many people are building video sites like YouTube that have millions of videos, we've optimized the experience for sites with tens to thousands of videos."

The source code for this reference sample has been posted to CodePlex.

One of the biggest challenges I feel that we (Microsoft) face in showcasing the "value" of architecting/developing Office Business Applications is providing what I'll call "solid reference implementations" along the lines of Duwamish Books, Fitch and Mather, Global Bank, LitwareHR, other many other solutions we've released.  Sure, we have the OBA Reference Architecture Packs (OBA RAPs), but, by definition, they are meant to serve as simple examples of how to leverage the OBA pattern to address a given business scenario.  However, where I think they are lacking is in providing sound guidance and implementation practices around many of the architectural and implementation challenges many organizations face today in trying to deliver business value to their users.  Many organizations today are asking questions like:

  • What are good practices for securing our OBA solution?
  • What are good practices for integrating with other Line-Of-Business (LOB) applications and how do we take advantage of other Microsoft integration technologies in order to accomplish this?
  • What are good practices for implementing other Microsoft platform technologies and services like Windows Live Services (Live ID, Virtual Earth, etc) and UX technologies like Microsoft Silverlight and WPF?  And, more importantly, WHEN should they be used?
  • What are good implementation strategies for building addressing scability and performance challenges in your solution design?
  • What are some common implementation patterns that allow for changes in business objectices and requirements and changes in technology?

and tons more.  So my question to you, dear reader, is what would you like to see in an OBA reference implementation?  Is something like Duwamish too much?  Are the OBA RAPs a step in the right direction?  This is an opportunity for you to be heard.

OBA Resources

A couple weeks ago I mentioned that I'd been working on the Office Business Application (OBA) Reference Architecture Pack for Public Sector, which focuses on providing prescriptive architecture guidance for building e-Forms solutions within Public Sector.  I've gotten numerous inquiries since that post as to when the bits would be available for download.  Well, I'm happy to announce that they are now available on our Connect website.  If you are new to Microsoft Connect, read the Microsoft Connect Introduction to learn how Microsoft Connect works and how to enroll.  Included in the download are hands-on-labs and a fully functional Virtual Machine that has all the necessary bits to run the solution.  Because the RAP is being bundled as a Virtual Machine image you will need either Virtual PC 2007 or Virtual Server 2005, which are both free, to run the solution.

Also be forewarned that the Virtual Machine is fairly large in size (weighing in at a ~31 GB), so please plan accordingly when you decide to download as it'll take a minute :-)

I welcome you to download the solution and give us some feedback on what you think.  This release marks the first phase of many exciting things that will come out of this RAP.  To get more information on what's going in Public Sector, you can visit the Public Sector Industry Center on MSDN.

 In the spirit of talking about the cool projects I've been working on as mentioned in a previous post I want to bring your attention to two new MOSS-powered websites that just launched, right at the eve of this year's Live Earth event (that's currently happening as I write this).  The customer's name is Conservation International and they've just re-launched their public internet web properties on Microsoft Office SharePoint Server 2007.  Today, marks the official day of Live Earth, a 24-hour, 7-continent concert series taking place on 7/7/07 that will bring together more than 100 music artists and 2 billion people to trigger a global movement to solve the climate crisis. Live Earth will reach this worldwide audience through an unprecedented global media architecture covering all media platforms - TV, radio, Internet and wireless channels.

MSN is one of the sponsors of Live Earth and has launched an official website in support of the event.  Conservation International serves as one of the major content providers for MSN's Live Earth website.  I've been working with this customer in migrating their existing web infrastructure, which was previously powered by two 3rd party content management solutions to Microsoft Office SharePoint Server 2007.  Working under a tight deadlines, we were able to successfully migrate their existing sites over to the SharePoint platform and this is a true testament of the power and flexibity SharePoint Server 2007 provides for establishing a robust internet web presence.  Also in the wake of the migration to SharePoint, we also found time to build a "real world" application, a web-based carbon calculator, using Microsoft Silverlight v1.1 and Microsoft Virtual Earth which is a true demonstration of the power and flexibility of the Silverlight platform in delivering compelling Rich Internet Applications (RIAs). 

In future posts, I'll go into more detail into how we built these websites, but in the mean time, hop on over to http://www.conservation.org/ and http://www.biodiversityhotspots.org/ and check out MOSS in action!  If you want to see the really slick Silverlight carbon calculator, hop on over to here

Wow, October 18, 2005?  That was the date of my last post!  Well certainly a lot has happened since then!  I've had brief "blog post cameos" on my team's blog at http://blogs.msdn.com/publicsector, but I think it's about time I get back to my roots and start posting.  For those of you who've followed my blog, even back when I was on DotnetJunkies.com, you know that I joined Microsoft back in 2005 as a Technology Architect at the Microsoft Technology Center.  During my time there, I've had the opportunity to architect some of the coolest solutions on our platform.  The desire to further evangelize our platform in delivering robust solutions has landed me as an Architect Evangelist within our Public Sector Developer & Platform Evangelism team where I now work with customers to help them realize the potential of our platform in delivering compelling solutions that tackle many of the business problems that plague organizations today.  Still staying true to my SharePoint roots, I've been doing a lot of work helping customers architect Office Business Applications in efforts to exploit the power and flexibility of the 2007 Office System platform for delivering compelling business solutions.  In addition, I've also been focusing on helping customer deliver solutions using our take on SaaS (Software as a Service) methodologies with our S+S (Software+Services) initiatives, improving the web user experience with technologies our recently introduced Silverlight platform, as well as continuing to build robust, SOA-enabled enterprise applications using .NET 3.0.

I've had the opportunity to do a number of cool things that I'll be blogging about and I promise to not go on such long "blog sabbaticals" again :-)

View Lamont Harrington's profile on LinkedIn

Microsoft Employee


Calendar

<November 2008>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

On this page...

Tags


Archives