Vision for Aida

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

Vision for Aida

bobcalco
Janko,

I was wondering if you could reveal any grand plans you might have for the future of Aida?

What I like about Aida compared to Seaside is its relative simplicity and portability. Seaside uses features of Smalltalk that are not really portable between smalltalks to do its magic (continuations and pragmas being the big ones that I've noticed, which prevent it from being used fully in Dolphin, for example). 

It feels to me like Aida doesn't try to reinvent too many wheels, meaning it's a bit more accessible to people coming from, say, Rails, like myself. It has relatively more steak than sizzle, whereas Seaside has relatively more sizzle than steak. I like my steak rare ("still twitching" is what I tell waitresses at restaurants), so I don't care about sizzle so much. That said, my favourite way to prepare steak is 'black and blue' -- but it takes a rather industrial-size furnace to cook it that way, but, working for a charity, I usually only have a couple matches and a little kindling to start my fire pit. ;)

What I don't like about Aida is the documentation, which is a bit scattered by topic and somewhat stream of consciousness. Seaside has Aida beat hands-down in this department. There are books, well-designed tutorials, lots of samples, etc. It's actually very hard, if you're me, to ignore that big plus for Seaside.

I think Aida needs a much better, much more in-depth tutorial, that really highlights its best parts, and suggests where it's going to get better over time. I am not sure I like all the parts of Aida included -- for example, I've been reviewing the (very involved) Parties/Roles packages and it encroaches a lot on my domain model, meaning I either have to use all of it or none of it. But maybe I have misinterpreted its design? Maybe it's better than my slogging in the code has revealed, and I should use it? Some documentation about the rationale for the abstractions chosen and how they're implemented would be nice.

What I'd like to see in Aida is a greater commitment to REST and maybe XMLRPC API support (seems you're working on that one quite aggressively), more of an MVP vs MVC pattern for rendering, and perhaps support for rich web clients a la Amber (I see there is WebDAV support in Aida, so perhaps you're already intending to go that route), and better security (I really need to support HTTPS, and support API keys securely). Seaside has done a good job in its HTML API, but Aida's abstractions feel somewhat heavy (gazillions of methods). Some refactoring of that seems like it could be good.

Neither framework handles layouts, look-feel, or any of the design intensive side of web development as nicely as I imagine it could be done. This could be an area for huge win in Aida, as I see you've tried to make it easy to reskin a site by supplying a new web style. However, I tried doing this with the demo app and only just mucked stuff up. Again, good documentation about this important area of implementation and some idea of what the end-goal is for it would be awesome.

I'm willing to contribute but I need to get up and running and confident in what I'm doing still. It's been a bit of a ramp up. But I think I'll do well with this choice for what I need to do. I would just like to know what the future holds as I think there is still a lot of room for innovation in web development, and it doesn't all have to be heretical to be on the bleeding edge, so to speak. I'll feel better about Aida knowing that it's roadmap is a good one.

- Bob



_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Vision for Aida

Janko Mivšek
Hi Bob,

You just inspired me to write down my vision and future plans for Aida,
so let me start with that:

Main *Aida vision* from the start is to extend the Smalltalk philosophy,
elegance, simplicity, power to the web applications as well while
preserving all those beauties of Smalltalk.

And to be on the *bleeding edge of web technology* with Smalltalk all
the time. Which we are. I'm most proud that initial architecture was set
good enough to be adaptable through all that time since 1996 and that we
are not stuck even now supporting the current HTML5 wave.

And here are the plans. Short-term, long-term? Well, we'll see :)

1. *Documentation*! It seems Aida core features are stable enough now
   that we can document it and that this documentation will last for a
   while without needing to update it constantly;

2. More *HTML5*! like FileSystem, DragDrop, Video and Audio etc etc;

3. More *realtime*, actually realtime anything, everywhere. WebSocket
   standard is now de-facto complete and in a year all browsers will
   support it. What I mean by realtime anything, everywhere? Any data
   you show everywhere on your web page will be updated in realtime,
   that is, immediately when data changes. And this will be switched on
   by default!

4 More *client*! That is, more processing moved to web client with
  Amber Smalltalk. Here the end goal is to partition your app in
  runtime where to run. All on server as now, all on client (and
  offline), or parts on server, parts on client. Client parts are
  "emitted" to Amber Smalltalk and sent to a client for execution;

5. More *local updating* at the client. On server only data is
   updated while all dependent views are refreshed locally on client;

6. *Automatic forms building* out of domain model, with help of
   forthcoming AidaFields by Nicolas Petton;

7. More *relational domain model* support;

8. More *JavaScript libraries* supported as Aida Addons;

9. Aida as provider of *REST-full web services* accessible from other
   web or mobile apps

10.*Cloud* support, Aida apps as both as client as service provider in
   the cloud;

11.*Aida hosting*, both free and commercial.


Best regards
Janko



S, Robert Calco piše:

> Janko,
>
> I was wondering if you could reveal any grand plans you might have for
> the future of Aida?
>
> What I like about Aida compared to Seaside is its relative simplicity
> and portability. Seaside uses features of Smalltalk that are not really
> portable between smalltalks to do its magic (continuations and pragmas
> being the big ones that I've noticed, which prevent it from being used
> fully in Dolphin, for example).
>
> It feels to me like Aida doesn't try to reinvent too many wheels,
> meaning it's a bit more accessible to people coming from, say, Rails,
> like myself. It has relatively more steak than sizzle, whereas Seaside
> has relatively more sizzle than steak. I like my steak rare ("still
> twitching" is what I tell waitresses at restaurants), so I don't care
> about sizzle so much. That said, my favourite way to prepare steak is
> 'black and blue' -- but it takes a rather industrial-size furnace to
> cook it that way, but, working for a charity, I usually only have a
> couple matches and a little kindling to start my fire pit. ;)
>
> What I don't like about Aida is the documentation, which is a bit
> scattered by topic and somewhat stream of consciousness. Seaside has
> Aida beat hands-down in this department. There are books, well-designed
> tutorials, lots of samples, etc. It's actually very hard, if you're me,
> to ignore that big plus for Seaside.
>
> I think Aida needs a much better, much more in-depth tutorial, that
> really highlights its best parts, and suggests where it's going to get
> better over time. I am not sure I like all the parts of Aida included --
> for example, I've been reviewing the (very involved) Parties/Roles
> packages and it encroaches a lot on my domain model, meaning I either
> have to use all of it or none of it. But maybe I have misinterpreted its
> design? Maybe it's better than my slogging in the code has revealed, and
> I should use it? Some documentation about the rationale for the
> abstractions chosen and how they're implemented would be nice.
>
> What I'd like to see in Aida is a greater commitment to REST and maybe
> XMLRPC API support (seems you're working on that one quite
> aggressively), more of an MVP vs MVC pattern for rendering, and perhaps
> support for rich web clients a la Amber (I see there is WebDAV support
> in Aida, so perhaps you're already intending to go that route), and
> better security (I really need to support HTTPS, and support API keys
> securely). Seaside has done a good job in its HTML API, but Aida's
> abstractions feel somewhat heavy (gazillions of methods). Some
> refactoring of that seems like it could be good.
>
> Neither framework handles layouts, look-feel, or any of the design
> intensive side of web development as nicely as I imagine it could be
> done. This could be an area for huge win in Aida, as I see you've tried
> to make it easy to reskin a site by supplying a new web style. However,
> I tried doing this with the demo app and only just mucked stuff up.
> Again, good documentation about this important area of implementation
> and some idea of what the end-goal is for it would be awesome.
>
> I'm willing to contribute but I need to get up and running and confident
> in what I'm doing still. It's been a bit of a ramp up. But I think I'll
> do well with this choice for what I need to do. I would just like to
> know what the future holds as I think there is still a lot of room for
> innovation in web development, and it doesn't all have to be heretical
> to be on the bleeding edge, so to speak. I'll feel better about Aida
> knowing that it's roadmap is a good one.
>
> - Bob
>
>
>
>
> _______________________________________________
> Aida mailing list
> [hidden email]
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Vision for Aida

bobcalco
Hi Janko,

2012/2/10 Janko Mivšek <[hidden email]>
Hi Bob,

You just inspired me to write down my vision and future plans for Aida,

:)
 
so let me start with that:

Main *Aida vision* from the start is to extend the Smalltalk philosophy,
elegance, simplicity, power to the web applications as well while
preserving all those beauties of Smalltalk.

I would really like to see Aida make coding in HTML/CSS/JavaScript a relic of the ancient past (I guess that would be Web 2.0 by now; what are we up to...4.0?).... 

I like the direction WebSharper (F#) and LiftWeb (Scala) have been going. I really am intrigued by Amber, Cappuccino, and CoffeeScript. Aida web should 'Aid' in those kinds of experiments, only with Smalltalk and some kind of clean MVP pattern applied with rigour on the server and the client side.

I like the idea behind how Seaside maintains complex state. I am not terribly thrilled with replacing, rather than embracing, the realities of HTTP... it seems to me the overhead of that strategy will only be worth it till a cleaner way to do it RESTfully emerges.
 

And to be on the *bleeding edge of web technology* with Smalltalk all
the time. Which we are. I'm most proud that initial architecture was set
good enough to be adaptable through all that time since 1996 and that we
are not stuck even now supporting the current HTML5 wave.

That is an important plus. However, I'd like to see fewer bugs than have popped up, which give it the appearance of instability. For example, even now, if you want to put the Pharo-Aida-OneClick in a bad state, just log in as admin to the demo site, click Settings -> Sites, and try to go back, or navigate anywhere else. You'll need to invoke the following magical incantations:

SwazooServer stop.
AIDASite default releaseApplicationState.
SwazooServer start.

To you that's not a big deal, you know you've got a bug there. To a new person, that makes you wonder if the framework is stable. That kind of thing.
 

And here are the plans. Short-term, long-term? Well, we'll see :)

1. *Documentation*! It seems Aida core features are stable enough now
  that we can document it and that this documentation will last for a
  while without needing to update it constantly;

Yay! :)
 

2. More *HTML5*! like FileSystem, DragDrop, Video and Audio etc etc;

Excellent.
 

3. More *realtime*, actually realtime anything, everywhere. WebSocket
  standard is now de-facto complete and in a year all browsers will
  support it. What I mean by realtime anything, everywhere? Any data
  you show everywhere on your web page will be updated in realtime,
  that is, immediately when data changes. And this will be switched on
  by default!

Good! 

4 More *client*! That is, more processing moved to web client with
 Amber Smalltalk. Here the end goal is to partition your app in
 runtime where to run. All on server as now, all on client (and
 offline), or parts on server, parts on client. Client parts are
 "emitted" to Amber Smalltalk and sent to a client for execution;

Interesting.
 

5. More *local updating* at the client. On server only data is
  updated while all dependent views are refreshed locally on client;

6. *Automatic forms building* out of domain model, with help of
  forthcoming AidaFields by Nicolas Petton;

Oh, how I long for an Aida answer to Magritte! I really love the concept.
 

7. More *relational domain model* support;

Well, how about: just some decent support for the main persistence alternatives... in-image, GLORP, GemStone, etc.. Some kind of guidance here for noobs would be most helpful. Ahem. :)
 

