*) Get total PC newbies and Windows users to try using them and observe what they do, what they try, how and why they fail to succeed in their attempts. Let them talk verbosely about what they are doing.
*) Count the times you had to look in a manpage, in google, and how often you had to fire up a console for doing simple things (like creating a shared folder, browsing the internet, installing some plugins like flash etc.) Keep in mind: SIMPLE things! Trivial tasks done by the casual user.
*) For each system you need to learn how to use it, thats a fact. Unix users have to learn the concept behind the filesystem (nothing too fancy, but basic knowledge about what mounting is for example). This is comparable to the knowledge about the drive letters in Windows, the usage of backslash for separation in paths, that.exe are apps etc.
*) Review the help system and documentation. Among other things, look for technical mumbo-jumbo. This is a common error. Stuff like SSH, SSL, CORBA, FUSE, pthreads etc. should never occur in enduser documentation.
*) Have a look at the menus. Are they cluttered or usable? How long did you have to search something in the menu?
OMG. Motif. Please. Spare us this! Qt has its issues (moc being the primary source of problems), but it is a pleasure to code with. Motif is a PAIN to code with.
Also, if Motif is the "REAL X11 toolkit", then X11 has some serious problems, since all other "native toolkits" are a million times superior to this.
But hey, you don't say why KDE and Gnome are crap, you just bash them, how about being more detailed? I for one like KDE a lot (except the startup time) and somehow can't find the idea of a 1990-style Motif desktop appealing.
Intellisense and error decorators are offered by Visual Assist. Yeah, Intellisense is pretty bad in VS, but thats not a killer argument for me. But toolkits, libraries etc. in Windows often include a VC-binary *only*, i.e. nothing for mingw. (Conversion.lib->.a can be very very tricky.) This is a result from the fact that VS is the #1 C++ platform in Windows, thus if you want to reach the maximum amount of devs in Windows, use VS. With mingw, you are pretty much isolated, and so are you with Eclipse. Also, Visual Studio works out-of-the-box, with Eclipse I have to download and configure cygwin and the CDT. The online MSDN help is very, very useful, I have yet to find something comparable (no, manpages are not comparable, neither is devhelp).
I cannot say anything about the RAD builder for.net stuff since I never used it, but a lot of people really like it (and C#). But yes, the VB devs are less than pleased with VB.net.
Besides, UI is NOT a small part of development. People who think that UI development is secondary and just a small part know absolutely nothing about good UI design & development. A good UI can decide over success or failure of a product. Examples? Have a look at most applications out there. Its even worse with Open Source-applications.
I'll reconsider Eclipse when they include proper CL support (CL.exe is the VS C++ compiler & linker).
You are wrong. Ubuntu claims to be end-user ready. End-users CANNOT DEVELOP. End-users CANNOT FIX STUFF. Donate for every bug they find? Suddenly Windows seems to be cheaper, hm.....
The point is that by targeting the end-user (instead of other hackers), they are bound to their word. If it turns out that they don't listen (or only listen when you pay them), then it becomes clear that they are lying; there is no free support then! Read their website.
"But, you want me to get my component to read from say, a database format that you use that is quite obscure - you're going to do it yourself or pay."
Bad example. Obscure stuff is of course a problem, but most complaints are NOT about obscure stuff. They are more like "why is the audio out of sync when playing some videos?" (Answer: esd has horrible latency). What is the user supposed to do? Code an entire sound daemon? Also, Kaffeine is buggy for almost a year, there are more than one replacement package available for months now, lots of people complain that this extremely important application isn't treated the way it should be (i.e. fix the bugs, simply by replacing the packages). Right now, the user has to track down the package (assuming he/she knows how to manually install packages). Is this okay?
"With regards to the two "system settings menus", that's a configuration issue, which could be resolved with a code change."
Yes, because users complain about it! But, I forgot, user complaints are ignored.... So become a coder, you l4m0r, and solve it yourself! It will take only a couple of months up to several years (depending on the experience) to understand all the Linux interna from scratch, but people aren't supposed to spend their time with anything else than digging through Linux internals, right?
"Again, why should someone who is happy with the control mechanism change it for one user who doesn't like it. No commercial company would without payment, but at least you have the source code."
One user? Ok. Many users? No. If *many* users are complaining about this control mechanism, then the developer either changes it, or stops calling the distro end-user compatible. As for the company: in this case, the users simply move on to another software. Is this Ubuntu's goal? To scare off the end-users its supposed to target?
"So, why the heck do you deserve any guarantees in terms of product quality?"
Because they promised it on their ads (website counts as advertisement)? If product X is supposed to be ultra-cool, and turns out to be total crap, then its not the user's fault, its simply a shitty product that does not provide what it promises.
This shows the very heart of the problem: even in end-user distros like Ubuntu (and make no mistake, I think Ubuntu is a very good distro, but not perfect) there is the "by-hackers-for-hackers" mentality. This is fine in Debian, but Ubuntu is the distro supposed to be "by-hackers-for-endusers". This changes a lot, since the relationship is totally different. Users dont code, they request, complain, ask. They don't want to hack around, they just want to USE the distro, in fact they dont have the competence to hack around!
"Ehm? If a company put such a clause in their EULA? If the product in question was a completely free thing, then I don't think Slashdot would scream how evil this company is."
Ahem. This is SLASHDOT. Companies are always evil and sinister here. (Unfortunately, many times this is in fact the truth - look at Disney:( )
"Even if Ubuntu's an end-user distro, nobody's forcing the users to use it."
No, but its goal is to be suitable for average end-users. Nobody is forcing the users to use it. This does NOT give the devs indemnification against listening to the users. Besides, the Ubuntu website explicitely states that support is available.
"You seem to think it's some kind of popularity contest - it's not: people make free software to make their own lives better, and don't mind sharing. Most software projects don't measure themselves by the amount of users they have."
I am not saying that it should be measured by the amount of end-users. But it should be measured in its end-user compatibility. This includes the end-users ability to send complaints. An average joe distro with no possibility for sending suggestions and/or complaints is not an average joe distro, its an average geek distro where you have to code to get some help.
Wrong. Try developing a.net or a C++-Application in Visual Studio and in Eclipse. No sir, the CDT is years behind Visual Studio. There is NO free C++-IDE that can beat Visual Studio. (Unfortunately.)
"So, as well as someone giving you a piece of software for free (often done as a labour of love), you expect them to add in your features? Would you do some work for nothing? People do things for many motivations. If you aren't a friend or a member of my family, I'll do things for you for two reasons - a) because I really want to (like the project might be fun, challenging or for a good cause) or b) because you pay me."
They are working for nothing already, arent they? They ask for suggestions and criticism so they can improve their projects, don't they?
"Your example being a completely free distro. And it doesn't support your hardware. What have you done to help? Offered a donation? Written some code? This is completely free. Do you think you have some right to complain?"
OF COURSE he has the right to complain. Ubuntu is supposed to be an END-USER-DISTRO. NOT a programmer's distro. You expect the average user, who is NOT interested in computers and just uses them to get his work done to learn how to code just to fix the bugs the distro makers should take care of? I repeat: most users don't give a damn how a distro works, they just want to work with the damn computer! They want to write their letters, work on the photos they shot, record and postprocess some music etc. but they do NOT want to dig into the distro itself! Ubuntu exists precisely for these users, in other words, forcing Ubuntu users to become Linux experts just to get things to work is downright insulting.
People like you are a real PITA. So you say free software is a "take-it-or-leave-it" thing, with absolutely no rights for the user to complain? You do realize that this makes free software very unpopular, right? When a company includes a clause in their EULA that the user has no rights to complain everyone (also people like you) here in Slashdot scream how evil this company is. Free software does the same, and its ok? Oh come on.
Re:Bitterness over other's success or excesses
on
Xbox 360 Launches In U.S.
·
· Score: 2, Interesting
Its not ethical to spend your money? So everyone should spend all money thats not absolutely necessary to the 3rd world? Why do you have a computer then? Why do you have a house? Why don't you live in a small hut with 15 other people?
This "we should spend the extra $$$ to the 3rd world" is nonsense. Fine, spend it! But be aware that the poor WILL NOT GET THE MONEY. Instead, your money will end in the pockets of the ultra-rich 1% in the 3rd world.
You want to help? Push your country to open trade with the 3rd world countries. THIS is what everyone wants over there. The first world countries do not want this in order to protect their economy. Instead, they spend millions and finance the life of the upper class over there.
Oh yes, what a nightmare! Clicking through the wizard, whew I have to know how to CLICK! Yes, you can mess things up in Windows. But the contrasts are not as sharp as in Linux. There is hardware that really stinks with Windows (some Hauppauge TV cards for example). But how numerous are they? Then compare that to the amount of hardware that needs attention of the user in Linux. I need HOWTOs for nvidia cards. I need HOWTOs for DVDs. I need HOWTOs for samba just to get a simple share to work (I have yet to find an useful frontend).
About X: You know, your comparison is flawed. If you want to use the binary drivers, you have to wade through manual X configuration. Also, fglrxconfig happens to generate XFree86-compatible configurations, not xorg ones. The difference is subtle, mostly just the keyboard driver called "keyboard" and no longer "Keyboard", also the kb rule is "xorg" now.
Of course, this is ATIs mistake. Of course, the installations are awkward because of license issues. The solution? Well, they will *NEVER* release the drivers as opensource. NEVER. No way. Nada. Zip. If one million Linux zealots write protest mails, they couldn't care less, they simply dump them and live with the other 100+ million customers. So, stable APIs would be VERY nice for driver installation, because the thing with Linux distros is that they are brain-dead to use - as long as you stay in the very narrow predefined path. If you try to install the binary X drivers for your nice gf6600, things get very nasty. (Yes, you have to edit the xorg.conf manually.) If you want to watch DVDs, things get obscenely nasty. Again, IP issues. So ACCEPT binary-only plugins. GStreamer just ignores this issue and allows binary-only plugins. They are the hottest candidates for the future of media in Linux. And they are the ONLY solution for the DVD issue. Again, it works only with binary-only CSS modules.
Windows and OSX make easy things easy, Linux hard things easy? Pathetic. So what is "easy" for you? Mounting drives manually? Mounting network shares? This is easy FOR YOU, but you are insignificant. For the significant masses, it is HARD, so good interfaces try to make them as easy as possible. Besides, OSX is no real example, since it is designed for particular hardware, but the INTERFACE is centuries beyond anything available both in Windows and Linux. The problem with Linux is that the hard things are very real for all users, not just for freaks tuning their OS. Yes, distros are getting better. But still, people with very new stuff (new SCSI controllers for instance) have to wait months before the kernel includes some support - if it does at all. Kernel upgrades are not trivial. Things may break. And there we have the same problems you criticized in Windows.
People do not care about the computing experience! For them, computing experience is Word and Excel and Photoshop. To force people to become computer experts just to do everyday stuff like writing or photo postprocessing is incredibly arrogant and wrong. A very small amount of effort? HA! Ever watched a complete newbie trying to master Linux? The ATI drivers requiring a very small amount of effort? X configuring issues? Linux distros have the big disadvantages that things get very hard once the planned route does not work, e.g. the predesigned architecture fails, for example when the autodetection guessed wrong, or some drivers do not work (ALSA stuff for example). It is a very small amount of effort for YOU. Then, the typical reaction: "our Linux" is so l33t, the l4m3rs shall take OSX or Winslows if they dont want to spend incredible amounts of their time with our l33t Linux to know how to do stuff, yeah d00d!
You dont want easy Linux? Fine, then DO NOT TAKE IT, but leave the option for the rest. Do not try to force everyone not to have an easy Linux.
As for the binary driver issue: ever heard of IP issues? More and more functionality moving into the drivers (the graphics drivers are a prime example), thus containing lots of company secrets and potential SW patent violations? I think these are very good reasons for closed source drivers.
I see this happening in the future: either, Linus accepts a stable ABI; or someone else writes a layer between the changing kernel APIs and a stable frontend - this layer would be in constant adjustment, always following the current kernel; or the big OSDL companies simply fork linux, tackle a stable ABI on it, and this is the kernel of choice for all desktops. The vanilla kernel will remain in its 5% marketshare then. Either way, Linux will get such a stable ABI, or it will die off for most people. And there is NOTHING that can prevent that.
Good analogy, and I agree. Einstein summarized it perfectly: make this as easy as possible, but not easier. However, Linux is FAR away from being as brain-dead easy as in this analogy. Today, its more like a car that only works if you tweak and build half of it yourself, thus requiring you to be experienced in mechanics. Or like a TV set which requires you to study electronics just to be able to configure it.
For example, I think its perfectly OK for people to have to know what a driver actually is (this is no common knowledge), that they have to be careful which driver they pick (latest beta bleeding-edge ones not being very stable for example) etc. However, it is absolutely unacceptable that people have to know about gcc, the whole dev libs needed for module compiling etc. (assuming its not in the distro database, which isnt all that unlikely). Also, it is unacceptable that basic issues like installing the nvidia binary drivers are described in good HOWTOs, but these HOWTOs are NOT included with the distro! Instead, an internet connection is required, google is required. An introductory HOWTO database, similar to a mini-MSDN for users consiting of howtos, would be nice, so that they know what to do to get the nvidia driver to work.
Ha! Here we have an IMMENSE advantage of Windows: decentralized support. Each Linux distro has to track all kernel modules and have them in the package database. This, of course, isn't possible, so the newest drivers are rarely included. Also, there are drivers NOT included in a distro, for various possible reasons. For example, maybe the developer simply abandoned it, or it was abandoned because a new revision of the hardware works totally different, and the current code is useless (especially when the old code was hacked together with lots of trial-and-error sessions, e.g. "legal reverse-engineering") etc.
Non-free drivers are usually non-free for good reasons (simple philosophy isnt a good one for a company). A very good one are IP issues. Have a look at ATI and nVidia for this.
I use it because I like it. I also use it because it is a much-needed alternative to Windows. Windows' marketshare is too big, Microsofts control is too great. Most people usually do not choose Linux because of idealism, but because it is a cheaper, viable alternative - as a server. Not as a desktop. You want Desktop Linux? Then embrace binary drivers. You want to force Linux to stay a toy for self-proclaimed elitist hackers (e.g. 0.00001% of all users)? Then just go on and prevent the stable API from becoming a reality.
Then tell us how they should solve IP issues connected with the knowledge resting in the driver. Tell us how ATI and nVidia should handle this. More and more functionality is in the driver nowadays, and the IP in there is littered with patents, royalties, licenses.... and there is also the fact that the drivers often contain company secrets, so better forget about the idea of companies putting their stuff as open source.
Haha. You and... 10 other guys? Over 90% of all people just DO NOT CARE about Closed or Open Source drivers, they just want stuff to WORK. In Windows, this is easy. Download the newest driver, click through the setup wizard, reboot, done. In Linux, I have to compile a kernel module, which is NOT TRIVIAL, since a) the kernel API may have changed, and the driver hasnt been updated to the newest one, so its useless b) it requires a compiler, kernel headers and some other stuff a regular user does not even know about c) is not userfriendly; people expect some easy wizards and no scary terminals. A grandma compiling a kernel module? A musician who just wants to make some music and couldnt care less about all that computer geek mumbo jumbo compiling a kernel module? Not in this reality.
Influence. Power. The desktop is Microsofts primary stronghold. The desktop is where consumer standards are decided. You want W3C-compliant browsers? OpenDocument-using office suites? Open standards instead of propietary lock-in file formats (these are one of MS' main weapons!) ?
Comparing IE update and synaptic is like comparing apples with bananas. You do not install apps in Windows with the IE. You do upgrade the system with IE, but not the apps. This is a HUGE advantage of Windows: decentralized easy application installation. Just download the setup exe, run it, click through the setup wizard. In Linux? You better got gcc. And good luck if compilation errors appear. Of course, this is not an issue if the app is in the package database, but if not, you are screwed.
If a user has to go through HOWTOs to know how to edit obscure config files you know something is wrong. Golden rule: the user must not be forced to dive into config files. NEVER. Too often a simple question like "my printer (model XYZ) does not work!" ends up in "type find -name balau848$""U(" -rh [{\48 20} and then edit/etc/blah/abc/xx__jht/rtkjc, check lsusb, copy the XYZID, check in/proc for bus ID 409482....."
Provide a GUI for EVERYTHING. And provide a good, self-explaining GUI. Rule of thumb: if the user has to look in a manual, the interface design failed. An exception are very complicated applications - there, you need a manual. But then, write a GOOD one. manpages are *NOT* good for non-gurus.
Also, distros should have something like autopackage pre-installed by default, to m make decentralized, easy setup files for linux possible.
No! No! No! This is one of the biggest problems. It is absolutely unacceptable that one has to edit a system config file manually just to get some file association stuff to work! It should be possible by simple clicking, and NOT EDITING CONFIG FILES!
Everything to configure X is in xorg.conf. If X won't run, 90% of the time all you have to do is fix xorg.conf. X'll probably tell you exactly what's wrong, too.
My experiences indicate the opposite. If you are lucky, the X error output helps you. In fact, clean error messages are one of the features to be implemented in the next X versions (see the bug lists, annotations, milestones...)
Well, they have an abominable reputation, it is "in" and "trendy" to hate them, and no matter what they do, they are still hated. I do think that this is not very healthy for recruitment of new developers. Also, it is not very nice to work in an unpopular company, and its not nice to be the one that runs the unpopular company. Money? Check. Monopoly? Check. Maybe thats not enough anymore. Maybe they want to be liked.
Then again, I can hardly imagine Ballmer to struggle for popularity. Heck, I can't imagine Ballmer having charisma. Every time I see Ballmer in a photo I think of a fat, sweaty, cutthroat manager that spits on you and your life. If MS wants some popularity (or, to put it in slashdot terms: a karma above -1000), throw out the sweaty man.
MS does help innovation, although not in a sane way. Sure, there are lots of small companies with fresh, innovative ideas which get bought up by MS. Evil MS, no cookie? Wrong. How likely is it that those companies would have survived? For most: zero. So, in theory its a good thing that the 800-pound gorilla takes the innovative ideas and includes them in their products. In theory. In practice the new ideas often vanish in the patent portfolio, or they mutate to really ugly MS incarnations.
*) Get total PC newbies and Windows users to try using them and observe what they do, what they try, how and why they fail to succeed in their attempts. Let them talk verbosely about what they are doing.
.exe are apps etc.
*) Count the times you had to look in a manpage, in google, and how often you had to fire up a console for doing simple things (like creating a shared folder, browsing the internet, installing some plugins like flash etc.) Keep in mind: SIMPLE things! Trivial tasks done by the casual user.
*) For each system you need to learn how to use it, thats a fact. Unix users have to learn the concept behind the filesystem (nothing too fancy, but basic knowledge about what mounting is for example). This is comparable to the knowledge about the drive letters in Windows, the usage of backslash for separation in paths, that
*) Review the help system and documentation. Among other things, look for technical mumbo-jumbo. This is a common error. Stuff like SSH, SSL, CORBA, FUSE, pthreads etc. should never occur in enduser documentation.
*) Have a look at the menus. Are they cluttered or usable? How long did you have to search something in the menu?
OMG. Motif. Please. Spare us this! Qt has its issues (moc being the primary source of problems), but it is a pleasure to code with. Motif is a PAIN to code with.
Also, if Motif is the "REAL X11 toolkit", then X11 has some serious problems, since all other "native toolkits" are a million times superior to this.
But hey, you don't say why KDE and Gnome are crap, you just bash them, how about being more detailed? I for one like KDE a lot (except the startup time) and somehow can't find the idea of a 1990-style Motif desktop appealing.
Intellisense and error decorators are offered by Visual Assist. Yeah, Intellisense is pretty bad in VS, but thats not a killer argument for me. But toolkits, libraries etc. in Windows often include a VC-binary *only*, i.e. nothing for mingw. (Conversion .lib->.a can be very very tricky.) This is a result from the fact that VS is the #1 C++ platform in Windows, thus if you want to reach the maximum amount of devs in Windows, use VS. With mingw, you are pretty much isolated, and so are you with Eclipse. Also, Visual Studio works out-of-the-box, with Eclipse I have to download and configure cygwin and the CDT. The online MSDN help is very, very useful, I have yet to find something comparable (no, manpages are not comparable, neither is devhelp).
.net stuff since I never used it, but a lot of people really like it (and C#). But yes, the VB devs are less than pleased with VB.net.
I cannot say anything about the RAD builder for
Besides, UI is NOT a small part of development. People who think that UI development is secondary and just a small part know absolutely nothing about good UI design & development. A good UI can decide over success or failure of a product. Examples? Have a look at most applications out there. Its even worse with Open Source-applications.
I'll reconsider Eclipse when they include proper CL support (CL.exe is the VS C++ compiler & linker).
You are wrong. Ubuntu claims to be end-user ready. End-users CANNOT DEVELOP. End-users CANNOT FIX STUFF. Donate for every bug they find? Suddenly Windows seems to be cheaper, hm.....
The point is that by targeting the end-user (instead of other hackers), they are bound to their word. If it turns out that they don't listen (or only listen when you pay them), then it becomes clear that they are lying; there is no free support then! Read their website.
"But, you want me to get my component to read from say, a database format that you use that is quite obscure - you're going to do it yourself or pay."
Bad example. Obscure stuff is of course a problem, but most complaints are NOT about obscure stuff. They are more like "why is the audio out of sync when playing some videos?" (Answer: esd has horrible latency). What is the user supposed to do? Code an entire sound daemon? Also, Kaffeine is buggy for almost a year, there are more than one replacement package available for months now, lots of people complain that this extremely important application isn't treated the way it should be (i.e. fix the bugs, simply by replacing the packages). Right now, the user has to track down the package (assuming he/she knows how to manually install packages). Is this okay?
"With regards to the two "system settings menus", that's a configuration issue, which could be resolved with a code change."
Yes, because users complain about it! But, I forgot, user complaints are ignored.... So become a coder, you l4m0r, and solve it yourself! It will take only a couple of months up to several years (depending on the experience) to understand all the Linux interna from scratch, but people aren't supposed to spend their time with anything else than digging through Linux internals, right?
"Again, why should someone who is happy with the control mechanism change it for one user who doesn't like it. No commercial company would without payment, but at least you have the source code."
One user? Ok. Many users? No. If *many* users are complaining about this control mechanism, then the developer either changes it, or stops calling the distro end-user compatible. As for the company: in this case, the users simply move on to another software. Is this Ubuntu's goal? To scare off the end-users its supposed to target?
"So, why the heck do you deserve any guarantees in terms of product quality?"
Because they promised it on their ads (website counts as advertisement)? If product X is supposed to be ultra-cool, and turns out to be total crap, then its not the user's fault, its simply a shitty product that does not provide what it promises.
This shows the very heart of the problem: even in end-user distros like Ubuntu (and make no mistake, I think Ubuntu is a very good distro, but not perfect) there is the "by-hackers-for-hackers" mentality. This is fine in Debian, but Ubuntu is the distro supposed to be "by-hackers-for-endusers". This changes a lot, since the relationship is totally different. Users dont code, they request, complain, ask. They don't want to hack around, they just want to USE the distro, in fact they dont have the competence to hack around!
"Ehm? If a company put such a clause in their EULA? If the product in question was a completely free thing, then I don't think Slashdot would scream how evil this company is."
:( )
Ahem. This is SLASHDOT. Companies are always evil and sinister here. (Unfortunately, many times this is in fact the truth - look at Disney
"Even if Ubuntu's an end-user distro, nobody's forcing the users to use it."
No, but its goal is to be suitable for average end-users. Nobody is forcing the users to use it. This does NOT give the devs indemnification against listening to the users. Besides, the Ubuntu website explicitely states that support is available.
"You seem to think it's some kind of popularity contest - it's not: people make free software to make their own lives better, and don't mind sharing. Most software projects don't measure themselves by the amount of users they have."
I am not saying that it should be measured by the amount of end-users. But it should be measured in its end-user compatibility. This includes the end-users ability to send complaints. An average joe distro with no possibility for sending suggestions and/or complaints is not an average joe distro, its an average geek distro where you have to code to get some help.
"visual studio still hasn't caught up to eclipse"
.net or a C++-Application in Visual Studio and in Eclipse. No sir, the CDT is years behind Visual Studio. There is NO free C++-IDE that can beat Visual Studio. (Unfortunately.)
Wrong. Try developing a
"So, as well as someone giving you a piece of software for free (often done as a labour of love), you expect them to add in your features? Would you do some work for nothing? People do things for many motivations. If you aren't a friend or a member of my family, I'll do things for you for two reasons - a) because I really want to (like the project might be fun, challenging or for a good cause) or b) because you pay me."
They are working for nothing already, arent they? They ask for suggestions and criticism so they can improve their projects, don't they?
"Your example being a completely free distro. And it doesn't support your hardware. What have you done to help? Offered a donation? Written some code? This is completely free. Do you think you have some right to complain?"
OF COURSE he has the right to complain. Ubuntu is supposed to be an END-USER-DISTRO. NOT a programmer's distro. You expect the average user, who is NOT interested in computers and just uses them to get his work done to learn how to code just to fix the bugs the distro makers should take care of? I repeat: most users don't give a damn how a distro works, they just want to work with the damn computer! They want to write their letters, work on the photos they shot, record and postprocess some music etc. but they do NOT want to dig into the distro itself! Ubuntu exists precisely for these users, in other words, forcing Ubuntu users to become Linux experts just to get things to work is downright insulting.
People like you are a real PITA. So you say free software is a "take-it-or-leave-it" thing, with absolutely no rights for the user to complain? You do realize that this makes free software very unpopular, right? When a company includes a clause in their EULA that the user has no rights to complain everyone (also people like you) here in Slashdot scream how evil this company is. Free software does the same, and its ok? Oh come on.
Its not ethical to spend your money? So everyone should spend all money thats not absolutely necessary to the 3rd world?
Why do you have a computer then? Why do you have a house? Why don't you live in a small hut with 15 other people?
This "we should spend the extra $$$ to the 3rd world" is nonsense. Fine, spend it! But be aware that the poor WILL NOT GET THE MONEY. Instead, your money will end in the pockets of the ultra-rich 1% in the 3rd world.
You want to help? Push your country to open trade with the 3rd world countries. THIS is what everyone wants over there. The first world countries do not want this in order to protect their economy. Instead, they spend millions and finance the life of the upper class over there.
Oh yes, what a nightmare! Clicking through the wizard, whew I have to know how to CLICK! Yes, you can mess things up in Windows. But the contrasts are not as sharp as in Linux. There is hardware that really stinks with Windows (some Hauppauge TV cards for example). But how numerous are they? Then compare that to the amount of hardware that needs attention of the user in Linux. I need HOWTOs for nvidia cards. I need HOWTOs for DVDs. I need HOWTOs for samba just to get a simple share to work (I have yet to find an useful frontend).
About X: You know, your comparison is flawed. If you want to use the binary drivers, you have to wade through manual X configuration. Also, fglrxconfig happens to generate XFree86-compatible configurations, not xorg ones. The difference is subtle, mostly just the keyboard driver called "keyboard" and no longer "Keyboard", also the kb rule is "xorg" now.
Of course, this is ATIs mistake. Of course, the installations are awkward because of license issues. The solution? Well, they will *NEVER* release the drivers as opensource. NEVER. No way. Nada. Zip. If one million Linux zealots write protest mails, they couldn't care less, they simply dump them and live with the other 100+ million customers.
So, stable APIs would be VERY nice for driver installation, because the thing with Linux distros is that they are brain-dead to use - as long as you stay in the very narrow predefined path. If you try to install the binary X drivers for your nice gf6600, things get very nasty. (Yes, you have to edit the xorg.conf manually.) If you want to watch DVDs, things get obscenely nasty. Again, IP issues. So ACCEPT binary-only plugins. GStreamer just ignores this issue and allows binary-only plugins. They are the hottest candidates for the future of media in Linux. And they are the ONLY solution for the DVD issue. Again, it works only with binary-only CSS modules.
Windows and OSX make easy things easy, Linux hard things easy? Pathetic. So what is "easy" for you? Mounting drives manually? Mounting network shares? This is easy FOR YOU, but you are insignificant. For the significant masses, it is HARD, so good interfaces try to make them as easy as possible. Besides, OSX is no real example, since it is designed for particular hardware, but the INTERFACE is centuries beyond anything available both in Windows and Linux. The problem with Linux is that the hard things are very real for all users, not just for freaks tuning their OS. Yes, distros are getting better. But still, people with very new stuff (new SCSI controllers for instance) have to wait months before the kernel includes some support - if it does at all. Kernel upgrades are not trivial. Things may break. And there we have the same problems you criticized in Windows.
People do not care about the computing experience! For them, computing experience is Word and Excel and Photoshop. To force people to become computer experts just to do everyday stuff like writing or photo postprocessing is incredibly arrogant and wrong. A very small amount of effort? HA! Ever watched a complete newbie trying to master Linux? The ATI drivers requiring a very small amount of effort? X configuring issues? Linux distros have the big disadvantages that things get very hard once the planned route does not work, e.g. the predesigned architecture fails, for example when the autodetection guessed wrong, or some drivers do not work (ALSA stuff for example). It is a very small amount of effort for YOU. Then, the typical reaction: "our Linux" is so l33t, the l4m3rs shall take OSX or Winslows if they dont want to spend incredible amounts of their time with our l33t Linux to know how to do stuff, yeah d00d!
You dont want easy Linux? Fine, then DO NOT TAKE IT, but leave the option for the rest. Do not try to force everyone not to have an easy Linux.
As for the binary driver issue: ever heard of IP issues? More and more functionality moving into the drivers (the graphics drivers are a prime example), thus containing lots of company secrets and potential SW patent violations? I think these are very good reasons for closed source drivers.
I see this happening in the future: either, Linus accepts a stable ABI; or someone else writes a layer between the changing kernel APIs and a stable frontend - this layer would be in constant adjustment, always following the current kernel; or the big OSDL companies simply fork linux, tackle a stable ABI on it, and this is the kernel of choice for all desktops. The vanilla kernel will remain in its 5% marketshare then. Either way, Linux will get such a stable ABI, or it will die off for most people. And there is NOTHING that can prevent that.
Good analogy, and I agree. Einstein summarized it perfectly: make this as easy as possible, but not easier. However, Linux is FAR away from being as brain-dead easy as in this analogy. Today, its more like a car that only works if you tweak and build half of it yourself, thus requiring you to be experienced in mechanics. Or like a TV set which requires you to study electronics just to be able to configure it.
For example, I think its perfectly OK for people to have to know what a driver actually is (this is no common knowledge), that they have to be careful which driver they pick (latest beta bleeding-edge ones not being very stable for example) etc. However, it is absolutely unacceptable that people have to know about gcc, the whole dev libs needed for module compiling etc. (assuming its not in the distro database, which isnt all that unlikely). Also, it is unacceptable that basic issues like installing the nvidia binary drivers are described in good HOWTOs, but these HOWTOs are NOT included with the distro! Instead, an internet connection is required, google is required. An introductory HOWTO database, similar to a mini-MSDN for users consiting of howtos, would be nice, so that they know what to do to get the nvidia driver to work.
Ha! Here we have an IMMENSE advantage of Windows: decentralized support. Each Linux distro has to track all kernel modules and have them in the package database. This, of course, isn't possible, so the newest drivers are rarely included. Also, there are drivers NOT included in a distro, for various possible reasons. For example, maybe the developer simply abandoned it, or it was abandoned because a new revision of the hardware works totally different, and the current code is useless (especially when the old code was hacked together with lots of trial-and-error sessions, e.g. "legal reverse-engineering") etc.
Non-free drivers are usually non-free for good reasons (simple philosophy isnt a good one for a company). A very good one are IP issues. Have a look at ATI and nVidia for this.
I use it because I like it. I also use it because it is a much-needed alternative to Windows. Windows' marketshare is too big, Microsofts control is too great. Most people usually do not choose Linux because of idealism, but because it is a cheaper, viable alternative - as a server. Not as a desktop. You want Desktop Linux? Then embrace binary drivers. You want to force Linux to stay a toy for self-proclaimed elitist hackers (e.g. 0.00001% of all users)? Then just go on and prevent the stable API from becoming a reality.
Then tell us how they should solve IP issues connected with the knowledge resting in the driver. Tell us how ATI and nVidia should handle this. More and more functionality is in the driver nowadays, and the IP in there is littered with patents, royalties, licenses.... and there is also the fact that the drivers often contain company secrets, so better forget about the idea of companies putting their stuff as open source.
Haha. You and ... 10 other guys?
Over 90% of all people just DO NOT CARE about Closed or Open Source drivers, they just want stuff to WORK. In Windows, this is easy. Download the newest driver, click through the setup wizard, reboot, done. In Linux, I have to compile a kernel module, which is NOT TRIVIAL, since a) the kernel API may have changed, and the driver hasnt been updated to the newest one, so its useless b) it requires a compiler, kernel headers and some other stuff a regular user does not even know about c) is not userfriendly; people expect some easy wizards and no scary terminals. A grandma compiling a kernel module? A musician who just wants to make some music and couldnt care less about all that computer geek mumbo jumbo compiling a kernel module? Not in this reality.
Influence. Power. The desktop is Microsofts primary stronghold. The desktop is where consumer standards are decided. You want W3C-compliant browsers? OpenDocument-using office suites? Open standards instead of propietary lock-in file formats (these are one of MS' main weapons!) ?
Then conquer the desktop.
Comparing IE update and synaptic is like comparing apples with bananas. You do not install apps in Windows with the IE. You do upgrade the system with IE, but not the apps. This is a HUGE advantage of Windows: decentralized easy application installation. Just download the setup exe, run it, click through the setup wizard. In Linux? You better got gcc. And good luck if compilation errors appear. Of course, this is not an issue if the app is in the package database, but if not, you are screwed.
If a user has to go through HOWTOs to know how to edit obscure config files you know something is wrong. Golden rule: the user must not be forced to dive into config files. NEVER. Too often a simple question like "my printer (model XYZ) does not work!" ends up in "type find -name balau848$""U(" -rh [{\48 20} and then edit /etc/blah/abc/xx__jht/rtkjc, check lsusb, copy the XYZID, check in /proc for bus ID 409482....."
Provide a GUI for EVERYTHING. And provide a good, self-explaining GUI. Rule of thumb: if the user has to look in a manual, the interface design failed. An exception are very complicated applications - there, you need a manual. But then, write a GOOD one. manpages are *NOT* good for non-gurus.
Also, distros should have something like autopackage pre-installed by default, to m make decentralized, easy setup files for linux possible.
1. File associations
/etc/mailcap or /etc/mime.types file!
Edit your
No! No! No! This is one of the biggest problems. It is absolutely unacceptable that one has to edit a system config file manually just to get some file association stuff to work! It should be possible by simple clicking, and NOT EDITING CONFIG FILES!
Everything to configure X is in xorg.conf. If X won't run, 90% of the time all you have to do is fix xorg.conf. X'll probably tell you exactly what's wrong, too.
My experiences indicate the opposite. If you are lucky, the X error output helps you. In fact, clean error messages are one of the features to be implemented in the next X versions (see the bug lists, annotations, milestones...)
In Redmond, all windows are wide open.
You forgot teh internet. They invented teh internet. With a shiny nice blue "e" logo.
Well, they have an abominable reputation, it is "in" and "trendy" to hate them, and no matter what they do, they are still hated. I do think that this is not very healthy for recruitment of new developers. Also, it is not very nice to work in an unpopular company, and its not nice to be the one that runs the unpopular company. Money? Check. Monopoly? Check. Maybe thats not enough anymore. Maybe they want to be liked.
Then again, I can hardly imagine Ballmer to struggle for popularity. Heck, I can't imagine Ballmer having charisma. Every time I see Ballmer in a photo I think of a fat, sweaty, cutthroat manager that spits on you and your life. If MS wants some popularity (or, to put it in slashdot terms: a karma above -1000), throw out the sweaty man.
MS does help innovation, although not in a sane way. Sure, there are lots of small companies with fresh, innovative ideas which get bought up by MS. Evil MS, no cookie? Wrong. How likely is it that those companies would have survived? For most: zero. So, in theory its a good thing that the 800-pound gorilla takes the innovative ideas and includes them in their products. In theory. In practice the new ideas often vanish in the patent portfolio, or they mutate to really ugly MS incarnations.