« Return to Thread: Diverse questions

Re: Diverse questions

by Fournier Eric :: Rate this Message:

Reply to Author | View in Thread


On Jan 25, 2006, at 1:49 AM, Stéphane Ducasse wrote:

> Hi
>
> I'm currently evaluating if we should or not use Tweak for the dev  
> of an application to help kids to
> learn reading. The project is a bit risky since this is the first  
> one of vincent and we have to have a success there.
> I have a bunch of questions:
>
> - Are there any large examples of applications developed in Tweak?
> I know that lot of people are developing at impara using Tweak, are  
> these projects available so that we can learn
> from the examples? Is there a squeaksource with tweak projects?

There is one now, look at Hermes. I can't claim it's model code ;)  
but parts are cool. The basic code was written in about 1.5 months  
late in '05 (2 people, one working on the C plugin), then refined  
over another for the browser-deliver proof of concept.

>
> - Besides Sophie and impara are there people developing in Tweak?  
> Is it too early to try if we do not have a guru at end?

I have found Bert and Andreas to be responsive to the big problems,  
which are few but are significant.
They have written enough code to allow much harvesting (Hermes  
liberally rips off the File Dialog code). I got pretty far without  
understanding how everything works.


>
> - do you work with the tweak tools? Since I found the navigation  
> missing for example in the users of...
>

I avoid them. I really, really tried to develop using the Tweak IDE  
tools, but this is an unfinished area. The good news is that you  
don't have to. All the Morphic tools have been patched to be Tweak-
compliant (so they could build the initial Tweak components, I  
suppose)! I found developing in Morphic and running in Tweak to be a  
perfectly viable solution. Even the Transcript talks across worlds.  
The only real limitation I have found with that model is that what  
you run in Tweak must be instantiated and live in the Tweak world.


> - I read the code of CPainter and this is a pleasure to rid
>
> - What blue means for the instance variables?

The color coding is free form, but it is suggested to color them to  
reflect their 'type' (option-click over them to see choices).

>
> - I could not saved (fileout the code) only method but not class  
> category or class. Is it normal?
>

You tried in Tweak right? Drop to Morphic, it works there (and works  
fine on Tweak classes). For this reason (and others) I recommend  
avoiding the 'Tweak Project' in favor of the 'Tweak Project Window'  
since the latter gives you easy access to both worlds.

>
> Some small feedback (tweak 1-2 update 590)
>
> - the creation of window or some widgets seems slow, there are some  
> flashes, is it normal?

I'm convinced the Tools are double-instantiated. It seems the initial  
in-hand copy gets lost, and a new one is instantiated upon drop, or  
something else is happening to run the init code twice. I hate the  
paradigm anyway...I'm always annoyed when something suddenly appears  
glued to my mouse cursor that I didn't put there.

>
> - sometimes I got slow redraws of part of the screen, is it normal?

With the Tweak IDE Tools, yes (but Morphic can be slow to redraw,  
say, dependent panes in browsers remote to a changed items too). But  
with your own application, no. We have found the interface to be  
quite responsive. Hermes (IMAP email client) is almost as fast as my  
desktop (Apple's Mail.app client). There is an issue with the event  
loop scheduling being a little tight in 'Tweak Project' that causes  
some os user process hogging (and Morphic events to be totally  
suspended). Other than those things, it is pretty well behaved.

>
> - the paintool does not draw correctly its subcomponents
>
> - I created a "sketmorph" and play with the menu and created a tile  
> for this object. But I could not destroy it (pressing the x halo morph
> did not work)

Halo destruction works for CPlayers but I seem to remember having  
problems getting of of tiles too.

>
> - I downloaded the latest version and clicked on update: it udpated  
> but now I do not have the update
> option anymore. Is is normal?

No. The Menus should be invariant. I do remember a bug I saw awhile  
back that dropped parts of the menu, but have not seen this lately.  
Fix was to throw away the world, but I think there is a 'Restore  
World Menu' that does the right thing.

>
> I was wondering
>
> why we get
> onLayoutChanged
> | box |
> <on: layoutChanged>
> box := self localBounds insetBy: borderWidth.
> board bounds: box.
> palette topRight: box topRight.
>
> and not
>
> onLayoutChanged
> <on: layoutChanged>
>
> | box |
> box := self localBounds insetBy: borderWidth.
> board bounds: box.
> palette topRight: box topRight.
>
>
> Feedback on the bank account tutorial
> ============================
> "and second, accessor methods (#balance and #balance:) have been  
> automatically generated."
> the browser did not refresh correctly I was seeing them until I  
> reclicked on the class
>

Again, You were looking at a Tweak browser? Try the same experiment  
in a Morphic browser. To be fair, Morphic has some missed redraws as  
well, just fewer of them.

With just a few months in Tweak (well, Squeak too) I'm far from an  
expert. I don't have a history using Morphic (or MVC). Smalltalk was  
a survey language that was interesting from my school days and some  
later independent study. So, I'm a newby. Sort of.

But the first time I changed a value in an object buried deep in a  
collection, and had the visual representation of that change show up  
in the UI widget the right way, and quickly, and after I had done  
absolutely nothing to make it so (other than integrate the widget  
correctly), I was hooked.

Hope this helps.

Eric Fournier
Java and Web Services
University of Minnesota Office of Information Technology
190 Shepherd Labs

emf@...



_______________________________________________
Tweak mailing list
Tweak@...
http://impara.de/mailman/listinfo/tweak

 « Return to Thread: Diverse questions