Search Logger
Archives for March, 2010.

Archive for March, 2010

Helping you help us help you

9:25 pm - March 31, 2010 in Google AJAX Search API Blog
As I mentioned in a previous post, we've taken several measures to help differentiate legitimate API traffic from bad requests. To help us serve you better, I'm pleased to announce a new way for you to identify your request as harmful. Beginning today, please include the &evil=true parameter in your API requests if you're one of the bad guys.

How does this work in practice? Here's an example query which lets Google know that you're intending to use the API for nefarious purposes. This way, we can respond to your request in the appropriate manner as efficiently as possible.

Note: In order to encourage adoption as quickly as possible, we are requiring all bad requests to include the evil bit by the end of today, April 1.
 

Announcing YUI 3.1.0

3:59 pm - March 31, 2010 in Yahoo! User Interface Blog

The YUI team is pleased to announce the release of YUI 3.1.0.

Highlights of this release include the following:

  • Component infrastructure — The Widget infrastructure for YUI 3 is now largely in place. Satyen Desai has been focused on this work over the past several months, and the approach he discussed at YUICONF 2009 is now fully realized as the Base, Attribute, Plugin and Widget modules in the component infrastructure group reach GA status. Satyen has provided a detailed developer guide for those interested in learning more about the component infrastructure.
  • Internationalization utility — Satyen worked with Yahoo internationalization engineer Norbert Lindenberg on the new Internationalization utility for 3.1.0. This component introduces YUI 3’s approach to internationalization, allowing for the externalization of module language resource bundles that can be delivered separately from code, with support added to Adam Moore’s loader for specifying language preferences. We’ll continue to develop and build upon this approach as we introduce YUI 3 widgets with more complex UIs.
  • TabView as a reference widget — Matt Sweeney’s TabView is updated and serves as a good reference implementation for YUI 3-based widgets, including the approach we’re taking on progressive enhancement.

  • Loader improvements — Adam Moore has improved YUI 3’s loader to better support the YUI 3 Gallery. As of 3.1.0, you can now load any Gallery module that shipped prior to 3.1.0 without additional configuration simply by referencing the module in your use() statement.
  • YUI 2 in 3 — Adam extended the power of use() even further with the YUI 2 in 3 project. With the release of 3.1.0, you can now include YUI 2 modules directly from your use() statement, bringing a fully sandboxed version of YUI 2 into your YUI 3 instance. This work supports developers who are making the transition to YUI 3 but are still dependent on some components that are unique to YUI 2, including the popular YUI 2 DataTable.
  • New Sortable utilitySortable is a new utility from Dav Glass that leverages Drag and Drop to implement sortable lists. Support is provided for single lists or multiple lists in which items can be dragged from one list to the other.

  • Visual treatments for Slider — Visual designer Jeff Conniff worked with YUI engineer Luke Smith on the Slider component for 3.1.0, the result of which was a series of alternative visual treatments for Slider. Luke has also updated Slider to take advantage of improvements in the general Widget infrastructure.

  • New API for creating synthetic DOM events — Luke added the Y.Event.define() method to make it easy for developers to define new DOM events in the YUI 3 ecosystem. Use this to fill in gaps in the native DOM event list or otherwise label common user interaction moments, then subscribe and unsubscribe as you would with any other event.

As always, YUI program manager Georgiann Puckett has provided a comprehensive changelog for the YUI 3.1.0 release — refer to that document for detailed information about what has changed throughout the YUI 3 family.

What’s Next?

Between the release of YUI 3.0.0 and 3.1.0, more than 50 free, open-source modules have been added to the YUI 3 Gallery. Today, all of that content is accessible to you from any YUI 3.1.0 instance. As we get started on our work for YUI 3.2.0, the library itself will be anything but static — currently, YUI 3 is growing more rapidly from community contributions than from the core team’s work, and those contributions are accessible at an unprecedented scale.

In the coming weeks, we’ll update the YUI 3 roadmap and calendar with early objectives and timelines from our 3.2.0 planning. 3.2.0 will be a widget-focused release as the majority of the core team turns its attention to the high-value UI building blocks that are familiar from the YUI 2 world.

