Archive | May, 2010

Offline clock app

30 May
Photo

Keeping incognito with nitobi s @andrecharland @filmaj @infil00p l:YouTubeMixer

21 May
2010-05-20_18

Live Blogging Notes: Android at #googleio keynote Day2, What’s new with Froyo? (Hepas)

20 May
(standard live blogging caveats)

STAT JOY

– 100K activations a day
– Android now no.2 in smartphone sales (2nd to RIM)
– no. 1 by internet traffic (Admon)

FROYO LANDS TODAY (Android 2.2)

JIT compiler – fast! 2x-5x speedup.

20 new enterprise Features – MS Exchange friendly, Device Admin APIs,??

SDK Capabilities – Application data backup API. Yes, Android backed up the apps before, but not personal data, but now it does. ??Cloud-to-device messaging API. Value-adds – e.g. collapse multiple messages together. e.g. Syncing with browser. Data tethering.

Web – Performance, HTML5, access to tilt, Voice input, Camera

Market improvements and Syncing – "Update all" button and auto-updating. Developers can see stack traces. Market web presence, not just in store. Buy on website, automatically installs on phone.

Ad Support – For everyone, not just multimillion dollar brands and open to any advertiser, not just Google adsense. Different styles of ads – including expandable (slide-down/up instead of leaving the app). Click-to-call. http://google.com/mobileads open to attendees today and with $100 credit.

And Vic concludes with a phone giveaway to all attendees. BAM.

Innovation ponies at #googleio keynote!

20 May
Media_httppicuppercom_onmca

Quick notes from #GoogleIO on the New WebM Video Format

20 May

These are quick notes taken live at #GoogleIO, on the session covering the new WebM format. Usual typo caveat and note I'm only aiming to transcribe what I've heard here.

<h2>Kevin from YouTube</h2>

<h3>Video Support</h3>

<video> gives us open source browser/player with an open source codec/container

HTML5 opt-in at http//ww.youtube.com/html5

WebM videos available on search with &webm=1 parameter

Chrome (h264+WebM)
Safari (h264)
Opera (WebM)
Firefox (WebM)
IE9 (when <video> exists
No advanced overlays yet (ads, annotations)
Caption support just added

<h3>Videos at YouTube</h3>

Both formats wil be supported for new uploads

H.264 – all videos available – with MP4 container @ 360,720,1080
?? and FLV all formats

WebM
?? New HD (720 and above) uploads WebM
?? Later enabled for all new uploass
?? Transcode existing over time
?? 360 and 720 over time

——-

What doesn't work in HTML5 video?

Fullscreen

Embedding <iframe> <object> fallback issues
?? iFrame best option but not always allowed

Live streaming not yet supported in HTML5

Stream management (fine gained control)

Content protection

Implementations and specs still in motion

Ads – no agreement on standards/ecosystem for ads, but do-able

<h2>Google (Jim Bankoski – Former On2 Engineer)</h2>

VP in its incarnations was used by Flash, Skype, others

WebM is a new video format optimised for the web. A media format with VP8 video codec, Vorbis audio codec.

Video?? Quality

Playback Performance

Live/2-way encoder performance

** Openness ** – no royalty

Hardware Device support

Content Creation Tool Support – e.g. Sorenson – providing encoders

—————————

Comparisons – compares to x.264 on most clips for both compression and performance. Caveats: not yet optimised for multi-core or hardware encoding.

—————————

Community effort – Check stuff in mkay

——

Tonight's Chromium nightly

Chrome dev build next week

——

<h2>David Mendels and Bob Mason from BrightCove</h2>

Brightcove solves the range of problems for companies wanting to publish video, optionally advertise, potentially customise player experiences etc etc.

Brightcove will support WebM, H.264, desktops, smartphones, connected TVs … whatever it takes!

——–

<h2>Development experiences at YouTube</h2>

Add &Debug=true or &html=true for videos

&webm=1 on any search

Didn't use HTML5 semantic tags for now – not quite supported across browsers and lacking CSS support

CSS choices

Fallback content and source selection

Device support and inline HTML5

Variable speed playback

Seeking: Pause, Seek, Play

timeupdate/progress/buffering issues

——–

Google did a thorough patent search, but it's open source – there won't be any indemnities

Audio supports Vorbis 5.1

Hoping that the codec will be used in academia etc and optimised further

The calm before the storm at #googleio

18 May
2010-05-18_10

Got bitten by an odd FF phenomenon: setTimeout handler receives an optional argument #NewsToMe

7 May

… As explained here, in um 1999. https://bugzilla.mozilla.org/show_bug.cgi?id=10637 – applies to setInterval and setTimeout.

I had:

theFunc(true); // just call it once

theFunc(); // trigger it to repeat calling itself

function theFunc(initially) {
?? if (!initially) setTimeout(theFunc, 1000);
}

…. which worked fine in Chrome. But then FF it stopped repeating after some random number of iterations! And when I log "initially", I start finding initially is set to numbers like -2. Which turns out to be the lateness factor.

canvas width and height tags are abstract; not screen dimensions

6 May

Canvas width and height work differently to img and are therefore going to be confusing to newcomers.

<canvas width="100" height="100"></canvas>

is *NOT* the same as:

<canvas style="width: 100px; height: 100px;"></canvas>

In the first example, the width and height attributes determine the canvas's "intrinsic co-ordinate space" (ie abstract co-ordinates). In the second example, they determine the canvas size (as you'd expect).

For example:

<canvas width="100" height="100" style="width: 500px; height: 500px;"></canvas>

will associate a 5×5 pixel for each 1×1 area in canvas space.

Width and height attributes must be integer; but the canvas operations support floating-point values for any points and dimensions specified.

(I think the meaning of the width and height tags make sense; but they will instinctively make any traditional web developer cringe after all those years of having <img width="…" height="…" beaten out us.)

Of relevance:
http://stackoverflow.com/questions/2588181/canvas-is-stretch-when-using-css-but-normal-with-old-width-and-height-propert
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#attr-canvas-width

@ded’s chaining async calls is a lovely pattern (via @dalmaer)

6 May

http://www.dustindiaz.com/async-method-queues/

which gives you:

fetchTweet(url).linkify().filterBadWords().appendTo('#status');