Slide 1

Slide 1 text

Ralph Whitbeck

Slide 2

Slide 2 text

Ralph Whitbeck JQUERY OVERTAKES FLASH

Slide 3

Slide 3 text

Ralph Whitbeck Chart from http://trends.builtwith.com/javascript/jQuery

Slide 4

Slide 4 text

Ralph Whitbeck JQUERY PULLS AHEAD • February 2012 • Of the top 17,000 • jQuery is on 54% • Flash still stalled at 47%

Slide 5

Slide 5 text

Ralph Whitbeck JQUERY PROJECT

Slide 6

Slide 6 text

Ralph Whitbeck

Slide 7

Slide 7 text

Ralph Whitbeck COMMUNITY

Slide 8

Slide 8 text

Ralph Whitbeck

Slide 9

Slide 9 text

Ralph Whitbeck COMMUNITY • Users of jQuery • Submit bug reports • Fix bugs • Educate others

Slide 10

Slide 10 text

Ralph Whitbeck TEAM

Slide 11

Slide 11 text

Ralph Whitbeck TEAM • Contributors recognized by rest of team • Constant/Consistent commitment • Any part of the project

Slide 12

Slide 12 text

Ralph Whitbeck SUB TEAMS • Core • UI • Mobile • Infrastructure • Developer Relations • Web/Design • Events

Slide 13

Slide 13 text

Ralph Whitbeck BOARD

Slide 14

Slide 14 text

Ralph Whitbeck BOARD

Slide 15

Slide 15 text

Ralph Whitbeck BOARD • Members are elected • Leads Subteams • Creates governance policies • Approves expenditures

Slide 16

Slide 16 text

Ralph Whitbeck TRANSPARENCY • Decisions made in public • http://groups.google.com/group/jquery-board-public • Status updates in public • http://jquery.org/updates • Project meetings in public • http://jquery.org/meeting/

Slide 17

Slide 17 text

Ralph Whitbeck

Slide 18

Slide 18 text

Ralph Whitbeck SFC • Member project since Sept '09 • 501(3)(c) • Fiscal Sponsor • Holds jQuery’s trademarks • Provide free law services

Slide 19

Slide 19 text

Ralph Whitbeck ORGANIZATIONALLY • Outgrowing SFC • Form our own Organization • 501(3)(c) or 501(c)(6) • Many complexities in transition

Slide 20

Slide 20 text

Ralph Whitbeck JQUERY CORE

Slide 21

Slide 21 text

Ralph Whitbeck JQUERY RELEASES • In the last year: • 10 releases • 3 major, 7 minor • 1.5 • 1.6 • 1.7

Slide 22

Slide 22 text

Ralph Whitbeck JQUERY 1.5 - AJAX • Enhanced extensibility with prefilters, converters, and transports • Ajax methods return a jqXHR object • jqXHR has a promise interface which is an implementation of deferreds.

Slide 23

Slide 23 text

Ralph Whitbeck JQUERY 1.5 - DEFERREDS //Generic  interface  for  working  with  async  behavior $.when(  somethingHappens()  ) .then(  function  ()  {      doSomethingElse(); }); //Based  on  CommonJS  Promises/A  spec  (not  100%)

Slide 24

Slide 24 text

Ralph Whitbeck JQUERY 1.6 - .ATTR() REWRITE • Performance improvements • jQuery was too magical caused too many edge cases. • .attr and .removeAttr for attributes • .prop and .removeProp for properties

Slide 25

Slide 25 text

Ralph Whitbeck JQUERY 1.6 - RELATIVE CSS //Before: var  sbwidth  =  parseInt(  $("#sidebar").css("width"),  10); $("#sidebar").css("width",  (sbwidth  +  100)  +  "px"); //Now: $("#sidebar").css("width",  "+=100px");

Slide 26

Slide 26 text

Ralph Whitbeck JQUERY 1.6 $.MAP() ENHANCEMENT //In  jQuery  1.6,  it  is  now  possible  to  use  jQuery.map()  to  map  objects   into  a  new  array  of  items.  Previously,  this  only  took  in  other  arrays. names  =  {  firstname:  "Elijah",  lastname:  "Mannor",  age:  "OLD"};                   names  =  jQuery.map(names,  function(v)  {        return  v.toLowerCase(); });   //  returns:  ["elijah",  "manor",  "old"]

