Hello all, This is my first post to ubuntu-devel-discuss, but not my first posting to a linux development list. I posted to ubuntu-devel after being directed there, but that group is literally ubuntu developers only. Anyway, I was heavily active on the lists in the earlier days of BusyBox and uClibc, as well as a few other packages along those lines. Rather than drone on, I will try to keep this post mostly business.
I would like to discuss Brainstorm Idea #1 (http://brainstorm.ubuntu.com/idea/1/) with you. I feel that backup and restore is an extremely important topic as we move further and further into the digital future. Media such as digital photos, home movies, school and university work, and much more are all at risk. This is something that many of us know too well. In the past couple weeks, I have picked up the code to Sbackup- the Simple Backup utility. The application is very basic, and needs a bit of work to bring it up to snuff with the rest of the utilities included by default with Ubuntu, but I have started the work. What I propose is a two-pronged effort: Distribution buy-in and Vendor buy-in. Distribution ------------ Ubuntu should include a simple yet powerful backup utility in the default installation. I know the default package count is climbing, but clearly this is an important area. Upon successful completion of the install, the user should be prompted to configure some backup settings. This task could be completed by the installer itself or by a notification that runs when the system is logged into. I could foresee an icon in the system tray area that would display a notification to the user much like the binary driver notification. When the user clicks on this icon, a backup preferences dialog would appear, allowing both novice and experienced users to tailor their backup selections, backup times, media, etc..., to their individual taste. This dialog's first page should be new/novice user friendly, allowing them to choose to back up the files in their home directory. Perhaps radio buttons offering “Backup all my user files,” “Backup my documents, photos, and music,” and so on. On the second page, a schedule should be offered-- “Once a day,” “Once a week,” “Once a month.” By default, selecting “Once a day” would make a single “full” backup once per week and capture differences on a daily basis. This is not only space efficient but also time efficient. If a backup takes too long, users will inevitably get frustrated and stop it. IT experience has taught me this hard lesson time and again. The third page would simply allow users to choose their destination from an extensive list. This list would be created on execution by a list of destination plug-ins. I feel using a plug-in architecture will give the best trade off between coding complexity and application extensibility. Many advanced users make use of services such as Carbonite Backup, Amazon S3, Jungle Disk, and a host of others. Allowing outside parties to write their own plug-ins for this backup application makes it much simpler to add and remove these services as the come on and offline. Also making extensive use of GVFS simplifies most of the file-system work, which allows developers to spend more time on the applications featureset rather than normalizing access to network and local storage resources. Finally, the fourth page would offer advanced users a more in-depth experience with the previous choices-- Creating custom schedules, backing up and excluding extra directories, etc... This page could also offer more in-depth configuration of the previously selected destination. Also of possible use would be the ability to add an auto-run action to a specific external disk. This feature could offer a user the ability to automatically start a backup every time their backup disk is plugged in, thereby further simplifying the task of teaching mom and dad how to back up. Vendor ------ On Canonical/Ubuntu's part this effort would take a bit of work. Obviously the community needs to agree on a backup platform, and a host of other options. It may also be important to steer people toward keeping the utility written in Python, a language Canonical/Ubuntu seem to have adopted with much success in the community. An interesting project may also be for Canonical to reach out to hardware vendors that currently sell pre-installed systems, and have them offer a “free” backup disk at the time of purchase. A disk around 250GB would probably be the sweet spot right now, as they are low cost to vendors, and have enough space for most users' photo, music, and document collections. Obviously, more powerful users such as developers and serious media consumers may want to opt for a larger drive, but I think getting the idea out there is most important here. As of right now, Microsoft has drastically improved the built-in Windows backup software, and Apple has Time Machine, which is a suite that includes both software and hardware. I feel it is important for Canonical/Ubuntu to get behind this effort sooner, rather than later. The Linux community, and more specifically the Ubuntu community have quite a lot to give here. Developing a flexible, powerful, and simple backup solution for Linux would would poise Ubuntu as a stronger user-friendly distribution, which positions Canonical as a stronger leader in Linux development. I understand this list can not speak for Canonical, its partner relationships, or anyone involved in either of those two areas. But, I think with a push from the Ubuntu / Canonical organizations, we could make some strong progress for the next release. In the mean time, though, I think some serious development needs to happen. It may be a chicken-and-the-egg situation, but I'm willing to help get things rolling. If we can produce an application that satisfies most users, I think we have won a serious battle. I'd like to discuss this with others out there. So far I have a working script that tars up a specified directory, calculating a hash and gathering filesystem details, and writing this metadata out to an sqlite database. This is really only a few hours worth of work, as I had to learn a new language for our phone system at work this week. Tom -- Ubuntu-devel-discuss mailing list Ubuntu-devel-discuss@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss