Developing morphic apps with pharo - sorting wheat from chaff

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Developing morphic apps with pharo - sorting wheat from chaff

Michael J. Forster
Hi,

I'm writing a desktop business application for a customer.  Having
written a number of web applications using Pharo and Seaside, I would
like to use Pharo and Morphic in this case.

I have read the section on Morphic in `Pharo by Example', however,
writing a business application (i.e. CRUD), I need to focus on
(tedious) data browsing and entry, keyboard navigation, and so on as
opposed to (cool) interactive morphs.

My problem is trying to discern the the current and most stable
approach to using Morphic for such an application.  Clearly, I have a
wealth of code at my fingertips and the Squeak wiki has numerous
posts, but many of the latter seem outdated and speak only vaguely of
the MVC vs. Morphic situation.  Do I use ToolBuilder?  Are pluggable
morphs a vestige of MVC?  Do I use PolyMorph widgets?  Do I use
dependencies, events, or announcements?

I am very interested in seeing Pharo succeed as a business application
development tool (among other uses), and I would be quite happy to
contribute to code and documentation to help that along.  However,
first, I need to learn how to sort the wheat of Morphic from the chaff
of MVC and whatever else is lying around in a Pharo image.

Any pointers to (more) definitive documentation and classes would be
much appreciated.


Regards,

Mike

--
Michael J. Forster <[hidden email]>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

laurent laffont
Hi Michael,

I'm not experienced in professionnal GUI applications with Pharo, but these screencasts may help you:


CLFramework (UIBuilder for Pharo) looks promising. See
http://www.squeaksource.com/CLFramework.html
and
http://www.youtube.com/results?search_query=uibuilder+pharo&search_type=&aq=f


Laurent Laffont


On Thu, Feb 25, 2010 at 5:47 PM, Michael Forster <[hidden email]> wrote:
Hi,

I'm writing a desktop business application for a customer.  Having
written a number of web applications using Pharo and Seaside, I would
like to use Pharo and Morphic in this case.

I have read the section on Morphic in `Pharo by Example', however,
writing a business application (i.e. CRUD), I need to focus on
(tedious) data browsing and entry, keyboard navigation, and so on as
opposed to (cool) interactive morphs.

My problem is trying to discern the the current and most stable
approach to using Morphic for such an application.  Clearly, I have a
wealth of code at my fingertips and the Squeak wiki has numerous
posts, but many of the latter seem outdated and speak only vaguely of
the MVC vs. Morphic situation.  Do I use ToolBuilder?  Are pluggable
morphs a vestige of MVC?  Do I use PolyMorph widgets?  Do I use
dependencies, events, or announcements?

I am very interested in seeing Pharo succeed as a business application
development tool (among other uses), and I would be quite happy to
contribute to code and documentation to help that along.  However,
first, I need to learn how to sort the wheat of Morphic from the chaff
of MVC and whatever else is lying around in a Pharo image.

Any pointers to (more) definitive documentation and classes would be
much appreciated.


Regards,

Mike

--
Michael J. Forster <[hidden email]>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Stéphane Ducasse
In reply to this post by Michael J. Forster

> Hi,
>
> I'm writing a desktop business application for a customer.  Having
> written a number of web applications using Pharo and Seaside, I would
> like to use Pharo and Morphic in this case.
>
> I have read the section on Morphic in `Pharo by Example', however,
> writing a business application (i.e. CRUD), I need to focus on
> (tedious) data browsing and entry, keyboard navigation, and so on as
> opposed to (cool) interactive morphs.

Did you check glamour? because if you have to manage data this is nice.
You can build fast prototype of your application UI.

> My problem is trying to discern the the current and most stable
> approach to using Morphic for such an application.  Clearly, I have a
> wealth of code at my fingertips and the Squeak wiki has numerous
> posts, but many of the latter seem outdated and speak only vaguely of
> the MVC vs. Morphic situation.  Do I use ToolBuilder?

you can.

>  Are pluggable
> morphs a vestige of MVC?  

This is what I thought but I'm not sure.
Normally we removed a lot of MVC

> Do I use PolyMorph widgets?

Yes
You can use the Polymorph tool builder.  

>  Do I use
> dependencies, events, or announcements?
>
> I am very interested in seeing Pharo succeed as a business application
> development tool (among other uses), and I would be quite happy to
> contribute to code and documentation to help that along.  

 We would love that. Thanks a lot.

> However,
> first, I need to learn how to sort the wheat of Morphic from the chaff
> of MVC and whatever else is lying around in a Pharo image.

We too.


> Any pointers to (more) definitive documentation and classes would be
> much appreciated.

UITheme example for example.

>
>
> Regards,
>
> Mike
>
> --
> Michael J. Forster <[hidden email]>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Simon Denier-3
In reply to this post by Michael J. Forster
Unfortunately, I am not aware of any recent and consistent documentation for this subject. So this is a virgin subject which would make a very good chapter for the next PBE! :)

Meanwhile, I have started to collect a few good links about Morphic, especially layouting which is not well covered by the tutorials (I think)
http://www.visoracle.com/squeak/faq/
http://www.visoracle.com/squeak/faq/morphic_.html
http://www.visoracle.com/squeak/faq/morphic-layout.html
http://coweb.cc.gatech.edu/cs2340/3659
http://www.mail-archive.com/beginners@.../msg05525.html
http://wiki.squeak.org/squeak/792#Morphic

On 25 févr. 2010, at 17:47, Michael Forster wrote:

> Hi,
>
> I'm writing a desktop business application for a customer.  Having
> written a number of web applications using Pharo and Seaside, I would
> like to use Pharo and Morphic in this case.
>
> I have read the section on Morphic in `Pharo by Example', however,
> writing a business application (i.e. CRUD), I need to focus on
> (tedious) data browsing and entry, keyboard navigation, and so on as
> opposed to (cool) interactive morphs.
>
> My problem is trying to discern the the current and most stable
> approach to using Morphic for such an application.  Clearly, I have a
> wealth of code at my fingertips and the Squeak wiki has numerous
> posts, but many of the latter seem outdated and speak only vaguely of
> the MVC vs. Morphic situation.  Do I use ToolBuilder?  Are pluggable
> morphs a vestige of MVC?  Do I use PolyMorph widgets?  Do I use
> dependencies, events, or announcements?
>
> I am very interested in seeing Pharo succeed as a business application
> development tool (among other uses), and I would be quite happy to
> contribute to code and documentation to help that along.  However,
> first, I need to learn how to sort the wheat of Morphic from the chaff
> of MVC and whatever else is lying around in a Pharo image.
>
> Any pointers to (more) definitive documentation and classes would be
> much appreciated.
>
>
> Regards,
>
> Mike
>
> --
> Michael J. Forster <[hidden email]>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
 Simon