8. More *JavaScript libraries* supported as Aida Addons;

I think the abstractions for JavaScript and CSS are not yet refined. There is some vision gap there in both Seaside and Aida.
 

9. Aida as provider of *REST-full web services* accessible from other
  web or mobile apps

I have serious secure API needs for my applications. I feel rather insecure right now with Smalltalk vis a vis HTTPS.


10.*Cloud* support, Aida apps as both as client as service provider in
  the cloud;

I like. :)
 

11.*Aida hosting*, both free and commercial.

Would be very nice if there was more of that, yes. :)

I think a twelfth point should be *Tooling*... it needs to be much more intuitive to build sites and apps on the sites in one or more images. A secure Web Development UI would be cool. Wizards in the development image for visualizing what's where would be really helpful.

- Bob
 


Best regards
Janko



S, Robert Calco piše:
> Janko,
>
> I was wondering if you could reveal any grand plans you might have for
> the future of Aida?
>
> What I like about Aida compared to Seaside is its relative simplicity
> and portability. Seaside uses features of Smalltalk that are not really
> portable between smalltalks to do its magic (continuations and pragmas
> being the big ones that I've noticed, which prevent it from being used
> fully in Dolphin, for example).
>
> It feels to me like Aida doesn't try to reinvent too many wheels,
> meaning it's a bit more accessible to people coming from, say, Rails,
> like myself. It has relatively more steak than sizzle, whereas Seaside
> has relatively more sizzle than steak. I like my steak rare ("still
> twitching" is what I tell waitresses at restaurants), so I don't care
> about sizzle so much. That said, my favourite way to prepare steak is
> 'black and blue' -- but it takes a rather industrial-size furnace to
> cook it that way, but, working for a charity, I usually only have a
> couple matches and a little kindling to start my fire pit. ;)
>
> What I don't like about Aida is the documentation, which is a bit
> scattered by topic and somewhat stream of consciousness. Seaside has
> Aida beat hands-down in this department. There are books, well-designed
> tutorials, lots of samples, etc. It's actually very hard, if you're me,
> to ignore that big plus for Seaside.
>
> I think Aida needs a much better, much more in-depth tutorial, that
> really highlights its best parts, and suggests where it's going to get
> better over time. I am not sure I like all the parts of Aida included --
> for example, I've been reviewing the (very involved) Parties/Roles
> packages and it encroaches a lot on my domain model, meaning I either
> have to use all of it or none of it. But maybe I have misinterpreted its
> design? Maybe it's better than my slogging in the code has revealed, and
> I should use it? Some documentation about the rationale for the
> abstractions chosen and how they're implemented would be nice.
>
> What I'd like to see in Aida is a greater commitment to REST and maybe
> XMLRPC API support (seems you're working on that one quite
> aggressively), more of an MVP vs MVC pattern for rendering, and perhaps
> support for rich web clients a la Amber (I see there is WebDAV support
> in Aida, so perhaps you're already intending to go that route), and
> better security (I really need to support HTTPS, and support API keys
> securely). Seaside has done a good job in its HTML API, but Aida's
> abstractions feel somewhat heavy (gazillions of methods). Some
> refactoring of that seems like it could be good.
>
> Neither framework handles layouts, look-feel, or any of the design
> intensive side of web development as nicely as I imagine it could be
> done. This could be an area for huge win in Aida, as I see you've tried
> to make it easy to reskin a site by supplying a new web style. However,
> I tried doing this with the demo app and only just mucked stuff up.
> Again, good documentation about this important area of implementation
> and some idea of what the end-goal is for it would be awesome.
>
> I'm willing to contribute but I need to get up and running and confident
> in what I'm doing still. It's been a bit of a ramp up. But I think I'll
> do well with this choice for what I need to do. I would just like to
> know what the future holds as I think there is still a lot of room for
> innovation in web development, and it doesn't all have to be heretical
> to be on the bleeding edge, so to speak. I'll feel better about Aida
> knowing that it's roadmap is a good one.
>
> - Bob
>
>
>
>
> _______________________________________________
> Aida mailing list
> [hidden email]
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida


_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Vision for Aida

bobcalco
Since I mentioned minor buggy behaviors, just another quick bug report:

In the Pharo OneClick image (I haven't seen this one in VW I don't believe), you periodically get an error that says: MessageNotUnderstood: receiver of "nextPutAll:" is nil. This is happening in ExternalWindowsOSProcess>>value:

value
"Start the external process"

| procInfo mainThread |
self isNotYetRunning ifTrue:
[procInfo := OSProcess accessor primCommand: self commandLine.
procInfo isNil
ifTrue:
[self initialStdErr nextPutAll: 'cannot execute ', 
                                   self commandLine; cr.
self exitStatus: #cannotExecuteCommandLine.
"FIXME: Close the OSPipes now, otherwise the image will 
                                 block on a read"
self closeStreams.
[self complete] fork "defer execution so OSPipes 
                                                              stay in place for now"]
    ...

Again, to a noob, this gives an impression of a weakness, in what should be an Aida strength... a built in way to run periodic/scheduled events. 

Now I know, this is probably not even your bug, but Pharo's, and apparently only on Windoze, nevertheless it's something that I have noticed and found annoying. 

- Bob
 
On Fri, Feb 10, 2012 at 3:59 PM, Robert Calco <[hidden email]> wrote:
Hi Janko,

2012/2/10 Janko Mivšek <[hidden email]>
Hi Bob,

You just inspired me to write down my vision and future plans for Aida,

:)
 
so let me start with that:

Main *Aida vision* from the start is to extend the Smalltalk philosophy,
elegance, simplicity, power to the web applications as well while
preserving all those beauties of Smalltalk.

I would really like to see Aida make coding in HTML/CSS/JavaScript a relic of the ancient past (I guess that would be Web 2.0 by now; what are we up to...4.0?).... 

I like the direction WebSharper (F#) and LiftWeb (Scala) have been going. I really am intrigued by Amber, Cappuccino, and CoffeeScript. Aida web should 'Aid' in those kinds of experiments, only with Smalltalk and some kind of clean MVP pattern applied with rigour on the server and the client side.

I like the idea behind how Seaside maintains complex state. I am not terribly thrilled with replacing, rather than embracing, the realities of HTTP... it seems to me the overhead of that strategy will only be worth it till a cleaner way to do it RESTfully emerges.
 

And to be on the *bleeding edge of web technology* with Smalltalk all
the time. Which we are. I'm most proud that initial architecture was set
good enough to be adaptable through all that time since 1996 and that we
are not stuck even now supporting the current HTML5 wave.

That is an important plus. However, I'd like to see fewer bugs than have popped up, which give it the appearance of instability. For example, even now, if you want to put the Pharo-Aida-OneClick in a bad state, just log in as admin to the demo site, click Settings -> Sites, and try to go back, or navigate anywhere else. You'll need to invoke the following magical incantations:

SwazooServer stop.
AIDASite default releaseApplicationState.
SwazooServer start.

To you that's not a big deal, you know you've got a bug there. To a new person, that makes you wonder if the framework is stable. That kind of thing.
 

And here are the plans. Short-term, long-term? Well, we'll see :)

1. *Documentation*! It seems Aida core features are stable enough now
  that we can document it and that this documentation will last for a
  while without needing to update it constantly;

Yay! :)
 

2. More *HTML5*! like FileSystem, DragDrop, Video and Audio etc etc;

Excellent.
 

3. More *realtime*, actually realtime anything, everywhere. WebSocket
  standard is now de-facto complete and in a year all browsers will
  support it. What I mean by realtime anything, everywhere? Any data
  you show everywhere on your web page will be updated in realtime,
  that is, immediately when data changes. And this will be switched on
  by default!

Good! 

4 More *client*! That is, more processing moved to web client with
 Amber Smalltalk. Here the end goal is to partition your app in
 runtime where to run. All on server as now, all on client (and
 offline), or parts on server, parts on client. Client parts are
 "emitted" to Amber Smalltalk and sent to a client for execution;

Interesting.
 

5. More *local updating* at the client. On server only data is
  updated while all dependent views are refreshed locally on client;

6. *Automatic forms building* out of domain model, with help of
  forthcoming AidaFields by Nicolas Petton;

Oh, how I long for an Aida answer to Magritte! I really love the concept.
 

7. More *relational domain model* support;

Well, how about: just some decent support for the main persistence alternatives... in-image, GLORP, GemStone, etc.. Some kind of guidance here for noobs would be most helpful. Ahem. :)
 

8. More *JavaScript libraries* supported as Aida Addons;

I think the abstractions for JavaScript and CSS are not yet refined. There is some vision gap there in both Seaside and Aida.
 

9. Aida as provider of *REST-full web services* accessible from other
  web or mobile apps

I have serious secure API needs for my applications. I feel rather insecure right now with Smalltalk vis a vis HTTPS.


10.*Cloud* support, Aida apps as both as client as service provider in
  the cloud;

I like. :)
 

