October 4, 2007

Making AJAX Accessible

Filed under: — admin @ 11:09 am

“Ask yourself “Do I really need AJAX?”. If yes use progressive enhancement. This means build a standard application then overlay with AJAX i.e. HIJAX.

The RNIB UK wrote a good article about it that says: “Early in Spetember I presented at the Irish Design for All e-Accessibility Network on accessibility and AJAX. It was a great opportunity to meet people and discuss issues as well as a chance to listen to presentations given by Steve Faulkner from The Paciello Group, Joshua O’Conner from National Council for the Blind of Ireland and Des Traynor from iQcontent.”

In short it describes four steps of AJAX accessibility:

  • Step 1: Content
  • Step 2: Mark up content semantically (X)HTML
  • Step 3: Add the presentation layer CSS
  • Step 4: Add the behaviour DOM Scripting”

Read full article on RNIB UK

This is a wonderfully put-together article, very straight forward and informative. The tips are laid out in easy to follow pointers and, even better, the author links to web pages for fully fleshed out examples. This is a must-read for anyone who wants to build a page using AJAX, but worries about its accessibility issues.

October 6, 2007

Browser Specific Doctype Information

Filed under: — admin @ 10:49 am

If you’ve had difficulties getting your web page to display correctly in more than one browser, you’re not alone. The unlikely culprit might just be in the Doctype tag that you may or may not have added to your document.

QuirksMode goes into significant depth on the issue: “When Netscape 4 and Explorer 4 implemented CSS, their support did not match the W3C standard (or, indeed, each other). Netscape 4 had horribly broken support. Explorer 4 came far closer to the standard, but didn’t implement it with complete correctness either. Although Explorer 5 Windows mended quite a lot of Explorer 4 bugs, it perpetuated other glitches in CSS (mainly the box model).

To make sure that their websites rendered correctly in the various browsers, web developers had to implement CSS according to the wishes of these browsers. Thus, most websites used CSS in ways that didn’t quite match the specifications.

Therefore, when standards compliancy became important browser vendors faced a tough choice. Moving closer to the W3C specifications was the way to go, but if they’d just change the CSS implementations to match the standards perfectly, many websites would break to a greater or lesser extent. Existing CSS would start to show odd side effects if it were suddenly interpreted in the correct way.

So moving closer to standards compliance would cause problems. On the other hand, not moving closer to standards compliance would perpetuate the general confusion of the Browser Wars Era.”

Read the Full Article at QuirksMode.Org and learn more about the solution to this potential problem. Be sure to check out the very very bottom of the article for a thorough browser comparison chart!

Conditional CSS and XHTML

Filed under: — admin @ 10:50 am

“In an ideal world we’d write our (X)HTML and CSS once and it would work perfectly for all browsers. In the real world different browsers and platforms render our creations slightly or drastically different, depending on how adventurous we get with our (X)HTML and CSS. To combat these browser peculiarities developers have adopted a number of coping strategies, including:

  • @import to hide more advanced styles from older browsers (Netscape 4.x etc.)
  • CSS hacks (voice-family, escapes, “Tantek hacks,” and other techniques)
  • Conditional CSS

While the @import method works fine, it introduces another HTTP request for modern browsers in the performance-sensitive head section. CSS hacks are useful when applying small snippets of styles to different browsers. But for the most flexibility and speed, conditional CSS rules. Conditional CSS uses the if-else branching logic built into XSSI to deliver different CSS based on browser environment strings.”

Read the full article from WebSite Optimization. This is a good one for anyone who needs to make a web page compatible with a wide range of browser types. Additional references are provided for those who need to know more than what the author had included.

Data Binding XML and C++

Filed under: — admin @ 10:52 am

“CodeSynthesis XSD is an open-source, cross-platform W3C XML Schema to C++ data binding compiler. Provided with an XML instance specification (XML Schema), it generates C++ classes that represent the given vocabulary as well as parsing and serialization code. You can then access the data stored in XML using types and functions that semantically correspond to your application domain rather than dealing with intricacies of reading and writing XML…. The process of extracting the data from a direct representation of XML (such as DOM or SAX) and presenting it as a hierarchy of objects or events that correspond to a document vocabulary is called XML Data Binding. An XML Data Binding compiler accomplishes this by establishing a mapping or binding between XML Schema and a target programming language.”