In the meantime, we look forward to your feedback on YUI 3.1.0. Join us in the YUILibrary.com forums and let us know via the bug tracker if you discover issues in the release.

 

Saving one million hours per week

5:51 pm - March 30, 2010 in Blogger Buzz
by Noah Fiedel, Blogger Tech Lead

Five weeks ago we rolled out Auto Pagination, a major milestone in our efforts to make Blogger faster for you and your readers. We are very happy to report a ten percent overall decrease in page loading latency across all Blogger blogs and a twenty-seven percent decrease on archive pages.

Just how significant is a ten percent latency reduction? It's not often that software engineers get to save lives, yet in just the past five weeks we’ve saved eight human lifetimes spent waiting for pages to load! Every week saves an additional:
  • 1 Million Hours
  • 114 Years
  • 1.6 Human Lifetimes
Some of you have expressed concern over the change in how Blogger displays your blogs. Without addressing each individual case, the vast majority of blogs negatively impacted were not actually blogs, but were using Blogger as a kind of free web host. As today’s post makes clear, Auto Pagination has had an extraordinarily positive impact on how blogs are consumed — blog readers are spending less time waiting for pages to load and more time reading the posts you work so hard to write. (By the way: if your pages show fewer posts than you would like, we recommend using After the Jump to ensure that your readers can see more posts per page.)

If a ten percent improvement has such a major impact, what else can be done to speed up your blog? One area we’re looking at is third-party JavaScript. We remain one of the few blogging services to allow users unlimited ability to add JavaScript to their pages — but that flexibility comes at a cost. These JavaScript widgets often add several seconds to page loads — even on fast Internet connections. We’ll talk more about this in a future post; in the mean time, you can try out Google’s Page Speed to identify what might be causing a page to load slowly.

As always, thanks for using Blogger!
 

Upcoming Industry Conferences

12:24 am - March 30, 2010 in Yahoo! User Interface Blog

We love great tech conferences, and we know that a lot of you having amazing things to share. So I’ve put together this list of conferences and barcamps coming up that are looking for speakers or participation.

We are going to be at some of these and we hope we’ll see many of you there speaking or not.

Professional Conferences

Web 2.0 Expo NYC 2010

Submission Deadline: April 12th, 2010
Web 2.0 Expo NYC Submission Page
Conference Date: 18th – 21nd October 2010
Location: New York, NYC, USA

EuroPython 2010

Submission Deadline: April 30th, 2010
EuroPython Submission Page
Conference Date: 19th – 22nd June 2010
Location: Birmingham Conservatoire, Birmingham, UK

Barcamps

We’ll keep updating you on event speaking deadlines as they come up. Let me know what I missed in the comments section and we’ll make sure your event is included here.

 

File transfer in iGoogle and orkut chat

2:14 pm - March 29, 2010 in Google Talkabout
Have you ever wanted to quickly send a file to a friend whom you're chatting with online?  Starting today, you can share photos, documents, and other files while chatting in iGoogle and orkut.  To give it a try, just click Send a file... in the Actions menu while chatting with a friend (no download required):

This feature is also compatible with the file transfer functionality in the Google Talk downloadable software, so you can share files directly from the web with folks who use the desktop version.

File transfer is available in orkut and iGoogle only for now.  We're working on bringing it to Gmail as well, and we'll keep you posted when that happens!

​Posted by Lizhen Wang, software engineer
 

Blogger Status 2010-03-29 11:49:00

11:49 am - March 29, 2010 in Blogger Status
Our image backend is experiencing problems which may affect the display and/or uploading of photos. We are working to resolve this and will update this post when we have more information.

More info can be found here in the Picasa Help Forum.

Update, 3/29 2:00PST: This is resolved. Thanks for your patience.
 

Standards Documentation for IE7 and IE8

2:45 pm - March 26, 2010 in IEBlog