11.*Aida hosting*, both free and commercial.

Would be very nice if there was more of that, yes. :)

I think a twelfth point should be *Tooling*... it needs to be much more intuitive to build sites and apps on the sites in one or more images. A secure Web Development UI would be cool. Wizards in the development image for visualizing what's where would be really helpful.

- Bob
 


Best regards
Janko



S, Robert Calco piše:
> Janko,
>
> I was wondering if you could reveal any grand plans you might have for
> the future of Aida?
>
> What I like about Aida compared to Seaside is its relative simplicity
> and portability. Seaside uses features of Smalltalk that are not really
> portable between smalltalks to do its magic (continuations and pragmas
> being the big ones that I've noticed, which prevent it from being used
> fully in Dolphin, for example).
>
> It feels to me like Aida doesn't try to reinvent too many wheels,
> meaning it's a bit more accessible to people coming from, say, Rails,
> like myself. It has relatively more steak than sizzle, whereas Seaside
> has relatively more sizzle than steak. I like my steak rare ("still
> twitching" is what I tell waitresses at restaurants), so I don't care
> about sizzle so much. That said, my favourite way to prepare steak is
> 'black and blue' -- but it takes a rather industrial-size furnace to
> cook it that way, but, working for a charity, I usually only have a
> couple matches and a little kindling to start my fire pit. ;)
>
> What I don't like about Aida is the documentation, which is a bit
> scattered by topic and somewhat stream of consciousness. Seaside has
> Aida beat hands-down in this department. There are books, well-designed
> tutorials, lots of samples, etc. It's actually very hard, if you're me,
> to ignore that big plus for Seaside.
>
> I think Aida needs a much better, much more in-depth tutorial, that
> really highlights its best parts, and suggests where it's going to get
> better over time. I am not sure I like all the parts of Aida included --
> for example, I've been reviewing the (very involved) Parties/Roles
> packages and it encroaches a lot on my domain model, meaning I either
> have to use all of it or none of it. But maybe I have misinterpreted its
> design? Maybe it's better than my slogging in the code has revealed, and
> I should use it? Some documentation about the rationale for the
> abstractions chosen and how they're implemented would be nice.
>
> What I'd like to see in Aida is a greater commitment to REST and maybe
> XMLRPC API support (seems you're working on that one quite
> aggressively), more of an MVP vs MVC pattern for rendering, and perhaps
> support for rich web clients a la Amber (I see there is WebDAV support
> in Aida, so perhaps you're already intending to go that route), and
> better security (I really need to support HTTPS, and support API keys
> securely). Seaside has done a good job in its HTML API, but Aida's
> abstractions feel somewhat heavy (gazillions of methods). Some
> refactoring of that seems like it could be good.
>
> Neither framework handles layouts, look-feel, or any of the design
> intensive side of web development as nicely as I imagine it could be
> done. This could be an area for huge win in Aida, as I see you've tried
> to make it easy to reskin a site by supplying a new web style. However,
> I tried doing this with the demo app and only just mucked stuff up.
> Again, good documentation about this important area of implementation
> and some idea of what the end-goal is for it would be awesome.
>
> I'm willing to contribute but I need to get up and running and confident
> in what I'm doing still. It's been a bit of a ramp up. But I think I'll
> do well with this choice for what I need to do. I would just like to
> know what the future holds as I think there is still a lot of room for
> innovation in web development, and it doesn't all have to be heretical
> to be on the bleeding edge, so to speak. I'll feel better about Aida
> knowing that it's roadmap is a good one.
>
> - Bob
>
>
>
>
> _______________________________________________
> Aida mailing list
> [hidden email]
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida



_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Tutorial, how to improve it? (was Vision for Aida)

Janko Mivšek
In reply to this post by bobcalco
S, Robert Calco piše:

> I think Aida needs a much better, much more in-depth tutorial, that
> really highlights its best parts, and suggests where it's going to get
> better over time.

Ok, let we start improving documentation by improving a tutorial. So far
we have two articles:

1. Tutorial for a "traditional" Aida [1]
2. ToDo example in-depth description [2]

Tutorial has now at the bottom a link to the ToDo description.

Tutorial is probably not attractive enough for a first impression,
because it shows so called traditional web application in a sense that
there we have classical web pages and navigation between them
(graph-like control flow) but not more recent ajaxified style of
'single-page' web app development, which is shown in the ToDo example.

One solution would be to introduce another tutorial for a simple
ajaxified web app, with widgets, realtime form validation etc. then
continue with current one to shows the traditional Aida as well. and
then ToDo example description.

Any ideas, how to proceed?

Janko

[1] http://www.aidaweb.si/tutorial.html
[2] http://www.aidaweb.si/todo-description




--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it? (was Vision for Aida)

David Jacobs
2012/2/10 Janko Mivšek <[hidden email]>:

> S, Robert Calco piše:
>
>> I think Aida needs a much better, much more in-depth tutorial, that
>> really highlights its best parts, and suggests where it's going to get
>> better over time.
>
> Ok, let we start improving documentation by improving a tutorial. So far
> we have two articles:
>
> 1. Tutorial for a "traditional" Aida [1]
> 2. ToDo example in-depth description [2]

Indeed, Aida could use more tutorials.

> One solution would be to introduce another tutorial for a simple
> ajaxified web app, with widgets, realtime form validation etc. then
> continue with current one to shows the traditional Aida as well. and
> then ToDo example description.
>
> Any ideas, how to proceed?

I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
translation to Aida? The beauty of that tutorial is also how it
explains the use of TDD (or BDD), git, ... , or how things work in
Ruby, not strictly only Rails.
But ofcourse, you need to decide what your audience for an Aida
tutorial is: experienced Smalltalk-users, newcomers, ...

Kind regards,
 - david (new to Smalltalk & Aida)
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it? (was Vision for Aida)

bobcalco
In reply to this post by Janko Mivšek
Hi Janko,

As I have a lot of opinions about this, I'll volunteer to work on it with you. :)

1. It should implement a non-trivial data model. At least one each of a many-to-many, one-to-many, and one-to-one relationship in the domain. 

2. It should be iterative, where we start with a 'traditional' site, layer in unobtrusive JavaScript, and then get fancy with Ajax, WebSocket, etc. On the domain model side, it should first implement in-image persistence, then move onto GLORP and then GemStone as alternate back-ends when you need to run more than one image, possibly on different machines. It *must* cover deployment well. I personally can't stand when that very difficult part of correctly using a framework is 'left as an exercise for the reader'... ;)

3. It should explain the core internals and cover styling in detail. Assume you're talking to experienced engineers coming from a Rails, Symfony, Django, or Grails background. Do not assume they're seasoned Smalltalkers.

4. It should touch on things that are unique to Aida... hosting multiple sites... the way apps get layered onto sites to create systems... being able to run scheduled one-off or periodic processes in the background... really show Aida's breadth while going deep only into domain models, UI, and deployment issues.

5. It must be follow-along-as-you-go, leaving nothing really assumed and easy for someone to bookmark where they are, close their image for the night, and pick up first thing in the afternoon when they wake up... ;)

