After lunch - Rowan Bunning is up to talk about WithStyle. They see the kinds of things they can do in WithStyle as a counterpoint to AJAX style web development - why sacrifice the power of that client you have burning up cpu cycles?
- Intro to WithStyle
- Basic Examples
- Architecture
- Applications and Case Studies
- XML WithStyle
- WithStyle V4
- Future Possibilities
Heh - I'm using WithStyle to blog about the talk - WS is the editor behind the BottomLine blog tool. Where is SwS - Canberra, Australia. They've been working in Smalltalk for many years (at Wizard, in VA). Many community projects: LibTidy, LibXSLT, NetResources, BottomFeeder, BottomLine, NetResources, WebDAV interface, Typeless. They really are tireless this way - they have provided a ton of useful tools.
Rowan is the XML WithStyle Product Manager - he's got a blog as well, as does Michael Lucas-Smith. WS is:
- XML UI for Smalltalk
- CSS based rendering
- 100% Smalltalk objects
- Open and Highly flexible
- Building a synergy between the desktop UI in Smalltalk and the web browser
So - why should we care? This stuff is end user configurable (as opposed to the typical desktop UI). It uses technology that is smack in the mainstream (XML, CSS). Allows you to move between the web and the desktop easily, and brings the full power of the desktop. Differentiators for WS -
- Targeting business apps, not general web space
- Many deployment possibilities
- Intranet/Extranet
- Thin Client
- Embedded desktop/fat client
Stable V3 engine now (used in BottomFeeder/BottomLine). Released EzyXML (editor). Supports CSS2. Supports scripting (Smalltalk). About 33,500 lines of code - working on V4 (Pollock based).
Some demo apps - the example browser, the slide viewer - showing how you can build small apps quickly using WS. I can attest to this - moving BottomFeeder from Twoflower to WS was not at all hard. The Architecture:
- Developer Tools
- Editing - rich editing on top of a schema)
- Layout (CSS)
- XML
- Network layer - download manager and protocol services
In the layout layer, V4 uses Pollock styled by CSS. Michael and I have talked about this for all or part of the BottomFeeder UI. In the editor, there's spellchecking (external C lib), text editor behaviors, structured (schema based) editing, and XML and Object backmapping. BottomLine (the BF blog tool) uses this stuff.
What applications are there? Embedded Browser/Editor, Web App Client, WYSIWYG editor, BottomFeeder, BottomLine, Seaside Rich UI, ExyXML. Next, demos - he showed of WS in BottomFeeder and in the BottomLine posting tool. They were pretty darn easy to integrate, and made my life massively simpler. The concept behind the Seaside Rich UI is to allow Seaside usage in a thin, non-browser based UI. Instead of JavaScript/AJAX, you get Smalltalk - i.e., a smart client. EzyXML, and editor that's been deployed at the ACS (Australian Federal Level government). XML WithStyle - a more full content edting system, hooked up with network services (including WebDAV). Beta available now, plans to get to DocBook and HR-XML. Features multiple undo/redo, specllcheck. Based on open standards - uses XSLT and CSS. Highly configurable.
Coming up - V4
- Better "Box" model
- CSS3
- StyledXML
- Speed, flexibility (Pollock based)
- Drag/Drop editing
- Before/After (CSS)
- Paging
- Zooming
Once they get to Pollock, they intend to allow embedded widgets - i.e., Pollock Widgets in WS forms. They will support HTML Forms, and Pollock's XML UI definition. They would like to get to XForms, XUL, and maybe Avalon.
Question - what about licensing? It's still being worked up - something will be announced soon. We've been concentrating on getting the code ready.
Question - Seems to be a little slow? The demos are on the Mac, where VW performance in general has been an issue. That's being addressed by Cincom.