_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Marcus Denker-4
In reply to this post by Stéphane Ducasse

On Feb 26, 2010, at 10:33 AM, Stéphane Ducasse wrote:
>
>> Are pluggable
>> morphs a vestige of MVC?  
>
> This is what I thought but I'm not sure.
>

So back when Morpic was done, the philosophy was to bring over all tools with as little change as
possible. So evem though MVC is gone, there is class Model, with lots of subclasses.
And all the tools are build using the old MVC style change notification. The Browser is more or less the same
as it used to be in ST80.

So there is the Pluggable stuff, which I don't like. Than there the ToolBuilder, which is an abstraction
on top. Not nice, either. Than eToys did build UIs (the blueish dialogs to e.g. load a project from disk)
by copy-and-paste. Purely beautiful. And than besides that, there are a couple of other widgets
(like gazillion button classes). And of course some real MVC remnants even after we removed most
(e.g. SelectionMenu, CustomMenu...).

All in all: very horrible.

I think it would be worthwhile to actually build a *good* UI toolkit. Not having one makes building UIs
far more complex that needed, which in turn makes people not improve the tools (or write better ones).

Why can't this stuff be *simple* and *beautiful*?

        Marcus



--
Marcus Denker  -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Richard Durr-2
Maybe the Brazil part of Newspeak is an option?

On Fri, Feb 26, 2010 at 4:34 PM, Marcus Denker <[hidden email]> wrote:

> Why can't this stuff be *simple* and *beautiful*?
>
>        Marcus
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Stéphane Ducasse
Yes but somebody has to do it. We are quite open but time is an important factor :)
The idea with the architectural changes at the event system was that we should be able to
have multiple solutions without having the isMorphic/isMVC tests everywhere in the code.

Stef

On Feb 27, 2010, at 12:57 AM, Richard Durr wrote:

> Maybe the Brazil part of Newspeak is an option?
>
> On Fri, Feb 26, 2010 at 4:34 PM, Marcus Denker <[hidden email]> wrote:
>
>> Why can't this stuff be *simple* and *beautiful*?
>>
>>        Marcus
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Michael J. Forster
In reply to this post by Michael J. Forster
Thanks to all those who replied.  I will give myself a couple of days
to see if I can wrangle what I need out of the simplest Morphic
widgets, ignoring ToolBuilder, etc.

Mike


--
Michael J. Forster <[hidden email]>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Developing morphic apps with pharo - sorting wheat from chaff

Charles Monteiro
So where did this all go ? I'm in the same boat, need to build a desktop app in ST , want to use Pharo i.e. portable, no licensing issues, but I'm unsure of what the UI building direction is. I have even thought about using Seaside to build the desktop thus giving me the future option to re-deploy as a web solution, bur frankly haven't played enough to know whether JQuery and the rest of Seaside, can provide me with the UI mechanisms I'm used to in VisualWorks, i.e. the swapping/nesting of canvases, trees, sortable datasets. Also I'm un-sure how responsive a desktop Seaside app would be , obviously faster than a web app but fast enough to feel like a desktop app, and is it reasonable that the user interaction would be similar enough to a desktop app.

There's also the single window issue with Pharo to get around.