- Bob


2012/2/10 Janko Mivšek <[hidden email]>
S, Robert Calco piše:

> I think Aida needs a much better, much more in-depth tutorial, that
> really highlights its best parts, and suggests where it's going to get
> better over time.

Ok, let we start improving documentation by improving a tutorial. So far
we have two articles:

1. Tutorial for a "traditional" Aida [1]
2. ToDo example in-depth description [2]

Tutorial has now at the bottom a link to the ToDo description.

Tutorial is probably not attractive enough for a first impression,
because it shows so called traditional web application in a sense that
there we have classical web pages and navigation between them
(graph-like control flow) but not more recent ajaxified style of
'single-page' web app development, which is shown in the ToDo example.

One solution would be to introduce another tutorial for a simple
ajaxified web app, with widgets, realtime form validation etc. then
continue with current one to shows the traditional Aida as well. and
then ToDo example description.

Any ideas, how to proceed?

Janko

[1] http://www.aidaweb.si/tutorial.html
[2] http://www.aidaweb.si/todo-description




--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida


_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it?

Janko Mivšek
In reply to this post by David Jacobs
Hi David,

Let me first welcome to the list and in the Aida world!

> I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
> translation to Aida? The beauty of that tutorial is also how it
> explains the use of TDD (or BDD), git, ... , or how things work in
> Ruby, not strictly only Rails.
> But ofcourse, you need to decide what your audience for an Aida
> tutorial is: experienced Smalltalk-users, newcomers, ...

Wow, this tutorial is a whole book! We certainly don't have resources
for something like that but we can be inspired with the structure and
ideas of that tutorial. Like how it is gradually improving your
knowledge from chapter to chapter.

So current tutorial is too short? What is your feeling when you finish
it? Do you have some "aha" moment? Do you want more but you don't know
where to proceed?

Best regards
Janko

S, David Jacobs piše:

> 2012/2/10 Janko Mivšek <[hidden email]>:
>> S, Robert Calco piše:
>>
>>> I think Aida needs a much better, much more in-depth tutorial, that
>>> really highlights its best parts, and suggests where it's going to get
>>> better over time.
>>
>> Ok, let we start improving documentation by improving a tutorial. So far
>> we have two articles:
>>
>> 1. Tutorial for a "traditional" Aida [1]
>> 2. ToDo example in-depth description [2]
>
> Indeed, Aida could use more tutorials.
>
>> One solution would be to introduce another tutorial for a simple
>> ajaxified web app, with widgets, realtime form validation etc. then
>> continue with current one to shows the traditional Aida as well. and
>> then ToDo example description.
>>
>> Any ideas, how to proceed?
>
> I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
> translation to Aida? The beauty of that tutorial is also how it
> explains the use of TDD (or BDD), git, ... , or how things work in
> Ruby, not strictly only Rails.
> But ofcourse, you need to decide what your audience for an Aida
> tutorial is: experienced Smalltalk-users, newcomers, ...
>
> Kind regards,
>  - david (new to Smalltalk & Aida)
> _______________________________________________
> Aida mailing list
> [hidden email]
> http://lists.aidaweb.si/mailman/listinfo/aida

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it?

Janko Mivšek
Hi guys,

Current tutorial seems to let the people develop an impression (as in
this Reddit comment [1]) of "Aida as being well-suited for writing
websites, and Seaside as being well-suited for writing web applications".

This is certaily not true, Aida is using mainly in business web
applications almost from the start. Well, from the start it was
developed for our main book publisher webshop, a public website
therefore, but since then it is with few exceptions used exclusively for
web apps.

So, we need to improve a tutorial to show its strengths for building web
apps ASAP. Specially that natural transition from a classical webpage
approach to so called Single-Page web application.

Best regards
Janko

