[Promotion-technology] FYI: Enabling accessibility - Building Windows 8 - Site Home - MSDN Blogs
David Andrews
dandrews at visi.com
Wed Feb 15 03:54:36 UTC 2012
>
><http://blogs.msdn.com/b/b8/archive/2012/02/14/enabling-accessibility.aspx>http://blogs.msdn.com/b/b8/archive/2012/02/14/enabling-accessibility.aspx
>
>
>
>Enabling accessibility
>
>
>
>Windows 8 is a product we design for an
>incredibly broad spectrum of people around the
>world. One of the areas where we have worked to
>deliver an even greater level of innovation is
>in ensuring that Windows 8, particularly the new
>Metro style experience, is accessible to
>everyone regardless of their physical abilities.
>In this post we will talk about the engineering
>work that goes into the features we refer to as
>accessibility though as you will see, many
>of these features are broadly applicable and
>just make the product better for everyone. If
>you are interested in Microsofts overall
>efforts in accessibility and related topics,
>please be sure to check out
><http://www.microsoft.com/enable>www.microsoft.com/enable.
>This post is especially important for developers
>building Metro style apps for inclusion in the
>Windows Store, as we are asking you to test the
>accessibility of your application prior to
>submission. I encourage folks who have never
>seen these tools in action to learn about them
>through the video. The upcoming beta will be a
>great chance for everyone to experience the product.
>
>An important note. With the next public release
>of code (later this month) we will see a
>significant improvement in the capabilities
>described in this post, but we still have work
>to do between beta and RC especially with
>regards to working with the latest releases of
>third party tools. I just want to make sure
>folks know that this post talks about
>improvements in the next release as well as
>functionality that will still be improving as we get to the release candidate.
>
>This post was authored by Jennifer Norberg, a
>senior program manager lead on our HID team.
>
>--Steven
>
>----------
>We want all users to be able to experience
>Windows 8 Metro style apps on their desktops,
>laptops, or the new touch-capable devices. This
>includes people with disabilities who rely on
>assistive technologies to use the PC.
>
>About 15% of the world's population has a
>disability1. In the United States alone, 49.6
>million people have a disability2 and 45 million
>in Europe3. When it comes to interacting with
>computers, these disabilities affect individuals in a number of ways:
> * Visual impairments include color vision
> deficiency, low-vision and blindness all of
> which may impact the individuals ability to
> see content displayed on the screen.
> * Mobility impairments include arthritis,
> cerebral palsy, Parkinsons disease, multiple
> sclerosis, and paraplegia, which impact the
> ability to use the keyboard and/or mouse to interact with the PC.
> * Hearing impairments include conditions
> ranging from mild hearing loss to total
> deafness, and impact the individuals ability
> to experience audio content generated by the computer.
> * Cognitive impairments impact an
> individuals learning and language skills, the
> ability to comprehend words, and difficulty
> with memory, solving problems, or perceiving sensory information.
>
>The rates of individuals with disabilities are
>also increasing across the world due to the
>aging population and increases in chronic health
>conditions. One of the consequences of the
>global aging phenomena is the impact it will
>have on the workforce. For example, in the US,
>workers aged 55 and older are anticipated to
>increase from 18.1 to 23.9 percent by 20185.
>That is more than one in five workers.
>Functional limitations as a result of aging (for
>example, presbyopia, the gradual loss of the
>eyes' ability to focus actively on nearby
>objects, a condition that usually becomes
>noticeable in ones mid-40s and continues to
>worsen until around age 65) will impact an older
>workforces ability to use technology that isnt
>easy to see. As a result, there will be an
>increase in the number of working-age adults who
>are likely to benefit from the use of accessible technology.
>
>New technologies and designs are especially
>difficult for people with disabilities to adopt
>because many new technologies are not made
>accessible when they are first released to the
>public. We have heard this concern about
>previous versions of Windows and we want to
>ensure that everyone can experience Windows 8
>right away by providing a comprehensive
>accessibility platform for the desktop and Metro style features.
>
>Our accessibility goals in Windows 8 are to:
> * Improve the assistive technologies that
> are components of Windows, and provide a good
> experience with the Metro style UI.
> * Provide developer tools that have baseline
> accessibility built in, so that accessible
> Metro style apps are available in the Store.
> * Engage assistive technology vendors (ATVs)
> to adopt Windows 8 and build upon the accessibility scenarios.
>
>Each of these goals and audiences are discussed in detail in this blog.
>
>
>Past investments in accessibility
>
>
>
>Before we look forward, lets look back on the
>history of accessibility in Windows. In past
>releases, we established a foundation called UI
>Automation (UIA). UIA is used by developers to
>provide information about their code, and its
>how assistive technologies (ATs) access and use
>the information from the developers applications.
>
>Weve also shipped ATs as components of Windows:
> * Narrator is Windows built-in screen
> reader that allows people with visual
> impairments to interact with their system and
> applications. User feedback on previous
> versions of Narrator has consistently been that
> it needs to respond faster, read more controls, and support more languages.
> * Magnifier is a tool in Windows to make
> text and graphics large enough to see for
> people with low vision. This was initially
> shipped in Windows 98, and was updated
> significantly in Windows 7 with the ability to
> magnify the full screen. This change received
> positive feedback. However, there were still
> issues with Magnifier, as it sometimes
> conflicted with settings for High Contrast colors.
> * Speech recognition initially shipped in
> Windows Vista to aid people with mobility
> impairments to navigate and use their PC. User
> feedback on this feature has been really
> positive, telling us that the accuracy in
> speech recognition is good, it transcribes your
> voice to text quickly, and it is able to handle some uncommon words.
> * On-screen keyboard has been available to
> those with mobility impairments since Windows XP.
>
>While these Windows ATs cover a range of
>impairments, Windows depends on the rich
>ecosystem of AT vendors to cover the broad
>diversity of disabilities, and fully supports
>innovation in the ecosystem. This does not
>change with this new release of Windows. While
>we have focused on improving the ATs that we
>provide as Windows components and are providing
>support for new scenarios like the Metro style
>UI, we are also continuing to provide a rich
>platform and ecosystem where AT vendors can thrive.
>
>
>Accessibility improvements in Windows 8
>
>
>
>With each new release, we collate and respond to
>user feedback. It is clear that users want
>richer AT offerings to be included with Windows
>8. In this release, we invested in the following
>areas to support this feedback:
> * We redesigned Narrator to improve its
> performance so that it quickly reads out what you have selected.
> * We added morel languages and voices to
> Narrator to support additional countries and preferences.
> * We updated components and features within
> Windows to leverage UI Automation that allows them to be read by Narrator.
> * We updated UI Automation (UIA) with more
> text patterns and document content so that
> Narrator can use it to read the outputs from applications.
>
>We focused the above improvements specifically to address two key scenarios:
> * Installing, setting up, and configuring
> your PC: Using an existing Windows 7 PC, turn
> on Narrator by opening Ease of Access and
> selecting Narrator. Then go to the webpage that
> hosts the Windows 8 download and install point
> (<http://msdn.microsoft.com/en-us/windows/apps/br229516/>download
> Windows 8 Developer Preview here), and walk
> through the setup with Narrator speaking to
> you. There are still a few bugs in the process
> that we are working on. But this now provides
> you with the ability to install using Narrator.
> * Narrator has some new configuration
> options in Windows 8. You can select a voice,
> change the speed at which it speaks, create
> customizable commands, and specify some other aspects of Narrators behavior.
>
>
><http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-29-43-metablogapi/5074.Narrator_5F00_3DA1A618.jpg>
> Tap twice with 3 fingers to review the full set of touch gestur
> Narrator main screen to configure settings
> Right out-of-the-box with a new Windows 8
> tablet, you will be able to press the Windows
> logo key and Volume Up to launch Narrator and
> walk through the setup of your machine. Whether
> youre blind, have low vision, or are fully
> sighted, youll be able to start experiencing a
> Windows 8 tablet from the moment you get it.
> * Web browsing: Previously Narrator didnt
> say much on webpages, and it was slow. But with
> the updates in Internet Explorer to leverage
> text patterns built into the UI Automation
> platform, and with additional performance
> updates, Narrator keeps up with you as you
> explore text on a webpage. Narrator provides
> you with the ability to continuously read a
> page (Use the Windows logo key + Alt + \ to
> invoke the reading) and then responds quickly
> to commands such as Ctrl, which will instantly
> stop Narrator from speaking. This allows you to
> interact with a control like a hyperlink
> (Windows logo key +Alt + Enter tells Narrator
> to select the hyperlink, and Windows logo key +
> Alt + Space navigates to the linked page).
>
>In addition to addressing user feedback, a
>significant amount of work went into making sure
>that Metro style apps could also be accessible.
>
>
>Evolving the accessibility platform for developers
>
>
>
>Making Windows accessible while features are
>being built is challenging, and doing this while
>introducing a whole new development platform is
>even more difficult. However, we wanted users
>with disabilities to enjoy Metro style
>experiences right away (compare this to the
>Win32 platform, which took many years and
>multiple releases to become accessible).
>
>As a start, we updated our accessibility
>foundation with support for industry standards.
>By supporting standards from the Web
>Accessibility Initiative, Accessible Rich
>Internet Applications (ARIA), HTML5, and XAML,
>it is easier for developers to code
>accessibility into their applications and for
>the ATs using UI Automation to consume the
>information that makes accessibility scenarios work on Windows 8.
>
>This is in contrast to previous releases, where
>AT vendors used different creative ways of
>getting information from the system, in order to
>manipulate it and present it to their users.
>While a variety of approaches can provide rich
>experiences for users, it also creates a problem
>when non-standard approaches have to change in a
>new release. This is why we needed to create a
>strong foundation within the platform that
>leverages the existing coding standards (to
>which developers should adhere), and that can
>also be consistent from release to release. AT
>developers who use the platform can then
>reliably get accessibility information and dont
>have to do any special tricks or coding.
>
><http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-29-43-metablogapi/5460.clip_5F00_image004_5F00_7F4785C9.png>
>Users, with 2-headed arrow to Assistive Technologies (screen re
>Diagram of developer, platform, and AT required
>to provide information to the user
>
>With a consistent platform, developers of Metro
>style features within Windows can now leverage
>the standards and platform to ensure their
>components are accessible. While the features
>are designed, developed, and tested, we
>continually track the progress made towards
>accessibility. When we released the build for
>the Windows 8 Developer Preview, the team had
>been working on accessibility. However, we still
>had bugs that impacted High Contrast, keyboard
>navigation, and programmatic data for the ATs to
>consume. We are by no means done, and we
>continue to drive the accessibility requirements
>across the team to ensure we meet our goals. In
>each public release of Windows 8, you will see
>improvements being made in this area.
>
>The Metro style UI is a new experience for
>Windows, and gives us an opportunity to present
>accessibility settings in a new way. This
>opportunity allowed us to simplify and optimize
>the key settings that people with disabilities
>depend on to manage their experience.
>
>For example, we have a new way to toggle
>settings for high contrast, which is easier to
>discover and simpler to apply. We also made it
>easier to adjust the size of UI elements to be
>bigger, and take care of the DPI scaling
>settings for you, so you dont have to manage it
>manually. We think simplifying these settings will help a large set of users.
>
>
>Developers creating and selling accessible apps
>
>
>
>With Metro style apps, developers have an
>incredible opportunity to improve the
>accessibility ecosystem by creating and selling
>apps that meet a
><http://msdn.microsoft.com/en-us/library/windows/apps/hh452679(v=VS.85).aspx>baseline
>of accessibility.
>
>Fortunately, developers dont need to learn new
>technologies to make their apps accessible. We
>rely on existing standards to reduce the
>learning curve for building accessible apps.
>HTML apps rely on the public HTML5 standard,
>which includes
><http://www.w3.org/WAI/intro/aria>ARIA (a markup
>schema designed for declaring accessibility
>information). Likewise with XAML apps, we use
>the well-known markup schema used by similar
>platforms like Silverlight and Windows
>Presentation Framework (WPF). Additionally, the
>dev platform and tools shipped for Windows 8
>support making an accessible app through every
>step of the development process:
> * Creating: When creating a project using
> one of the
> <http://msdn.microsoft.com/en-us/library/windows/apps/hh465293#project_templates>project
> templates from Visual Studio Express, the code
> is accessibility-ready. This means that you can
> immediately use it with a screen reader
> (Narrator), it is fully usable with a keyboard,
> it works well in High Contrast mode, and it is
> visually accessible for text contrast and
> color. This gives the developer a great
> starting point towards building an accessible app.
> * Coding: During coding of an app, there is
> additional support offered by the platform and tools:
> * Use Visual Studio Express IntelliSense
> to type
> <http://www.w3.org/WAI/PF/aria/appendices#quickref>accessibility
> attributes quickly and declare accessibility information in the markup.
> * Accessibility support is built into
> the Windows 8 controls. In most cases, all you
> need to do is define a good
> <http://msdn.microsoft.com/en-us/library/windows/apps/hh452677(v=VS.85).aspx>accessible
> name.
> * Use the Dev Center
> <http://msdn.microsoft.com/en-us/library/windows/apps/hh452681(v=VS.85).aspx>guidelines
> and
> <http://code.msdn.microsoft.com/windowsapps/site/search?query=accessibility%20or%20%22high%20contrast%22%20or%20aria&f%5B0%5D.Value=accessibility%20or%20%22high%20contrast%22%20or%20aria&f%5B0%5D.Type=SearchText&ac=8>samples
> to learn best practices and copy/paste accessible code.
>
>At this point you are probably thinking: how can
>these efforts possibly work for interactive
>games or HTML5 Canvas based apps? Youre right;
>there are still classes of apps in which
>implementing accessibility will be more
>challenging than just leveraging the tools and
>templates. To help address these cases, we will
>continue to work with the developer community,
>post custom solutions, and expand accessibility guidelines with more examples.
> * Testing: When your app is ready for
> testing, use the Windows SDK accessibility
> testing tools to validate the markup. The Dev
> Center documentation also offers guidelines
> about
> <http://msdn.microsoft.com/en-us/library/windows/apps/hh452726(v=VS.85).aspx>testing
> a Metro style app for accessibility.
> * Selling: Once the app is complete, if it
> meets the baseline accessibility scenarios, you
> can declare it as accessible during the Windows
> Store publishing process by selecting the
> Accessibility check box. This will allow users
> looking for accessible apps to easily find them in the Store.
>
>When developers build an application for Windows
>8, they should follow this process and ensure
>their apps do the following to reach the accessibility community:
> * Support the standards. Ensure people with
> low vision or those who are fully blind can use
> a screen reader such as Narrator to accomplish
> the main scenarios offered by the app. The
> screen readers will leverage UIA and the
> standards discussed above to get information from the apps.
> * Make keyboard shortcuts. Ensure people
> with mobility impairments or users of screen
> readers that prefer keyboard navigation can use
> a keyboard to interact with the app and its UI
> elements. This includes navigating with the Tab
> and arrow keys; activations with Spacebar and
> Enter keys; and the use of shortcuts (access keys and accelerators).
> * Support high contrast and make it
> bigger. Ensure people with moderate visual
> impairments can distinguish the UI and text
> with sufficient text contrast ratios, and a
> good high contrast mode; and respect layout
> settings when the Make everything on your screen bigger mode is active.
>
>For more information, check out this //build
>presentation on
><http://channel9.msdn.com/Events/BUILD/BUILD2011/APP-843T>creating
>accessible Metro style apps, and get started creating your own app.
>
>
>Discovering accessible Windows 8 apps
>
>
>
>Users will be able to set an accessibility
>filter in the Windows Store that will allow them
>to discover the apps that have been declared
>accessible by the developer. Additionally, users
>will be able to provide comments and ratings to
>help each other find the apps that are most
>accessible, and to help the developer understand
>how well they did in making their apps accessible
>
>
>Adapting accessibility features for new form factors
>
>
>
>One of the most exciting changes in Windows 8 is
>the introduction of touch-only devices into the
>Windows family. And, as with all form factors
>that Windows supports, we want these new
>touch-only devices to be accessible. As a
>result, we spent a considerable amount of time
>planning what it would take to make our Windows
>ATs useful on touch-only devices, mainly through
>the adaptation of the Magnifier and Narrator features.
>
>
>Magnify your screen and navigate using touch
>
>
>
>Magnifier can be used in different ways, but one
>of the most popular ways to use it is with
>keyboard shortcuts (Windows logo key + and
>Windows logo key -). However, on a touch-only
>device, you dont have the keyboard available to
>input shortcuts, so we had to figure out how to
>make Magnifier work well in this scenario. We
>wanted to create a touch-based solution that was
>simple, fast, and unobtrusive. If youve used
>Magnifier before, you may have experimented with
>different modes in Windows 7. We chose to focus
>on full-screen mode for touch because of the
>data we gathered through the Customer Experience
>Improvement Program, which showed full-screen
>mode was the most commonly used. Its also the
>best mode to leverage touch gestures because it spans the whole screen.
>
>One of the great benefits of using touch is that
>you can directly interact with everything on
>your screen. Theres no need for separate
>devices like a mouse and keyboard just touch
>exactly what you want. The downside weve heard
>from users who rely on magnification is that it
>can be hard to see and touch simultaneously
>because your hand is on the screen and it blocks
>you from seeing whats behind it. But the entire
>goal of Magnifier is to help users see the
>screen not to hinder. Therefore, one of our
>design principles for touch-enabled devices was
>to make sure that you can control Magnifier
>entirely from the edges of the screen.
>
>When you start Magnifier on a touch-enabled
>device (in the Ease of Access panel, set
>Magnifier to start when you press the Windows
>logo key + Volume up), you will immediately
>notice a border that appears around the edges of
>the screen. We know you will need to access all
>areas of the screen, so we made it easy to move
>the Magnifier around the screen using these
>borders. Simply drag your finger along the
>border to move Magnifier in that direction. When
>the border disappears, you are at the edge of the screen.
>
><http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-29-43-metablogapi/6786.Magnifier_5F00_73DE3660.jpg>
>Two images: On the left is a close-up view of Start screen with
>
>
>Drag your finger along the border to move around
>the screen. Borders disappear when you reach the edge of the screen.
>
>The plus (+) and minus (-) buttons in the
>corners allow you to zoom in or out. We also
>built in support for multi-touch zoom using
>these same borders. Moving two fingers closer
>together or farther apart on the border allows
>you to quickly change the zoom level.
>
>When you are zoomed in, sometimes its confusing
>to know where you are on the screen. To remedy
>this, Magnifier has a preview feature that shows
>you exactly where you are in the context of the
>entire screen. Activate this by tapping with a
>thumb or finger on opposite borders at the same
>time. The preview will zoom out to show you
>exactly what part of the screen youre on, then
>it will zoom back in to your current location.
>
><http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-29-43-metablogapi/1680.Full_2D00_screen_2D00_preview_2D00_in_2D00_Magnifier_5F00_7CFF59A8.jpg>
>Start screen with small rectangle highlighted to show the area
>
>
>Tap on two opposing borders at the same time.
>Full screen preview highlights where you are on the screen.
>
>You can even drag the highlighted region while
>its zoomed out to move the Magnifier around the screen.
>
>Most importantly with Magnifier, you dont need
>to change the way you interact with your device
>to use it with touch. Once its turned on, it
>will work with all of your apps. For users with
>low vision who have trouble seeing their
>devices, Magnifier makes it easy to see the screen and touch it, too.
>
>
>Explore and learn the UI with Narrator
>
>
>
>In Windows 8, Narrator has been redesigned to be
>substantially faster and support many new
>features. To support Narrator on touch-only
>devices weve implemented a standard way to
>launch Narrator, by holding down the Windows
>logo key and pressing the Volume Up button. Once
>Narrator is running, you can use Narrators
>built-in touch commands to explore the screen and control your device.
>
>If youre blind, then the challenge with touch
>is that theres no way to find something on the
>screen without activating it. On a Windows 8
>device, Narrator addresses this challenge by
>allowing you to drag a single finger around the
>screen. Narrator will read what is under your
>finger but wont activate it. Users with vision
>will notice that the Narrator cursor will follow
>your finger as well. We refer to this as
>exploring. A good way to understand this is to
>imagine there is a sheet of glass on top of your
>screen Narrator will allow you explore what is
>underneath by touching the glass but without
>touching the screen directly. Once youve found
>the item youre looking for by exploring with a
>single finger, you can activate it by tapping anywhere with a second finger.
>
>Your browser doesn't support HTML5 video.
>Download this video to view it in your favorite media player:
><http://video.ch9.ms/ch9/8f07/7f89f824-fa21-4375-8443-9ff201608f07/EnsuringAccessibility2_high_ch9.mp4>High
>quality MP4 |
><http://video.ch9.ms/ch9/8f07/7f89f824-fa21-4375-8443-9ff201608f07/EnsuringAccessibility2_low_ch9.mp4>Lower
>quality MP4
>
>These are just two examples of ATs that are
>shipping with Windows 8 and that are now
>optimized for touch-only devices. There are many
>other improvements across all the Windows 8 ATs,
>but we will save that to discuss at a later time.
>
>
>
>Onboarding assistive technology vendors
>
>
>
>There are many scenarios and a wide range of
>impairments to cover, and so weve engaged and
>partnered with AT vendors to ensure we are
>creating the best and most comprehensive
>experiences for the disability community. The
>assistive technologies that ship in Windows 8
>will work across both the desktop and Metro
>style UI experiences, to provide seamless access
>to the PC. People who need advanced AT features
>may need or want to purchase solutions from
>specialty Assistive Technology vendors (AT
>vendors) to meet their specific needs.
>
>AT vendors create sophisticated ATs that can
>provide richer experiences to the disability
>community. For example, they may provide
>in-depth support for specific applications and
>for legacy applications. The ATs shipped in
>Windows may not work well with apps that do not
>support industry standards or platform
>technologies, including for example, legacy
>applications that do not implement UIA.
>
>In Windows 8, we invested heavily in building
>the foundation for the new Metro style UI and
>adopting the industry standards that will
>benefit application developers, ATs, and the disability community.
>
>By providing a standardized way of getting the
>information, ATs can work with the standards
>that app developers are used to, but more
>importantly, AT vendors can rely on these
>standards to be supported through multiple
>Windows releases, to ensure their ATs dont
>break with each release. Since the //Build
>conference, we have partnered with leading AT
>vendors to help them get started with Windows 8.
>This has included support for previously used
><http://en.wikipedia.org/wiki/Mirror_driver>mirror drivers and UIA support.
>
>We continue to sync up with the AT vendors to
>ensure that their questions are addressed, and
>we are working toward the common goal of an accessible Windows 8.
>
>Windows 8 has been an incredible opportunity for
>us to improve our accessibility support. Not
>only have we evolved the platform, we have
>introduced new opportunities for developers to
>broaden their applications reach into the
>disability community. We have also focused a lot
>of attention on the ATs that are included with
>Windows 8, not only improving performance and
>language support, but also enabling new form
>factors including touch-only devices. We
>continue to be very committed to a rich and
>innovative third-party ecosystem, and with more
>standardized and consistent interfaces, we hope
>to help the ecosystem continue to innovate on Windows.
>
>If you are a user with accessibility needs, we
>think you will like what we have done. If you
>are a developer, build an accessible app and
>reach a larger spectrum of users! If you are an
>AT vendor, come work with us and refresh your
>applications using our platform. This is an
>exciting and compelling release that will change
>how people of all abilities interact with PCs.
>
>There is still work to be done in Windows to
>meet all the accessibility needs, but we would
>like to encourage people to try out the Metro
>style experiences with our free, updated Windows 8 ATs.
>
>-- Jennifer Norberg, Lead PM, Human Interaction Platform team
>
>Data
> * WHO:
> <http://www.who.int/mediacentre/factsheets/fs352/en/>Disability
> and health: Fact sheet Number 352
> * US Census:
> <http://www.census.gov/newsroom/releases/archives/facts_for_features_special_editions/cb11-ff14.html>Profile
> America Facts for Features
> * European AT Report:
> <http://ec.europa.eu/information_society/newsroom/cf/document.cfm?action=display&doc_id=606>Analysing
> and federating the European Assistive
> Technology ICT industry, March 2009 (PDF)
> *
> <http://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/lifekludger:%20The%20Touch%20Barrier%20%20Accessibility%20and%20usability%20issues%20around%20touch%20technologies>Lifekludger:
> The Touch Barrier Accessibility and usability
> issues around touch technologies
> *
> <http://bls.gov/oco/oco2003.htm>Occupational Outlook Handbook, 2010-11 Edition
More information about the Promotion-Technology
mailing list