I imagine that this program could prove quite useful. You can read the full document at the CodeSythesis web page.

A Blast from CSS Past

Filed under: — admin @ 10:53 am

An older article recently dug up talks about CSS in a rather negative light:”In his book “Cascading Style Sheets”, Eric Meyer (no relation) says that CSS is easy to use.

I don’t agree.

CSS uses a complex “cascade” to determine which rules apply to an element - something that takes fifteen pages in a book to explain.

As a result, there is no good authoring tool experience for CSS. Instead of direct manipulation, drag and drop, and visual design surfaces, web designers working with CSS must crack open their code-editors and start typing in text rules. CSS was not designed with drag-and-drop authoring in mind.

Code editors are not easy to use.

For example, consider these rules:

h3 > strong { color: red; }
h3 + strong { color: green; }
h3:first-child { color: blue; }

Quick quiz: What color will this be:

<h3><strong>Hello World</strong><h3>

?

How do you explain this to a visual designer? You need a good debugger and a lot of time to figure this stuff out.”

Read Jon Meyer’s Full Article on Cybergrain

It’s true that since this article was written in 2004 there have been editors released to assist designers through drag-and-drop and other visual design tools. Still, interestingly enough, any visually inspired beginner with no programming experience is likely to have their heads spin while trying to create a simple laid out web page using Cascading Style Sheets.

It raises the question, can the fields of design meet with the thorough and technical nature of computer language peaceably? CSS has taken over as one of the forerunners in web design since it was created because of the ease it allows in maintaining page layout. What might the next step in web design be if a method were developed to fully unleash the power of a designer’s vision, without having to rig up a merely acceptable solution using creation software?

One-on-one with Microsoft V.P. Satya Nadella

Filed under: — admin @ 10:54 am

Microsoft is going to have some fighting to do to compete with Google, but if any company has the sheer financial muscle to pull it off it’s Microsoft. Here’s what I found in ZDNet.

“Satya Nadella, corporate vice president of search and advertising at Microsoft, discussed how the company plans to improve its market share and improve search for the long haul, shortly before the company launched new features in its Live Search site at a “Searchification” event on Wednesday. [September 26, 2007]

Q: How much of your search traffic is coming from search embedded within other Microsoft internet properties versus people going directly to the main Live.com search page?

A: The search bar on MSN is where we get a lot [of traffic], and we do get even a bunch from people who choose to use us as the default provider on their browser, as well as people who install our toolbar. So, those are the top three sources.

[Q:] Some people have said it’s about one percent of your traffic that comes from people typing in the Live.com web address?

That’s probably true. We’ve not really marketed Live.com. In fact, we’ve really focused, even with this release we’ll be very, very focused on basically having the Live search experience power MSN, and that’s a fairly explicit strategy of ours, if you will, because we feel that that’s the place where we can gain a lot by showing a better search experience, and getting the customers and the consumers who are doing searches with us on top of MSN to do more.”

You can read the full article through ZDNet

I think the question that’s gone unasked in this, however, is what kind of hoops the company is going to want web designers to jump through if their engine catches on. Similar to the way Page Rank suddenly became an issue when Google took hold as a Popularity Based engine, it makes one wonder what kind of keywords and paid help is going to be required to make it for them. Or is this going to be a rehashing of the same things we’re seeing already?

XML Key Management Specification (XKMS)

Filed under: — admin @ 10:55 am

This document specifies protocols for distributing and registering public keys, suitable for use in conjunction with the proposed standard for XML Signature [XML-SIG] developed by the World Wide Web Consortium (W3C) and the Internet Engineering Task Force (IETF) and an anticipated companion standard for XML encryption. The XML Key Management Specification (XKMS) comprises two parts — the XML Key Information Service Specification (X-KISS) and the XML Key Registration Service Specification (X-KRSS).The X-KISS specification defines a protocol for a Trust service that resolves public key information contained in XML-SIGelements. The X-KISS protocol allows a client of such a service to delegate part or all of the tasks required to process <ds:KeyInfo> elements. A key objective of the protocol design is to minimize the complexity of application implementations by allowing them to become clients and thereby to be shielded from the complexity and syntax of the underlying PKI used to establish trust relationships. The underlying PKI may be based upon a different specification such as X.509/PKIX, SPKI or PGP.