[1]
http://www.reddit.com/r/programming/comments/pjggx/vision_and_plans_for_aida_smalltalk_web_framework/



S, Janko Mivšek piše:

> Hi David,
>
> Let me first welcome to the list and in the Aida world!
>
>> I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
>> translation to Aida? The beauty of that tutorial is also how it
>> explains the use of TDD (or BDD), git, ... , or how things work in
>> Ruby, not strictly only Rails.
>> But ofcourse, you need to decide what your audience for an Aida
>> tutorial is: experienced Smalltalk-users, newcomers, ...
>
> Wow, this tutorial is a whole book! We certainly don't have resources
> for something like that but we can be inspired with the structure and
> ideas of that tutorial. Like how it is gradually improving your
> knowledge from chapter to chapter.
>
> So current tutorial is too short? What is your feeling when you finish
> it? Do you have some "aha" moment? Do you want more but you don't know
> where to proceed?
>
> Best regards
> Janko
>
> S, David Jacobs piše:
>> 2012/2/10 Janko Mivšek <[hidden email]>:
>>> S, Robert Calco piše:
>>>
>>>> I think Aida needs a much better, much more in-depth tutorial, that
>>>> really highlights its best parts, and suggests where it's going to get
>>>> better over time.
>>>
>>> Ok, let we start improving documentation by improving a tutorial. So far
>>> we have two articles:
>>>
>>> 1. Tutorial for a "traditional" Aida [1]
>>> 2. ToDo example in-depth description [2]
>>
>> Indeed, Aida could use more tutorials.
>>
>>> One solution would be to introduce another tutorial for a simple
>>> ajaxified web app, with widgets, realtime form validation etc. then
>>> continue with current one to shows the traditional Aida as well. and
>>> then ToDo example description.
>>>
>>> Any ideas, how to proceed?
>>
>> I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
>> translation to Aida? The beauty of that tutorial is also how it
>> explains the use of TDD (or BDD), git, ... , or how things work in
>> Ruby, not strictly only Rails.
>> But ofcourse, you need to decide what your audience for an Aida
>> tutorial is: experienced Smalltalk-users, newcomers, ...
>>
>> Kind regards,
>>  - david (new to Smalltalk & Aida)
>> _______________________________________________
>> Aida mailing list
>> [hidden email]
>> http://lists.aidaweb.si/mailman/listinfo/aida
>

--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it?

bobcalco
Janko,


2012/2/13 Janko Mivšek <[hidden email]>
Hi guys,

Current tutorial seems to let the people develop an impression (as in
this Reddit comment [1]) of "Aida as being well-suited for writing
websites, and Seaside as being well-suited for writing web applications".

This is certaily not true, Aida is using mainly in business web
applications almost from the start. Well, from the start it was
developed for our main book publisher webshop, a public website
therefore, but since then it is with few exceptions used exclusively for
web apps.

So, we need to improve a tutorial to show its strengths for building web
apps ASAP. Specially that natural transition from a classical webpage
approach to so called Single-Page web application.

I think that Aida's core abstractions -- Sites, Applications, Widgets -- lends to the perception. 'Application' in Aida refers (somewhat awkwardly, IMHO) to VC combinations in the MVC triad. To me, V+C = Component and (1...n Components = Application). 

In other words, it is not intuitive to a noob that once you have a site that you layer your domain on it with as many applications as you have domain objects (roughly). I think this is perhaps where the perception comes from.

On a purely aesthetic level I really like Seaside's terminology, which is internally consistent with its stated goals. I probably would have gone with Seaside if they did not require special VM sauce to make a key part of the value proposition of the framework work (i.e., continuations). 

Really what Aida is trying to do (correct me if I'm wrong) is to let the developers actually define the semantics for themselves. A site is a root URL, an application is a chunk of functionality available at a site, and widgets are complex elements that are grouped for functional reuse within 'applications.' So, actually, Aida is trying not to impose very many constraints on how the developer organizes his/her design.

This is why a good tutorial that explains the rational for each design choice and the resulting cleaner, simpler implementation is critical if Aida is going to shake its perception as 'good for sites but not applications.'

I also think that Seaside directly addresses a real developer pain with a clean -- albeit not entirely portable -- solution. I have always *hated* building web apps because of the statelessness of HTTP. Seaside makes it easy to code in a way that the logic of a workflow is self-evident in the code, at a cost that seems not too bad when the one thing managers in the world care about most is time-to-market. That's the big whiz-bang of Seaside as I see it. They effectively created a development environment that thoroughly shields the developer from the most painful aspect of working in HTTP.

Aida should come up with a way to deal with the problems of web development that delivers similar (if not identical) value, only without the not-very-portable black magic involved in Seaside's implementation. If this exists already in Aida, please enlighten me! 

Again, a tutorial needs to address the pain of web development and how Aida removes it, not just show off features.

The other pain area that I don't think either framework deals with well yet is styling, layouts, look feel and JavaScript integration. If you're coming from a template based web development paradigm, nothing makes you feel woozier and less confident than the manner in which both frameworks deal with that. (Well, not counting the questions of RDMBS vs OODMS, in-memory persistence vs. ...etc.)

At least, I have not found that aspect to be as intuitive as it could be.

- Bob 

Best regards
Janko

[1]
http://www.reddit.com/r/programming/comments/pjggx/vision_and_plans_for_aida_smalltalk_web_framework/




_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it?

bobcalco
Let me clarify one point:

On Mon, Feb 13, 2012 at 11:01 AM, Robert Calco <[hidden email]> wrote:


The other pain area that I don't think either framework deals with well yet is styling, layouts, look feel and JavaScript integration. If you're coming from a template based web development paradigm, nothing makes you feel woozier and less confident than the manner in which both frameworks deal with that. (Well, not counting the questions of RDMBS vs OODMS, in-memory persistence vs. ...etc.)

At least, I have not found that aspect to be as intuitive as it could be.

What I mean to say is: Neither are yet really offering innovation that makes styling applications as a task in the development cycle more intuitive

Most web designers are going to give me PSDs or gobs of horribly written HTML with a bunch of graphics, and how I translate that to templates in Rails is pretty straightforward, but how I do that in Seaside or Aida in a way that saves me time, I do not yet see. Could be just me, though. :)

- Bob
 

- Bob 


_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it?

Nicholas Moore
In reply to this post by Janko Mivšek
Hi,

 I think a major challenge here is to address who a tutorial might be aimed at. If we had unlimited resources :-) we could have a number of different tutorial entry points, according to the intended users background and desire.

Given that Aida's tutorials need to develop, I suggest that we think in terms of use-cases, start simple and add features as we go. For instance we might decide to build an interactive, membership-based web application - something that would allow a user to log on, post messages, subscribe to RSS, download from a secure site etc.

If we identify several stages in the creation of such an app and build a tutorial around each stage, new users will be able to complete each stage while also seeing a greater context. More sophisticated aspects of Aida and Smalltalk could be introduced at each stage.

Is the intended audience experienced in Smalltalk, or web design/html or both, or neither? We might address this by designing the stages of the tutorials such that a person could select tutorials as appropriate to their background.

It seems to me that the design of the tutorial programme and it's content is the first item on the agenda.

My two-pennyworth.

Nicholas

On 13/02/12 11:09, Janko Mivšek wrote:
Hi guys,

Current tutorial seems to let the people develop an impression (as in
this Reddit comment [1]) of "Aida as being well-suited for writing
websites, and Seaside as being well-suited for writing web applications".

This is certaily not true, Aida is using mainly in business web
applications almost from the start. Well, from the start it was
developed for our main book publisher webshop, a public website
therefore, but since then it is with few exceptions used exclusively for
web apps.

So, we need to improve a tutorial to show its strengths for building web
apps ASAP. Specially that natural transition from a classical webpage
approach to so called Single-Page web application.

