cst

Cincom Smalltalk Product Direction: UI

September 10, 2007 20:32:30.558

As most of you know, Cincom embarked on the creation of a new user interface framework for VisualWorks in 2001. It is now 2007, and this framework, Widgetry, has been in development (but not formally released) for six years. At this point in time, our customers have many questions:

  • When will UI building tools appear?
  • When will Cincom start migrating the development tools to Widgetry?
  • How will we migrate our applications to Widgetry?

In looking at those questions, we stepped back and took a look at Widgetry and its goals. Widgetry was built as an entirely new framework, without concern for backward compatibility. Unfortunately, in making that decision, we had not adequately thought through the issues of migration (both on our part and that of our customers), tool support, and maintaining two large frameworks simultaneously for a lengthy period. As is clear from the length of time it has taken to bring Widgetry to this initial release status, still without tools or documentation, we also underestimated the effort involved in the task. When we began looking at migrating our own tools forwards, it became clear that we would have had to commit a large percentage of the total development effort to this task alone, sacrificing numerous other areas that are also important to our customers.

We have come to the conclusion that the leap to Widgetry is simply too large for most of our customers, and have decided not to make it. Widgetry does offer improvements over the existing VisualWorks UI framework, and we have invested a lot of time and effort into Widgetry - but that time and effort is not nearly as large as what would be required of our customers in a migration effort. We understand that many of our customers have been patiently waiting for the improvements promised in Widgetry, and we will be using Widgetry as a base from which to incorporate improvements for the UI in VisualWorks in a more incremental fashion.

What does this mean for you, as a user of VisualWorks? It means that your existing UI tools and applications will continue to work, and will not need to be migrated. However, it does not mean that there will be no improvements. In the next release (scheduled for January, 2008), improvements to existing tools (the Refactoring Browser in particular) will appear. Incremental improvements to the UI will start to appear after that, including:

  • New and better widgets, incorporating some of the enhancements made in Widgetry
  • Improved UI building tools - the painter tools will get updated and improved incrementally
  • Improvements to the framework itself - many of the known issues in the underlying UI libraries will be incrementally addressed

We think that incremental improvements will serve our customers - both existing and new - better than a large leap into a new and incompatible framework. Widgetry will stay in the “preview” directory on the installation media, and will remain available for anyone who is interested in using it. It will not be supported by Cincom, however, and will not be a direct part of our future plans for the product. In the future, we will be avoiding long term projects that require lengthy lead times before customers can examine and explore them. We are committed to working more closely with our user and customer community, and we apologize for the pain and confusion caused by this decision - but we think it’s the best one for our customers

If you have feedback on this, please feel free to send it directly to me, James Robertson, the Cincom Smalltalk Product Evangelist.

Technorati Tags: ,

Comments

So, what next?

[mlq] September 10, 2007 21:48:07.522

So, what will that mean for improvements that were previously put into the "when Widgetry is in" basket?  I'm thinking specifically about font rendering on Linux.  And does that mean that Widgetry is definitely off the table as being the UI framework for VW, or that Cincom is planning on taking a long-term approach in adopting it as the UI framework?  Finally, what exactly does "[Widgetry] will not be supported by Cincom" mean?  Cincom will not devote further resources into developing/maintaining it?

Re: Cincom Smalltalk Product Direction: UI

[ James Robertson] September 10, 2007 22:35:57.173

Comment by James Robertson

Fonts and graphics are actually separate issues from the UI framework, because they exist at lower levels of the system. Improvements made in either area are independent of the UI framework.

As to Widgetry, yes, we will not be devoting resources to it.

[] September 10, 2007 22:36:35.368

I'd be interested in the design lessons you learned from your existing UI that lead you into developing Widgetry. Even though you're not going to go with the new model because of migration costs, there must have been a substantial rationale for developing it in the first place. I'm guessing the project wouldn't have gone on for 6 years if there weren't some substantial improvements in Widgetry that contain important lessons about UI design - lessons that might benefit other designers who don't yet have backward-compatibility issues to contend with.

So, what are the insights that Widgetry would have introduced? How would it have been an improvement over your existing UI model? Even though you won't be using it, there are probably valuable issues to be learned there.

Re: Cincom Smalltalk Product Direction: UI

[ Terry] September 11, 2007 8:39:06.418

Comment by Terry

Your statement that your customers have indicated that they will not be making the jump to Widgetry would indicate to me that you are in a no-win situation. As I understand statements that have been previously been made by the Widgetry developer, window specs could be "automatically" migrated to use widgetry specifications, however it is clear that code that references the uiBuilder or specific visual components cannot be automatically migrated. As I see it, because of the poor design of wrapper a large number of applications have broken encapsulation to add needed features. This by itself will make it quite difficult to automatically migrate to almost anything, even an evolved wrapper design. So, you have two choices; stay where you are, or add a new framework. Attempting to evolve the current framework will create the same incompatibilities as a new framework because of broken encapsulation.

I don't see how you cannot avoid having to maintain two UI frameworks side-by-side if you want to move the product forward.

With respect to the effort to build a GUI builder to support Widgetry, you could take a different tact and eliminate the effort to create a new user interface concept and re-implement the current GUI builder for widgetry. While it would be nice to have a better builder it would enable you to build the tool in a lot less time and have a usable GUI builder.

Additionally, you have left your customers hanging, you have dead-ended the widgetry direction without providing a better alternative. I think this will cause your customers to more seriously consider migrating away from VW.

[] September 11, 2007 9:31:01.474

Aside from any technical reasons, this move creates a pretty strong negative reaction from your customers and potential customers.  Cincom is not in the enviable position of Apple where they can afford a PR mistake or two.  It would be better to drop everything else and commit all your resources to finishing Widgetry.  At least then you can say that you finish what you start.

Re: Cincom Smalltalk Product Direction: UI

[ James Robertson] September 11, 2007 10:47:45.964

Comment by James Robertson

I don't think a "drop everything" and finish is a great idea. Have a look at Travis' post, and Michael's post.

[] September 12, 2007 19:00:11.451

 

I don't view it as all that negative.  There was no way to port our app to Widgetry anyway.

 

Hopefully a smooth transition to better features will come.

 

 

UI's are the central strength of VisualWorks

[Alfred Wullschleger] September 13, 2007 2:43:21.692

I think, that the building of client software has been the major area, where VisualWorks has proven to be a wonderful environment. The combination with Gemstone then offered a really great OO oportunity for developers and end users: easily adoptable to new requirements etc.

Now, you want to move to the relatively restricted Web interface world, which does not have the very flexible possibility of rich clients. When dropping Widgetry, you give away a chance in your central competence!

 GLASS has a better position than VW, since it has already a OO database with all Smalltalk comfort. VW should stay at the high competence of rich client capabilities. I think, that for new customers, the problem of porting from the Wrapper to Widgetry is not a major concern! They would start developing in Widgetry right away!

Might well be, that in some years, you will find out, that the dropping of Widgetry and concentrating on Web was wrong!