[Qt-interest] [OT] Politically Correct way to release an Open Source Qt Project
Daniel Price
daniel.price at fxhome.com
Tue Aug 3 11:35:44 CEST 2010
> All this would off course be handled by "my" installer concept which
> would be handled on the "OS level" ;)
I simply don't think installers are a sound concept. They are a product of brittle system architectures and bad UIs from the 80s - they were necessary before GUIs were popular and a good GUI renders the concept obsolete for most cases (exceptions being system software installations). Users, even novice ones like to feel like they're in control of their PC and drag & drop is a very intuitive way to do that.
> Well, you could continue with every specific example of bad installers,
> but that would not make the "concept" of an "installation mechanism"
> bad itself. Or you could make every concept bad just by providing bad
> implementations thereof, but IMHO that is not a fair judgement of any
> concept.
These aren't just isolated examples. You could use the same argument to claim that model dialogs with just 'OK' and 'Cancel' buttons are a good idea because that's simply what people are used too.
PC users have been trained to expect installers but as computing increasingly goes mobile, we have to 'untrain' them of these bad habits :)
>
> > Some apps feature
> > uninstallers. Some don't. Some have questionable 'repair' features.
> > Some monolithic installers ...
>
> Okay, we got your point: There are crappy (Windows) installers out
> there, very much agreed ;)
Not just *some*. I can't think of any installers that have been a pleasant experience.
> HA! Gotcha! On a Mac Skype does NOT have an installer at all ;) Instead
> it is installed in exactly the way you favour. Don't believe me, huh?
> See here:
I was referring to Skype in general, not just Skype for mac.
> How is a "left-behind" DLL worse than cached data or config entries
> (plists on Mac)?
Because DLLs are executable code! In the case of COM DLLs, they have linkage to the system and because the Windows library system is so weak when it comes to search paths and versioning, this can greatly complicate future updates. Ever tried to delete a stray DLL only to be told by the OS that you can't? I have.
> And as far as "the user doesn't need to care" is concerned: yes, so why
> not just remove all those config/cache/whatever files? And YES, they
> ARE generated for most applications, mostly under ~/ApplicationData
> (sic!). And currently on Mac they are NOT deleted by any process except
> the "Google it up" manual process ("How to uninstall Foo application on
> Mac").
It's simply not necessary these days to be concerned about a few KBs of old preference files. As far as the user is concerned, the file they drag to the trash *IS* the application. I used to run tools to clean up these old files but that was back in the late 80s when every KB mattered.
I should also point out that on Unix/Mac, these preferences are simply files on disk with no connection to the OS. But on Windows, settings are traditionally stored in the Registry which is a monolithic binary database which makes them that much harder to remove. Uninstallers are necessary in this case to solve a problem that shouldn't really exist.
> If Mac (or any other platform, for that matter which supported the
> concept of an "application folder with drag'n'drop installation") had a
> proper "installation mechanism", the OS X could as well trigger an
> "uninstall" process in the background (given the list of "registered
> components" which were registered upon "installation time") as soon as
> an "application folder" would be deleted from the "Applications" folder
> - so why not do it? And the more experienced user could still request a
> list of installed applications and de-install an application via
> "System Settings", with more options such as "Leave config entries" or
> whatever.
OSX arguable already has a 'proper installation mechanism' - it's called drag and drop and is controlled by the user :)
To see what apps you have installed, you simply look at the Applications folder (or wherever you want to install your apps - the system makes no assumptions like Windows does). But this brings up another point; why should figuring out what is installed ever be an issue? I've noticed that on Windows the old Add/Remove system doesn't show all installed programs. Plus, installed programs do not necessarily appear in the Start Menu which is another thing entirely. This disconnect and confusion is one of the reasons why 'what apps do I have installed' and 'cleanup' applications like CCleaner exist on that platform.
I'm not saying other platforms are much better. The package managers in most 'nix distros are horribly convoluted, concerning the user with runtime libraries and other BS. Also on the Mac, the whole 'dmg' concept is a conceptionally strange - you have to expand the archive and copy the contents to the disk. But some users try to run the app from the dmg itself. I think simple zip or tar archives would make more sense.
But all of this will be made obsolete by the cloud.
>
> And as far as I know the Mac does not update installed applications
> either (except the well-known iWhatever apps installed by Apple
> itself), just like a package manager.
You're suggesting Apple should be responsible for updating 3rd party apps?! Of course they shouldn't and I'd be worried if they did.
Most 3rd party apps have built-in update and install tools that run automatically thanks to frameworks like Sparkle. It would be nice if the OS had some kind of built in mechanism for this (eg. iOS) but that's not the venders responsibility.
But package managers? No.
> Oh well, I guess we are never to see such an "installation framework"
> on an "OS level" which would even be platform indepenendent (at least
> the "recipe" description for installing/uninstalling the application),
> but one might still dream, no? :)
Such things already exist on the mobile platforms where the profile of user apps exist in the cloud. Syncing a new device causes the apps to be installed automatically. This is where things are going.
This email is confidential. It may also be privileged or otherwise protected by work product immunity or other legal rules. If you are not the intended recipient please notify the sender. Please delete the message from all places in your computer where it is stored. You should not copy the email or use it for any purpose or disclose its contents to any other person.To do so may be unlawful. Email is an informal means of communicating and may be subject to data corruption accidentally or deliberately. For this reason it is inappropriate to rely on advice contained in an email without obtaining written confirmation of it first.
FXhome Limited is a limited company registered in England and Wales. Registered number: 04172812. Registered office: The Henderson Business Centre, Ivy Road, Norwich, Norfolk, NR5 8BF, U.K.
More information about the Qt-interest-old
mailing list