Best regards
Janko

[1]
http://www.reddit.com/r/programming/comments/pjggx/vision_and_plans_for_aida_smalltalk_web_framework/



S, Janko Mivšek piše:
Hi David,

Let me first welcome to the list and in the Aida world!

I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
translation to Aida? The beauty of that tutorial is also how it
explains the use of TDD (or BDD), git, ... , or how things work in
Ruby, not strictly only Rails.
But ofcourse, you need to decide what your audience for an Aida
tutorial is: experienced Smalltalk-users, newcomers, ...
Wow, this tutorial is a whole book! We certainly don't have resources
for something like that but we can be inspired with the structure and
ideas of that tutorial. Like how it is gradually improving your
knowledge from chapter to chapter.

So current tutorial is too short? What is your feeling when you finish
it? Do you have some "aha" moment? Do you want more but you don't know
where to proceed?

Best regards
Janko

S, David Jacobs piše:
2012/2/10 Janko Mivšek [hidden email]:
S, Robert Calco piše:

I think Aida needs a much better, much more in-depth tutorial, that
really highlights its best parts, and suggests where it's going to get
better over time.
Ok, let we start improving documentation by improving a tutorial. So far
we have two articles:

1. Tutorial for a "traditional" Aida [1]
2. ToDo example in-depth description [2]
Indeed, Aida could use more tutorials.

One solution would be to introduce another tutorial for a simple
ajaxified web app, with widgets, realtime form validation etc. then
continue with current one to shows the traditional Aida as well. and
then ToDo example description.

Any ideas, how to proceed?
I really like RoR tutorial http://ruby.railstutorial.org/ . Maybe a
translation to Aida? The beauty of that tutorial is also how it
explains the use of TDD (or BDD), git, ... , or how things work in
Ruby, not strictly only Rails.
But ofcourse, you need to decide what your audience for an Aida
tutorial is: experienced Smalltalk-users, newcomers, ...

Kind regards,
 - david (new to Smalltalk & Aida)
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida

      

    

--

Nicholas Moore


_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Tutorial, how to improve it? (was Vision for Aida)

Offray
In reply to this post by Janko Mivšek
Hi All,

Is nice to see this new year activity with the new year and is nice to
see this focus in documentation. Making the connection with the
greetings message from Janko apropos of the last year, 2011 was the year
I discover Aida and made the decision of learning web development. I
like a lot Aida, but because of the lack of comprehensive newbie
oriented documentation and my lack of knowledge to help filling the gaps
on this matter, my choice was to learn Seaside (which I like also, by
the way). Now I want to comment on the documentation matter a little
more, and if this mail gets too long (and is probable), I will try to
publish parts as supporting material in other places.

First a little of context: I'm a teacher of Information and
Communication Technologies (ICT) seminars on a postgraduate studies in
Science Didactics, in Bogotá - Colombia, South America. My students are
mostly school teachers without prior knowledge of programming and the
more we deal with the social aspects of digital culture, the more I see
the need of learning programming properly, despite of not being a
developer myself (I made some cognitive models using algorithms, but
that's not developing). So I'm in a context where I teach adult science
teachers about digital technology and I think that we all need to
program, specially in the context of web related technologies, because
that's a place where of political struggle is more evident (power
dynamics always related with technology since the mastering of the fire).

