Back to description
The world is addicted to the Internet. We use it for our work, our meetings, our fun, even for our health. Whether you’re... more
The world is addicted to the Internet. We use it for our work, our meetings, our fun, even for our health. Whether you’re a die-hard techie who relies on the information superhighway to run your business and make a living or the avid web surfer Googling your favorite movies and blogging to your heart’s content, the web is the undeniable driving force behind all things tech. Unlike the colder days of the late 1990s when websites were mostly trinkets to hype overpriced startups, today’s Internet is truly personal and interactive. It has become part of the fabric of our daily lives, and nobody knows this better than Microsoft. The reigning Redmond giant, whose past is firmly rooted in client software and operating systems, recognizes this seismic shift to web as an inevitable need for flexibility, creativity, and innovation. To answer these needs, Microsoft gives us Windows Live.
In this first chapter, we will cover the following areas:
Discuss some of the history of software development and the role Microsoft has played
Discuss the different ways that the Internet has changed both software development and the business of technology
Review the basic tenets of Windows Live
Consider the benefits of the Windows Live business model
Windows Live is many things. On the surface, it is a collection of websites offering interactive online services to people all over the world. They boast rich user experiences, mimicking the more traditional client application, while enabling the user to view and work with their information from anywhere. Rebranded from the previously named MSN services, Windows Live applications are a comprehensive set of user experiences that attempt to bridge the web divide through seamless, Internet-enabled tools and features.
Yet the Microsoft Live initiative is more than just a tight confederation of online services. It is also a new business model for consumers and developers of Microsoft software, offering streamlined branding features for business and direct channels of monetization for Microsoft developers. It’s a reorganized set of service-oriented API, enabling developers to quickly leverage powerful, online capabilities and combine those features into highly specialized applications. Live is also the next generation of some of Microsoft’s most popular existing software and services, such as Office and MSN Search. With so many different features and services, it’s no wonder so many people are having difficulty fully understanding just what it is that Microsoft is trying to accomplish. Despite the many different layers that compose Microsoft Live, its main purpose is clear and undeniable: to unite users on the web and provide them with the information they need.
... less
Before you begin developing with Windows Live services, you should take some time to familiarize yourself with the programming... more
Before you begin developing with Windows Live services, you should take some time to familiarize yourself with the programming landscape. Although the Windows Live APIs do not require Microsoft-specific programming skills, developers will need to have a strong grasp of widely used web standards and commonly used scripting techniques. In this chapter, we will do the following:
Discuss widely used web programming languages and techniques supported by Windows Live services
Review nonstandard tools and platforms that can catalyze the Live development process
Review each of the Windows Live services directly, pointing out the main features of each and how each can be automated and consumed
Each Windows Live service provides an API for automation. Though each service has the ability to integrate with one another... more
Each Windows Live service provides an API for automation. Though each service has the ability to integrate with one another, their individual interfaces support different patterns and technologies. In this chapter, I will:
Discuss each of the major Windows Live services and the tasks developers can perform with each
Review the API provided by each service
Review some of the emerging Windows Live services Microsoft will be releasing
Our journey into the world of Microsoft’s online services begins with Windows Live Search. Live Search is the evolution of... more
Our journey into the world of Microsoft’s online services begins with Windows Live Search. Live Search is the evolution of Microsoft’s first set of online services branded under the MSN moniker. It represents the hallmark of their development suite, providing a flush set of features that allow users to search the web in ways that were never before so simple. Although the concept of web searching is far from novel, today’s search engines are vastly superior to those of the late nineties. Powered by smarter, more powerful indexing algorithms and fortified with a great deal of time and financial investment, modern search engines have the ability to seek out and find information about content on the web that facilities a more useful categorization. Live Search is the culmination of these new technologies, and Microsoft offers that power to developers on all platforms.
In this chapter, we will:
Discuss the power of Live Search and its various capabilities
Explore the features in the Live Search interface
Explore the Live Search API and its various features
Create a Live Search Windows client using the SOAP API
Briefly review text-based search commands and query control
Create an AJAX powered web page with Live Search capabilities
No discussion of Windows Live would be complete without digging into Virtual Earth. Virtual Earth is truly one of the coolest... more
No discussion of Windows Live would be complete without digging into Virtual Earth. Virtual Earth is truly one of the coolest features of Windows Live, providing the user with all kinds of fantastic image-driven UI. The objective of this chapter is to provide a solid understanding of the Virtual Earth map controls, along with all of its extensible features and functionality.
Discuss the various uses of Virtual Earth, covering the basic features as well as its use in the Windows Live analytics engine
Build a web page that uses the control; the page will implement the Virtual Earth map control, demonstrating its core features first and then some of its more advanced tools
Review the API comprehensively, taking keen note of the events and properties that make Virtual Earth a powerful extension of the Windows Live family
Review some more complex examples, pointing out the various ways Virtual Earth fits into the larger scheme of the Windows Live initiative
Before delving too deeply into the rest of the Live Services SDK, you should first take some time to understand Windows Live... more
Before delving too deeply into the rest of the Live Services SDK, you should first take some time to understand Windows Live ID. As an authentication model, Live ID takes much of the developmental overhead off of web programmers and places it squarely on the folks at Microsoft. In doing so, consumers are able to log in to a Live-powered website, leveraging many of their account attributes implicitly. As you move through this chapter, you will come to understand that the lifecycle of Windows Live begins with Live ID. If Windows Live is an engine that delivers targeted traffic and content to and from websites, then Live ID is the key that starts the engine.
Note
At the time of this writing The Live ID SDK has been released as an alpha version, subject to change. For the latest version of the SDK, refer to the live ID development site at http:dev.live.com/liveid (shown in Figure 6.1).
http:dev.live.com/liveid
Review the uses of the Windows Live ID authentication model and the benefits of using it
Discuss the process for registering a website to use Windows Live ID authentication
Review the process of integrating Windows Live ID authentication into a website
Step through an example of parsing and consuming data returned by the Windows Live authentication service
Explore the JustHelpMe.net application, and its integration with Live ID
JustHelpMe.net
Social networking is an important element in Windows Live. Giving Internet users the ability to broadcast their thoughts... more
Social networking is an important element in Windows Live. Giving Internet users the ability to broadcast their thoughts and opinions, connect with people, exchange information, make announcements, and connect with one another is an important part of an emerging Internet community. Windows Live provides two essential service platforms to provide social-networking capabilities: Live Expo and Live Spaces. Both Expo and spaces allow people to generate and control Internet content in a manner that conforms to the “Web 2.0” patterns discussed previously. This chapter discusses the Live Expo API, and how it can be leveraged and incorporated into other mashup websites.
More specifically we’ll cover:
What Live Expo is and how it can be used
The Live Expo SOAP API
How to incorporate Live Expo into your own site using the Live Expo SOAP API
How to create interesting mashup applications quickly using Live Expo and Virtual Earth
OK, so back to that whole social-networking thing. The ability to define oneself and connect with people is an important... more
OK, so back to that whole social-networking thing. The ability to define oneself and connect with people is an important part of an emerging Web 2.0 market. It represents a sea change in both online traffic and user behavior from the older days of web surfing. Where people used to jump online, find items to buy or information to read, and leave, they are now living online, maintaining an Internet presence and reaching out to other people. There are plenty of online applications and websites that provide social-networking services, many of which have experienced an exponential growth in traffic and content. Yet the social-networking trend reaches far beyond the “friend-to-friend” application. As more people become accustomed to connecting with people directly, the need for social-networking features in all manner of online application becomes imminent. Windows Live Spaces aims to satisfy this need. This chapter discusses Windows Live Spaces, its blog API, and various public feeds available for obtaining and controlling online content. Figure 8.1 shows the Live Spaces home page.
As we move into the last three chapters of this book, our focus will shift away from applications and APIs within your applications... more
As we move into the last three chapters of this book, our focus will shift away from applications and APIs within your applications and to those that enhance the user experience externally. Up to this point the services that we have covered such as Virtual Earth, Live Search, and Live Expo all provide interfaces that can be incorporated within your own custom code. Windows Live extends its reach to services and frameworks that live outside of your application but that can still drive traffic to your site and enhance your users’ experience.
Live Messenger is Microsoft’s pervasive instant messaging platform used by over 14 million people worldwide. Like Live Search and Live ID, the Live Messenger platform carries many features over from its predecessor, MSN Messenger. However, don’t be fooled. This version of Microsoft’s instant messaging tool is no simple rebranding of the old. Live Messenger (also Windows Messenger version 8.1) is the next evolution of the online IM experience. Microsoft has added a bevy of exciting new features that enhance the user experience, while offering lots of new tools to facilitate richer communication. Live Messenger is a fluid, evolving platform. This chapter stands mostly as a review of some key Messenger components.
In this chapter we will:
Discuss the latest version of Live Messenger and its numerous features
Discuss the different applications developers can build for the Live Messenger platform, such as Activities and Messenger Agents
Walk through a sample Live Messenger Activity
Review the role Live Messenger plays in the Windows Live lifecycle
This chapter briefly covers Windows Live Gadgets, a Microsoft framework for creating mini-applications that can be fitted... more
This chapter briefly covers Windows Live Gadgets, a Microsoft framework for creating mini-applications that can be fitted within various environments. When we mentioned gadgets in Chapter 2, we stated that gadgets represent both facet of Windows Live services and a new design component by Microsoft representing a change in their web architectural patterns. Although the full implementation of the Gadget SDK is still under development at the time of this writing, much of the API and published patterns have now moved out of the beta phase into full release. Therefore, it is important that developers understand how to design, deploy, and maintain gadgets in the context of Windows Live websites. Full implementation of gadgets, their architectural design, and their intended markets has not yet been fully realized By Microsoft.
Discuss of the various uses of gadgets and their potential architectural value
Build of a simple gadget, noting some of the patterns required to run a gadget correctly
Now that you’ve gotten used to some of the power behind Windows Live services, it is time to take a quick look at Custom... more
Now that you’ve gotten used to some of the power behind Windows Live services, it is time to take a quick look at Custom Domains. Over the last few chapters, we’ve explored how to search for and retrieve postings from Live Expo, how to manipulate user settings in Live Spaces, creating interactive maps and map searches with Virtual Earth, and other powerful platform services that drive website content and content flow. Custom Domains is a service that sits one level above content-specific services, providing a unique way to let users create Live ID accounts based on your website’s URL. In this chapter we will:
Explore the benefits of Custom Domains services and how they can add value to your sites
Configure a sample URL of our own using the Custom Domains web tools
Build a sample client application that handles administrative tasks remotely using the Custom Domains API
Review how the JustHelpMe.net website incorporates Custom Domains with Live ID
HTML, or Hypertext Markup Language, is the primary language used to design and build standard web pages. Created at the European... more
HTML, or Hypertext Markup Language, is the primary language used to design and build standard web pages. Created at the European Organization for Nuclear Research (better known by its French acronym, CERN) by Tim Berners-Lee and implemented on a wide scale in the mid-1990s, HTML became a well-known standard for web page design due to its simplicity and extensibility. HTML 4.1 is widely regarded as the adopted standard and the most recently supported version by the World Wide Web Consortium (also known as the W3C).
A further improvement on the HTML 4.1 standard is a markup language called Extensible Hypertext Markup Language, or XHTML. XHTML applies some of the more rigid rules of the Extensible Markup Language, or XML, to HTML syntax. Although XHTML may ultimately prove more useful when consuming markup, this primer focuses on the HTML 4.1 standard only.
HTML is a markup language, using definition-specific tags to declare regions of structure or state. These tags, commonly referred to as elements, are the primary building block of all browser-friendly web pages. Elements define a region of state for an area of enclosed text that either conforms to a design specification or belongs to the enclosing element within a hierarchical format. HTML pages consist of collections of entities, which are used to define the basic regions of all browser-recognized page areas.
HTML pages begin and end with the standard html declaration:
html
<html>
.
</html>
Everything within these two tags is read by the browser as elements within the page, and it loads these elements as one, uniform entity. All text either before of after the <html></html>tags are interpreted by a web browser as entities external to the web page. Note that many browsers conform to XHTML syntax, wherein single elements can be declared with an implicit end element in the same line. Thus, the following two lines of code are read identically by many parsers and web browsers:
<html></html>
<html />
All elements within an HTML page generally fall into one of four common types of web elements:
<head />
<body/>
<form/>
Designing web applications can be cumbersome. It’s not as simple as building a client application or writing a fancy Excel... more
Designing web applications can be cumbersome. It’s not as simple as building a client application or writing a fancy Excel macro. Web applications have a wide collection of interactive layers and moving parts, all of which must be coordinated with one another in the complicated dance otherwise known as multi-tiered, or n-tiered, architecture. Even the simplest of websites contains code in at least three or more distinctly separate areas, each requiring its own code maintenance and compatibility. Many different web design patterns have emerged over the years to simplify and unify the web programming. Programming languages like Perl were created for complex string management and reporting. Scripting languages like VBScript and JavaScript were embraced to standardize browser content programming. Programmatic constructs like the Common Gateway Interface model, or CGI, found their way into plenty of high-end corporate applications and websites. Yet no single web programming model has been more pervasive than ASP.NET. Active Server Pages, or ASP, was the first stab at dynamic scripting for both client-side and server-side tasks in the same set of dynamically compiled web page documents. As the ASP architecture became more popular and the programming tenets within Microsoft evolved, ASP was eventually rebranded as ASP.NET, a comprehensive combination of dynamic scripting and object-oriented design patterns applied specifically to Internet programming.
The power behind the ASP.NET model is the clear separation of client-side script and compiled server code. A good deal of emphasis is placed on server-side development patterns, wherein exists the lion’s share of business logic and UI manipulation code. If you have never worked with a complex client/server model ASP.NET can seem quite a bit confusing. There are elements of both client controls and server-side processing often running in the same logical space. On the whole there are a lot of different ways developers can apply ASP.NET concepts, mixing new features with older tools and patterns. This primer concentrates solely on the more traditional use of ASP.NET, focusing primarily on the server event model, ASP.NET web controls, and ASP.NET state management.
The term “.NET” (pronounced “dot net”) has a lot of different meanings. At a high level, it is Microsoft’s development platform... more
The term “.NET” (pronounced “dot net”) has a lot of different meanings. At a high level, it is Microsoft’s development platform for designing software and building applications targeting the Windows operating system. It is also a term used to define Microsoft’s server platform initiatives, representing a loose collection of server-based products that run distributed applications and support large, multi-tiered systems. .NET is a term also used to define the latest system runtime environment, enabling applications written in different languages to execute and behave similarly. In this section, we discuss how to build programs and design software using .NET languages and targeting the latest .NET runtime.
.NET is unique to Microsoft development platforms, and is quite different from most development platforms for non-Windows operating systems. Unlike older, more traditional programming environments, .NET programs can be written in one of many different .NET-enabled languages. Developers familiar with languages such as Visual Basic, C++, Java, or even older mainframe languages such as COBOL can leverage their skills sets by building .NET programs using their language’s .NET equivalent. This helps to make the .NET learning curve a little less steep.
Of course, understanding .NET programming goes well beyond the simple syntax of disparate languages. Modern software development requires programmers to have at least a cursory understanding of object-oriented programming patterns. Object orientation, or OO, can help you separate your code into tighter, reusable components. Although not every .NET program demands a strong degree of OO design, it is important for .NET programmers to be familiar with object-oriented concepts as consumption of the .NET SDK relies on them. In this section, we will review and discuss many aspects of .NET programming, along with the basic principles behind it.
Purchase Before purchasing this product, please be sure you have met all software and system requirements, and that you understand any limits placed upon its use.
Return Policy Wrox Chapters on Demand are non-returnable and non-refundable.
Reader Software Wrox Chapters on Demand are offered as PDFs, and they must be viewed using the Adobe Reader. If you do not have the Reader installed, it can be downloaded for free at Adobe.com.
Test Download As Wrox Chapters on Demand purchases are non-returnable, it is advisable that you test your system and software configurations with a free sample download before you place an order.
Usage Rights for a Wrox Chapter on Demand File Any Wrox Chapter on Demand product you purchase from this site will come with certain restrictions that allow Wiley to protect the copyrights of its products. After you purchase and download this title, you:
If you have any questions about these restrictions, you may contact Customer Care at (877) 762-2974 (8 a.m. - 5 p.m. EST, Monday - Friday). If you have any issues related to Technical Support, please contact us at 800-762-2974 (United States only) or 317-572-3994 (International) 8 a.m. - 8 p.m. EST, Monday - Friday).
Related Books
.NET Resources