Jump to content

Unsaved-buffer recovery feature? (Yes another post about auto-save and recovery!)

Recommended Posts

I am sure this has been asked 3 gazillion times already.  But do you guys plan or would consider to add a robust recovery features.  I use that term "recovery" to mean:

  • Be able to recover unsaved (i.e., never saved) files.
  • Being able to recover unsaved changes to an already saved files.

This is especially useful if "<No cursing.> happen", like a power outage, or for those unfortunate that have not configured their new flashy Windows to not auto-restart without asking them, etc.


I have quickly found someone here that wrote one post with a lot of love in it to be frank: https://forums.getpaint.net/topic/108929-another-please-give-us-an-autosave-thread/


I am sure if I search a bit more, I could find a lot more posts about it here as I already found others (I am being lazy there, yeah).


However, the thread is not only closed, I must admit that I am a bit deceived at the general replies:

  • "[Use CTRL+S, IT IS EASY]"... We all know this.  People daring to ask for a recovery option, they know this, AND THEY CARE about NOT LOSING any CHANGES THEY DO to ANY FILES.  But sometime we open an unsaved file for temporary use even if we don't want to lose it!  We don't want to save it each 5 seconds, in fact we don't necessary want to save our changes right away, we want to easily be able to revert sometime.  We don't control when a power outage happen.  Etc.  Etc.  Yes it is easy to say, but it is not trying to understand the problem we wish that be solved.
  • "It's an image editor. A very good one. One that you've been given free. Stop whining." -- Then we can use that argument for anybody giving a [constructive] criticism or suggestion a potentially very useful features for any piece of things in life, especially if it is free.  It is not only "whining".  Yes developers of the say software provide a lot of values FOR FREE and it is more than appreciated.  But some people provide value by providing useful feedback in this too.  Responding negatively like this only put the "problem" aside.  Not positive for anyone.
  • etc.


I think some people take criticism and suggestion a bit negatively sometime and it stop improvement.


Is auto-save/recovery the primary goal of this software?  

No, it is an image editor as said.


Is auto-save/recovery a very useful feature for about any piece of software?

I would argue yes.  I have countless of personal experience with lot of works lost because of this lack of features.  I have found solutions (no, not saving each 5 seconds with an incremental number for a new files for each save, that is not an efficient and safe solution) for most of my needs!

What happened personally a bit too much recently, is that I use Microsoft Paint, yeah yeah, mostly to keep screenshots I save there in there (at work, when playing poker and want to save hands, when blah blah blah, etc.).  I even use Paint to edit a bit those files, I am used to it, it is simple, it does the job, etc.  Apparently Microsoft Paint will now recover unsaved stuff when Windows restart for an update (never saw it, heard in articles by doing search), but it won't support recovery when it crash (why it doesn't re-use the same effort they put for supporting it after a forced update restart is beyond me, but that is how it is!).

I lost a lot of screenshots and other stuff I put in paint.  If the feature was there, an add-on was there, or I found a good equivalent replacement that support auto-save, then that would be nice!  I think PAINT 3D *might* support that features of recovery, it sure does allow recovery when I tested, I have not tested how much reliable it is yes, etc. and nor do I tested if I like the software.


Wait what?  You are not a PAINT.NET user either and you dare to talk about it right now?  

YES... I heard very good things about Paint.Net, since longs, and while I now actively seek a solution for my paint usage that too often make me lose stuff I don't want to lose... I am searching an alternative and Paint.Net pop all over as a good MS Paint replacement.  Since this editor has a lot of similitude and is praised and all... and is apparently popular... I *wished* it had that feature.  And since it may worth it for the lot of its users, I dare to talk about it again!  Hoping I will trigger a positive reaction that could help some important people here take notice and consider to add it to this marvelous piece of software.

Do you complain/whine/etc. about it not having that feature?  

No.  Not really.  But yeah I give a little criticism with good intention let's say.  I try to bring this up again since I saw a lot of people talk about it since years and nothing has been done.  It makes me curious too why nothing has been done (maybe there is a good explanation, maybe just nobody cared enough about it, I dunno -- If you know, I hope to learn about it).

Let's say I highly suggest to finally consider to integrate that feature.


Can a recovery features be easy to code?  

I guess yes.  Lot of software has it, I can probably write a complete spec that enter on 1-2 pages.  Etc.

Is it possible that it is not as easy as we wish to integrate?  

Yes, possible, I can imagine, just like any apparently trivial change can be complicated in software development.  I know.  But I also know that there is a lot of things in software development, AND ALSO IN LIFE, that we won't do and after we did it, we say, OMG, it took so little time, why have I not done it before?  I am also convinced there is an elegant solution that is not the most complicated thing in the world to implement here.  

Will it takes 5 mins to code/test/etc.? 