As Paulo Freire said, the problem teaching adults is that the usual
teaching for younger people is not enough related with "real life" for
them, and mostly they need get out of illiteracy for "real life"
reasons. Me and my students want to get out of our ICT illiteracy for
reasons like that and most of the examples in tutorials, including the
To Do example, are too artificial for us (ruby tutorial is a remarkable
exception, but we don't want recreate twitter). We want to create
something like a personal site, but connected with social networks.
Some, like Tantek Celik[1] have pioneered the idea and have call it DiSo
(for Distributed Social) making emphasis on microformats, but I want to
emphasize infrastructure and programming environments and that's where
Smalltalk environments excels others easily with its integration and
portability. We call the idea a "Digital Identity Router" (napkin first
draft here [2]). The idea is to build a kind of p2p social network where
you can connect with other people, using also monopoly privative ones
(Twitter, Facebook, etc) or the federates free open source ones
(Identica, Diaspora, etc), without depending _only_ on them for being
connected. They're kind of a second option. This is how it works:

You have a personal place where you put your data _first_, and then you
route the info where you want it to be _replicated_ (Twitter/identica,
facebook/Diaspora, flickr, and so on). The router can bring back the
interaction on that places (comments, stars, favs, and so on), so your
information _and_ the infrastructure behind it is at your control. If
you and your peers use the same model, you can be connected directly to
them by connecting the routers, without keep tracking on every contact
on the next new social network. Sensitive information can be available
only to your peers using the router and your site, so it never became
part of the Big Brother's data.


With this idea we're trying to get out of the sick merchandising
tendency of Web <Next ordinal number> dot "Ohhh", and instead of asking
ourselves about the next big thing in the next big "version" of the web,
we're trying to get an answer about how small can be the web?, can it
fit in your pocket? may be in a USB thumb drive, where you have (vía
Smalltalk/web2py) a multi-platform on-click server/IDE for a p2p social
architecture? May be it can work on/off-line, synchronizing this thumb
drives with some servers on the web and with other peers.

This is the project I would like to do with my students, using Aida or
Seaside. For the moment I have opted by the last because of the
extensive documentation and libraries, like JQuery Mobile, but we're
going to start small. First by some bookmarking site (like p2p delicious
in your pocket) then, connecting this with microblogging, like
identica/twitter, then a personal url shorter, a blog/wiki engine and
finally with some bigger media, like photo, audio and video. The
documentation will be primary done in Spanish first, but if this idea is
worth about how to remake/refocus the current documentation I would be
glad of sharing inquiries and experiences.

Cheers,

Offray

Notes:
======

[1] http://tantek.com/
[2] http://hackbo.co/home/webframeworks/ubakye/ubakyeZacatecas.png/

On 10/02/12 13:15, Janko Mivšek wrote:

> S, Robert Calco piše:
>
>> I think Aida needs a much better, much more in-depth tutorial, that
>> really highlights its best parts, and suggests where it's going to get
>> better over time.
>
> Ok, let we start improving documentation by improving a tutorial. So far
> we have two articles:
>
> 1. Tutorial for a "traditional" Aida [1]
> 2. ToDo example in-depth description [2]
>
> Tutorial has now at the bottom a link to the ToDo description.
>
> Tutorial is probably not attractive enough for a first impression,
> because it shows so called traditional web application in a sense that
> there we have classical web pages and navigation between them
> (graph-like control flow) but not more recent ajaxified style of
> 'single-page' web app development, which is shown in the ToDo example.
>
> One solution would be to introduce another tutorial for a simple
> ajaxified web app, with widgets, realtime form validation etc. then
> continue with current one to shows the traditional Aida as well. and
> then ToDo example description.
>
> Any ideas, how to proceed?
>
> Janko
>
> [1] http://www.aidaweb.si/tutorial.html
> [2] http://www.aidaweb.si/todo-description
>
>
>
>

_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Vision for Aida

sebastien paquet
In reply to this post by Janko Mivšek
HI, I recently started using Aida and learning Smalltalk at the same time and I have to say that I really believe in a great future for this framework and where it could go. I just did the blog tutorial that used to be on the Aida site and where the link is broken. I squinted my eyes over the clip on Youtube and did it. I realized that a couple things in the docs on the site and tutorials seem to have changed. I mean code wise. Sometimes I ll do exactly what It says and it doesn t work. I ll try something else and it does. I guess it could be related to the versions but I m not sure. So, I wish i could contribute and maybe write down the blog tutorial from the video, it s really good for showing how CRUD operations integrate with the framework. Also how to route the views. Aida is awesome and not that Seaside is not good but coming from Avi Bryant himself saying that its outdated as a lot of frameworks since it was built at a time when problems were different. I think Aida is different and can only get better especially when I hear people talking about integrating Amber on the client-side. Wow! Technology at its best and the future of the only real OOP language(!) looks bright.
Reply | Threaded
Open this post in threaded view
|

Re: Vision for Aida

Janko Mivšek
In reply to this post by Janko Mivšek
I'm forwarding a response from Sebastien Paquet, posted on Nabble which
has also problems sending posts to our mailing list. I'm investigating
the problem ...

23:43, 09.Mar.2012 sebastien paquet

HI,

I recently started using Aida and learning Smalltalk at the same time
and I have to say that I really believe in a great future for this
framework and where it could go.

I just did the blog tutorial that used to be on the Aida site and where
the link is broken. I squinted my eyes over the clip on Youtube and did
it. I realized that a couple things in the docs on the site and
tutorials seem to have changed. I mean code wise. Sometimes I ll do
exactly what It says and it doesn t work. I ll try something else and it
does. I guess it could be related to the versions but I m not sure. So,
I wish i could contribute and maybe write down the blog tutorial from
the video, it s really good for showing how CRUD operations integrate
with the framework. Also how to route the views.

Aida is awesome and not that Seaside is not good but coming from Avi
Bryant himself saying that its outdated as a lot of frameworks since it
was built at a time when problems were different. I think Aida is
different and can only get better especially when I hear people talking
about integrating Amber on the client-side. Wow! Technology at its best
and the future of the only real OOP language(!) looks bright.


Dne 10. 02. 2012 16:37, piše Janko Mivšek:

> Hi Bob,
>
> You just inspired me to write down my vision and future plans for Aida,
> so let me start with that:
>
> Main *Aida vision* from the start is to extend the Smalltalk philosophy,
> elegance, simplicity, power to the web applications as well while
> preserving all those beauties of Smalltalk.
>
> And to be on the *bleeding edge of web technology* with Smalltalk all
> the time. Which we are. I'm most proud that initial architecture was set
> good enough to be adaptable through all that time since 1996 and that we
> are not stuck even now supporting the current HTML5 wave.
>
> And here are the plans. Short-term, long-term? Well, we'll see :)
>
> 1. *Documentation*! It seems Aida core features are stable enough now
>    that we can document it and that this documentation will last for a
>    while without needing to update it constantly;
>
> 2. More *HTML5*! like FileSystem, DragDrop, Video and Audio etc etc;
>
> 3. More *realtime*, actually realtime anything, everywhere. WebSocket
>    standard is now de-facto complete and in a year all browsers will
>    support it. What I mean by realtime anything, everywhere? Any data
>    you show everywhere on your web page will be updated in realtime,
>    that is, immediately when data changes. And this will be switched on
>    by default!
>
> 4 More *client*! That is, more processing moved to web client with
>   Amber Smalltalk. Here the end goal is to partition your app in
>   runtime where to run. All on server as now, all on client (and
>   offline), or parts on server, parts on client. Client parts are
>   "emitted" to Amber Smalltalk and sent to a client for execution;
>
> 5. More *local updating* at the client. On server only data is
>    updated while all dependent views are refreshed locally on client;
>
> 6. *Automatic forms building* out of domain model, with help of
>    forthcoming AidaFields by Nicolas Petton;
>
> 7. More *relational domain model* support;
>
> 8. More *JavaScript libraries* supported as Aida Addons;
>
> 9. Aida as provider of *REST-full web services* accessible from other
>    web or mobile apps
>
> 10.*Cloud* support, Aida apps as both as client as service provider in
>    the cloud;
>
> 11.*Aida hosting*, both free and commercial.
>
>
> Best regards
> Janko
>
>
>
> S, Robert Calco piše:
>> Janko,
>>
>> I was wondering if you could reveal any grand plans you might have for
>> the future of Aida?
>>
>> What I like about Aida compared to Seaside is its relative simplicity
>> and portability. Seaside uses features of Smalltalk that are not really
>> portable between smalltalks to do its magic (continuations and pragmas
>> being the big ones that I've noticed, which prevent it from being used
>> fully in Dolphin, for example).
>>
>> It feels to me like Aida doesn't try to reinvent too many wheels,
>> meaning it's a bit more accessible to people coming from, say, Rails,
>> like myself. It has relatively more steak than sizzle, whereas Seaside
>> has relatively more sizzle than steak. I like my steak rare ("still
>> twitching" is what I tell waitresses at restaurants), so I don't care
>> about sizzle so much. That said, my favourite way to prepare steak is
>> 'black and blue' -- but it takes a rather industrial-size furnace to
>> cook it that way, but, working for a charity, I usually only have a
>> couple matches and a little kindling to start my fire pit. ;)
>>
>> What I don't like about Aida is the documentation, which is a bit
>> scattered by topic and somewhat stream of consciousness. Seaside has
>> Aida beat hands-down in this department. There are books, well-designed
>> tutorials, lots of samples, etc. It's actually very hard, if you're me,
>> to ignore that big plus for Seaside.
>>
>> I think Aida needs a much better, much more in-depth tutorial, that
>> really highlights its best parts, and suggests where it's going to get
>> better over time. I am not sure I like all the parts of Aida included --
>> for example, I've been reviewing the (very involved) Parties/Roles
>> packages and it encroaches a lot on my domain model, meaning I either
>> have to use all of it or none of it. But maybe I have misinterpreted its
>> design? Maybe it's better than my slogging in the code has revealed, and
>> I should use it? Some documentation about the rationale for the
>> abstractions chosen and how they're implemented would be nice.
>>
>> What I'd like to see in Aida is a greater commitment to REST and maybe
>> XMLRPC API support (seems you're working on that one quite
>> aggressively), more of an MVP vs MVC pattern for rendering, and perhaps
>> support for rich web clients a la Amber (I see there is WebDAV support
>> in Aida, so perhaps you're already intending to go that route), and
>> better security (I really need to support HTTPS, and support API keys
>> securely). Seaside has done a good job in its HTML API, but Aida's
>> abstractions feel somewhat heavy (gazillions of methods). Some
>> refactoring of that seems like it could be good.
>>
>> Neither framework handles layouts, look-feel, or any of the design
>> intensive side of web development as nicely as I imagine it could be
>> done. This could be an area for huge win in Aida, as I see you've tried
>> to make it easy to reskin a site by supplying a new web style. However,
>> I tried doing this with the demo app and only just mucked stuff up.
>> Again, good documentation about this important area of implementation
>> and some idea of what the end-goal is for it would be awesome.
>>
>> I'm willing to contribute but I need to get up and running and confident
>> in what I'm doing still. It's been a bit of a ramp up. But I think I'll
>> do well with this choice for what I need to do. I would just like to
>> know what the future holds as I think there is still a lot of room for
>> innovation in web development, and it doesn't all have to be heretical
>> to be on the bleeding edge, so to speak. I'll feel better about Aida
>> knowing that it's roadmap is a good one.
>>
>> - Bob
>>
>>
>>
>>
>> _______________________________________________
>> Aida mailing list
>> [hidden email]
>> http://lists.aidaweb.si/mailman/listinfo/aida
>

--
Janko Mivšek
Svetovalec za informatiko
Eranova d.o.o.
Ljubljana, Slovenija
www.eranova.si
tel:  01 514 22 55
faks: 01 514 22 56
gsm: 031 674 565
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida
Reply | Threaded
Open this post in threaded view
|

Re: Scribo Blog (was Vision for Aida)

Janko Mivšek
Hi Sebastien,

Welcome to the list and thanks for your kind words!

About Blog tutorial, yes this one is quite old and you are very welcome
to upgrade the tutorial and also the blog code itself to work on recent
Aida and Scribo. Maybe Nicolas Petton, author of the Scribo Blog will
find some time to help you too.

Best regards
Janko

Dne 11. 03. 2012 12:02, piše Janko Mivšek:

> I'm forwarding a response from Sebastien Paquet, posted on Nabble which
> has also problems sending posts to our mailing list. I'm investigating
> the problem ...
>
> 23:43, 09.Mar.2012 sebastien paquet
>
> HI,
>
> I recently started using Aida and learning Smalltalk at the same time
> and I have to say that I really believe in a great future for this
> framework and where it could go.
>
> I just did the blog tutorial that used to be on the Aida site and where
> the link is broken. I squinted my eyes over the clip on Youtube and did
> it. I realized that a couple things in the docs on the site and
> tutorials seem to have changed. I mean code wise. Sometimes I ll do
> exactly what It says and it doesn t work. I ll try something else and it
> does. I guess it could be related to the versions but I m not sure. So,
> I wish i could contribute and maybe write down the blog tutorial from
> the video, it s really good for showing how CRUD operations integrate
> with the framework. Also how to route the views.
>
> Aida is awesome and not that Seaside is not good but coming from Avi
> Bryant himself saying that its outdated as a lot of frameworks since it
> was built at a time when problems were different. I think Aida is
> different and can only get better especially when I hear people talking
> about integrating Amber on the client-side. Wow! Technology at its best
> and the future of the only real OOP language(!) looks bright.
>
>
> Dne 10. 02. 2012 16:37, piše Janko Mivšek:
>> Hi Bob,
>>
>> You just inspired me to write down my vision and future plans for Aida,
>> so let me start with that:
>>
>> Main *Aida vision* from the start is to extend the Smalltalk philosophy,
>> elegance, simplicity, power to the web applications as well while
>> preserving all those beauties of Smalltalk.
>>
>> And to be on the *bleeding edge of web technology* with Smalltalk all
>> the time. Which we are. I'm most proud that initial architecture was set
>> good enough to be adaptable through all that time since 1996 and that we
>> are not stuck even now supporting the current HTML5 wave.
>>
>> And here are the plans. Short-term, long-term? Well, we'll see :)
>>
>> 1. *Documentation*! It seems Aida core features are stable enough now
>>    that we can document it and that this documentation will last for a
>>    while without needing to update it constantly;
>>
>> 2. More *HTML5*! like FileSystem, DragDrop, Video and Audio etc etc;
>>
>> 3. More *realtime*, actually realtime anything, everywhere. WebSocket
>>    standard is now de-facto complete and in a year all browsers will
>>    support it. What I mean by realtime anything, everywhere? Any data
>>    you show everywhere on your web page will be updated in realtime,
>>    that is, immediately when data changes. And this will be switched on
>>    by default!
>>
>> 4 More *client*! That is, more processing moved to web client with
>>   Amber Smalltalk. Here the end goal is to partition your app in
>>   runtime where to run. All on server as now, all on client (and
>>   offline), or parts on server, parts on client. Client parts are
>>   "emitted" to Amber Smalltalk and sent to a client for execution;
>>
>> 5. More *local updating* at the client. On server only data is
>>    updated while all dependent views are refreshed locally on client;
>>
>> 6. *Automatic forms building* out of domain model, with help of
>>    forthcoming AidaFields by Nicolas Petton;
>>
>> 7. More *relational domain model* support;
>>
>> 8. More *JavaScript libraries* supported as Aida Addons;
>>
>> 9. Aida as provider of *REST-full web services* accessible from other
>>    web or mobile apps
>>
>> 10.*Cloud* support, Aida apps as both as client as service provider in
>>    the cloud;
>>
>> 11.*Aida hosting*, both free and commercial.
>>
>>
>> Best regards
>> Janko
>>
>>
>>
>> S, Robert Calco piše:
>>> Janko,
>>>
>>> I was wondering if you could reveal any grand plans you might have for
>>> the future of Aida?
>>>
>>> What I like about Aida compared to Seaside is its relative simplicity
>>> and portability. Seaside uses features of Smalltalk that are not really
>>> portable between smalltalks to do its magic (continuations and pragmas
>>> being the big ones that I've noticed, which prevent it from being used
>>> fully in Dolphin, for example).
>>>
>>> It feels to me like Aida doesn't try to reinvent too many wheels,
>>> meaning it's a bit more accessible to people coming from, say, Rails,
>>> like myself. It has relatively more steak than sizzle, whereas Seaside
>>> has relatively more sizzle than steak. I like my steak rare ("still
>>> twitching" is what I tell waitresses at restaurants), so I don't care
>>> about sizzle so much. That said, my favourite way to prepare steak is
>>> 'black and blue' -- but it takes a rather industrial-size furnace to
>>> cook it that way, but, working for a charity, I usually only have a
>>> couple matches and a little kindling to start my fire pit. ;)
>>>
>>> What I don't like about Aida is the documentation, which is a bit
>>> scattered by topic and somewhat stream of consciousness. Seaside has
>>> Aida beat hands-down in this department. There are books, well-designed
>>> tutorials, lots of samples, etc. It's actually very hard, if you're me,
>>> to ignore that big plus for Seaside.
>>>
>>> I think Aida needs a much better, much more in-depth tutorial, that
>>> really highlights its best parts, and suggests where it's going to get
>>> better over time. I am not sure I like all the parts of Aida included --
>>> for example, I've been reviewing the (very involved) Parties/Roles
>>> packages and it encroaches a lot on my domain model, meaning I either
>>> have to use all of it or none of it. But maybe I have misinterpreted its
>>> design? Maybe it's better than my slogging in the code has revealed, and
>>> I should use it? Some documentation about the rationale for the
>>> abstractions chosen and how they're implemented would be nice.
>>>
>>> What I'd like to see in Aida is a greater commitment to REST and maybe
>>> XMLRPC API support (seems you're working on that one quite
>>> aggressively), more of an MVP vs MVC pattern for rendering, and perhaps
>>> support for rich web clients a la Amber (I see there is WebDAV support
>>> in Aida, so perhaps you're already intending to go that route), and
>>> better security (I really need to support HTTPS, and support API keys
>>> securely). Seaside has done a good job in its HTML API, but Aida's
>>> abstractions feel somewhat heavy (gazillions of methods). Some
>>> refactoring of that seems like it could be good.
>>>
>>> Neither framework handles layouts, look-feel, or any of the design
>>> intensive side of web development as nicely as I imagine it could be
>>> done. This could be an area for huge win in Aida, as I see you've tried
>>> to make it easy to reskin a site by supplying a new web style. However,
>>> I tried doing this with the demo app and only just mucked stuff up.
>>> Again, good documentation about this important area of implementation
>>> and some idea of what the end-goal is for it would be awesome.
>>>
>>> I'm willing to contribute but I need to get up and running and confident
>>> in what I'm doing still. It's been a bit of a ramp up. But I think I'll
>>> do well with this choice for what I need to do. I would just like to
>>> know what the future holds as I think there is still a lot of room for
>>> innovation in web development, and it doesn't all have to be heretical
>>> to be on the bleeding edge, so to speak. I'll feel better about Aida
>>> knowing that it's roadmap is a good one.
>>>
>>> - Bob
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Aida mailing list
>>> [hidden email]
>>> http://lists.aidaweb.si/mailman/listinfo/aida
>>
>

--
Janko Mivšek
Svetovalec za informatiko
Eranova d.o.o.
Ljubljana, Slovenija
www.eranova.si
tel:  01 514 22 55
faks: 01 514 22 56
gsm: 031 674 565
_______________________________________________
Aida mailing list
[hidden email]
http://lists.aidaweb.si/mailman/listinfo/aida