Wayne Beaton: On again, BoF again
I’ve started to go through some of the BoF submissions for EclipseCon, and came across this gem:
Mylyn Bashing, Brainstorming and Beer BOF
On Mylyn we typically perform UI reviews on conference calls and bug reports. This one will be a little different. As the Mylyn committers present the key parts of the UI, everyone attending will have a chance to complain and throw tomatoes at the screen. We will then brainstorm designs that address the most interesting usability problems that we face for Mylyn 3.0. If the design discussions do not converge we will give up, go for beer, lament about how hard UI design is, and search the hallways for Platform people to blame things on.
I love amusing abstracts. Mylynjust keeps on giving and giving.
I’m in charge of scheduling the BoFs again this year. Once again, I’m trying to determine how to best schedule them. Ideally, I’d like to schedule them based on feedback in the comments. It seems very natural to me to schedule the BoFs that people most what to see, and one way to gauge interest is by feedback on the proposal. In the past, however, relatively little feedback has been provided.
That said, I am an extremely positive person, and I feel that there may be a change this year. In this spirit, I am going to hold off accepting any BoFs until February 14th. On that day, I’ll go through the proposals and will first schedule the most popular ones (I’ll judge popularity based on the number of commenters expressing interest in attending). I’ll reserve the first 10% of the available BoF slots for this. After that, I’ll schedule the rest on a first-come, first-served basis.
We run short of BoF slots every year, so get your proposal in sooner rather than later. Add a comment to your proposal that indicates when you’d like it scheduled (i.e. what slot) and I’ll do my best (no promises). Don’t put it in the abstract, make a separate comment for it. Make sure that you let your audience know about the BoF and encourage them to add their comments acknowledging their interest.
Submit your proposals here.
See you at EclipseCon!
Related Articles
Wayne Beaton: BoF BoF bo BoF, banane manane a fo FoF, …
Markus Kuppe: Eclipse Google Summer of Code BoF
Mik Kersten: Focus on EclipseCon
Wayne Beaton: EclipseCon 2008 BoF Schedule is up
James Ervin: Notes from Eclipse Day at Googleplex
Mik Kersten: Mylyn 2.3 released, Someday
Andy Maleh: Highlights of EclipseCon 2008
Relatd Projects
Swingwebis a web-application framework that enables AWT/Swing application to operate inside
a web container and presented as a web application to the web browser, purely in HTML/CSS/javascript.
The swing application will render and behave in the web-container the same as it would as a desktop application.
There is little knowledge required for the developer to start developing swingweb application as long as
they are familiar with swing UI development.
The main goals of the Swingweb framework are to:
- Enable true component-based web-application development platform
Swingweb allows the developer to specify the web-application in terms of UI components and their interactions. The functionality of the web-application is more formally definedas opposed to page-centric model where functionality is composed by gluing the webpages loosely together. Furthermore, the application functionality is more predictable and guaranteed to work as long as all UI components are unit-tested. There will be no more page-management and http session-state manipulation hassle. Once written, the component, either fine-grain like a text-box, or coarse-grain like calendar, will be reusableand save development costs over time.
- Use swing UI model for web application development
Swing component model is one of the best and most-practiced UI modelfor java platform. There should be no learning curvefor most Java developer to pick up web-application development using swingweb. Swingweb tries to make distinction between desktop and web application development as transparentas it could be yet at the same time maintains flexibility on the controls of the look and feel of the web-application through UI component template system.
- Allow rapid development using existing GUI editors for web application development
There are a lot of good tools for swing application development. Most java IDEs (including eclipse) also contain GUI editors. The editors allow the developer to rapidly develop, maintain and changethe application in response to changed requirement. - Save development cost by merging the development process of swing desktop application and (e.g. in-house) web application
Given the right architecture, the desktop and web application development can be merged into a single process and thus reduces development cost.
Some of the features of Swingweb include the following:
- Support web-environment with multiple concurrent application sessions
While most desktop applications are designed to run in a stand-alone jvm, swingweb extended the AWT toolkit implementation so that multiple concurrent application sessionscan run in the web container jvm, yet making each application session isolated so that the running applications will not interfere with each other's operations. - Component-oriented architecture that allows developers to enable existing swing component to web environment easily
Swingweb underlying framework allows developer to control how the interaction and event-input of each component individually. Thus it is very easy to extendan existing swing component (e.g. some third-party widget) so that it can operate in web environment. - Flexible template-based approach allowing changing look/functionality of component/application
The rendering of the each swing components is provided through a template file that is written in jxp template language(essentially java language). Thus it is very easy to control the look and feel of a component as web widget. Furthermore, the template can be configured per component type or per instance. - Transparent URL manipulation and session management inside swingweb application
Swingweb support url manipulationso the developer can customize how the browser url changes as the interface changes. The application can also access and react to url changesusing very simple API. This allow implementation of webapplication that allows bookmarking, back-buttonand other advanced features such as component caching and sharing. There is also API for per session variables. - Light-weight, performance focus, and scalable for high traffic web-applications
The (awt)toolkit implementation utilizes several techniques including lightweight peers, threadless event queue, custom repaint managerto reduce memory footprint and increase the performance of the swing application in the web context. There is also a special deployment mode, share-app mode, which allows sharing of component instancesacross the application sessions for scalability. - Natural adaptation of components to the webSome adaptation has been made to the components for the web development - e.g. - FileDialog will upload local files to webserver, all button icons will be buffered and rendered property as <img src=""> tag, all components that uses Graphics2D can be rendered nicely as image (with a flag set of the component) etc.




