Thursday, May 10, 2007

Undo feature on the web

I Just noticed the undo in blogger's apply label functionality and it clicked into an interesting user interface issue we're starting to see more addressed on the web. This is a very much needed feature that is very powerful in terms of user interface and we should all be looking at it sooner than later.
Of course we'll expect GeneXus to provide this to us soon as far as transactions goes ... although it might have to be the work with pattern that implements such a feature as it involves maybe more of one object.

7 comments:

Alejandro said...

Gmail also has this undo feature, for a while now, how do you think GeneXus will give a similar functionality ?
Are you talking about rolling back transactions ? or undoing transactions using a JobLog of some sort ?
Just curious.

Cecilia Abadie said...

I just think it's something to have on the radar. It looks to me mostly as a feature for a work with in cases where you apply actions to multiple rows (just as the case in blogger) or even after you come back from creating, modifying or deleting a record (or transactional logical unit). I don't seem to find a use on a transaction itself during record edition although it would be possible.

Alejandro said...

Seems to me more than a feature specific for a content management system than for a general tool; Don't get me wrong I do like the feature ( its like CVS on your Database)
But maybe is not ok for an invoice and payroll ssytem to have an "undo" :-)
GXPortal could use it, any app that deals with user content or publish stuff or stores office documents also would benefit from that.

BTW: I just watche K. Kelly talk on TED very cool.

Alejandro said...

See , I just could have used the "undo comment" to correct the spelling in the previous comment ;-)

Cecilia Abadie said...

Yeah, it'd be for sure a great feature for GXPortal. I don't see the issue of whether it's a payroll or invoicing system as being relevant as with GX you can develop all sorts of transactions and the feature might make sense for lots of other systems and it might be an on/off feature as many others. The granularity of the functionality of undo is probably where the implementation in GeneXus is harder to fit as this behavior doesn't apply within a transaction itself but involves multiple objects interacting. Therefore, most likely it'd be a GX Pattern feature and maybe not a GX feature ...

Willy Coyote said...

Yes, it probably is more like a Pattern functionality, or a feature of the application itself, more than a GX general feature, for several reasons.
1- It may affect several different objects and tables.
2- It depends on the business logic about what "undo" means (especially when some actions may not be bijectives)
3- It may require some sort of changes control (auditing or temporal databases)

I don't know... just wanted to include a piece of my mind in the conversation. Love the idea of an "undo" in most applications, though...

Cecilia Abadie said...

Thanks Gustavo! Your arguments are pretty strong and I agree. We are too used to have the magic coming from GX but in this one GX Patterns would have to do the trick.
Hope Coyote starts blogging soon!!