Probably not.

Will the time invested provide value to the world and generate more value than time invested?  

I believe there is a high possibility that it will.

Will it bring more money to developer as donation, etc.?  
I dunno.  If it is money that motivate you (let me doubt it is the main motivation since it has been provided "free" since so long), I am sure some would even pledge for such a feature if they like your program and have hit the problems a couple time, but I dunno how successful it will be on that side.  I can only speculate it won't hurt and could attract a lot of people (free and "paid" users).

But what have you do?  Will you code it?  Blah blah?
I have probably done a lot of good things overall in life.  Maybe not as impactful as I would like so far, but I strive to be nice and do nice things that add value as much as I can.  Sometime little things.  Sometime bigger things.  Lot of things people just don't know and that I even tend to forget after doing it.

What can you do there?  

  • I am a decent developer yes... I probably don't know the technology or this project to code it myself efficiently (even if I could probably; I don't even know if the source is still available, I can find out quickly I know, UPDATE: It may be available but not completely open source because main author (??) has been mad at some people who ripped stuff and tried to take credit -- I could argue about it -- but unfortunately we have to consider bad people are in this equation, "do accepting this would be better than the positives?" is a first question I would ask... I often concluded that we should not change every good things for a few rotten apples, no matter how frustrating and unfair it can be... I think about not punishing the people who profit from this positively ----- ANYWAY, I don't even see source code anymore, maybe it was removed completely even if I heard there is a tons of contributors...).  
  • However aside from code, I am decent/good/crazy at analysis (I really like to do it and am let's say good at seeing all the details, think of all possibilities, etc.  Good enough to feel comfortable to brag about it! :-P).  I can probably an analysis by writing a clear specs taking in consideration most of the things we have to consider when creating an auto-save/recovery feature.  In fact that analysis could probably be used for ANY piece of software that want to use it.  I should put it on my todo-list to write such a public specs and a manifesto for everyone to consider to implement this features in their software!  That would be my "free" contribution to make the world a bit better.  So if you need help with that, you ask and I will put my precious time and some genuine effort in helping the project have this features.  If you have any input in such idea to write a recovery specs, share me all the things you think we have to consider for auto-recovery, can be useful.  While writing and thinking of doing this almost right now... I think it can be a very useful and appreciated contributions.  And if someone want to use that specs in their commercial software, I will be happy too.  I am not greedy.  I am happy to provide value whenever I can.  Everyone will benefit there.

Bah only a specs? 
Yep... I believe when things are well thought about, it is then way way way easier to implement them.  Someone who is "skilllled" and who know Paint.net's code should be able to be quite efficient if the right thinking is done before he implements such a feature.

P.S., Similarly I was using notepad a lot to take a LOT of notes... unsaved notes... and while I sometime saved my bunch of temporary files to a temp directory, it was painful... and would have required lot of efforts to do it a disciplined way, it is sometime I use fast to take note fast, with hope to not lose it.  I did lost a shitload of them in my lifetime.  I tried other editors... some had auto-save plugin, some did not and I almost helped some dev implements it, etc.  One day I felt on Sublime Text... (somewhat paying, but somewhat free too).  Not only it was supporting auto-save (including of unsaved buffers!), the tab interface was very near tab support in a modern web browser like Chrome (there is some stuff Chrome do better for tabs management like supporting multiple selection of tabs and move them together, etc., etc. -- So even Sublime could slightly improve, but it is slick enough for my taste), the editor is pretty nice too, fast, lot of features while staying simple (it is not like I would use Photoshop only to save my multiple screenshots, even if yes, I could!  I prefer to use something simple like M$ Paint when I play with an image even if I can use Photoshop for more advanced stuff...), customizable, and a lot of other things if I have advanced need for my text editing.  But as a notepad replacer, it was perfect.  I also use a tool called "Notepad Replacer" and so I did not have to change my habit of typing "notepad" when opening a quick notes... it starts Sublime.

So my wish would be to have a MS Paint replacement like this, and I would even redirect mspaint.exe to it if I could like I did for notepad (but hey, that is not a requirement, just an idea mostly let's say).

I am open to suggestion even if it doesn't involve Paint.net and even with that suggestion I would suggest for Paint.net to have the features I suggest.  Because I think it would be a good decision.

P.P.S., I think for a reasonable development efforts, it will provide a LOT of values to all the users of Paint.net.  That is my 2 cents and is worth the little effort I put writing this block of text even if I could have wrote only a one liner (and probably be shutdown as quick by people taking it bad?) and save some time.  Since it was asked a lot of time, I think there is reason it is not there or that some people don't see the value of it.  I don't know, but if it was a 5 mins coding effort, I guess it would already be there... I know some people seem to think it is not that important, maybe contributors of the program don't see much value in it even though me and others would see a lot... but not all users are the same, not all people have hundreds of tabs open in their browsers like me, 30 notepads, 15 paints, etc. (BUT MIKE, CHANGE YOUR HABITS!  Well... there is PROs and CONs to my habits, but I function like that because I see a lot of PROs compared to the CONs, I am not saying this ONLY because I am biased and try to protect my way of working, I am just saying there is advantage to how I do stuff... some people have 3 windows open, do one thing at time, don't give a fawk if their computer crash, etc.  I am not one of those users which I respect too and even wish sometime I could focus on only one thing and not heard everything that is going around me, not caring much about being exhaustive and do things as "right", etc., etc.  But I am not like this, eh!).

P.P.S., I see there is also an history features in Paint.Net, that could certainly be part of the equation or useful somehow even thought right now if we kill paint.net, we lose every unsaved changes (of a never-saved file at least).

Link to comment
Share on other sites

This is way too much to read, I don't know why there's so much text here. tl;dr yes I know about this, I want to implement it, it's just a complex thing and it's not at the top of the priority list. Not much to talk about really. No need to write a novel to try and convince me.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html


Link to comment
Share on other sites

31 minutes ago, Rick Brewster said:

This is way too much to read, I don't know why there's so much text here. tl;dr yes I know about this, I want to implement it, it's just a complex thing and it's not at the top of the priority list. Not much to talk about really. No need to write a novel to try and convince me.


OK. Sorry for the wall of text. I just felt inspired.  And I was a bit triggered by the other thread replies I saw.  Eh.  Glad you don't need to be convinced.  Sad that it is much more complex than I hoped and that obviously explains why it is not yet implemented.  Have a nice day and thanks for your contribution for the greater good.

P.S., I don't know what make it so complex, but if I can help anyway, let me know.  I was just wondering if there was not a "simple" solution that would make it safe for everyone or let's say more safe (e.g., a kind of backup of unsaved buffer each X mins, maybe a dumb idea, I don't know...).

Edited by MickoZ
Link to comment
Share on other sites

  • 2 years later...

Holy fricking smokers... It's been three years and this thread has not amassed another single reply. The absolute patheticality of the PDN community... I understand every point this post makes and I too have the same struggles as described in this post. Some people just don't understand humans aren't robots and people can make mistakes. 

But here I am, my PDN process not responding for seven hours. TL;DR, I accidentally hit CTRL+S when I was editing a PDN file that I meant to do only temporarily (ie. make some changes, flatten, copy image, paste image, then exit without saving), but I continued on thinking that I would be able to undo all my changes and go back to when I opened the image and CTRL+S it back, but when I finally did, PDN decided to freeze and I waited for 7 hours with still no change... I even tried increasing my memory priority with task manager...no change. I tried closing all my other processes...No change. PDN isn't even using any CPU in the task manager. I don't even know why or how it's managed to be frozen this long. 


Now I'm just trying to find out how to potentially save the temporary cache my current PDN process so I can recover my history and potentially restore the process to its previous state when I reopen it. But, as it turns out, NOBODY has even thought about this which makes my hair fall. The sheer unthoughtfulness and inactivity of the PDN community boggles my mind. I have no words but to say that this PDN project that I've been saving on my computer for an entire year is now gone and replaced with some temporary changes I made. Go ahead, tell me all you want to "MAKE BACKUPS AND BE MORE ORGANISED NEXT TIME". It's too freaking late. Why can't you just give me an actual solution?

Link to comment
Share on other sites

@iSyriux You replied to a two year old post with a completely different issue. Create a new post (you'll need to as BoltBait and I are racing each other to lock this one).

Link to comment
Share on other sites

13 hours ago, iSyriux said:

Some people just don't understand humans aren't robots


I, too, am not a robot. So don't treat me like one. We don't exist to serve you.


13 hours ago, iSyriux said:

The sheer unthoughtfulness and inactivity of the PDN community boggles my mind.


Yeah we're clearly just sitting on the beach, soaking in the sun and drinking mai-thais.


13 hours ago, iSyriux said:

Why can't you just give me an actual solution?


Why don't you take responsibility for your data and your actions? We're not your parents.


You are blaming others for your own mistakes (this is called projection, btw). If you're working on something for a year, and for any other data that's important, you need to make sure you have backups. Paint.NET will have an auto-recovery system at some point, but it doesn't right now, and there's been discussion about it which you've been too lazy to search for.


If you bring this up again with all your self-entitled rudeness, we will just ban you. You are not being constructive, nor helpful, just rude and mean.

The Paint.NET Blog: https://blog.getpaint.net/

Donations are always appreciated! https://www.getpaint.net/donate.html


Link to comment
Share on other sites

This topic is now closed to further replies.
  • Create New...