What's Missing from Free Software?
dan.hunt asks: "Klaus Knopper was interviewed here and the interviewer, technobeast, asked: 'If you were asking the questions, what would be the 1st one you would ask?' Klaus answered in part 'What are you missing in the available Free Software, and how would you like to change that?'"
In Linux.. hardware compatibility is missing.
In Mozilla.. not much is missing.
In Open Office.. Microsoft Office is missing.
Slashdotter are stupid and biased.
he writes that the 700MB are not enough, and with every version he has to dump some programs for others. how about dumping KDE in favor of some other wm that takes less space? icewm and *boxes come to mind.
really I think this is just a function of another, larger phenomenon: with free software there is a great focus on the most common applications but not for niche applications. everyone uses a web browser, office programs, CD recording, audio extraction/encoding/playback, etc. the same is true for server systems: apache, perl, python et al, samba, SQL & friends all fill the voids in a free server system
but until recently, applications that only a few people would find useful have not been available. it's only been recently that linux has become a viable platform for audio production/editing. I think device drivers will follow soon.
it only takes one programmer to write the code and then it can be copied at a marginal cost approaching zero.
I really don't think they meant optional in the sense that the GPL software should be binary only. I think he meant optional in that each program should be packaged. Sure, many (maybe even most) programs come packaged -- for some version of some distribution. You run into lots of chances for incompatibilites that I rarely see on Windows. In fact, it's this irregularity in packaging that made me switch from Red Hat to Slackware. Slack plays much nicer with a hybrid of packages and source compiles.
No one is reaching out to the graphic design community. While they also have a tradition of copyleft, free fonts, and royalty free no cost photography, the two communities simply don't talk to each other.
(Which really isn't all that surprising since both of them tend to look down on each other as worthless parasites.)
I'm sorry, it looks good enough for programmers, but it doesn't look good. And there's a difference, especially if you want the masses to adopt it.
No Zen is good zen
Dear Santa,
We need a robust WINE implementation that permits any shrink-wrapped software bought at BestBuy to be run on any Linux box.
We need OpenOffice to fully support all the heavily-used Microsoft file formats.
We need user-interfaces that can be made to look enough like Microsoft application interfaces that retraining costs are minimized.
In short, we need to address the recurring issues that come up when you ask knowledgeable IT managers,
P.S. I need a high-quality recent-standard-conforming SVG implementation in Mozilla Firebird.
"Provided by the management for your protection."
win98-style internet connection sharing is a simple matter under linux. I never could get it to work under windows.
my roommates' windows 2000 boxes are configured to login to my box, and bring the connection up or down automatically. my ppp connection is routed out my network card with a standard iptables routing chain. the whole system is controlled by a pair of shell scripts. one keeps track of who wants the connection, and when none are left, it brings it down.
right, I know, not everyone can write this kind of stuff right away, but all you have to to is seach on google.
* a single distribution...?
there isn't even a single distribution of windows. people will want different distributions for different things. there was windows 3.1, and then 95, 98, then ME, then back to 2000, back to the letters with XP, and now they're back to 2003. I don't think Joe Blow will have any trouble understanding the consistent versioning scheme used by houses like Red Hat ... 7, 7.3, 8, 9... nothing nearly so obfuscated as 9x/ME/2k/XP -- an abbreviation we see everywhere.
* HD-swap installation
and I suppose it will simply do device detection for the powered-off machine across the room... well, either with telekinesis or a whole lot of manual driver selection. I don't understand the point of this one. the people who need this are system administrators and they already know how to make this work.
One thing that is a consistent burden in Open Source software is the raw complexity of the build tools used. What should be an intuitive set of makefiles and header files is replaced by over ten thousand lines of un-decipherable and un-debuggable shell script (configure scripts and libtool). When they don't work, understanding the failure is often nearly impossible, and, frequently, they only work on GNU/Linux systems (so much for portability!).
Everytime I download and attempt to compile something from the source, I get this nagging feeling that there has to be a better way. However, the short-comings of the build systems used could be just a sign that Open Source software still has quite a bit of growing left, and, perhaps more accurately, open source is lacking in configuration management tools, in general. Configuration management is a very complex issue, I admit, considering that package management, too, is still highly volatile and broken (even commercial UNIX could improve in this regard).
Whatever future tools are invented to deal with these problems, I beg that all developers strive to attack fundamental problems rather than use band-aids. Too often, it seems, a well-intentioned developer creates a general tool that appears to solve a problem, but, fundamentally, it only creates more complexity, a higher learning burden, and, ultimately, more well-intentioned tools designed to deal with the earlier well-intentioned tools.
Somewhere, this cycle of naive optimism regarding fix-all tools needs to stop. If a programmer finds that an aberration like a configure script is needed, for example, I suggest the programmer go back to the source code itself and strip out the cause. The program is probably better for it, and we should be brave enough to say "tough doodie" to people that whine about having to actually improve something.
If we continue to let open source decompose into a mess of broken tools, then it is, clearly, no better than anything Microsoft has produced. And, to be honest, when I see the hard-coded path names in GNOME configure files and libtool files, the first thing that comes to my mind is, "Windows Registry" (I hope that offends a lot of people, because it should).
Healthcare article at Kuro5hin
What I have found is missing from a lot of freeware, and even more so from OSS, is the fit and polish that a company writing for profit can give an application. Simply put, when there's millions of dollars at stake, there is a big incentive to add those little nuances and details to the interface and feature set that make a program feel polished, professional and efficient.
COnsistency also suffers when a variety of developers are working on one project. For all the downsides of closed-source, a profit-making company generally has one vision for software, and makes its programmers stick to that. This does generally lead to a level of consistency often unmatched in open-source.
"Reality is merely an illusion, albeit a very persistent one " -Albert Einstein
You rarely see incompatibilities on windows? Come on, you see them all the time!
One of the biggest reasons why Windows tends to fail for misterious reasons is exactly due to consistent lack of packaging. Some programs throw DLLs in the system directory. Some will write them to their own. Some will forget to increment the usage counter, and some to decrement it. Some braindead installers will overwrite files without checking the version. Others will leave with a mix where the errors of the program appear in English while the rest appears in say, Spanish.
All this results in a really horrible mess after a few months. 300MB of DLLs in the system directory that you don't know what they're for, DLLs being uninstalled because the usage counter was too low, or left lying around uselessly because it was too high. DLLs being replaced with newer but incompatible versions...
As a programmer who makes Windows apps I can say that making an installer for a large Windows programs takes quite a lot of time and experience to get it right. Meanwhile, in Gentoo I learned to make to create simple packages in a day.
All Linux package managers ensure all library versions are adequate and that no package overwrites another package's files. It might be a bit of a pain in the ass sometimes to make sure everything is of the right version, but would you really prefer to have the Windows mess instead?
Easy. Source distribution should be optional. If I recommend a free piece of software to somebody in the windows world I want it to come in one downloadable file, with an installer with lots of dialogue boxes.
:) Anyway, for those that don't even know what's Free Software and could be fooled by such a statement, here's a short piece of information:
:)
this was moderated as Insightful? Funny at the most if it was cynical humour
Check the link, but in short, any software which is licensed in such a way that you are free to: 0. run the program, for any purpose; 1. study how the program works, and adapt it to your needs (you need source code for this); 2. redistribute copies so you can help your neighbor; and finally 3. improve the program, and release your improvements to the public, so that the whole community benefits (you need source code for this) then that said software is Free Software.
The GNU GPL, the most applied Free Software license allows you to do all that, but if you give copies, wether modified or not, the very same rights you have, you have to share.
dmorin is obviously confusing the GNU GPL with Free Software in general, which is one common mistake. There's a lot of Free Software that is not GPL'ed. Click here for a detailed analysis of Free Software licenses, GPL compatible and incompatible, and of non-Free Software licenses..
Many distributions distribute source code alongside the binaries because that's the easiest (and also the cheapest) way to comply with the terms of many Free Software licenses (namely that you need the code to be able to exercise your freedoms properly), but I'd say that most non technical users won't even touch a line of code (leaving the work for the geek friend or consultant).
Installing software can be as hard as typing: apt-get install ThisProgram (under Debian GNU/Linux), which will automatize the process of finding any unsatisfied dependencies and installing all you'll need for running ThisProgram. In some cases, it even suggests other additional optional packages that will improve ThisProgram's capabilities.
Now compare with: download; double click; pass through a lot of PITA dialogs (get some options wrong by the way); then maybe reboot.
Not funny at all
Don't take it wrong, it's a common mistake. But I hope I was clear enough.