Only if you want to create closed source, proprietary software do you have to buy a Qt license.
No. There are many open source licenses that are not GPL-compatible.
If someone made a GUI mail client containing code from pine, for instance, they'd be in violation of Qt's license rules. There would be no such problem with GTK+.
Especially since, in most areas, GNOME's technology lags behind KDE's.
I've written a number of comparisons of the two in Slashdot threads, and have generally found the two to be roughly equal from a "new and interesting ideas" standpoint. Can you name a few examples of why exactly you feel that KDE has a significant advantage?
For GUI design? Yes, I agree. I'd prefer a layout description language, perhaps in XML. This is what Glade, the GTK/GNOME GUI RAD tool, generates.
GUI just lends itself to Object Oriented programming.
GTK+ and GNOME are both object oriented, even in their C forms (even ignoring the C++ gnomemm and gtkmm bindings).
I know the hard core *NIX geeks will flame me for this, but why on earth would you NOT want to do a GUI in OOP.
You don't. GTK+, GNOME, KDE, Qt and MFC are all object-oriented. I would assume that whatever Apple's using these days is as well.
The beauty of coding for windows using MFC and.NET is you just extend classes already there. It's an elegant and tidy way to do things.
With all due respect...have you actually coded in GTK+? It's an awful lot cleaner than MFC, at least. Not sure about.NET -- I haven't poked at it.
Languages like C with functions just turn code into a nightmare. Ever wonder why most game companies program in directX and NOT openGL? OpenGL is C, directX is not.
[Laughs] Not even close.
DirectX and OpenGL are wildly different. Direct3D is a vague approximation of OpenGL, but DirectX is a full game/multimedia programming API. Game companies use DirectX because they get a well-supported API that does everything they want instead of going to the extra work of learning multiple APIs.
The commercial issue with QT is really a non-issue.
You may find it so. I know at least one major company that has had issues with the licencing of Qt.
It might even be possible companies and write inhouse software without paying a license fee (since the code is never redistributed.)
Wrong. TrollTech just dropped their Windows Qt GPL license, so you're fucked with respect to cross-platform capabilities.
If companies want to make money writing with QT they will.
Yup. And if they want to do so using GTK+, they will as well. So far, there are a lot more people writing software with GTK+ than with Qt.
What do *companies* want, to pay a fee to QT and own their own code, or give it away with the GPL and Gnome?
That makes no sense. It is, in fact, backwards. Qt is dual GPL/commercial licensed. The only way to freely release Qt software is to GPL it. GTK+ and GNOME are both LGPLed, which means that they place no restrictions on the licenses of software that simply link to them.
When someone starts talking about something being "FREER" as in the gpl, I turn on my Stallman filter. These people claim the BSD license isn't free because the code can be 'hijacked' by closed source projects.
You'd be turning your back on Qt, which is GPLed.
If you give something away, you give it away for good. The BSD license gives it away for EVERYONE to use, and doesn't discriminate.
Yup. With Qt, you may not freely write BSD-licensed Qt-using software. You may do so with GTK+. You are supporting the other side most eloquently.
When decisions are NOT based on technical merit, rather on politics, then you are no longer a geek. You are an activist.
Fine. Qt is less modular, duplicates functionality, has more overhead, runs into more ABI-related problems, and has license issues that produce technical issues.
The main bad thing about KDE is Qt. If KDE used a free widget set, it would have taken over the world -- most people didn't have any real issue with KDE itself. Instead, the KDE folks chose to fight it out over Qt, and now KDE is increasingly falling behind.
WE payed for the station, they pay to play astronaut
That's irrelevant for a number of reasons. They're up there for a week. There are six crew members. The estimated lifetime is 10 years, and the total cost probably in the neighborhood of $25 billion.
So, let's work out what the value of your ISS taxes are in terms of station depreciation (yes, this is an awfully simplified model).
$25000 million/ 6 astronauts at a time / 52 weeks in a year / 10 years = approximately $8 million dollars.
So they're actually overpaying by about $12 million a week according to my off-the-cuff calculations.
Furthermore, all this assumes that NASA and the Russian space program want and need to use all this time they've accumulated. The Russian space program has been beaten silly, and NASA has lost a lot of funding. They may not require all the time available.
The second reason is that the ISS's value isn't just in physically putting a couple of people in space. There was a lot of research done in the process of making and servicing the ISS. That knowledge doesn't just go away when the ISS dies. This is also a useful mechanism to allow the US government to funnel money to the aerospace industry during peacetime.
The ISS may or may not be a good economic choice, as NASA as a whole may not be a good economic investment. But, you know what? I still want full NASA funding. We spend phenomenal amounts of money each year on entertainment. We could blow hundreds of millions of dollars on the latest summer movie, or we could use it to pay for research and exploration of the boundries of what we know about. I consider that important.
The sheer theory of walking is fairly simple. You can make a 3d simulated robot that has absolute knowledge of its position that runs or does whatever you want. It's hard for a robot to know exactly what's going on. Robots skid and twist a little bit (and it gets worse the faster they're moving).
Luxury goods are great. You don't like paying out the nose for the ISS? Fine -- these folks have just dumped a phenemonal sum of money that will be used to help fund space work. It's all about redistribution of wealth.
It's quite possible to do the exact same punishment while still telling them the truth. In the short term, you might produce more friction, but knowing that they can trust what a parent tells them is priceless.
Ah, but the beauty of clay is that it basically has infinite levels of "undo" until you perform a structure commit (e.g., bisque it).
I disagree. The "undo" you have with clay is roughly equivalent to the eraser in a paint program, not the undo feature. You can poke at it until it approximates what you had a few minutes ago -- mutability remains, but you cannot instantaneously snap back to *exactly* what you just had.
Clay has a really good interface. However:
* No undo equivalent.
* Cannot be duplicated easily.
* Cannot be transferred to others easily.
* Computers allow a number of useful transforms to be applied easily -- squashing, resizing, etc. This is not trivial with clay.
* Computers allow version history to be used.
* Computers allow a rapid move from prototypes to models used to produce production output.
* Computers allow physically difficult-to-produce structures to be created.
* Computers allow color to be manipulated many times, easily.
* Computers allow side-by-side comparison of variants.
I have seen this demoed at CMU it was cool but for the most part it was useless, just a toy.
If you were at the CMU demo, I'm surprised you forgot what Takeo was billing this as. He wanted to use this for rapid 3d visualization. The idea is that right now, the easiest method to describe many things to people is still with a pencil and a piece of paper and doing a sketch. It's hard to do this with 3d objects -- you end up doing things with your hands to try to form extremely rough models to get ideas across.
This thing has such a rapid interface to use that you can make up 3d diagrams on the fly. It's the 3d equivalent of a 2d sketchpad.
Takeo did a whole bunch of other rapid 3d prototyping systems.
The idea that all modelers require absolute precision is an artifact of existing systems. Right now, we have word processing/layout systems that span a huge gamut, from programs suitable from typing short notes to things capable of extremely advanced constrant-based layout. 3d modelers stick only the in heavy-user area. They are extremely precise, extremely powerful, and require a (relatively) long time to do anything useful. They are analogous to constraint-based 2d CAD programs in the 2d graphics field or TeX in the typesetting field.
I can approximately envision approximately what I want in a very short period of time, but it takes a long time go from my vision to a computer-representable model. This is, frankly, an artifact of the interface. This is what Takeo is trying to deal with.
Good thing operating systems are so much simpler than web browsers.
Well...it depends on how you define "operating system". If you're thinking of it in the Microsoft sense, an operating system is an extremely large and complex system -- heck, it *is* a superset of a web browser.
However, consider what many browsers are today. Netscape decided back in the day to take an "integrated software package" approach of the sort that was so popular with office software -- word processors, spreadsheets, presentation programs. So you're really talking about pretty large sets of software. Second of all, web browsers have to be much more hardened than operating systems. Frankly, I can DoS pretty much any general purpose operating system. Multiuser operating systems are somewhat better -- Linux tries to keep memory hogs from taking over the system, UNIX schedulers try to keep things pretty fair between users, and process limits and disk quotas try to keep resource consumption within hand. However, I can generally find a way to make life miserable for other people on the system I'm on if I really want to. Web browsers take in (and *execute*) completely untrusted, potentially malicious content every day. DoSes are more-or-less acceptable flaws in OSes (for local users) and completely unacceptable in web browsers. This means extremely robust code designed around strong trust requirements that keep resource usage from getting out of hand.
The problem is that development methods are not the problem. Microsoft simply cannot understand this. This is not a Microsoft-specific problem. It's just due to the way large companies work.
Basically, some Microsoft analyst team sat down and decided that Linux isn't wildly technically better than Windows. The only other difference must be the development methods -- every software manager knows that software engineering methods are crucial.
And that's where they'd be wrong. The development model is slightly different, but it's not magical. There are groups that feed software up and a few knowledgeable people that review code. It isn't that unique or unheard of.
The philosophy and the *social* structure is what matters. I don't mean from a Richard Stallmanesque "We have an ethical mandate to ensure that software is Free", but simply their goals. The people working on Linux make decisions based on one criteria -- technical merit. They are doing what they are doing because they want to make a name for themselves, because they love the technology itself, because they want to fix a problem that's bothering them, and sometimes even because they want to help others. They have a *reason* to put in the extra effort to make code be really clean. It isn't even just that their work can be viewed by millions (and sloppy Linux code frequently gets harshly panned), but that they want to do their best because they're making something to be proud of. You simply cannot replicate this in a traditional company. A programmer is tasked with implementing a feature. He didn't come up with that feature. The feature was decided upon by a committee that was reviewing input from marketing. The feature then hit a high-ranking person in the software development system, and flowed down to this programmer. He knows that much of the Windows codebase is a mess already. If he does a really exceptional job, he can't keep the code with him or show it off to others. He doesn't have the pride there, and the most enthusiastic project manager or juicy set of incentives can only keep the interest and excitement alive for so long. He's putting in his hours to implement something that's customer-driven, and may not be something that he wants to use. You *cannot* produce a large company that has programmers that produce works of love, because you'd get lots of difficult-to-sell output, and in any case the sheer bureaucracy would stamp the joy out of things.
If I wanted to make a system as close as possible to replicating the Linux system, here's options I'd consider:
* Open source the code. An ultimate reward is allowing programmers to allow others and employers to see their entire body of past work. If you want an incentive to do well, this is a big deal.
* Use only programmers that will use their own work. This is hard for some fields, and extremely difficult for vertical market software -- it's the rare programmer that directly uses banking transaction software. However, the rewards are enormous. The gaming industry has got a pretty good grasp of this. There are a lot of games that have lots of neat visual effects or features, things that were thrown in because the programmer *wanted software* that could do something. They have some incentive to go the extra mile. In the open source world, this is frequently called "scratching the itch". Programmers *want* to write software and will write *better* software, if the result is something that matters to them. "Eating your own dogfood" is a hazy corporate attempt to implement this, but I'm talking about going beyond this -- if you're making a raytracer and need another man on the project, try and find a programmer who ray traces in his free time, and give him free rights to use the product on his own as much as he wants.
* The implementor of a feature should have design influence over that feature. This is a tough one. Software design is harder to do well than software imp
The big fear that execs have is that without marketing having influence over the production process, they will pay to produce something that is then not wanted.
All the input from marketing that I've seen where I've worked has been utterly inane, with one exception. At one (small) company, the was a single marketing guy. He listened, waited until he understood the product, and asked whether particular solutions to problems that he knew people have could be included. Note that this is not "Add XML support", where he has a feature checklist, but a "can we provide some way for clients to migrate data from MySQL databases?" problem checklist. Marketing should never, ever, ever drive feature lists. They should provide lists of problems that customers want solved to their engineers, who then tell them which ones can be cheaply solved. Implementation has nothing whatsoever to do with marketing.
Actually, most of the things that are difficult to do in Windows are the things that Microsoft has decided should not be in the user's domain, such as second-guessing developers/content producers or obtaining technical data on their system.
The Linux-using contingent traditionally *has* liked to second-guess people and get whatever information they want, so they don't run into this.
I bought three DVDs last week, and all of them had some form of corruption (minor, skippable, but annoying). There's no reason to purchase DVDs when I can download DivXes from a larger selection, for free, get more reliable content, be able to skip what I want to skip, and so forth. The problem is that pirated content simply is more comfortable to use, ignoring even the cost issue.
I just use mplayer. If large companies want to produce products that can't skip sections of content that I don't really care about, there's not much reason for me to use their products.
You've got me, I'm definitely biased. I think Apple is the greatest thing since sliced bread.
That's not my point -- you are certainly entitled to be biased. We all are. The problem is that the &story submission*, which should be reasonably objective, is very heavy with bias. For example, I don't like Microsoft much. However, when I submitted a story about them, I kept it pretty factual and free of inflamatory content. I had plenty of nasty comments...but I stuck them down in the comments section, where they ought to be.
Only if you want to create closed source, proprietary software do you have to buy a Qt license.
No. There are many open source licenses that are not GPL-compatible.
If someone made a GUI mail client containing code from pine, for instance, they'd be in violation of Qt's license rules. There would be no such problem with GTK+.
Especially since, in most areas, GNOME's technology lags behind KDE's.
I've written a number of comparisons of the two in Slashdot threads, and have generally found the two to be roughly equal from a "new and interesting ideas" standpoint. Can you name a few examples of why exactly you feel that KDE has a significant advantage?
For a GUI, C is horrific.
.NET is you just extend classes already there. It's an elegant and tidy way to do things.
.NET -- I haven't poked at it.
For GUI design? Yes, I agree. I'd prefer a layout description language, perhaps in XML. This is what Glade, the GTK/GNOME GUI RAD tool, generates.
GUI just lends itself to Object Oriented programming.
GTK+ and GNOME are both object oriented, even in their C forms (even ignoring the C++ gnomemm and gtkmm bindings).
I know the hard core *NIX geeks will flame me for this, but why on earth would you NOT want to do a GUI in OOP.
You don't. GTK+, GNOME, KDE, Qt and MFC are all object-oriented. I would assume that whatever Apple's using these days is as well.
The beauty of coding for windows using MFC and
With all due respect...have you actually coded in GTK+? It's an awful lot cleaner than MFC, at least. Not sure about
Languages like C with functions just turn code into a nightmare. Ever wonder why most game companies program in directX and NOT openGL? OpenGL is C, directX is not.
[Laughs] Not even close.
DirectX and OpenGL are wildly different. Direct3D is a vague approximation of OpenGL, but DirectX is a full game/multimedia programming API. Game companies use DirectX because they get a well-supported API that does everything they want instead of going to the extra work of learning multiple APIs.
The commercial issue with QT is really a non-issue.
You may find it so. I know at least one major company that has had issues with the licencing of Qt.
It might even be possible companies and write inhouse software without paying a license fee (since the code is never redistributed.)
Wrong. TrollTech just dropped their Windows Qt GPL license, so you're fucked with respect to cross-platform capabilities.
If companies want to make money writing with QT they will.
Yup. And if they want to do so using GTK+, they will as well. So far, there are a lot more people writing software with GTK+ than with Qt.
What do *companies* want, to pay a fee to QT and own their own code, or give it away with the GPL and Gnome?
That makes no sense. It is, in fact, backwards. Qt is dual GPL/commercial licensed. The only way to freely release Qt software is to GPL it. GTK+ and GNOME are both LGPLed, which means that they place no restrictions on the licenses of software that simply link to them.
When someone starts talking about something being "FREER" as in the gpl, I turn on my Stallman filter. These people claim the BSD license isn't free because the code can be 'hijacked' by closed source projects.
You'd be turning your back on Qt, which is GPLed.
If you give something away, you give it away for good. The BSD license gives it away for EVERYONE to use, and doesn't discriminate.
Yup. With Qt, you may not freely write BSD-licensed Qt-using software. You may do so with GTK+. You are supporting the other side most eloquently.
When decisions are NOT based on technical merit, rather on politics, then you are no longer a geek. You are an activist.
Fine. Qt is less modular, duplicates functionality, has more overhead, runs into more ABI-related problems, and has license issues that produce technical issues.
The main bad thing about KDE is Qt. If KDE used a free widget set, it would have taken over the world -- most people didn't have any real issue with KDE itself. Instead, the KDE folks chose to fight it out over Qt, and now KDE is increasingly falling behind.
In a competitive environment, the consumer wins.
Don't knock having Wal-Mart in the arena.
Poor quality due to compression artifacts from two formats stacking.
WE payed for the station, they pay to play astronaut
That's irrelevant for a number of reasons. They're up there for a week. There are six crew members. The estimated lifetime is 10 years, and the total cost probably in the neighborhood of $25 billion.
So, let's work out what the value of your ISS taxes are in terms of station depreciation (yes, this is an awfully simplified model).
$25000 million/ 6 astronauts at a time / 52 weeks in a year / 10 years = approximately $8 million dollars.
So they're actually overpaying by about $12 million a week according to my off-the-cuff calculations.
Furthermore, all this assumes that NASA and the Russian space program want and need to use all this time they've accumulated. The Russian space program has been beaten silly, and NASA has lost a lot of funding. They may not require all the time available.
The second reason is that the ISS's value isn't just in physically putting a couple of people in space. There was a lot of research done in the process of making and servicing the ISS. That knowledge doesn't just go away when the ISS dies. This is also a useful mechanism to allow the US government to funnel money to the aerospace industry during peacetime.
The ISS may or may not be a good economic choice, as NASA as a whole may not be a good economic investment. But, you know what? I still want full NASA funding. We spend phenomenal amounts of money each year on entertainment. We could blow hundreds of millions of dollars on the latest summer movie, or we could use it to pay for research and exploration of the boundries of what we know about. I consider that important.
Robots are machines however cute they look. Get over it.
If you get a pacemaker, can we deny you your rights?
The sheer theory of walking is fairly simple. You can make a 3d simulated robot that has absolute knowledge of its position that runs or does whatever you want. It's hard for a robot to know exactly what's going on. Robots skid and twist a little bit (and it gets worse the faster they're moving).
If it let Disney skip his pay for just that year, they'd already be way ahead by dropping the 10 million.
Luxury goods are great. You don't like paying out the nose for the ISS? Fine -- these folks have just dumped a phenemonal sum of money that will be used to help fund space work. It's all about redistribution of wealth.
Yeah...I have to agree.
It's quite possible to do the exact same punishment while still telling them the truth. In the short term, you might produce more friction, but knowing that they can trust what a parent tells them is priceless.
Why, why, why no full IE PNG support?
Argh.
Lots of companies provide web hosting services. Not many provide BitTorrent hosting services on their UNIX box.
:-( )
(And this is a university, so you can't even argue free market economics
Ah, but the beauty of clay is that it basically has infinite levels of "undo" until you perform a structure commit (e.g., bisque it).
I disagree. The "undo" you have with clay is roughly equivalent to the eraser in a paint program, not the undo feature. You can poke at it until it approximates what you had a few minutes ago -- mutability remains, but you cannot instantaneously snap back to *exactly* what you just had.
Clay has a really good interface. However:
* No undo equivalent.
* Cannot be duplicated easily.
* Cannot be transferred to others easily.
* Computers allow a number of useful transforms to be applied easily -- squashing, resizing, etc. This is not trivial with clay.
* Computers allow version history to be used.
* Computers allow a rapid move from prototypes to models used to produce production output.
* Computers allow physically difficult-to-produce structures to be created.
* Computers allow color to be manipulated many times, easily.
* Computers allow side-by-side comparison of variants.
I have seen this demoed at CMU it was cool but for the most part it was useless, just a toy.
If you were at the CMU demo, I'm surprised you forgot what Takeo was billing this as. He wanted to use this for rapid 3d visualization. The idea is that right now, the easiest method to describe many things to people is still with a pencil and a piece of paper and doing a sketch. It's hard to do this with 3d objects -- you end up doing things with your hands to try to form extremely rough models to get ideas across.
This thing has such a rapid interface to use that you can make up 3d diagrams on the fly. It's the 3d equivalent of a 2d sketchpad.
Takeo did a whole bunch of other rapid 3d prototyping systems.
The idea that all modelers require absolute precision is an artifact of existing systems. Right now, we have word processing/layout systems that span a huge gamut, from programs suitable from typing short notes to things capable of extremely advanced constrant-based layout. 3d modelers stick only the in heavy-user area. They are extremely precise, extremely powerful, and require a (relatively) long time to do anything useful. They are analogous to constraint-based 2d CAD programs in the 2d graphics field or TeX in the typesetting field.
I can approximately envision approximately what I want in a very short period of time, but it takes a long time go from my vision to a computer-representable model. This is, frankly, an artifact of the interface. This is what Takeo is trying to deal with.
Good thing operating systems are so much simpler than web browsers.
Well...it depends on how you define "operating system". If you're thinking of it in the Microsoft sense, an operating system is an extremely large and complex system -- heck, it *is* a superset of a web browser.
However, consider what many browsers are today. Netscape decided back in the day to take an "integrated software package" approach of the sort that was so popular with office software -- word processors, spreadsheets, presentation programs. So you're really talking about pretty large sets of software. Second of all, web browsers have to be much more hardened than operating systems. Frankly, I can DoS pretty much any general purpose operating system. Multiuser operating systems are somewhat better -- Linux tries to keep memory hogs from taking over the system, UNIX schedulers try to keep things pretty fair between users, and process limits and disk quotas try to keep resource consumption within hand. However, I can generally find a way to make life miserable for other people on the system I'm on if I really want to. Web browsers take in (and *execute*) completely untrusted, potentially malicious content every day. DoSes are more-or-less acceptable flaws in OSes (for local users) and completely unacceptable in web browsers. This means extremely robust code designed around strong trust requirements that keep resource usage from getting out of hand.
They are looking at development methods.
The problem is that development methods are not the problem. Microsoft simply cannot understand this. This is not a Microsoft-specific problem. It's just due to the way large companies work.
Basically, some Microsoft analyst team sat down and decided that Linux isn't wildly technically better than Windows. The only other difference must be the development methods -- every software manager knows that software engineering methods are crucial.
And that's where they'd be wrong. The development model is slightly different, but it's not magical. There are groups that feed software up and a few knowledgeable people that review code. It isn't that unique or unheard of.
The philosophy and the *social* structure is what matters. I don't mean from a Richard Stallmanesque "We have an ethical mandate to ensure that software is Free", but simply their goals. The people working on Linux make decisions based on one criteria -- technical merit. They are doing what they are doing because they want to make a name for themselves, because they love the technology itself, because they want to fix a problem that's bothering them, and sometimes even because they want to help others. They have a *reason* to put in the extra effort to make code be really clean. It isn't even just that their work can be viewed by millions (and sloppy Linux code frequently gets harshly panned), but that they want to do their best because they're making something to be proud of. You simply cannot replicate this in a traditional company. A programmer is tasked with implementing a feature. He didn't come up with that feature. The feature was decided upon by a committee that was reviewing input from marketing. The feature then hit a high-ranking person in the software development system, and flowed down to this programmer. He knows that much of the Windows codebase is a mess already. If he does a really exceptional job, he can't keep the code with him or show it off to others. He doesn't have the pride there, and the most enthusiastic project manager or juicy set of incentives can only keep the interest and excitement alive for so long. He's putting in his hours to implement something that's customer-driven, and may not be something that he wants to use. You *cannot* produce a large company that has programmers that produce works of love, because you'd get lots of difficult-to-sell output, and in any case the sheer bureaucracy would stamp the joy out of things.
If I wanted to make a system as close as possible to replicating the Linux system, here's options I'd consider:
* Open source the code. An ultimate reward is allowing programmers to allow others and employers to see their entire body of past work. If you want an incentive to do well, this is a big deal.
* Use only programmers that will use their own work. This is hard for some fields, and extremely difficult for vertical market software -- it's the rare programmer that directly uses banking transaction software. However, the rewards are enormous. The gaming industry has got a pretty good grasp of this. There are a lot of games that have lots of neat visual effects or features, things that were thrown in because the programmer *wanted software* that could do something. They have some incentive to go the extra mile. In the open source world, this is frequently called "scratching the itch". Programmers *want* to write software and will write *better* software, if the result is something that matters to them. "Eating your own dogfood" is a hazy corporate attempt to implement this, but I'm talking about going beyond this -- if you're making a raytracer and need another man on the project, try and find a programmer who ray traces in his free time, and give him free rights to use the product on his own as much as he wants.
* The implementor of a feature should have design influence over that feature. This is a tough one. Software design is harder to do well than software imp
A thousand times yes.
The big fear that execs have is that without marketing having influence over the production process, they will pay to produce something that is then not wanted.
All the input from marketing that I've seen where I've worked has been utterly inane, with one exception. At one (small) company, the was a single marketing guy. He listened, waited until he understood the product, and asked whether particular solutions to problems that he knew people have could be included. Note that this is not "Add XML support", where he has a feature checklist, but a "can we provide some way for clients to migrate data from MySQL databases?" problem checklist. Marketing should never, ever, ever drive feature lists. They should provide lists of problems that customers want solved to their engineers, who then tell them which ones can be cheaply solved. Implementation has nothing whatsoever to do with marketing.
Actually, most of the things that are difficult to do in Windows are the things that Microsoft has decided should not be in the user's domain, such as second-guessing developers/content producers or obtaining technical data on their system.
The Linux-using contingent traditionally *has* liked to second-guess people and get whatever information they want, so they don't run into this.
My main beef is reliability.
I bought three DVDs last week, and all of them had some form of corruption (minor, skippable, but annoying). There's no reason to purchase DVDs when I can download DivXes from a larger selection, for free, get more reliable content, be able to skip what I want to skip, and so forth. The problem is that pirated content simply is more comfortable to use, ignoring even the cost issue.
I just use mplayer. If large companies want to produce products that can't skip sections of content that I don't really care about, there's not much reason for me to use their products.
But there are plenty of countries where mass killings *have* taken place that we have *not* intervened in.
You've got me, I'm definitely biased. I think Apple is the greatest thing since sliced bread.
That's not my point -- you are certainly entitled to be biased. We all are. The problem is that the &story submission*, which should be reasonably objective, is very heavy with bias. For example, I don't like Microsoft much. However, when I submitted a story about them, I kept it pretty factual and free of inflamatory content. I had plenty of nasty comments...but I stuck them down in the comments section, where they ought to be.
Actually, whitelisting is even dumber than SPF and won't work.
Used alone, it is extreme, though I know a number of people that happily use whitelisting in instant messaging environments.
The biggest use of whitelisting, however, would likely be in conjunction with other solid antispam methods.
See my comments to an earlier respondent to my post.