The X-KRSS specification defines a protocol for a web service that accepts registration of public key information. Once registered, the public key may be used in conjunction with other web services including X-KISS.

Both protocols are defined in terms of structures expressed in the XML Schema Language, protocols employing the Simple Object Access Protocol (SOAP) v1.1 [SOAP] and relationships among messages defined by the Web Services Definition Language v1.0 [WSDL]. Expression of XKMS in other compatible object encoding schemes is also possible.

Source:http://www.w3.org/TR/xkms/

October 7, 2007

Image Map Accessibility

Filed under: — admin @ 10:56 am

Jim Thather provides many tutorials at his web site, but among them is a fully illustrated and thoroughly exampled explanation on the subject of Image Mapping with accessibility in mind.

“The following points apply to accessible image maps:

  • If you want to use an image map, make it a client-side image map.
  • Include meaningful alt-text for every <area> of the <map>, alt-text that conveys the function of that hotspot.
  • Use an appropriate text alternative on the image itself. If there is no information beyond the hotspots then alt="" is appropriate.
  • If you must use a server-side map, also include equivalent text links on the page for all hotspots of your server-side map (and please write to me explaining why you need to use a server-side map, because I would like to know).”

Read the Full Tutorial from Jim Thatcher to see all of the reasoning and explanation behind the process.

The Secret Life of XForms

Filed under: — admin @ 10:57 am

Take a look at the applications you deal with on a regular basis. Regardless of the platform or GUI that you use, or the programming language used to create them, there’s a certain innate commonality to applications: areas where you enter text, buttons (always buttons), menus, scroll bars, sliders, grids, trees, panes (or pages), and so forth. Certainly there are exceptions; graphics programs such as Photoshop or 3D Studio have much more sophisticated interfaces, and games are fundamentally all about interface. But for most business programs, such as accounting packages, word processors, statistical analysis applications, or a wide range of other programs, you’ll find a common set of abstract “components” that provide the bulk of interface functionality. In many cases these components also perform a significant amount of the intermediate processing—communicating directly with databases, setting internal variables to the application, persisting content, and so on.

If you think a bit more about such applications you also begin to see other pieces of commonality. Starting roughly fifty years ago, programmers realized that by creating an application that looped continuously, the application could retain its own internal state, working in “user” time to accept input interactively and generate output without terminating. This idea caused the shift from batch mode to interactive mode programming that underlies every windowed operating system today. Admittedly, most modern applications subscribe to a thread manager rather than creating a (system-locking) infinite loop; however, if you delve deeply enough into that thread manager, the loop is there, figuring out which thread to run at each successive pass.

The modern version of this application loop is called an event loop, named for its role in managing not just threads, but also the events that are passed from the system to various objects within the interface. Events that are not intercepted by some object within the event loop are recycled back to the system, which can discard them or handle them generically.

Event loops make it possible to load and maintain an internal state within the application. That state may be simply the contents of the visible form elements in the application, but more typically, the state is a separate model of which the visible interface is simply a reflection. When you load a file into the application, you are generally loading the model. Similarly, saving the file persists the model in a format understandable to the application.

HTML, as it exists right now, is at its core a batch document—the HTML content that describes a form is read by a browser and rendered as a Web page. In the absence of a scripting language, the form elements themselves are almost completely static—they cannot validate content, they do not interact, and most importantly, changing their states only sets the values of each control—there’s no underlying background model. You can add interactivity via scripting and working with the HTML DOM, but that’s not always portable between browser implementations, and still involves sending the interface representation to an external client, losing state the moment the client replaces the page with a new one.

If you take a look at a typical XForms viewer, you’ll find that it gives you much the same kind of structure as any other application framework does: moving from a batch to an interactive programming mode. Implementations differ, but all XForms viewers preserve and update internal state for the application.

Read More on DevX

Get up to speed with SMIL 2.0

Filed under: — admin @ 8:42 pm

