REBOL Technologies

R3.0 Project Status Update

Carl Sassenrath, CTO
REBOL Technologies
3-Nov-2008 21:22 GMT

Article #0377
Main page || Index || Prior Article [0376] || Next Article [0378] || 24 Comments || Send feedback

As we move toward the completion of REBOL 3.0 and it's related components, it is time to say a bit more about our progress and plans.

For the last few months, the main focus has been on the graphical user interface (GUI), with the objective of creating a GUI system that was powerful, flexible, but remained lean and lightweight. This was no small requirement and has consumed a great deal of my time. In fact, more than any other aspect of the GUI project, reduction of the number of concepts and simplification of each separate concept has taken more time than I had anticipated.

As a result of that mind voyage, I have concluded a general rule that:

  • Simplicity is a delicate thing;
  • it must be recognized as an objective worth achieving and maintaining, and
  • simplicity can easily be destroyed, so
  • therefore, it must be guarded with great care.

Said another way: simplicity isn't free. In fact, it's more work at the start.


The merits of that rule apply to more than just software. Look at the last few months of financial market meltdown mainly due to years of using financial instruments that were so complex that no one, not even head executives, understood their true value (or lack thereof) or could properly weigh their associated risks.

Now multiply that by ten and you have most modern software systems.

Now multiply that by ten and you have the US federal government.

In any system, when you build layers upon layers of complexity, the system will ultimately fail, in a huge way, to do the most damage possible.

Avoiding that, to whatever degree is possible within our human capabilities, is what drives me.

Anyway, regarding the project, good progress was made so that by the end of September, we started a new private group for testing, discussing, improving the GUI. (I did not want a lot of voices at this point, so I intentionally kept the group very small. It will be expanding soon.)

During October

During the month of October, the project objectives were:

  • To review the basic GUI design/concepts and provide feedback.
  • To contribute improvements, especially focusing on providing a modern graphical appearance and a standard set of styles (widgets).
  • To track and fix bugs as necessary.
  • To increase developer awareness of the project in advance of the next stage.

Also included for October was to build a documentation strategy:

  • To produce a new organization of documents based on the new design, for the purposes of educating new developers.
  • To provide clear and easy-to-understand examples and how-to articles.
  • To begin explaining the finer points, to enable developers to build more complex types of styles, but within the bounds of the design.

And finally, to write a few example reblets, from the GUI point of view and in order to help evaluate the design and to serve as examples:

  • The GUI test control panel (with numerous subpanels, as needed)
  • A simple submission form, such as that used for contact information.
  • A super simple REBOL source file browser.
  • A mini draw program, along the same lines as Sievertsen did in R2, including a few shapes, and controls, as well as undo.
  • A first pass at a color selector/requestor.
  • An analog clock as a resizable, setable, getable style.

More important than the specific features of any of these reblets is that they provide the opportunity to explore the methodology of the GUI and evaluate its current level of capability. In other words, you cannot complete a good GUI system without using it to do real things.

So, we achieved those objectives for October.

For November

For November, our main goals are:

  • To expand the GUI group to include more developers.
  • Discover and resolve various bugs or problems with the GUI or the SVG draw system that it's built on.
  • Wrap up the first skin that has an acceptable appearance for R3, its developers and their initial reblets.
  • Finish off the required base GUI styles (widgets), including more of the compound styles (e.g. combo box), standard requestors and the popup mechanism.
  • To determine documentation priorities, make a list of what's missing, and get those written and published in DocBase.
  • To add several more example reblets, with increasing features and capabilities.
  • To get a real reblet running, such as DevBase itself, which will allow us...
  • To get the source distribution back online and available to interested developers.

And, as you may guess, these last two items that are important because not only do they help move R3 toward completion, but they also help us build and improve the tools we need to do so.


Updated 10-Mar-2024   -   Copyright Carl Sassenrath   -   WWW.REBOL.COM   -   Edit   -   Blogger Source Code