Slide 27

Slide 27 text

Ralph Whitbeck JQUERY 1.6 - OTHER NOTABLES • Effects Improvements - Animations now implement Deferreds • Support added for requestAnimationFrame (pulled in 1.6.3 due to bad results) • New Deferred Methods - always

Slide 28

Slide 28 text

Ralph Whitbeck JQUERY 1.7 - EVENT IMPROVEMENTS • New .on and .off methods unify .bind, .delegate, and .live • 50% performance improvements of delegated events • Old API's aren't deprecated. Just "shortcuts" to .on and .off

Slide 29

Slide 29 text

Ralph Whitbeck JQUERY 1.7 //  Emulates  1.6  .bind //  Attaches  a  handler  directly  to  all  .foo  currently  on  the  page  when   code  is  executed $(".foo").on("click",  function(e)  {});

Slide 30

Slide 30 text

Ralph Whitbeck //  Emulates  1.6  .delegate //  Attaches  a  handler  to  all  '.foo'  currently  on  page  that  will   trigger  when  a  '.bar'  inside  one  is  clicked $(".foo").on("click",  ".bar",  function(e)  {});

Slide 31

Slide 31 text

Ralph Whitbeck JQUERY 1.7 //  Emulates  1.6  live //  Attaches  a  handler  to  the  document  that  will  trigger  when  a  '.bar'   anywhere  in  the  document  is  clicked $(document).on("click",  ".bar",  function(e)  {});

Slide 32

Slide 32 text

Ralph Whitbeck JQUERY 1.7 - HTML5 SUPPORT //Full  support  for  HTML5  selectors  -­‐  even  IE6! //Still  need  a  HTML5  Shim  or  Modernizr  for  static  HTML5  Tag  rendering. $("header").hide();

Slide 33

Slide 33 text

Ralph Whitbeck JQUERY 1.7 • AMD support • You can use a AMD loader like RequireJS to load jQuery dynamically.

Slide 34

Slide 34 text

Ralph Whitbeck JQUERY 1.8 AND BEYOND

Slide 35

Slide 35 text

Ralph Whitbeck

Slide 36

Slide 36 text

Ralph Whitbeck JQUERY 1.8 AND BEYOND • Focus on cleaning code and slimming down the file size • Not expecting new API's for 1.8 • Exploring ways to break IE6/7 functionality into a compatibility plugin. • NOTHING IS PLANNED!

Slide 37

Slide 37 text

Ralph Whitbeck JQUERY UI

Slide 38

Slide 38 text

Ralph Whitbeck JQUERY UI • 8 Maintenance releases for 1.8 • Current version is 1.8.17 • Focusing on code clean up and future maintainability • Closing bugs backlog

Slide 39

Slide 39 text

Ralph Whitbeck JQUERY UI 1.9 • Spinner • Menu • Tooltip

Slide 40

Slide 40 text

Ralph Whitbeck JQUERY UI GRID • Roadmap for 2.1 • New Widgets/Utilities being developed: • Selectmenu • masked input • Inline editing • Timepicker • Menubar • $.observable • Globalize

Slide 41

Slide 41 text

Ralph Whitbeck JQUERY MOBILE

Slide 42

Slide 42 text

Ralph Whitbeck JQUERY MOBILE • Recently released 1.0 version • Support for many devices • New themeroller • Todd Parker will tell us more in a few.

Slide 43

Slide 43 text

Ralph Whitbeck SMALLER PROJECTS

Slide 44

Slide 44 text

Ralph Whitbeck OTHER PROJECTS • Infrastructure overhaul • Site refresh • New Plugin Site (w/ backups!!!) • Learn Site

Slide 45

Slide 45 text

Ralph Whitbeck SPECIAL THANKS • Content • Dave Methvin • Adam Sontag • State of jQuery 2011 (from jQuery Summit) • Design • Doug Neiner • “Magical Doug”

Slide 46

Slide 46 text

Ralph Whitbeck

Slide 47

Slide 47 text

Ralph Whitbeck @RedWolves [email protected] http://ralphwhitbeck.com TWITTER EMAIL WEB