Ideas for programs that don't exist: 4
This is an occasional series of posts where I will share ideas for programs that don't exist, but should. The goal is to inspire developers to create useful tools that can make our lives easier. Or, more likely, to remind me about these ideas so I can create them myself. Or even more likely, to just get them out of my head so I can stop thinking about them.
Idea 4: A modern version control system that has fewer features
For some things you don't need Git. But for those things you may still need version control.
Imagine a version control system just for you. Unless you are a developer, in that case it's not for you, it's for your dog or something.
I want a version control system that is better than "document.doc" ➡️ "document2.doc" ➡️ "document.final.doc" ➡️ "document.reallyfinal.doc"
Not a lot better but better.
Let's be ultraoptimistic and just dream of what would be ideal.
- User creates a file and says "this file is important and will change"
- Magically the system recognizes the idea and says "ok"
- User saves a new version of the file.
- The system says "ok"
- User says "oops, where is my old version?"
- System says "here"
Sometimes the system may allow the user to see the difference between one version and another version. This requires app support in general if the file is not an ordinary text file.
- Sometimes the user may want to make a copy of an old version.
- Sometimes the user may want to "name" an old version.
- Sometimes the user will want to overwrite the last version with an older one.
- Sometimes the user will want to get back a file he deleted.
That's it. That's all the features.
The sad part is that we had this in the 80s, in VMS. But anyway, it would be nice.
If I were to implement this I would do a simple implementation and then write a user-level filesystem to let the user access it transparently.
Further, maybe a library that allows using this from your own code? So you can save versioned?
Would be nice.