= Overview = A simple Javascript+SVG application for musicians that allows them to create scale sheets for arbitrary stringed instruments and music systems. Provides a brief look into what might be possible using SVG when combined with Javascript to drive the user interface. Purpose of the discussion is to examine whether or not SVG will ever be useful for developing rich-user interfaces, as an alternative to straight HTML-based GUIs. * The [presentation http://www.brendonwilson.com/projects/scalemaster/Ajax-Schmajax.ppt] * The [application http://www.brendonwilson.com/projects/scalemaster/scalemaster.html] Note: You will need a browser with SVG capabilities, such as the [SVG-enabled version of Firefox http://www.mozilla.org/projects/svg/] or Internet Explorer equipped with the [Adobe SVG Plugin http://www.adobe.com/svg/viewer/install/main.html]. = Implementation Options = * Safari * Internet Explorer + Adobe Plugin * Firefox natively in the future = SVG Issues = * Adobe SVG Plugin difficult: broken in cases, unworkable * Next Firefox: Limited support for SVG, but opens new opportunites for enhanced UI * Alternate: VML - IE specific drawing extensions, available since IE5 (used by Google Maps for driving directions); unfortunately IE-only experience * Size an issue if used for transformation: will have to trade-off bandwidth for ease of frontend development * Transformation spaces can cause difficulties * Authoring tools: ease development, but bloat documents, make achieving slim user interfaces * Question - what's the relationship between SVG and Canvas and their applications. Canvas was a hack. Alex Russell says so. ;-) * Diffult to target anything but a single SVG renderer * SVG is young, no one but Adobe really does it * Question: what about accessibility? Viewed as another aspect of the design of the interface itself, rather than the language/rendering technology = Current Applications = * Heavy, client-size applications * No known pure web applications * Future: integrating SVG and XUL within Firefox may enable this further * 50 mobile phones providing full SVG support; many implement UI in SVG right now = Miscellaneous Future Applications = * Self-contained editing - example, being able to draw within the SVG canvas dynamically when editing a Wikipedia entry to provide illustrations = Alternative Implementations = * Batik on the server size doing rendering, feed to client * Subset of SVG may be acceptable - draw a line between two points, provide event hooking; not important to have full animation and more complicated features of SVG to be useful * Question: What about 3D? Any built in support? No - could transform to VRML or other dead language (maybe look at emma3d - http://www.emma3d.org ) = Conclusion = * Limited use - will be be an additive technology, not a replacement to current HTML+Javascript approaches