On Fri, 2007-01-26 at 10:22 -0500, Gervais Mulongoy wrote: > Applications get written over and over again because people are not > satisfied with the way things are.
Well, it's not actually that simple. There are actually quite a few reasons. NIH being one of the most irritating. But even if it was some valid feature that the software lacked, why do most people start from scratch? Take the state of music players on Linux. Music players have various components these days: the file/stream decoder, the music player, playlist management, CD burning, visualization, Internet radio station management, etc. Most of the time when somebody decides they have a feature in one of these components they want implemented, they start from scratch. Why can't I take components from each project and string them together and make modifications on the ones I want? For one thing, many of these projects aren't modular. For another, use of the various components are limited to the language they were written in and everything is linked at compile-time. This last part I really, really hate: how components are language-dependent. .NET got this part right. > But that's not even the point. What I would like to know is if any one > has managed to get Maemo working on anything other than a Nokia? > Because if they have, how hard do you think it would be to replace the > OpenMoko software stack with the Maemo software stack? And if it isn't > hard how long do you think it will take for developers and users like > us to muster up the will to say that we are fed up with the > non-cooperativeness? My point (and I think we agree on this) isn't so much that there are so many choices to choose from, but that very few of these choices were designed to cooperate with one another. It's not like assembling a computer where I can take any PCI device from any manufacturer and plug it into any mobo I choose and put that in any ATX case that's available. For that conformity, I think we have MS to partly thank, as well, :). I agree with you that things must be done The Right Way(TM) and that the end product Just Works(TM). Though developer won't always agree on one Right Way, they should still write their stuff so that it doesn't preclude the opposing camps from using their stuff. > In order to please the user, the first thing software must do is not > piss the user off. What things piss you off about software you use? > Can you name a few? As a user, I hate products with a steep learning curve. I also hate ones which are either non-intuitive or that have a poor or overly cumbersome help system (compare and contrast the text editors joe and emacs). Finally, I hate software which don't give me access to the full potential of my hardware. If I can imagine a use for the device, it should be made possible by the software. For a while, Gnome, in its goal to make their interface user-friendly, almost lost my interest in it when I found that it actually slowed down the way I worked on it as they started taking out stuff or modifying them. I actually have high hopes for OpenMoko. I just wish that whatever effort I put into making it a great platform can and will be taken advantage off by other, similar Linux-based phones / devices. -- Richi _______________________________________________ OpenMoko community mailing list [email protected] https://lists.openmoko.org/mailman/listinfo/community

