Intent to remove autosave from the IDE

26 views
Skip to first unread message

Peter Law

unread,
May 27, 2016, 4:45:18 PM5/27/16
to Student Robotics, srobo...@googlegroups.com
Hi,

Cross posted to srobo and srobo-devel for visibility. Please reply on
srobo for general/feature discussion or srobo-devel for technical
queries [1].

One of the current complications with the git backend of the IDE is
the presence of the Autosave feature. Usage data [2] suggests that
no-one uses it, so I plan to remove it shortly. Before doing so, I'd
love to hear from anyone who currently uses it or feels strongly that
it should stay.

Thanks,
Peter

[1] I'm happy to discuss the technical details; I don't think they're
needed for a general discussion though.
[2] Added in https://www.studentrobotics.org/cgit/cyanide.git/commit/?id=202a6fc360a9673b189a794fc1836d0c2ad9edcb,
a month before the competition. The data shows 4 hits for autosaved
content vs 1250 for loading the file from the currently saved state.
I'm pretty sure those four were me checking that it was working.

Jimmy Thompson

unread,
May 30, 2016, 6:40:29 AM5/30/16
to Student Robotics
Forgive me if I sound completely stupid, but looking at the IDE I can't even see how I turn on autosave. The only reference I see to it is "Delete Autosaves".

Is this feature hidden to volunteers? If so, can you demonstrate how teams go about enabling it?

Whilst the usage data is compelling, and as much as I love stripping away un-used features, I'm interested in knowing why autosave isn't being used: is it a lack of interest/fear of breaking something, or is it hidden away and teams haven't found it?



--
You received this message because you are subscribed to the Google Groups "Student Robotics Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to srobo-devel...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Peter Law

unread,
May 30, 2016, 1:21:16 PM5/30/16
to Student Robotics
Hi,

Jimmy wrote:
> Forgive me if I sound completely stupid,

No worries, the UI is fairly bad, and I think part of the reason it's not used.

> looking at the IDE I can't even see how I turn on autosave.

You don't need to turn it on - it would be a fairly terrible
*auto*save if you did.

The way it's meant to work is that as you're editing a file, it
autosaves your changes. When you commit, the changes are staged and a
commit created and you're back to a fresh state again.

The file-list shows the autosaved information in a separate span in
line with the file it relates to. Clicking on the file name gives the
repo version, clicking on the autosave span gives that version. In
retrospect this is a terrible UI, though I thought it was quite good
at the time.

"Delete autosave" is like doing "git checkout $FILE".

> I'm interested in knowing why autosave isn't being used:
> is it a lack of interest/fear of breaking something, or is it hidden away
> and teams haven't found it?

I suspect that the poor UI is part of the problem, but since no-one
has ever complained that they can't work how to use it (or that
they've lost data they expected to be autosaved) I also believe there
is no demand for it.

Originally the current front-end had this feature because:
- it was in the previous UI
- I thought it would be useful

In the latter case I modelled it somewhat as a drafts feature like,
for example, GMail has, but my own experience with uncommitted changes
is that most of the time you have absolutely no idea why you left them
around and they cause more confusion than use.

If people do turn out to want this sort of behaviour (which I've never
seen demand for) I'd much rather add proper support for Git's stash
mechanism instead. To be clear: I'm not planning on adding that at the
moment.

For reference, I think that this feature was mainly in the old UI
because the very original back-end fell over quite often and needed
users to refresh & re-login when that happened. It was thus primarily
a workaround to avoid users losing data due to issues in the back-end.
Happily the current (third?) generation of back-end doesn't suffer
from that sort of issue.

Thanks,
Peter

Murray Colpman

unread,
May 30, 2016, 9:58:11 PM5/30/16
to sr...@googlegroups.com
On 30/05/16 18:20, Peter Law wrote:
> The file-list shows the autosaved information in a separate span in
> line with the file it relates to. Clicking on the file name gives the
> repo version, clicking on the autosave span gives that version. In
> retrospect this is a terrible UI, though I thought it was quite good
> at the time.
Hmm, I just gave it a try, and it doesn't look that bad — I'd think at
least that if I HAD lost a reasonable amount of work, it wouldn't take
me too long to figure out that, since an autosave is clearly listed,
there'd be some way of opening it, and I wouldn't just immediately give
up without trying. I feel that it's more that (surprisingly) nobody's
lost any work through accidentally closing the wrong thing, etc.

This is perhaps thanks to the warning message displayed when you try to
close the tab, rather confusingly stating "You should close tabs before
closing this window" (I suppose this was written in the days when
browser windows rather than browser tabs were more of a thing...). I
suspect anyone who would otherwise have needed to use autosave was saved
by this prevention of closing and refreshing the window instead.

Murray.

signature.asc

Peter Law

unread,
Jun 1, 2016, 3:48:15 PM6/1/16
to Student Robotics
Hi,

Murray wrote:
> I feel that it's more that (surprisingly) nobody's
> lost any work through accidentally closing the wrong thing, etc.
>
> This is perhaps thanks to the warning message displayed when you try to
> close the tab,

I think you're probably right that these are connected. It also
suggests that removing the autosave functionality won't adversely
affect anyone's workflow, which is a good thing.

> ... rather confusingly stating "You should close tabs before
> closing this window" (I suppose this was written in the days when
> browser windows rather than browser tabs were more of a thing...).

I can't remember how long ago the message was written, though that may
be the case. In addition there's now the overloading of the idea of a
"tab" since both browsers and the IDE have tabs. If you can come up
with a better wording please do let me know (or even submit a patch)!

Thanks,
Peter

Peter Law

unread,
Aug 29, 2016, 12:40:23 PM8/29/16
to Student Robotics, srobo...@googlegroups.com
Hi,

> One of the current complications with the git backend of the IDE is
> the presence of the Autosave feature. Usage data [2] suggests that
> no-one uses it, so I plan to remove it shortly.

This has now happened and the changes will go live tomorrow morning.

I've also made a start on removing the general reliance that we
currently have on the fact that the git repos are on the filesystem,
which should eventually allow us to move to non-filesystem repos if we
want. I'm expecting, but haven't yet verified, that we'll also get
some performance benefits from this too.

Thanks,
Peter
Reply all
Reply to author
Forward
0 new messages