Home > Articles > Programming > Windows Programming

This chapter is from the book

This chapter is from the book

The Internet Solution

Some view life as a circle. If you examine the software evolution from hosted application to desktop application to client/server application and now to the Internet application, you might think software mimics life! The Internet is, after all, the grandest, most host-centric system ever conceived. The Web browser is a marginally smarter client than the dumb terminal, relegated to rendering graphics and the UIs of client/server and desktop applications, but performing little to no business processing. Browsers instead rely almost completely on the Internet servers to which they connect. Okay, to be fair, Web-based applications can and often do perform some client-side processing using JScript and Dynamic HTML (DHTML). However, except for filling out an information request form that validates some of the data (such as verifying that the customer's name and address were entered or that the entered date is valid), most processing is performed on the server side.

NOTE

JScript, JavaScript, and ECMAScript are more or less the same language sharing a common heritage. ECMAScript is the standardization of Netscape's JavaScript and Microsoft's Jscript. If you are interested in learning more about ECMAScript, visit http://www.ecma.org. For more information on DHTML, check out http://www.w3c.org.

These scripting languages are lightweight programming languages used by Web developers to perform processing on a Web page from the browser (the client side). However, more often than not, business logic isn't executed with JScript and the Dynamic Hypertext Markup Language (DHTML). Instead, it's used for user interface-related tasks, such as creating dynamic navigation trees or pop-up context-sensitive windows to aid the surfer.

Thinking of the Web in universal terms, the "big bang" happened around 1993 and spread outward at near–light speed. In the beginning, the Web was a world of information that was magnificently useful but static. Web pages contained few graphics, and the idea of dynamic pages with animations and sound was nothing more than a dream. As the Web became more popular and developed into common medium, corporations took note and, at an increasingly rapid pace, began publishing their presence starting around 1995. It was during the corporate push that the Web started to become more interactive. The corporate invasion (as many in academia view this period of transition from the Web's birth to commercial use) started a demand for dynamic, user-friendly, and engaging pages. The result was that browser manufacturers, such as Microsoft and Netscape, began competing to supply the corporate demands, introducing features into their browsers in a breakneck upgrade pace that led to sophisticated browsers of today.

As you know from the recently belabored dot.com revolution, during this time many companies were born whose existence orbited solely around the Internet. This was the beginning of what became "the portal wars" between Yahoo!, Excite, Lycos, and AltaVista in the years to follow.

Taking a step back from the front lines for a moment, the idea of a portal really came into existence as a result of browser designers creating the default Web page that's called up when users start their browsers. Yahoo! and most of the other contenders were originally conceived solely as simple search engines or directories to help Web surfers find Web sites of interest. The need for help finding sites in 1994 and 1995 was, in my opinion, even more of a necessity than today because, in its infancy, the Web was dominated by educators and personal sites. Today you can enter just about any word of interest surrounded by "http://www." and ".com" and find a site of interest. For this reason, it made practical sense to make a search page the default page of many users.

Returning to the battle once again, when these search sites became companies during the initial public offering (IPO) mania of the late 1990s, they needed to produce revenues, primarily through ad dollars. For this reason, becoming a Web surfer's default page became the prime objective of these search companies.

It did not take long for the competitors to realize that the greatest power of the Internet—the capability to jump from one source of information to another at a click—was also their biggest threat. The harsh reality: Web customers were viciously loyal, but only for about an Internet minute. Logically, the second field of battle was fought in finding ways to make surfers not only continue to use their sites as the default page, but also in getting users to stay at the site as long as possible. It is from this idea of maintaining surfers' attentions that the term "stickiness" was coined.

The main strategy employed by these warring Web sites to create stickiness was to offer various services to surfers. The portal wars present an interesting business case study but aren't within the scope of this book.

Birth of the Internet Solution

As the portal wars heated up, sites began to offer additional services, including news, horoscopes, and stock market updates. The idea was simple: entice surfers to stick around a little longer by catching up on world or local events rather than clicking on some other Web site. However, the nature of the Web beast encourages movement and change. Back to square one: offer new services to once again differentiate.

Internet Service Solutions: Yahoo!, Amazon, and the Like

One of the first portal sites to offer extensive personalization was Yahoo! when it introduced its My Yahoo! Web service. Once you sign up for My Yahoo!, you are free to select the types of news and information you want, including the standard fare of sports updates, entertainment news, local and world news, local weather, and business and investment news. (See Figure 1.)

Figure 1 My Yahoo! provides the user with a personalized portal with which to view Web information.

Yahoo! and other sites that now offer similar services can provide such personalized information in part because, when you sign up, you agree to let them use your personal information, such as your address. The benefit to you is that you can have the local news delivered to you, as well as view the local TV schedule and movie listings.

As competitors have come, challenged, and died, Yahoo! has managed to continue to add services to further differentiate itself from the pack, including the ability to customize the look and feel of its My Yahoo! pages. In a "just because we can and its cool" move, Yahoo! even added the capability to select color schemes for your personalized page (see Figure 2) and makes it possible to add pages, each with different information or tools (which are Web-based applications!).

Figure 2 My Yahoo! provides the user with the ability to customize colors or apply themes.

Yahoo! took the step from mere information Web service to an Internet-based software solution provider when it began offering a Personal Information Manger (PIM), e-mail, and an Internet-based "hard drive." The latter makes it possible for users to store and retrieve documents from anywhere in the world by simply connecting to the Internet.

The PIM solution is comprehensive and includes an address book, a to-do list, and a calendar. Yahoo! added further value to these "online" solutions by partnering with Starfish Software to make its TrueSync software available. TrueSync enables you to synchronize contacts, calendar, and mail between Yahoo!'s Internet solutions and your offline, desktop applications, such as Outlook, Outlook Express, or Eudora. Additionally, the company introduced Yahoo! Messenger, which is a tool you download and run—sort of like a desktop-based Web application. Do not let the name fool you—this tool is not only for sending and receiving instant messages (like AOL's AIM and Microsoft's MSN Messenger), but it is an extension of the online My Yahoo! service. This companion application logs into your account either manually or automatically in order to keep you updated on your stocks, provide news flashes of interest to you (see Figure 3), remind you of scheduled appointments, provide access to your contacts, and more. It is this piece of software that keeps users returning to Yahoo!—even when their browsers are pointed at some other Web site.

Figure 3 Yahoo! Messenger keeps you informed even when your browser is closed.

Yahoo! might have started as a mere directory and search service that saw the potential of becoming a personalized Internet newspaper, but it has matured vastly and become a personalized information center.

As you can see, the services that Yahoo! offers are the first incarnations of Web services. Later you will learn how .NET not only takes this idea further, but also how it facilitates its realization. But first, take a look at another portal site offering first-generation Web services.

Today's Web Services: Passport

Microsoft provides its own preview of .NET services with its creation of Microsoft Passport. Understanding the where, what, and why behind Passport requires revisiting Yahoo! and the other Web portal services.

Almost every Web site today offers some kind of personalization. This ranges between content and layout customization, such as in My Yahoo! and The Wall Street Journal Interactive Edition, to managing online payment preferences. The one aspect common to all personalization efforts is that you, the Web surfer, need to identify yourself so that your preferences can be saved and restored as you come and go.

Technically, enabling a Web site to store user identities and preferences is rather straightforward. The development team creates a registration page that enables the users to designate a username and password, which the site uses to uniquely identify and authorize each user. A username is analogous to a customer number, serving as an identifier. More often than not, the registration page also requests varying degrees of personal information, such as mail address, e-mail address, and phone number, some of which are later used to personalize content and advertisements.

From the user standpoint, setting up personalization can prove rather time consuming. Most sites require you to register and create a username and password that becomes your identity. Because this identity process is first come, first served, often your choice of username is taken and you must choose another. One challenge is remembering which name/password combination you used on each site.

One of the key concepts behind the Passport service is that it manages information that is uniquely yours. Conceptually, it's like the wallet in your back pocket or purse: It stores personal information such as your mailing address, phone number, and birth date. It can securely store your credit card and other sensitive information (see Figure 4), and it can manage the various username/password combinations you have with different Web sites.

Figure 4 Microsoft Passport wallet service page stores your credit card information securely.

Essentially, it aims to make your Web surfing experience as effortless as possible by alleviating the need to re-enter or remember information that is unique to you. For instance, if you purchase an item from a site that utilizes Passport, you do not have to retype your name, credit card number, expiration date, and billing address every time you shop at another site. Passport conveys this information to the site without requiring you to get actively involved. This saves you time and aggravation; however, Passport releases only the information that you authorize. Passport is an example of a non–.NET Web service.

NOTE

If you are interested in seeing a complete list of e-tailers that use Passport, point your browser to http://www.passport.com/Directory.

Passport, however useful now, is mostly built on yesterday's Web or proprietary technologies. It does not leverage the open technology solutions that underlie .NET, including XML, SOAP, and UDDI. These services enable Web sites to more easily integrate; this, in turn, is what will make Web services ubiquitous.

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.

Overview


Pearson Education, Inc., 221 River Street, Hoboken, New Jersey 07030, (Pearson) presents this site to provide information about products and services that can be purchased through this site.

This privacy notice provides an overview of our commitment to privacy and describes how we collect, protect, use and share personal information collected through this site. Please note that other Pearson websites and online products and services have their own separate privacy policies.

Collection and Use of Information


To conduct business and deliver products and services, Pearson collects and uses personal information in several ways in connection with this site, including:

Questions and Inquiries

For inquiries and questions, we collect the inquiry or question, together with name, contact details (email address, phone number and mailing address) and any other additional information voluntarily submitted to us through a Contact Us form or an email. We use this information to address the inquiry and respond to the question.

Online Store

For orders and purchases placed through our online store on this site, we collect order details, name, institution name and address (if applicable), email address, phone number, shipping and billing addresses, credit/debit card information, shipping options and any instructions. We use this information to complete transactions, fulfill orders, communicate with individuals placing orders or visiting the online store, and for related purposes.

Surveys

Pearson may offer opportunities to provide feedback or participate in surveys, including surveys evaluating Pearson products, services or sites. Participation is voluntary. Pearson collects information requested in the survey questions and uses the information to evaluate, support, maintain and improve products, services or sites, develop new products and services, conduct educational research and for other purposes specified in the survey.

Contests and Drawings

Occasionally, we may sponsor a contest or drawing. Participation is optional. Pearson collects name, contact information and other information specified on the entry form for the contest or drawing to conduct the contest or drawing. Pearson may collect additional personal information from the winners of a contest or drawing in order to award the prize and for tax reporting purposes, as required by law.

Newsletters

If you have elected to receive email newsletters or promotional mailings and special offers but want to unsubscribe, simply email information@informit.com.

Service Announcements

On rare occasions it is necessary to send out a strictly service related announcement. For instance, if our service is temporarily suspended for maintenance we might send users an email. Generally, users may not opt-out of these communications, though they can deactivate their account information. However, these communications are not promotional in nature.

Customer Service

We communicate with users on a regular basis to provide requested services and in regard to issues relating to their account we reply via email or phone in accordance with the users' wishes when a user submits their information through our Contact Us form.

Other Collection and Use of Information


Application and System Logs

Pearson automatically collects log data to help ensure the delivery, availability and security of this site. Log data may include technical information about how a user or visitor connected to this site, such as browser type, type of computer/device, operating system, internet service provider and IP address. We use this information for support purposes and to monitor the health of the site, identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents and appropriately scale computing resources.

Web Analytics

Pearson may use third party web trend analytical services, including Google Analytics, to collect visitor information, such as IP addresses, browser types, referring pages, pages visited and time spent on a particular site. While these analytical services collect and report information on an anonymous basis, they may use cookies to gather web trend information. The information gathered may enable Pearson (but not the third party web trend services) to link information with application and system log data. Pearson uses this information for system administration and to identify problems, improve service, detect unauthorized access and fraudulent activity, prevent and respond to security incidents, appropriately scale computing resources and otherwise support and deliver this site and its services.

Cookies and Related Technologies

This site uses cookies and similar technologies to personalize content, measure traffic patterns, control security, track use and access of information on this site, and provide interest-based messages and advertising. Users can manage and block the use of cookies through their browser. Disabling or blocking certain cookies may limit the functionality of this site.

Do Not Track

This site currently does not respond to Do Not Track signals.

Security


Pearson uses appropriate physical, administrative and technical security measures to protect personal information from unauthorized access, use and disclosure.

Children


This site is not directed to children under the age of 13.

Marketing


Pearson may send or direct marketing communications to users, provided that

  • Pearson will not use personal information collected or processed as a K-12 school service provider for the purpose of directed or targeted advertising.
  • Such marketing is consistent with applicable law and Pearson's legal obligations.
  • Pearson will not knowingly direct or send marketing communications to an individual who has expressed a preference not to receive marketing.
  • Where required by applicable law, express or implied consent to marketing exists and has not been withdrawn.

Pearson may provide personal information to a third party service provider on a restricted basis to provide marketing solely on behalf of Pearson or an affiliate or customer for whom Pearson is a service provider. Marketing preferences may be changed at any time.

Correcting/Updating Personal Information


If a user's personally identifiable information changes (such as your postal address or email address), we provide a way to correct or update that user's personal data provided to us. This can be done on the Account page. If a user no longer desires our service and desires to delete his or her account, please contact us at customer-service@informit.com and we will process the deletion of a user's account.

Choice/Opt-out


Users can always make an informed choice as to whether they should proceed with certain services offered by InformIT. If you choose to remove yourself from our mailing list(s) simply visit the following page and uncheck any communication you no longer want to receive: www.informit.com/u.aspx.

Sale of Personal Information


Pearson does not rent or sell personal information in exchange for any payment of money.

While Pearson does not sell personal information, as defined in Nevada law, Nevada residents may email a request for no sale of their personal information to NevadaDesignatedRequest@pearson.com.

Supplemental Privacy Statement for California Residents


California residents should read our Supplemental privacy statement for California residents in conjunction with this Privacy Notice. The Supplemental privacy statement for California residents explains Pearson's commitment to comply with California law and applies to personal information of California residents collected in connection with this site and the Services.

Sharing and Disclosure


Pearson may disclose personal information, as follows:

  • As required by law.
  • With the consent of the individual (or their parent, if the individual is a minor)
  • In response to a subpoena, court order or legal process, to the extent permitted or required by law
  • To protect the security and safety of individuals, data, assets and systems, consistent with applicable law
  • In connection the sale, joint venture or other transfer of some or all of its company or assets, subject to the provisions of this Privacy Notice
  • To investigate or address actual or suspected fraud or other illegal activities
  • To exercise its legal rights, including enforcement of the Terms of Use for this site or another contract
  • To affiliated Pearson companies and other companies and organizations who perform work for Pearson and are obligated to protect the privacy of personal information consistent with this Privacy Notice
  • To a school, organization, company or government agency, where Pearson collects or processes the personal information in a school setting or on behalf of such organization, company or government agency.

Links


This web site contains links to other sites. Please be aware that we are not responsible for the privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of each and every web site that collects Personal Information. This privacy statement applies solely to information collected by this web site.

Requests and Contact


Please contact us about this Privacy Notice or if you have any requests or questions relating to the privacy of your personal information.

Changes to this Privacy Notice


We may revise this Privacy Notice through an updated posting. We will identify the effective date of the revision in the posting. Often, updates are made to provide greater clarity or to comply with changes in regulatory requirements. If the updates involve material changes to the collection, protection, use or disclosure of Personal Information, Pearson will provide notice of the change through a conspicuous notice on this site or other appropriate way. Continued use of the site after the effective date of a posted revision evidences acceptance. Please contact us if you have questions or concerns about the Privacy Notice or any objection to any revisions.

Last Update: November 17, 2020