Moving canvas operations out of event handlers is the key to smooth drawing on the iPad. The queue processor's inner loop is restricted to 10ms at a time every 30ms. This ensures a full two-thirds of the time is spent receiving touch events.
Interesting (to me) UI insight: if a workspace is not scrollable or scalable, its dimensions are limited to the minimum common dimensions of landscape and portrait modes. Thus Chalk's work area is almost square.
Ah, that's the math. I had forgotten about the toolbar (thinking about the address bar hiding).
Supporting orientation changing at all is also an interesting choice. The addressable surface area would be larger if static, so the trade is pixels for orientation flexibility (and the appearance of gravity holding the chalk and eraser in place, and the orientation of the light switch...).
Yeah, a series of deliberate decisions led us down this path. We could have opened it up and made it more generic. The tight scope allowed us to get it deployed in 3 days.
Looking at the code I wander why didnt they allow this for the iPhone (it would be adding more media queries and nothing else). It would be pretty cool (mainly this is envy because me not having an ipad but an iphone).
Anyway, great app, they should enclose it on an iphone app with a webkit browser stripped down and offer it for free on the store (they have the other premium app with more features).
Shameless plug: I threw together an open-source version for browsers (or mice, more specifically) this morning - http://news.ycombinator.com/item?id=1873371
https://github.com/mrduncan/marker