Dear all,
We are in Christmas time, a time for wishes, so, what are you wishes for new features in Aida in forthcoming year? Validation is one part, let we discuss that in already open thread, what else? Let me start for warming up: my first wish is to make a unified channel of communication between server and browser via JSON messages for both Ajax and WebSocket, to update any element on the page just by calling "e update". And even more, when some domain object changes, all their observers (Apps or Widgets) update immediatelly, on all browsers observing that domain object at that moment, everywhere on the world. A Comet on stereoids therefore and a nice extension of Iliad markDirty idea. Now is your turn... Janko -- 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 |
Janko Mivšek <[hidden email]> writes:
> Dear all, > > We are in Christmas time, a time for wishes, so, what are you wishes for > new features in Aida in forthcoming year? > > Validation is one part, let we discuss that in already open thread, what > else? I suggestes somethign along accepter/presenter, validation could be part of the acceptor part. It should be avoided (IMHO) to just hope for validation case-by-case. I think attaching it to the to be displayed objekt, right from the start is crucial. > > Let me start for warming up: my first wish is to make a unified channel > of communication between server and browser via JSON messages for both > Ajax and WebSocket, to update any element on the page just by calling "e > update". +1 > > And even more, when some domain object changes, all their observers > (Apps or Widgets) update immediatelly, on all browsers observing that > domain object at that moment, everywhere on the world. A Comet on > stereoids therefore and a nice extension of Iliad markDirty idea. I'm not sure about it but about introducing Events in the run. I posted some ideas about it in a prior mail. I know it sound lame, but Common Lisp has something build-into it's CLOS system there are before, after, around methods. Just take the validations a good place for it is in a #beforeValidation or #onValidation I know it sound lame again, but I think the "success" of Access is because of this events. Like everything it can be misused, but it is helpful if applied well. It keeps the cod managable and you can step in if need be... I can not even think of one other way on how to achieve that, maybe callbacks? Regards Friedrich -- Q-Software Solutions GmbH; Sitz: Bruchsal; Registergericht: Mannheim Registriernummer: HRB232138; Geschaeftsfuehrer: Friedrich Dominicus _______________________________________________ Aida mailing list [hidden email] http://lists.aidaweb.si/mailman/listinfo/aida |
In reply to this post by Janko Mivšek
Hi,
What I'll be really happy to see is more documentation for Aida. Anything would do - a handbook of common usage, a screen cast or even an in-code help book with the new help system in Pharo. Stanislav Paskalev 2010/12/16 Janko Mivšek <[hidden email]>: > Dear all, > > We are in Christmas time, a time for wishes, so, what are you wishes for > new features in Aida in forthcoming year? > > Validation is one part, let we discuss that in already open thread, what > else? > > Let me start for warming up: my first wish is to make a unified channel > of communication between server and browser via JSON messages for both > Ajax and WebSocket, to update any element on the page just by calling "e > update". > > And even more, when some domain object changes, all their observers > (Apps or Widgets) update immediatelly, on all browsers observing that > domain object at that moment, everywhere on the world. A Comet on > stereoids therefore and a nice extension of Iliad markDirty idea. > > Now is your turn... > > Janko > > > -- > 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 |
Stanislav Paskalev wrote:
> Hi, > What I'll be really happy to see is more documentation for Aida. > Anything would do - a handbook of common usage, a screen cast or even > an in-code help book with the new help system in Pharo. I'll second this one. Damir _______________________________________________ Aida mailing list [hidden email] http://lists.aidaweb.si/mailman/listinfo/aida |
In reply to this post by Janko Mivšek
Hi Janko,
I haven't even checked your latest version (hope I'll make it this year), but.. JM> Now is your turn... I like your proposal and I'm curious how you'll end up implementing it. I have several WebGrids where a click selects something and updates some parts of the page. This adds a (several?) lengthy AjaxUpdater(s) to every cell in the table which usually only differ in the element id which is sent by the updater. These make up the biggest part of the HTML of the grid. When you do this JSON extension could you make it so, that only one Javascript function is built and that each cell only contains an single function call like in: onClick = "updateFunc1('idxxx')"; to call this function with its ID. This will speed up the initial page load even if the JSON for each update only contains the cell contents of the grid. For the WebSlider (scriptaculous) and AidaCharts this function would need an additional parameter to return the slider value or the coordinates clicked in a chart. One parameter is enough as it may be a JSON object. I've implemented this for the conventional Ajax update and it helped a lot for the speed of Ajax updates. Another concern: Imagine a WebGrid as a view on a big collection. You never want to send the whole collection to the browser but you want a slider beside the WebGrid to navigate the whole collection. Right now I'm struggling to implement this for the onChange event of the slider. User moves slider which represents the whole collection (think Excel). When the mouse button is released the few lines which are displayed in the grid are Ajax updated. Nothing happens during slider movement. I have no idea how it could be made feasible to implement that for the onSlide event due to the sheer amount of network traffic. Even it's only JSON coming back the latencies would make this a "delayed" experience. As usual you'll be much faster implementing things than me. As I think a slider would be a useful addition to WebGrid I mention it now. Cheers, Herbert mailto:[hidden email] _______________________________________________ Aida mailing list [hidden email] http://lists.aidaweb.si/mailman/listinfo/aida |
In reply to this post by Damir Horvat-2
On 16. 12. 2010 18:43, Damir Horvat wrote:
> Stanislav Paskalev wrote: >> What I'll be really happy to see is more documentation for Aida. >> Anything would do - a handbook of common usage, a screen cast or even >> an in-code help book with the new help system in Pharo. > > I'll second this one. Yes, documentation, the biggest problem of Smalltalk projects in general... But now with 6.x stabilizing in all new features which came with tree-like control flow and wigets in 6.0, also with a noew project on the way, we can actually at least review existing docs and write some more. One already underway is a simple example of CRUD app with all Aida patterns and best practices included, an app which Friedrich started (Tan). This one could end up as a very useful one to show Aida's most used patterns in action. Some more screencasts would be also desirable, anymore willing to build one? Best regards Janko -- 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 |
In reply to this post by Herbert König
On 16. 12. 2010 19:33, Herbert König wrote:
> I have several WebGrids where a click selects something and updates > some parts of the page. This adds a (several?) lengthy AjaxUpdater(s) > to every cell in the table which usually only differ in the element id > which is sent by the updater. These make up the biggest part of the > HTML of the grid. > > When you do this JSON extension could you make it so, that only one > Javascript function is built and that each cell only contains an > single function call like in: > onClick = "updateFunc1('idxxx')"; to call this function with its ID. This is actually a good and doable idea, maybe extended a bit to cover any event: <a href="/somelink" id="id17" onClick: "notifyEvent('click', 'id17')"> Because Aida as a statefull web framework has all needed state to act on such event notification on server, this is something to be implemented easily. > This will speed up the initial page load even if the JSON for each > update only contains the cell contents of the grid. Yep, specially if browser sends that notification on WebSocket channel, which has only two bytes overhead, comparing to Ajax HTTP request, which has 500-1000 bytes, that is 200-500 times more! Best regads Janko -- 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 |
In reply to this post by Herbert König
On 16. 12. 2010 19:33, Herbert König wrote:
> Another concern: > Imagine a WebGrid as a view on a big collection. You never want to > send the whole collection to the browser but you want a slider beside the > WebGrid to navigate the whole collection. > > Right now I'm struggling to implement this for the onChange event of > the slider. User moves slider which represents the whole collection > (think Excel). When the mouse button is released the few lines which > are displayed in the grid are Ajax updated. Nothing happens during slider > movement. > > I have no idea how it could be made feasible to implement that for the > onSlide event due to the sheer amount of network traffic. Even it's > only JSON coming back the latencies would make this a "delayed" > experience. > > As usual you'll be much faster implementing things than me. > As I think a slider would be a useful addition to WebGrid > I mention it now. I agree,just that this is quite hard to implement, also from usability standpoint. What about simply adding a "More..." link on the bottom of the grid? Clicking it will extend a grid with another batch of rows. Or simply, when you scroll to the end of the grid, it is automatically extended. This is much simpler to implement and is more and more common around the web, like for instance on Twitter. Mobile apps also use that approach. Best regards Janko -- 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 |
Free forum by Nabble | Edit this page |