Over the last month, as part of Microsoft’s commitment to interoperability, we’ve published information for Internet Explorer 7 and Internet Explorer 8 describing variations from certain web standards. Today we published another set of documentation which includes information about how IE extends these web standards:

  • [MS-CSS21E]: Internet Explorer Extensions to Cascading Style Sheets (CSS) Level 2 and DOM Level 2 Style Specifications
  • [MS-DOM2CE]: Internet Explorer Extensions to the Document Object Model (DOM) Level 2 Core Specification
  • [MS-DOM2CEX]: Microsoft XML Extensions to the Document Object Model (DOM) Level 2 Core Specification
  • [MS-ES3]: Internet Explorer ECMA-262 ECMAScript Language Specification Standards Support Document
  • [MS-ES3EX]: Microsoft JScript Extensions to the ECMAScript Language Specification Third Edition
  • [MS-HTML401E]: Internet Explorer Extensions to HTML 4.01 and DOM Level 2 HTML Specifications
  • [MS-ISO10646]: Microsoft Universal Multiple-Octet Coded Character Set (UCS) Standards Support Document
  • [MS-ISO8859]: Microsoft 8-bit Single-byte Coded Graphic Character Sets Standards Support Document
  • [MS-XMLSTYL]: Microsoft XML Associating Style Sheets with XML Standards Support Document

In addition to publishing these new documents we also refreshed the previous content based on your feedback. We have received feedback both through the blog comments here and privately and I’m very grateful for the time spent to so thoroughly review the information. Today’s release completes the documentation for the relevant final-approved web standards from W3C, ECMA, and ISO and I’d like to encourage you to send me feedback to help us make further improvements. You can leave comments here or post questions or comments to the Documentation on Standards User Forum on MSDN.

While most of the interoperability information we have provided relates to final approved web standards (for example a Recommendation from the W3C), CSS 2.1 is the exception. We have discussed in the past how important we believe interoperable CSS 2.1 is to the web development community. Having a comprehensive test suite available from the W3C is one aspect of ensuring that interoperability and publishing documentation about where product behaviour varies is another. Because CSS 2.1 is still a W3C Candidate Recommendation we will update our documentation should the specification change and as the test cases in the test suite become officially approved by the working group. We will do this until the standard reaches final approved Recommendation status.

Adrian Bateman
Program Manager

 

DOM Level 3 Events support in IE9

1:04 pm - March 26, 2010 in IEBlog

Interoperable DOM Events are a core part of delivering the promise of HTML5’s “same markup.” With DOM Events support in IE9, web developers can write more interoperable code using an event model that is more robust and offers additional functionality not possible in IE’s previous model.

When authoring JavaScript event code for IE8 or previous versions, web developers have to branch their code specifically for IE. For example, most pages which employ cross-browser event code do so by using a completely separate code path:

if ( <addEventListener detect> ) {
// W3C DOM Event Model
// Supported by: Firefox, Chrome, Safari, Opera, and (now) IE9
}
else if ( <IE or attachEvent detect> ) {
// Previous IE Event Model code
}

Alternatively, web developers might use the “traditional” event model (HTML event attributes) since it offers the most interoperable functionality. However, this comes with a dramatic loss of functionality. The efforts of JavaScript framework publishers to patch browser differences between event models but often take a performance hit in doing so.

With IE9, you can write the same markup and script and have it work across browsers without sacrificing functionality or performance. Please follow best practices to ensure your standards-based event processing runs in IE9.  The Platform Preview will let you begin to see how your code will run in IE9.  We encourage you to report issues you find.  Since IE9 is still in development, the Release Notes and Connect bug database will help you understand if the issue you found is known.

“Same markup” through standards

Today developers can’t have the same markup run across browsers. IE9’s support of DOM Level 3 Events is a huge step forward but doesn’t entirely solve the problem. That’s why we’re working in the W3C to create a high-quality spec and create a test suite to help browsers converge on interoperable behavior.

For several years now, we have been working with the W3C standards organization to provide input and feedback on this latest version of DOM Events. When finished, this “Level 3” version will supersede its nearly 10-year old predecessor, DOM L2 Events. It’s been a pleasure to work regularly with members of that working group, representatives from industry, and other browser vendors to ensure that the specification is implementable, meets web developer scenarios, and raises the bar on interoperability.

