Uh huh...so, what apps have YOU created?
What exactly have YOU done that might be pointed at as indicative of proving that setting the backup from launch to save is more that 15 minutes of code work?
Sorry, don't know you from Adam...I know the Lightroom engineers, and respect them...don't know your creds bud...care to share? (and have you ever coded anything in Lua using MySQL?)
Since you are such an expert, care to share exactly how the Lightroom engineers screwed up? Lota people talk...not many ship products. What had YOU done lately?
I know that argumentum ad hominem is your default mode of arguing, but you do realise that whether I have shipped any apps or not has about as much relevance as whether you have a beard or not?
Attacking the arguer rather than the argument is a useful debating tactic because it throws off the debater, but it has nothing to do with whether either party is talking sense or not.
To satisfy your curiousity however: As it happens my team is releasing a new version of our stockbroking application this evening. I have worked in banking and finance application development for the last 15 years. You wouldn't have heard of any of our systems as they are not the kind of thing that the general public has any use for. But we do have to be quite careful and know at least a little bit about software development because millions of dollars pass through our systems every day and mistakes can be costly. I have experience with a variety of database systems, ISAM-based (like SQLite), relational (like MySQL), and object-based (like Cache). I have never used Lua for anything serious, though I have written a few World-of-Warcraft add-ons with it.
You have made a few points which show actually that YOU don't have much of a clue about software development, you don't get much credibility by just knowing someone who does. I know a bunch of people who can do cool things, but that doesn't mean I can comment on them with any authority or coming off as out of my depth.
"The coding behind performing a database backup needs to be radically different depending on whether the process is run at the start or the end of the application." This is nonsense. The code needs to ensure that all database access has ceased - this is easier to establish at the start rather than at the end, which is presumably why it was put there in the first place, but once the work has been done to make it robust enough to run at the end after all connections have been closed and the writes flushed, the EXACT same code can be called at the start - if it can't then it's bad coding. Been there done that, many times.
The only alarming thing is the implication that LR 1&2 were allowing the application to close before a clean shutdown of the database had been performed in the first place. BTW LR doesn't use MySql, it uses SQLite which is a very different kind of database. If LR were using MySql then it would actually be quite easy to run background backups, even while the LR application was in use. I have worked on a number of applications that use MySql.
I also respect the LR engineers. It's a nice product and every one of them doubtless knows a LOT more about image processing than I do. But about databases? Maybe not.
Anyway, as someone else has suggested, this user would be equally happy with an option to "Backup and turn off computer when done." If there really is some arcane reason why it's really true that the routine has to be 4x as complicated if it needs to be able to be run at both the start and the end. And that code is just a one-liner! :-)