1 The Yahoo! User Interface Library (YUI) Nate Koechley Refresh 06 Orlando, Florida 2006.11.17.

Slides:



Advertisements
Similar presentations
Yahoo! UI Library Ajax Engineer, Dec 30th, 2006 F2E–
Advertisements

Data Publishing on Web 2.0 Leigh Dodds, Chief Technology Officer, Ingenta 1 st February 2007.
® IBM Software Group Copyright © 2005 IBM Corporation AJAX Toolkit Framework Emerging Internet Technologies Group.
COMBASE: strategic content management system Soft Format, 2006.
Web Applications Development Using Coldbox Platform Eddie Johnston.
Virtual SharePoint Summit 2010 hosted by Rackspace Overcoming Collaboration Challenges with SharePoint Chris Samson Leslie Sistla Virtual SharePoint Summit.
Web Huh?! Leigh Dodds, Engineering Manager, IngentaConnect 23 rd May 2006.
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
The Team Team consisted of 5 members. Max Annear – Henderson Conrad Orange Mike Debney Anton Slooten Luke Stanford.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
It’s always better live. MSDN Events Developing ASP.NET AJAX Controls with Silverlight.
 2008 Pearson Education, Inc. All rights reserved What Is Web 2.0?  Web 1.0 focused on a relatively small number of companies and advertisers.
Part or all of this lesson was adapted from the University of Washington’s “Web Design & Development I” Course materials.
Kentico CMS 5.0 Full-featured Flexible Web Content Management System for All Your Needs.
XML on the Web: is it still relevant? O'Neil D. Delpratt.
Microsoft SharePoint 2010 Upgrade Preview FSU SharePoint Users Group Presents: Thursday, December 1 st, 2011.
Web Design Basic Concepts.
Definition from Wikipedia.  The Prototype JavaScript Framework  implemented as a single file of JavaScript code  named prototype.js (
Drupal Workshop Introduction to Drupal Part 1: Web Content Management, Advantages/Disadvantages of Drupal, Drupal terminology, Drupal technology, directories.
Accessibility for Rich Internet Applications: Colin Clark, Fluid Project Technical Lead, Adaptive Technology Resource Centre Techniques & Toolkits.
What is Web Design?  Web design is the creation of a Web page using hypertext or hypermedia to be viewed on the World Wide Web.
Yahoo! vs. Yahoo! Three Large-Scale Mainstream DHTML Implementations Nate Koechley
Ajax Basics The XMLHttpRequest Object. Ajax is…. Ajax is not…. Ajax is not a programming language. Ajax is not a programming language. Ajax is a methodology.
Štefan PERO AIS What is Web 1.0?  statical web pages  contains informations to one use  no reason to comeback  not interactive web pages.
Philly.NET Hands-on Labs JAVASCRIPT SERIES. July 9: JavaScript Syntax Visual Studio ◦Projects ◦Editors ◦Debugging ◦Script blocks ◦Minification and bundling.
Mobile App Support Jacob Poirier Geri Hengesbach Andrea Menke Erin Rossell.
AJAX By Steven Hernandez Research Analyst NIATEC.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Yahoo! User Interface (YUI) Library Natly Mekdara.
JQuery March 09 th,2009 Create by
Windows Store apps with HTML + Facebook integration
September 15, 2015 Laszlo Overview. 2 Copyright (c) 2007 Laszlo Systems, Inc. Laszlo Systems: Leader in RIA Software Pioneer of Rich Internet Applications.
February 28, 2007 Pamela Williams. Windows SharePoint Services is an enabling technology that is included in Microsoft Windows Server It provides.
YUI: The Yahoo! User Interface Library Nate Koechley Senior Engineer & Designer, Yahoo! User Interface (YUI) Library Team Platform Engineering Group Yahoo!
AJAX Making Dynamic Web pages more Dynamic Jim Hendricks April 25th, 2006.
Instructor, Dr. Khalili Bahram Jeevan Kumar Gogineni.
1 Yahoo! User Interface Library Nate Oracle User Experience April 17th, 2006.
Ajax In Action The Journey into Web2.0 Presented by Eric Pascarello.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Attention.. evangelism. ajax. evangelism. ajax. attention?
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
Development Process Agile/XP Planning + Issue Tracking Google Code provided efficient + effective project management Bug and defect reports Project planning.
Features. Yahoo! Features My Yahoo! Flickr Delicious Yahoo! Pipes Yahoo! Maps Yahoo! Developer Network (YDN) Yahoo! Finance Yahoo! Mobile Yahoo! Hot.
RIA and Web2.0 Development with no Coding Juan Camilo Ruiz Senior Product Manager Development Tools.
Contents : What is Silverlight? Silverlight Overview Silverlight Toolkit Overview Timeline & Packaging Silverlight V1.0 & V1.1 Properties of V1.0 Properties.
Building AJAX-Enabled Applications with ASP.NET AJAX Framework Peter Ty Developer Evangelist Microsoft Hong Kong
New Methods of Disseminating Statistics Hiren Bhimjiyani Data Science and Visualisation Team BIS.
Ajax VS Flex A comparison based on shopping cart implementation PoHsu Yeh py2157.
Kendo Ui Basics.
Web Standards 99.9% of Website are still obsolete Designing & building with standards The trouble with standards Findability, Syndication, Blogs, Podcasts,
Rich Internet Applications 2. Core JavaScript. The importance of JavaScript Many choices open to the developer for server-side Can choose server technology.
Microsoft’s Rich Web Technology XAML,WPF and WPF/E July, 2006 John Allwright.
IE Developer Tools Jonathan Seitel Program Manager.
Web 2.0 IS530 Fall 2009 Dr. Dania Bilal. Web 2.0 Is the Web that is being transformed into a computing platform for delivering web applications to end.
Responsive Web Design (RWD) MIS 3502, Spring 2016 Jeremy Shafer Department of MIS Fox School of Business Temple University 2/11/2016.
Leveraging Web Content Management in SharePoint 2013 Christina Wheeler.
HTML Introduction HTML Editors HTML Basic HTML Elements HTML Attributes HTML Headings HTML Paragraphs HTML Formatting HTML Links HTML Head HTML CSS HTML.
Introduction to Silverlight Development Pavel Yosifovich CTO, Matrix Global; Senior Instructor, Hi-Tech College
INNOV-16: Rich User Interface for the Web???? AJAX to the Rescue Ken Wilner VP of Technology Progress Software.
Cms Full-featured Flexible Web Content Management System for All Your Needs.
Building Internet Applications With Mozilla XULRunner
AJAX.
Pentaho and Yahoo User Interface (YUI)
Web Programming– UFCFB Lecture 9
Modern web applications
Overview of HTML.
Modern web applications
AJAX Toolkit Framework
Web Programming– UFCFB Lecture 9
Presentation transcript:

1 The Yahoo! User Interface Library (YUI) Nate Koechley Refresh 06 Orlando, Florida

2 YUI

3 The Yahoo! Developer Network Utility and Data Web Services Design Patterns Library Browser Support Guidelines Yahoo! User Interface Library (YUI)

4 The Yahoo! Developer Network Ecosystem: Utility and Data Web Services Services Browser Based Authenticatio (BBAuth)Browser Based Authenticatio (BBAuth), Answers, Local, Maps, Photos, Search, Shopping, Travel, Utilities, (Mail coming soon)Answers LocalMapsPhotosSearchShoppingTravel Utilities Hackable Sites del.icio.usdel.icio.us, Flickr, Upcoming.org, WebjayFlickrUpcoming.orgWebjay Burnable Feeds FinanceFinance, HotJobs, RSS Feeds, Traffic, WeatherHotJobsRSS FeedsTrafficWeather SDKs MessengerMessenger, Music, Search Developer Kit, WidgetsMusicSearch Developer KitWidgets Developer Centers JavaScriptJavaScript, Flash,.NET, PHP, Python, RubyFlash.NETPHPPythonRuby

5 The Yahoo! Developer Network Ecosystem: Design Patterns

6

7

8 The Yahoo! Developer Network Ecosystem: Browser Support Guidelines

9

10

11 Why?

12 changing seasons on the web

13 People expect less online.

14 But we are online…

15 … and tied to the browser.

16 So we must level the playing field.

17 how?

18 it takes 2 things

19 We must improve our technology

20 Data Transport data: custom, xml, json behavior: js mixed: new xhtml, (X)HTML DOM JavaScript Specification Implementation Defects [ Theory / Practice ] BOM API DOM API CSS server Macintosh SafariFirefoxOpera Windows Opera IE5, 6, 7 Firefox Linux, Unix, Mobile 10,000+ UAs

21 Data Transport data: custom, xml, json behavior: js mixed: new xhtml, (X)HTMLDOM JavaScript Specification Implementation Defects [ Theory / Practice ] BOM API DOM API CSS server Macintosh SafariFirefoxOpera Windows Opera IE5, 6, 7 Firefox Linux, Unix, Mobile 10,000+ UAs knowledge areas:7 dimensions:x 4 platforms:x 3 browsers per platform:x 4 rendering modes:x 2 =672

22 (we need a robust platform!)

23 and raise expectations

24 (so users engage and explore with confidence!)

25 DESIGN DEVEL

26 {design} from Implementation Models to Mental Models

27 {development} from Heterogeneous Environments to Compelling and Consistent APIs

28 Nuts and Bolts

29 Six commitments to the platform

30 1] Meet properties where they are today. Facilitate incremental enhancement (“Transitional Internet Applications”)

31 2] Provide a broad, inclusive platform for Web 2.0’s “Rich Internet Application” development (a la carte, not framework)

32 3] Extensible and adaptive, to meet the needs of our diverse product portfolio (lots of different contexts)

33 4] Support all A-grade browsers – an evolving and still demanding challenge (Graded Browser Support)

34 5] Support our scale and scope (industrial grade)

35 6] Be responsive and accountable to the community of designers and engineers (your P1 bugs are our P1 bugs)

36 Learn from Desktop History Adapted from Alan Cooper’s “About Face 2.0” Book

37 [primitives] [compounds] [idioms] Connection Manager (Ajax) Event Utility Dom Collection Drag & Drop Animation Logger Control Menu Control Slider TreeView Calendar Control AutoComplete The Yahoo! User Interface (YUI) Library DHTML Windowing CSS Reset, Fonts, Grids Loader TabView

38 YUI DOM Collection isAncestor(parent, potentialChild) inDocument(el) getDocumentHeight, getDocumentWidth getViewportHeight, getViewportWidth getElementsBy –YAHOO.util.Dom.getElementsBy(function(el) { return (/^ test(el.getAttribute('href'))); }, 'a', 'content')); Class management utilities

39 YUI Event Event –Flexible batch assignment –onAvailable and onContentReady –Scope correction and assignment –Automatic cleanup –Custom Events

40 YUI Event’s Custom Events var myEvent = new YAHOO.util.CustomEvent('myEvent'); myEvent.subscribe(function() { alert('event fired'); }); myEvent.fire();

41 YUI Animation var anim = new YAHOO.util.Anim(el, { width: {to: 400}, height: {by: 400, unit: 'em' }, opacity: {from: 0, to: 1} 1); anim.animate(); Includes support for Bezier math control

42 YUI Connection File uploading in addition to XHR –Easy implementation of file uploading across the A-Grade browsers –Use the upload member of the callback object (instead of "success" or "failure") XHR callback with extra arguments

43 YUI Container Family

44 Drag and Drop It’s easy, sorta, but easy to get wrong too Point, Region, Multiple Handles, !Handles Exposes 15 interesting moments

45 Storyboard Template for Drag & Drop What happens when the mouse is pressed on the draggable object but dragging has not initiated?

46 YUI Logger and Firebug alert(“stop the insanity”); YAHOO.log(“There IS a better way”); Debug with Logger or Firebug directly.

47 CSS Grids Page Widths Template Presets Nesting Grids Together, 200 layouts for 2kb.

48 About YUI Page Weight

49 À la carte Dependencies

50 Lightweight CSS Foundation

51 Why Open Source?

52 What about the timeline? 2005, January –Initial development –One-person team 2005, July –Initial internal release 2006, February 13 th –Open-source release –#1 on Delicious, Digg, Techmeme –36,000 downloads 2006, September 18 th –3000 th member on ydn-javascript ydn-javascript 2006, November 7 th –Linux Journal Editor’s Choice Award: Best Software LibraryBest Software Library –300k downloads 2006, November 13 th –Current release –9 person team

53 What about the namespace? (because I really like $ )

54 Global Variables are Evil Ideally, only a single global per app|lib|widget Speed unaffected; self documentation; reliable Shorten locally if you want. var $ = YAHOO.util.Dom.get;

55 What’s in the distribution? 100s of files –All examples –All documentation –All development builds –All production builds –All minimized builds

56 Yahoo! is powered by the exact same bits we offer to you.

57 What is the license? The most-open there is: BSD

58 Who’s Using It?

59 External Implementations Wall Street Journal Technorati IndyCar.com SugarCRM SmugMug PayPal eBay Yuriz PowerReviews.com Madonet You?

60 Documentation?

61 Landing Page Guides

62 Complete API Documentation

63 Examples and Tutorials

64 The YUI Cheat Sheets

65 Team Blog

66 Is there a community? YUI.exthttp:// YUI.addonshttp://blog.davglass.com/ SourceForge

67 Jack Slocum

68 How is it different from GWT? We believe in JavaScript.

69 Thanks! nate.koechley.com/talks/2006/11/refresh06/YUI/ nate.koechley.com/talks/2006/11/refresh06/YUI/ Nate Koechley: | – Yahoo! Developer Network & Y! UI Blog: – – – – –

70 We’re Hiring! Josie Aguada: Usual suspects: JavaScript, PHP, CSS, HTML, ActionScript…