Enhancing Mobile Web Development: Tips and Strategies

Table of Contents

Introduction

Swag and discussion of the plan for the day.

Testing Mobile JavaScript (John Resig)

"Mobile WebDev is crazy"

Look at at two or three year timeframe for most devices to live. However, in this time many browsers aren't upgraded.

How do you set up the correct testing asumptions for the mobile browsers:

  1. Find current data about usage patterns

AdMob has some information. Contrary to most expectations Symbian and RIM are significantly larger than iPhone or Android and OperaMini(sp?) is the most popular mobile browser

Yahoo! should be releasing stats on mobile use this year

  1. Define your support matrix

Desktop Browser support

jQuery will support browsers three years old or newer.

"What's it like to work on the C grade browser team at Yahoo!?" re: HTML-only implementation.

Mobile Browser Support

Testing mobile browsers: start with the simulators then acquire hardware. Based on basic estimates this could be done for less than $6000.

"Find someone who has done mobile web devlopmenet for years and you'll see this dead look in their eyes."

Symbian S60

Is the most popular mobile platform and ships on most Nokia devices.

Opera Mobile vs. Opera Mini

These are radically different browsers: Mini is essentially a push-to-server bitmap viewer; 2s load time expiration.

Opera Mini uses a conversion system for pushing requests and events back to an Opera server.

Need to use a internet simulator for blackberry 4.6 and 4.7

Need to do more research on Maemo / Meego

TODO TouchScroll

allow js interactoin

Opera Miniensure that the degratded platform is reasonable

TODO Down load Fennect for Andoriod

Alternatively use Phonegap

OSNEWS: Add to RSS reader

TODO: deviceanywhere looks like

quicksmode.org/m

jquerymobile.com

LImit is for moden web browsers

Blackberry has difference behaviors even by version

Does android any differences in actual functionality

What is caching based on the Yahoo research

"when developers sit down to work on mobile applications there arent any consisten conventions for how thig are supposed to "

I don't know why people are just copying what steve jobs says

Look at plugins for the for jQuery

Rails three and mobile

Cache mainifest

Open Space

Setup

What is Open Space

Proposed Sessions

jQuery UI

Northwebst day of javascript

jQuery data linking

jQuery build planning

Version 2.0 of the Open Space conference

jQuery tooling and documentation

jQuery and standardization of browsers

Unit testing and CI

Templating: $.tmpl()

Sessions

jQuery UI (Discussion)

Over view of

http://jqueryui.com/demos/accordion/

An example of this was

http://docs.jquery.com/Plugins/Undo

http://michaux.ca/articles/the-command-pattern-in-javascript-encapsulating-function-property-calls

General overview of the way that a command pattern could be used by the Filament Group's menu plugin since it requires hacking.

It seems like this would be awful.

http://code.google.com/p/wixet/source/browse/branch/wixet3rd/js/fg-menu.js?spec=svn141&r=141

Discussion

2Python 3 has decent closures.

jQuery and AIR

Zillow backend developer: Cole Rottweiler

Nordstrom UI developer: Ray Knight .

Functional Programming (Nick Fitzgerald)

Nick Fitzgerald. http://github.com/fitzgen

Parse string and make into function.

Is it possible to even use functional approaches in JavaScript in production?

No .prototype extensions to core objects.

Check for way to extend Oliver Steele's work.

Goal is to allow for any string in a callback

$("#myElem") .functional() .click("2 + 5")

TracerMonkey: function optimization of arrays vs. object literals.

Perform an overview of functional programming and determine if it would actually be useful from a per

Functions encapsulate reasonable chunks of logic.

The examples were provided for the case of map but the question is whether

  1. Destroy
  2. Create

How to actually use currying of functionality

underscore.js is another way to use.

woo.js is http://code.google.com/p/woojs/

TODO Advocate The Little Schemer

TODO Implement underscore.js

Building a Better DOM API (John Resig)

Resig uses TextMate.

NodeList

document.getElementsByTagName("div") returns a NodeList.

If a new div is inserted this becomes part of the collection.

NodeList.prototype is the core item to build into jQuery.

document.body.children.querySelectorAll = $.find

Important to have a test suite, implementation, and get browser vendors on board.

How do you deal with differences between NodeList and Arrays.

NodeSelector: matchesSelector()

Look at the work done on NodeSelector and matchesSelector(*)

Now they have to add it into the spec because it exists

DOM mututation events

NodeList:requery()

Functional array methods

filter, map,

$.live replacement: NodeList:on("added", setClass)

Security: NodeList.prototype.secure

Why not Array.slice and Array.push

Issue is the way that Array.push and Array.reverse both operate inline rather than just return a new array.

Goal is to have a reasonable enough API to handle the DOM

Should not need to ship a library to get reasonable functionality

"having jquery in the browser would be pretty awesome, i won't lie"

Firefox with profiles, vim, clojure compiler for core jquery

Author: Jason Walsh

j@wal.sh

Last Updated: 2025-07-30 13:45:27

build: 2025-12-23 09:11 | sha: a10ddd7