[Morphic] Some challenges for the morphic team
Juan Vuletich
jmvsqueak at uolsinectis.com.ar
Fri May 19 02:02:53 UTC 2006
Hi Stef
>> I'm a bit disappointed that after some initial interest, nobody seems to
>> be interested in my objectives for Morphic anymore. I want to simplify,
>> clean and remove stuff. But nobody except for me sent any contribution
>> in that direction. (Except for Edgar. He did send some stuff, that I
>> rejected). And somehow recently, additional 'Diego's look' stuff got in.
>> And I see people believing that for Squeak to be 'serious' or something,
>> we need native widgets or migrate to wxWidgets or such. So my ideas
>> don't seem popular anymore.
>
> I think that if you have a vision keeps it and continue.
That's what I'm after. My shrinked 3.7 image includes my first experiments
on a serious redesign of Morphic itself. (more on this at the end).
> If you improve something we will incorporate it.
> I would love to help. Now my time is so short that I cannot even program.
You have always been of great help to every squeaker. It is me who
doesn't have enough time and energy for working more on Squeak.
>> I also believe that we are having serious problems in setting the
>> direction for Squeak.
>> Even though we all agree we want a small basic image with optional stuff
>> in SqueakMap, every release gets bigger and bigger.
>
> But where are the cool shrinkers? Where is the code that I can unload.
> Did you have a look at the scriptloader?
> There is a category of methods for checking which package can unload
> (just unload not even cleanly). So do you
> think that if you provide some repakaging we will ignore it? No so what?
The fact is that it is muuuuch easier to simply remove the stuff I don't
want
from my image, than making it possible to unload (and reload) packages.
It only makes sense to work on the latter if enough people really uses it
to justify the effort. I believe this is not the case. Besides, I don't have
the
time and energy to finish the work I started in Morphic / MorphicExtras /
Etoys.
>> The community has people with very different interests and it's not easy
>> to satisfy all of them. And we are failing at setting teams for these
>> different areas, with the objective of REMOVING their stuff from the
>> basic distribution, to manage it outside the image. People seem to think
>> that if something is taken off the image it won't be maintained anymore.
>
> I do not know. What I see is that lot of packages are not maintained.
> Network fixes seem to be lost. May be network is not interesting after
> all.
So, if that was the case (of course I don't think so), what we would be
lacking is a means to decide that something is not interesting anymore, and
remove it from the image.
>> I think this is not true. A package is maintained if and only if some
>> guys with enough knowledge and interest take care of it, be it in the
>> image or in SqueakMap.
>
> Exact.
>
>> WRT the development tools and ToolBuilder, I always thought that the
>> migration of the Morphic tools to ToolBuilder is a task for ToolBuilder
>> guys, and these tools shouldn't be anymore in a Morphic package or under
>> the responsibility of Morphic people. Wasn't this the idea?
>
> I do not know. I spent some nights with Cees to make sure that at least
> we could load the ToolsPlus in the hope that
> we could subsitute the old tools but this was not the case. So we will
> remove them from the image. Still we lost a lot of time.
> But we tried!
I appreciate your effort.
>> Perhaps the Morphic Stewards Team needs new people, more in line with
>> what the community wants.
>
> You are the community so what do you expect. Three guys having fun is
> enough.
I agree. I want to use my little Squeak time to have fun.
>> What I'm feeling inclined to do is to focus on my Morphic cleaning in my
>> 3.7 image where it all began.
>
> I think that doing that will be an error. But this is your time and
> energy.
I didn't put it correctly. The main objective is not cleaning but
redesigning. (please see at the end). The result should be a new
Morphic package that could be loaded by those who don't care
about compatibility with existing applications (Etoys, etc), but that
most likely, the community would reject as an official replacement
for not being back compatible.
> I think that I will harvest then the fixes and changes that have been
> sent to morphic.
I would really appreciate that.
>> Perhaps it could evolve into a Squeak Distribution for programmers, or
>> something like that. the only thing I will really miss is Traits.
> Are you joking?
> Have you see the number of fixes and enh we harvested. This is not only
> traits that you will not get.
Not at all. I would also miss some small fixes, but not the bigger
improvements. It is a matter of personal interests and taste.
At my job, I work in VisualSmalltalk. Compared to current Squeak, it
is very small. The only thing I really miss there is Morphic and the
Method Finder. I really believe in Dan's Personal Mastery principle.
I can do more and better in VS than in Squeak because it is smaller.
The Squeak kernel has been pretty stable for several years. That's why
I don't care too much about most of the new stuff.
> This is exactly with this kind of behavior that nothing in the long run
> will happen. That we see a lot of people creating their own images but
> not really making sure that others can use it. I said several times to
> Pavel and others that if what they do is reasonable for 3.9 (small steps)
> then we would integrate that. With this reasoning Diego, Traits,
> Unicode....would still be in
> several different images. We spent a ****lot**** of times to make sure
> that what people did is integrated. People
> were willing to spend time improving Squeak.
I understand and agree with you, except for the first phrase. Somebody
working in his own image on the stuff he needs, is in no way "nothing
happening". If his work can be used by others, much better. But if not,
it doesn't mean it was useless. For instance, remember PhotoSqueak.
I wrote that stuff for a class lab project. I also published it in the hope
that somebody could use it. It was never considered for inclusion in the
image, but if anybody wants to do Image Processing in Squeak, he
knows he can reuse my work. That's good enough for me.
>> But I'm sure I'll be able to load it when it is mature enough for
>> everyday use (I'm thinking basically of programmer's tools). Or perhaps
>> my version of Morphic is considered for loading in the official version
>> sometime. Or even better, we have a really small basic image with no
>> Morphic on it, and mine is one of the alternatives in SqueakMap.
>
> Why don't you work on 3.9 I really do not get it.
> Do not make the mistake of the ToolsPlus, all that good energy was lost.
Because I have a lot of work already done in my 3.7 image! You know
how hard it is to move your stuff to each new Squeak version.
The difference with ToolPlus is that I'm not doing an improvement to
Squeak. What I'm doing is not meant to be compatible with other
packages in the image. I don't want to spend the little time I have on
compatibility issues. I want to express my ideas in a design, to test them.
If they are good, they will be used by others.
> I would like to get some energy to migrate all the tools to use
> ToolsBuilder but right now I spend my days fighting, my evening painting
> and the rest writing articles and teaching.
I understand your frustration. Everybody is short of time, so we all
must use it with care.
> Ok so if the morphic team is dead, I suggest that we close it and mark it
> dormant because there is nothing more counter productive
> than to give the impression that there is activity while nothing happen.
>
> Stef
I'm afraid you are right. Please advice on what to do.
Folks, if anybody feels like replacing me, this is the time to speak!
What follows are some ideas for a redesign of Morphic. Some of them were
suggested by John Maloney (the main implementor of Morphic). Others are old
ideas of mine. I did my first experiments on them in C, way before knowing
about Smalltalk.
- Every Morph defines a space and a coordinate system. His #drawOn: method
and the location of his submorphs are expressed in his own coordinate
system.
- The coordinate systems are 2D but are not restricted to Cartesian. Others
are polar, logarithmic Cartesian, and hyperbolic and map-like projections.
The basic one is Cartesian with Float coordinates.
- There is no concept of pixel. Going from pixels to general coordinate
systems is like going from bits to objects. All the gui is independent of
pixel resolution. All the rendering is antialiased.
- A coordinate system + its position in an owner + its extent in an owner +
its rotation angle in an owner together specify a translation of coordinates
to the owner's space and coordinate system.
- The Morph hierarchy is NOT a shape hierarchy. Morphs don't have a concept
of a border or color. There is no general concept of submorph aligning.
- The existing Morph hierarchy is renamed as OldXxxx. Anyway, most of them
are deleted. Only kernel, a few basic, and the programming tools remain.
- Old Morphs and new Morphs can live together in a World.
Any comment on all this is welcome.
Cheers,
Juam
More information about the Morphic
mailing list