There are two specific parts of the DOM Level 3 Events specification that I’m particularly excited about from the perspective of interoperability. The first is that IE’s “mouseenter/mouseleave” and “focusin/focusout” events have been recently adopted based on their utility and wide-use on the web.

The second is the Keyboard event interface. Did you know that the ubiquitous “keydown” “keyup” and “keypress” events (present in all browsers) were never standardized? This is an example of one of the reasons that web developers don’t have the “same markup” (script) running across browsers with regard to the keyboard.

The IE9 platform preview is the first implementation of the Keyboard event interface from the DOM Level 3 Events specification. The Keyboard event interface defines a Keyboard-interaction model that solves longstanding internationalization issues as well as provides a convenient high-level keyboard abstraction (based on Unicode). Naturally, we expect that previous low-level keyboard APIs (e.g., “keyCode”), despite not being 100% interoperable, will coexist in browsers for backwards compatibility. We welcome feedback on this interface, and for those interested in providing feedback directly to the working group, please email www-dom@w3.org

In our continued efforts to drive interoperability, we have contributed an initial set of tests for the DOM Level 3 Events specification and plan to contribute more in future updates to the Test Center. As the specification evolves toward recommendation status, these tests may also need to evolve. We look forward to feedback on these tests, and welcome test contributions from the community and other implementations to establish a DOM Level 3 test suite that meets the high interoperability goals of the specification.

Changes from the previous IE event model

As a whole, the DOM Events model (from both DOM Level 2 and Level 3 Events) solves many scenarios which the previous IE model is not equipped to handle. For example, the new DOM Events model enables the following scenarios to work interoperably across all browsers:

  • A “catch-all” listener can be registered on a DOM subtree for an event which does not bubble (requires capture phase).
  • Guaranteed firing order for multiple listeners on a single node.
  • Ability to tell which node the event flow is currently on (currentTarget).

As a result of supporting the new event model, IE9 standards mode makes a few changes to some existing events in the first platform preview build. (All of these changes are scoped to IE9 standards mode only.) For example:

  • The bubble/cancel defaults for many events have changed to match the standard.
  • Event listener registration for legacy events supported in the new model (using attachEvent/detachEvent) use the same event-firing order as addEventListener.
  • Registration using the HTML event attributes (and their properties) will simultaneously enable the MSEventObj (legacy event object) through the window.event property as well as the new DOM event via the event handler parameter. We do this because the HTML event attribute registration technique is ambiguous—e.g., did the web developer expect the new DOM Events model or the old IE one?

We built an interactive demo to showcase some of the features of the DOM Events model. Check it out on the IE9 Test Drive site. We also show a simple example of one way in which DOM Events can be used in practice. View it in the IE9 platform preview then view it in another browser; the key takeaway is that the DOM Events model works the same way across browsers—“same markup” in action.

More to come

We’re still in development so there’s more to come.  Here are a few top things you may find missing that will be available in a future update to the platform preview. Please read the Release Notes for further information.

  1. Mutation events. The mutation events allow web pages to react to changes in the structure of an HTML document such as changes in attributes, text content, element removals and additions, etc. The DOM Level 2 Events specification defines the mutation events. Note, however, that not all the mutation events are implemented across all browsers.
  2. DOMContentLoaded. The DOM Level 3 Events specification defines the generic event framework and a core set of events, but does not define all the events that are relevant for a web browser to support. HTML5 defines many additional events, most notably DOMContentLoaded and other events related to parsing and loading a webpage.
  3. Compatible event properties. While not standardized, many event properties like “keyCode”, “cancelBubble”, etc. are widely implemented by other browsers and many web pages depend on their functionality for purposes of interoperability.

We encourage web developers everywhere to start coding primarily to the DOM Event model. Check out the test drive demo and interactive events demo, the DOM Level 3 Events test cases, and send us feedback.

Thanks,
Travis Leithead
Program Manager

 
 
 
 
 
 
It's All About Search | © clsc.net |
2010.09.1010:47
Tech used here: Valid HTML - Valid CSS - Valid RSS - JavaScript - PHP - Smarty - MySQL - and a partridge in a pear tree.

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 638667 bytes) in /home/n6068/public_html/slogger/news/wp-includes/wp-db.php on line 452