SMIL 2.0, the Synchronized Multimedia Integration Language, has begun to establish itself as an important new approach for integrating multimedia into Web content. SMIL, which offers XML-based approaches for controlling the timing and presentation of multimedia elements, has begun to attract the support of many large software vendors and toolmakers, making it increasingly accessible for developers. In this article, Anne Zieger provides an overview of SMIL and describes several tools available to make SMIL coding simpler.

For developers outside the multimedia world, the Synchronized Multimedia Integration Language, or SMIL, may be something of an obscure technology. But at least among a few key players, SMIL has begun to establish itself as an important approach to presenting multimedia online.

SMIL support has crept into technologies backed by Adobe, Microsoft, and perhaps most prominently, media delivery leader Real Networks. A wide variety of smaller vendors have begun to provide SMIL authoring tools and players as well.

In days to come, as support for the current 2.0 specification grows, working with SMIL could become a standard strategy for any developer whose work requires some form of multimedia asset control. If the growing roster of tool creators is any indication, building presentations in SMIL should become easier as well.

SMIL history and overview

SMIL has been in development since March 1997, when the World Wide Web Consortium (W3C) established a working group on synchronized multimedia.

SMIL is an XML-based language that allows authors to write interactive multimedia presentations without using multimedia management tools such as Macromedia Director. Authors can describe the timing of multimedia presentations, associate hyperlinks with media objects and define the layout of the presentation onscreen. The SMIL 2.0 spec, for its part, is a series of markup modules defining semantics and XML syntax for certain SMIL functions.

The W3C released the first version of SMIL in November 1997, attracting a moderate level of industry attention, including some support from Real, Adobe, and Microsoft.

With the 2.0 version of SMIL, released in August 2001, these companies remain on board; in addition, more than a dozen independently-crafted SMIL authoring platforms have arrived on the market. According to W3C documents, SMIL 2.0 has two main design goals:

  1. To further define an XML-based language that allows authors to write interactive multimedia presentations.
  2. To allow re-use of SMIL 2.0 syntax and semantics in other XML-based languages, notably integrating timing into XHTML and Scalable Vector Graphics (SVG). (SVG is a language for describing two-dimensional graphics in XML.)

One example of how the group met the second goal is Microsoft’s XHTML + SMIL profile, which integrates SMIL directly with XHTML and Cascading Style Sheets. While technically not part of W3C’s SMIL 2.0 recommendation, they’re linked; one of the implementations used to validate SMIL 2.0 was based on the XHTML + SMIL profile.

Vendor support

Arguably, the most dedicated and visible vendor in the SMIL arena is Real Networks, whose RealOne player supports playback of SMIL presentations. To support SMIL authoring, Real released its own XML/SMIL authoring tool, SMILGen, in September 2001.

Microsoft added a subset of SMIL support to Internet Explorer starting with version 5.0. The current version of IE, 6.0, has extended its SMIL support. IE 6.0 allows developers to:

  • Use SMIL filters and effects (such as fading an image)
  • Transition between text or media elements by using wipes
  • Apply a graduated color background to an element, controlling the timing for each

Another SMIL-friendly vendor is Adobe, whose visual authoring program for Web designers, GoLive Studio, offers both SMIL and QuickTime editors. GoLive is designed to be a highly comprehensive package; the fact that SMIL is included as a standard feature suggests the extent to which it has become an accepted approach to media production.

The wireless industry, meanwhile, has taken on SMIL as a means of enriching its current text-based messaging technology. Many industry players expect to see the highly popular Short Messaging Service (SMS) evolve into Multimedia Messaging Service (MMS) as wireless networks adopt second- and third-generation technologies. Using SMIL encoding and SMIL-based players, MMS would add text, images, audio, and eventually video to SMS.

Read more of this article at IBM

« Previous PageNext Page »

 
We prefer Bluehost Hosting
 
Text Space Available
Your Text
www.Domain.com
Posicionamiento Web Mexico
Servicios: SEO, Marketing en Internet, Google Adwords y Optimizacion Web
www.SEOwebMexico.com

WooThemes - WordPress themes for everyone

Quick Links
Our Friends
Cool Places
Visit also
About Us