calm before the storm
[1/8] from: moliad:gmai:l at: 10-Jun-2008 19:22
hi everyone,
this is an open letter to the whole community. sorry if its a long post.
anyone is welcomed to post questions/comments to this thread, and I
will be very happy to keep it going.
As I have hinted a while ago (and for some insiders to which I've
talked about it/even shown it), I have been silently working on the
real Revault site for a little while now (basic site layout and all
user login/join operations are finished, including 2 step registration
processing with mail confirmation). Before you ask, there is no
public release date for the site, this will require a few steps, like
finding a proper hosting solution, and maybe even the registration of
some domain name.
An online preview of Revault is planned, which will be hosted at a
temporary url, eventually.
The site will be built using a mix of php and remark technology, and
will be AJAXed as needed. As remark v2 gets up to speed, the php side
of things will be weened out slowly as changes are applied to the
site.
For Revault, as well as for many other tasks, I have reached a point
where I need to generate quite a few graphics.
There are MANY graphic packages out there, but nothing seems to fit
the bill for what web integration really needs. They are either
biased towards photography, illustration, or are just so damned badly
designed, that creating MANY images, often cut up into little pieces
AND allowing further changes without loosing all of the information
required to rebuild ALL images exactly the same at a touch of a single
click, is impossible, let alone modify some aspect globally and
regenerate them afterwards.
furthermore, a tedious task is the one needed to re-integrate them
into the web pages or the applications which use them.
Curing this specific problem has been something I have wanted to do
for a long while.
Thus I am working on a new application, 100% rebol-based called Picture-lab.
There is a lot of directions and an exponential amount of features I
can add to such an application and, indeed, it has already been
re-architectured 3 times, and completely re-coded within the last few
days. I have spent quite a few number of hours wandering off in my
head thinking about where I want the application to go, and the number
of feature branches one can build up is just astounding ... in manner
of minutes... hehe.
---------------------------------------------
so what does this mean to you? quite a few things, in fact:
---------------------------------------------
-Obviously, we will all benefit from having a new, eventually
extensive graphic/paint package (even if you're not a rebol user,
btw).
-Remark v2 will be getting a boost in its project priority, and more
exciting news is expected about it in several weeks.
-GLayout is being improved upon almost daily, and many new robust
features are finding their way. In just 3 days:
-------
* Cured the largest layout bug in history I didn't even know existed yet.
* Completely revised/extended and patched the rebol/view text
editing for all field and areas. The path allows us to control and
react to each keystroke. (added before-key/after-key function support
to face/feel directly) this engine even allows you to change the
current key or action being typed and allows you to consume events,
preventing the editing to occur... as an example: creating an
integer! restrited field type is now a 3 line affair, even preventing
copy/paste of invalid values!
* Added a pair! view style which reacts to mouse scrollwheel...
scrolling over the text, actually modifies the coordinate under the
mouse!, but its still a field, and can be typed-in directly... what's
more, you can't enter anything else than a value which can be
converted to a valid pair!.
* Added on-focus/on-unfocus function support to all faces.
* Many little fixes and improvements.
* Many more are planned.
- People will now have a reference point for just what GLayout can do
in real-life. I (and others) have used GLayout for a lot of
applications but its always been private, commercial stuff. now we
will have a public offering which uses it, and quite a big one at
that.
-Picture-lab will be hosted on rebol.org, you will be able to download
it and see its guts. As is the habit for my coding, It will be
littered with comments (often verbose), to helpy you understand what's
going on. As a refence, my code often has more than 30% of its source
size decidated to comments.
-------
* this will force me to release a slew of yet unreleased libs, as the
application progresses
* this will force me to update all of my libs on rebol.org for each
release of picture lab
- I am using Picture Lab as a use-case for R&D on application
conversion to a full dataflow model.
-------
* the first version has none of liquid or liquidGL within it. its a
voluntary decision, even if building it using liquid from the start
would have been MUCH simpler.
* once I have the initial feature base functioning at a production
quality level, I will convert most of the application into using
liquid.
* this will give me a lot of reference into what porting an
application to dataflow entails. Leading to some documentation on the
subject for sure.
* will allow a lot of comparative bechmarks on liquid's speed,
interactive capabilities, application size differentiation, and
development impacts.
- I will be using liquid in a public application (starting at second
full release) .
-------
* people will be able to see how dataflow works, and more
specifically, how to use it with liquid itself.
* it will probably lead me to improve upon the liquid model, adding
a few of the planned, next-generation features I've been postponing
for a long-time (any of: shared dependencies, pull message
parametrization, branched caching management, two-tier disk/ram
caching ).
* it will force me to release many of my currently private
liquid-based libraries, including the multi-layered graphic engine,
which allows any draw stroke (or combination of them) to become an
entity, juste like a face, or a R3 gob!, with feel-based mouse/focus
interaction capabilities.
--------------------------
So, as you can see, there is a lot of activity planned for the comming
months, and all of this is already in motion. A lot of the above, is
either done, or underway, so its not a wave of wishfull thinking. Its
been hard to keep a lid on most of this, since, I've been working in
the shadows for a while... only hinting infrequently as to what I am
doing, not always in public either.
only thing left to do is ask about any features you wish picture-lab
would have in order to help you manage your graphic needs for web and
application work. Its possible I already thought about it, but having
feedback will help me raise priorities on any future development.
rebol on !
-MAx
[2/8] from: gregg:pointillistic at: 10-Jun-2008 18:07
All I can say is...go Max go! (maybe I'll beat BrianT to it :)
-- Gregg
[3/8] from: moliad:g:mail at: 10-Jun-2008 22:19
On Tue, Jun 10, 2008 at 8:07 PM, Gregg Irwin <gregg-pointillistic.com> wrote:
> All I can say is...go Max go! (maybe I'll beat BrianT to it :)
its already motivating to see Picture-lab first baby steps:
mouse-wheel scrolling over a pair value in the gui's property pane,
and see a draw block rebuild itself, bound to the value under the
mouse cursor, rendering in real time.
:-)
tonight, I should finish (actually rebuild, again ;-) undo/redo and file i/o
I've just discovered a strange REBOL bug where once a failed attempt
at using to-image is encountered, a face no longer is able to be used
with to-image.... meaning I must do:
image: attempt [to-image MAKE myface []]
arrgh... such little things make us loose sooooo much time...
-MAx
[4/8] from: idsrini:gm:ail at: 11-Jun-2008 11:51
WAY TO GO MAX - ALL THE BEST .....
Would the Graphics Package support animation (SVG stlye or otherwise),
Time-frame based, or object/entity based ........
Would one be able to use it as a charting/graphing/animation package......
Would it allow interaction and/or integration with other faces (like Text
field, Label field, area field, etc)....
ALL THE BEST once again ....
-- Srini
On 11/06/2008, Maxim Olivier-Adlhoch <moliad-gmail.com> wrote:
[5/8] from: petr:krenzelok:seznam:cz at: 11-Jun-2008 11:35
Maxim Olivier-Adlhoch napsal(a):
> On Tue, Jun 10, 2008 at 8:07 PM, Gregg Irwin <gregg-pointillistic.com> wrote:
>> All I can say is...go Max go! (maybe I'll beat BrianT to it :)
<<quoted lines omitted: 11>>
> arrgh... such little things make us loose sooooo much time...
> -MAx
Max,
any demo or screenshot for impatient? :-) btw - if, during your work,
you find out that some feature would be good to have supported, there is
Graphics group in r3-alpha world, so you could talk needed low-level
features there. Maybe Cyphre will notice and implement it for you/us :-)
-pekr-
-pekr-
[6/8] from: moliad:gma:il at: 11-Jun-2008 14:50
hi Pekr,
right now, picture-lab only has its first picture editor type. its a
text-area in which we write an effects block.
Other editors are planned, (a graphic element stacker (like
illustrator), a simple paint, and a graphical node-based editor).
Although the text-area editor sounds simple, and un-artistic, the
actual handling of that text is quite advanced, I deep bind the code
to external values, which are properties, so you can use external
words in your effects.
if you size related values, like in this simple example:
gradient 0x1 red black
draw [
pen yellow
line-width 3
box 10x10 (size - 10x10)
line 10x10 (size - 10x10)
]
anytime you change the size in the properties gui, the draw adapts,
the history is populated and a new render is done, so the box and
diagonal line are always pinned to the corners of the image.
ALL programming errors are gracefully handled. Indeed the text-area
bg even changes color in real-time as you type to hint to you what's
wrong (unloadable, unbindable, uncomposable, unrenderable)
The text-area in which we edit the effect block uses GLayout's editing
patch and actually calls the whole rendering procedure in real-time,
adding to the undo history only on valid effects blocks (it knows when
the render was successfull). so you can type your stuff and every
time a valid effect occurs, as you type, the output refreshes.
so right now, picture-lab is the most advanced draw block editor I
know of. its actually quite fun to type in your effects and draws and
see them pop-in as you type. Its a hell of a lot easier to do
graphics for rebol apps now.
I'll post screen shots when I have at least a pretty picture in the
output and the properties pages has a bit more "meat" in it.
shouldn't be too long.
btw, when R3 is a little closer to release (and picture lab is
liquified), I will be porting picture-lab to it. this will be pretty
easy, using liquid, as all of the actual code is abstracted through
the dataflow kernel. If I update the kernel to R3, the same
high-level code should work in both R2 and R3, on completely different
graphic and i/o sub-systems.
-MAx
On Wed, Jun 11, 2008 at 5:35 AM, Petr Krenzelok
<petr.krenzelok-seznam.cz> wrote:
[7/8] from: pwawood:gmai:l at: 11-Jun-2008 14:48
Hi MAx
Sounds great. I look forward to seeing Picture-lab soon.
Regards
Peter
On 11 Jun 2008, at 00:22, Maxim Olivier-Adlhoch wrote:
[8/8] from: moliad:gma:il at: 12-Jun-2008 5:47
Things are progressing rapidly :-)
so far the app is very stable, (using rebol v2.7.5)
I just finished the save and load functions... its quite fast, and I
decided to go all the way...
The whole history stack is saved along with the image.... and it even
remembers if you where part way in the undos....
imagine this.... you work ... you undo a few steps back... you save
out, you quit the app, start it back, reload the picture set... and
you look at your picture... redo... and bam... the next version of
your image appears... I really did this earlier! :-)
so its looking good for a first alpha release soon... I've got to
revamp the gui a little bit, add a few different gadget types to the
properties, add a few management buttons like "delete picture"
(currently, we can only add new ones. we can't ever remove them...
hehe), allow adding custom values, improve the smartness of
smart-undo, etc.
I guess I'll be releasing something this week-end, wherever I'm at...
it'll give a good glimpse of where I'm headed in any case.
-MAx
On Wed, Jun 11, 2008 at 9:48 AM, Peter WA Wood <pwawood-gmail.com> wrote:
Notes
- Quoted lines have been omitted from some messages.
View the message alone to see the lines that have been omitted