Nobody, but how can the community improve on their work?
The community can improve on the open projects work.
If the closed-source one just maintains a fork, then they are at a disadvantage, relatively to the opensource projects which have to put in less effort.
And what incentive would they have to keep it closed, anyhow?
There is no meaning to the world "morals" out of context.
If we have different goals, then our moral systems will be different. If they coincide in the important things, there's no problem. But if they conflict in them, then I might have to fight you to preserve my goals.
I don't see what the problem is, or why people think that morals have anything "absolute" about them.
As long as software is needed by the market, it will be created by it.
Without copyrights, the incentive to make it closed will go away, so simply more opensource programmers will be paid to do opensource work.
This phenomena already exists. Not all opensource developers depend on closed-source for income, and the many who do would not depend on it if copyrights were abolished.
So if someone's arbitrary goal was maximizing human misery, then actions that furthered that goal would good for them?
Yes. That would be their moral set, and it would be inconsistent with most everyone else.
By your definition, the perpetrators of the Holocaust were acting morally, since one of their ultimate goals was the extermination of the Jews.
Again, by their set of morals, yes. Their set of morals contradicted that of most of the rest of the world - which was good enough reason to go to war with them.
So muslim terrorists whose ultimate goal is that everyone alive believe as they do are behaving morally by killing anyone who does not believe as they do?
Again, their morals contradict ours - and we should thus fight them until they don't. (They don't have to have the same morals, just not contradict ours).
"The arbitrary goal, in this case is one of a few (different people have different such goals): * Maximizing personal happiness * Maximizing humans' happiness * Maximizing all living creatures happiness, with more emphasis on animals closer to humans (Vegeterians hold these morals)." What makes these goals better than others?
The fact that I (or most of us, doesn't matter) hold them and am willing to fight for them. Its of course arbitrary and subjective. It doesn't make it less important, because importance itself is subjective.
Software for gaming consoles is protected by copyright and must be bought. Very much an incentive to close it.
Why would it remain closed if everyone can copy that software, and closed-source software makers have no financial advantage over their open-source competitors?
Of course some goal, at some point, will be arbitrary.
Morals, though, are not that arbitrary goal, but an intermediate set of goals, serving as a means for the arbitrary goal.
The arbitrary goal, in this case is one of a few (different people have different such goals):
Maximizing personal happiness
Maximizing humans' happiness
Maximizing all living creatures happiness, with more emphasis on animals closer to humans (Vegeterians hold these morals).
So, the question if something is right/good or wrong/bad, is simply a question of whether it helps achieve the ultimate, arbitrary goal.
In the case of RMS, he believes that to maximize humans' happiness, one needs to make sure those humans that use software have those freedoms. By creating a license that helps achieve that goal, he is acting in accordance with these morals.
If you abolish copyrights, Microsoft's business model collapses.
Microsoft may become a hardware company, in which case they have an incentive to use the opensource software. In such a case they may close the software - but they have little incentive to. Anyone will be allowed to redistribute their software and create compatible hardware. Not only that, but competing hardware companies that do open their source will be more successful than Microsoft at developing software, because they will get contributions back from the community.
The conclusion is:
No software companies will remain in their current form. Some may sell software directly to requirement specfiers, akin to today's "in-house" software. They will not become huge monopolies.
Those that do distribute closed-source software will have no way to make a profit from such software, and thus no incentive to close it.
Those that do distribute closed-source software will be unable to compete with those that distribute open-source software, and get enhancements back from the community.
While I agree they did a very good job on Copyright, the article does not suggest they were geniuses.
The optimal copyright term is based on parameters of the time period. If I understand the article correctly, they suggest that in today's parameters, the optimal term is 14 years.
Also, the Founding Fathers set the term to 28 years (you just had to prolong a 14 year period to actually use the second 14 year term).
But on other hardware, Windows installed fine, and Feisty Fawn did not detect the sound card and the wifi connection kept dropping. Documentation for that wifi card/driver on Debian said you probably need to use a cvs snapshot of the wifi driver for stability.
Its hard to have an objective comparison of what works out of the box (as that would require a study of lots of hardware). But as for objective analysis, the Ubuntu install is definitely superior (Based on a live-cd, where you can already start working, as it is installing, with to-the-point questions, etc).
Isn't the Cert Authority supposed to have a public key known to the clients?
I would assume that part of the certificate, signed by the authority, is the public key of whatever website you are visiting. In that case, the ISP cannot:
Forge the certificate: as the client knows the public key of the certificate authority, so the ISP can only use legitimate certificates, and not modify them.
Eaves-drop or modify the other connection, as the public key used to talk to the certified host should be in the certificate, so the ISP cannot forge data from that host either.
I may be wrong, as I do not know what actually lies in those certificates, but it sounds as though the above would solve any such problem, without having to use secure DNS's. (A secure DNS would probably do little to help here, as they control your routing too, and can reroute IP addresses whereever).
Don't secure the communication to end-points, just secure/sign the data itself, with keys that are signed in a chain up to a public key you can trust. That way, you don't care what endpoint (www.chase.com or your ISP) the data came from - just that the data was signed by a trusted entity.
You can also use the functions the sibling comment suggests to create your own macro saver (I had one that saved my macros into my emacs folder in saved-macros.el).
Also, there's an emacs extension called "better-registers". Better registers allow assignment of keyboard macros into "registers". Registers are basically variables that are assigned to keyboard keys. So you can assign a macro, string, number, or whatever into a variable associated with a key, and then perform operations on that variable (increase number, run macro) via shortcut keys. Its also pretty useful for keyboard macros (as you can have an increasing number, etc inside a macro).
It boils down to all software being BSD-like in its distribution restrictions (i.e: No restrictions). However the situation will be much closer to a GPL world one, because the incentive to create closed software that you cannot sell will approximate nil. Closed-source's single advantage over opensource - its ability to raise disproportionate funds for its development will disappear and opensource software will simply outachieve it.
A lot of posters here mentioned that limiting porting Free Software to non-free OS's (Windows) is impossible, because if the authors won't do it, someone else will.
What about a special license to do so?
A license that:
Disallows the distribution of binaries that can only run on non-free systems.
Disallows distribution of the source with adaptations only useful for running on a non-free system.
This could restore the "killer apps" incentive to move to a Free OS.
You misspelled "which they were desperately trying to slow down", as the Apple was much more advanced (about 10 years ahead) and Microsoft, via OEM deals and some luck, managed to sell everyone technology that is 10 years behind the state of the art.
I think you've been buried in the sand for a while. Linux is being used in the real-world quite a lot these days. It is already the corporate desktop of choice in various firms, its one of the dominant players in the server market, and perhaps the most dominant player in the embedded market.
I like your tone. I'm used to getting barked at when I go against the grain. The reason for the API regarding drivers is hardware support. We can hold our breath until we turn blue, but propriety drivers *are* currently a reality. The kernel developers have made a choice not to support this, but while in the short-term, idealism may seem to be the winner, the fact is non-religious users would be the loser. Choice, in fact, is the loser.
I think it seems like "idealism" at first sight. But it is quite a pragmatic view if you consider it more thouroughly. Closed-source drivers are not just damaging our abstract conceptual "freedom", they truly make thing harder. They make it harder to fix problems and improve the system. They harm Linux in many more direct ways than just the abstract "freedom" reduction. Discouraging non-free drivers has really prevented many closed drivers from reaching Linux, but this resulted in more open-source drivers, and in a more efficient model, that can even break compatibility where its worth the gains, once in a while. Its a pragmatic win, not an idealistic one. And the "ideal" seems to be winning too, in the long-term. Hardware support is better than ever, and there still are very few closed-source drivers.
As for installing/burning you seem to kind of be heading in the same direction. People pay me to make their systems work. So in a way, it's my job to see to it that regular users have an optimal (acceptable by todays standards..) experience. If I gave a user blank hardware and a URL I would out of a job quicker then anything. Hell, I'd fire myself. I don't think it's so much ideal. People expect things these days and I have to say, I don't think it's that unreasonable.
Don't give them blank hardware, give them Linux-installed hardware, ofcourse. But as far as installers go, Linux has done a great job and is now truly easier than a Windows install. The main improvement still lacking is an installer than can run on top of Windows so it only involves a few clicks/reboots from Windows to install Linux.
Registery vs. text files.. if only it were that simple. The fact is, when I *HAVE* to work on the registry for a Windows user, it's because something has really gone wrong. They need me and that's fine, that's what I get paid for. But day to day use? No. Linux?..yes. There is no good equivalent to the control panel when using Linux. There have been some interesting attempts. But nothing that so clearly masks the complexity of a computer. Users aren't stupid, they just don't want to have to know how to do some things (I can't work on a car to save my life, I don't have unlimited time to learn things that are not going to be my focus).
I disagree with your statement that "something has really gone wrong". I encountered many situations where the recommended step was editing the registry. With minor problems and less common features I wanted to activate. I haven't used Windows in a while so I can't recall the exact changes, but I can work to get specific examples. Its pretty much the same with Linux, you edit text files when the GUI tools are either broken, or you are doing something extraordinary.
As for the control panel, there's the KDE control center (and surely a Gnome equivalent). I am not sure how it is not "truly" like the Control Panel. I think it lets you control even more aspects than the Windows control panel. Have you tried it?
KDE. I do love KDE. Just not *that* much. What I said was comprehensive and that is well beyond KDE's scope. A GUI should feel like the only available layer. It defines the operating system. Who cares if its not true? It should work and feel that way to people who don't want to get in and muck around. In the end the operating system is a tool, today, it's expected to be a graphics tool. Ordinary users don't care that you can create amazingly useful perl/bash/python/csh scripts. Their
1a)what if people don't want to share bandwidth or just some specific content? At one end, you have the freenet solution where you either share or don't use it (with that driving people away), at the other, there is another huge administrative issue for anyone who wants to manage what they share (which also will serve to drive people away).
The idea is that the "network stack" would implement this not just in end-points but in the network infrastructure as well. Routers and peers alike.
Today you already have questions such as: What if somebody will modify his TCP stack to use more aggressive retransmitting and waste everybody's bandwidth?
There's already an issue of being a "good netizen" and this makes it a bit more of an issue.
Routers/etc are already trusted to be good netizens and are paid to be so.
1b) slow as hell - even non anonymous protocols that handle the search like gnutella are pretty slow and finding stuff, and getting the actual transfer setup. bittorrent is slightly better, but there's still the overhead time of the out of band/protocol search. Metalinks might solve this however. I just worry that for most data, by the time a torrent got started, you'll have loaded the page over HTTP... Unless he's just suggesting squid style proxies, which have all of their own caching problems.
If I didn't make it clear in my summary, he does make it clear: He is not proposing "caching". Caching is merely an approximation for what he is suggesting. "Searches" would still be the domain of search engines and such. The mapping between "keywords" or "generic names" and a specific "label" (which is a uniquely identified immutable piece of data you can get from anywhere) can be done by querying central search servers, asking nearby routers, or a "domain name server" equivalent. It does not have to be a "search network" like gnutella. The only thing it must be, is crypto-signed to verify the link between the query and the data is indeed done by those who made the data, or someone you trust with categorizing it.
2) Do people want to share their resources? Sometimes, but not everyone.
See reply about good netizens.
3) Why is copyright considered a bogus question? I'm sorry, but with the current way the MAFIAA is working, I can already smell the lawsuits.
The "Bogus questions" is simply my addition (for purposes of the Enough project), and wasn't at all mentioned in the talk.
I believe it is bogus because it is legal and not technical, and because routers already duplicate information. If they also store it, its a mere technical difference.
The GPL would be invalid, but it would also be unnecessary.
Without copyright, the incentive to create and control closed-source software will sharply drop. With this drop in incentive, the only edge closed-source developers currently have (financial resources to pay developers) will disappear, and it would become irrelevant.
Openness will become the norm simply because its a more efficient development model, once no money is to be made with closed-source software.
I thought I was going to skim through that video when I first saw it a while ago. Then I started watching, and at some point noticed I watched the whole thing, without skipping anything. I think he gives a good talk, and it kept me interested the whole way.
Its a very nice insight he has there, too bad it flies way over Slashdotters head (well, its just that almost all of them probably didn't even read the whole thing).
By the way, I summarized his ideas (as I understood them, which may not be the same as he explained them).
You are joking, right?
Just recently - tried to add second head monitor - In windows Go Display/preferences/check button.
In Ubuntu - edit cryptic config files, several not working config utilities, nothing remotely resembling windows config panel in functionality.
Generally parent post is clear example of Linux inferiority complex.
You realize this is a video driver issue in both Linux and Windows? I did the same, and just clicked "nvidia settings", and it has a real nice GUI of what to do with my other monitors (should they overlap, be side-by-side, etc).
Windows offers this through a video driver interface and not a built-in interface as well.
In any case, I am not sure how "common" a task this is, but its already got GUI's for the most prominent video hardware.
Threading is used in GUI's so that redraws and responding to the user can still take place while it's processing the user's last command or commands. This is how "incompetent engineers" for the Win32 and Java platforms do it, at least. What pray tell are the "far simpler approaches"?
The far-simpler approach is to use asynchronous programming. Never use blocking API calls. All good API's always provide non-blocking interfaces. If long computations are required, split them up into short computations and run the short computations asynchronously from the reactor (event loop).
And how do you write a program that hosts plug-in executable code, to check whether it will hang its host, without the "unnecessary complication" of another thread of execution, either in the program itself, or in another process, watching it?
Firstly, a process is not a thread. It is much safer and cannot cause another process's exit to hang or overwrite its memory/etc. Secondly, I would explicitly declare the interface the plugin must adhere to, and verify that it does, rather than just trying IUknown and watch it for "hanging" via a timeout heuristic.
Nobody, but how can the community improve on their work?
The community can improve on the open projects work.
If the closed-source one just maintains a fork, then they are at a disadvantage, relatively to the opensource projects which have to put in less effort.
And what incentive would they have to keep it closed, anyhow?
There is no meaning to the world "morals" out of context.
If we have different goals, then our moral systems will be different. If they coincide in the important things, there's no problem. But if they conflict in them, then I might have to fight you to preserve my goals.
I don't see what the problem is, or why people think that morals have anything "absolute" about them.
As long as software is needed by the market, it will be created by it.
Without copyrights, the incentive to make it closed will go away, so simply more opensource programmers will be paid to do opensource work.
This phenomena already exists. Not all opensource developers depend on closed-source for income, and the many who do would not depend on it if copyrights were abolished.
I am saying that morals are subjective, and yet that that doesn't make them unimportant.
According to my morals, it is clear who is right, and that is not always who is stronger.
According to someone else, other people are right.
People like to believe in absolute morals, but its silly. Morals stem from the arbitrary goals we define.
Yes. That would be their moral set, and it would be inconsistent with most everyone else.
Again, by their set of morals, yes. Their set of morals contradicted that of most of the rest of the world - which was good enough reason to go to war with them.
Again, their morals contradict ours - and we should thus fight them until they don't. (They don't have to have the same morals, just not contradict ours).
The fact that I (or most of us, doesn't matter) hold them and am willing to fight for them.
Its of course arbitrary and subjective. It doesn't make it less important, because importance itself is subjective.
Huh?
Software for gaming consoles is protected by copyright and must be bought. Very much an incentive to close it.
Why would it remain closed if everyone can copy that software, and closed-source software makers have no financial advantage over their open-source competitors?
Morals, though, are not that arbitrary goal, but an intermediate set of goals, serving as a means for the arbitrary goal.
The arbitrary goal, in this case is one of a few (different people have different such goals):
- Maximizing personal happiness
- Maximizing humans' happiness
- Maximizing all living creatures happiness, with more emphasis on animals closer to humans (Vegeterians hold these morals).
So, the question if something is right/good or wrong/bad, is simply a question of whether it helps achieve the ultimate, arbitrary goal.In the case of RMS, he believes that to maximize humans' happiness, one needs to make sure those humans that use software have those freedoms. By creating a license that helps achieve that goal, he is acting in accordance with these morals.
Microsoft may become a hardware company, in which case they have an incentive to use the opensource software. In such a case they may close the software - but they have little incentive to. Anyone will be allowed to redistribute their software and create compatible hardware.
Not only that, but competing hardware companies that do open their source will be more successful than Microsoft at developing software, because they will get contributions back from the community.
The conclusion is:
While I agree they did a very good job on Copyright, the article does not suggest they were geniuses.
The optimal copyright term is based on parameters of the time period. If I understand the article correctly, they suggest that in today's parameters, the optimal term is 14 years.
Also, the Founding Fathers set the term to 28 years (you just had to prolong a 14 year period to actually use the second 14 year term).
But if that were true, why is there such a strong correlation between the parties and use of opensource servers?
and I have had similar experiences too.
But on other hardware, Windows installed fine, and Feisty Fawn did not detect the sound card and the wifi connection kept dropping. Documentation for that wifi card/driver on Debian said you probably need to use a cvs snapshot of the wifi driver for stability.
Its hard to have an objective comparison of what works out of the box (as that would require a study of lots of hardware). But as for objective analysis, the Ubuntu install is definitely superior (Based on a live-cd, where you can already start working, as it is installing, with to-the-point questions, etc).
I would assume that part of the certificate, signed by the authority, is the public key of whatever website you are visiting. In that case, the ISP cannot:
I may be wrong, as I do not know what actually lies in those certificates, but it sounds as though the above would solve any such problem, without having to use secure DNS's. (A secure DNS would probably do little to help here, as they control your routing too, and can reroute IP addresses whereever).
Don't secure the communication to end-points, just secure/sign the data itself, with keys that are signed in a chain up to a public key you can trust. That way, you don't care what endpoint (www.chase.com or your ISP) the data came from - just that the data was signed by a trusted entity.
You can also use the functions the sibling comment suggests to create your own macro saver (I had one that saved my macros into my emacs folder in saved-macros.el).
Also, there's an emacs extension called "better-registers". Better registers allow assignment of keyboard macros into "registers". Registers are basically variables that are assigned to keyboard keys. So you can assign a macro, string, number, or whatever into a variable associated with a key, and then perform operations on that variable (increase number, run macro) via shortcut keys. Its also pretty useful for keyboard macros (as you can have an increasing number, etc inside a macro).
It boils down to all software being BSD-like in its distribution restrictions (i.e: No restrictions). However the situation will be much closer to a GPL world one, because the incentive to create closed software that you cannot sell will approximate nil. Closed-source's single advantage over opensource - its ability to raise disproportionate funds for its development will disappear and opensource software will simply outachieve it.
Using his example:
Instead, use:
advance_bullet_position();
find_bullet_collisions();
check_bullet_path_end();
What about a special license to do so?
A license that:
This could restore the "killer apps" incentive to move to a Free OS.
You misspelled "which they were desperately trying to slow down", as the Apple was much more advanced (about 10 years ahead) and Microsoft, via OEM deals and some luck, managed to sell everyone technology that is 10 years behind the state of the art.
I think you've been buried in the sand for a while. Linux is being used in the real-world quite a lot these days. It is already the corporate desktop of choice in various firms, its one of the dominant players in the server market, and perhaps the most dominant player in the embedded market.
Its not enough to be better. It has to come pre-installed.
In fact, being better has nothing to do with it. It has to come pre-installed.
I think it seems like "idealism" at first sight. But it is quite a pragmatic view if you consider it more thouroughly. Closed-source drivers are not just damaging our abstract conceptual "freedom", they truly make thing harder. They make it harder to fix problems and improve the system. They harm Linux in many more direct ways than just the abstract "freedom" reduction.
Discouraging non-free drivers has really prevented many closed drivers from reaching Linux, but this resulted in more open-source drivers, and in a more efficient model, that can even break compatibility where its worth the gains, once in a while. Its a pragmatic win, not an idealistic one. And the "ideal" seems to be winning too, in the long-term. Hardware support is better than ever, and there still are very few closed-source drivers.
Don't give them blank hardware, give them Linux-installed hardware, ofcourse. But as far as installers go, Linux has done a great job and is now truly easier than a Windows install. The main improvement still lacking is an installer than can run on top of Windows so it only involves a few clicks/reboots from Windows to install Linux.
I disagree with your statement that "something has really gone wrong". I encountered many situations where the recommended step was editing the registry. With minor problems and less common features I wanted to activate. I haven't used Windows in a while so I can't recall the exact changes, but I can work to get specific examples.
Its pretty much the same with Linux, you edit text files when the GUI tools are either broken, or you are doing something extraordinary.
As for the control panel, there's the KDE control center (and surely a Gnome equivalent). I am not sure how it is not "truly" like the Control Panel. I think it lets you control even more aspects than the Windows control panel. Have you tried it?
The idea is that the "network stack" would implement this not just in end-points but in the network infrastructure as well.
Routers and peers alike.
Today you already have questions such as: What if somebody will modify his TCP stack to use more aggressive retransmitting and waste everybody's bandwidth?
There's already an issue of being a "good netizen" and this makes it a bit more of an issue.
Routers/etc are already trusted to be good netizens and are paid to be so.
If I didn't make it clear in my summary, he does make it clear: He is not proposing "caching". Caching is merely an approximation for what he is suggesting. "Searches" would still be the domain of search engines and such. The mapping between "keywords" or "generic names" and a specific "label" (which is a uniquely identified immutable piece of data you can get from anywhere) can be done by querying central search servers, asking nearby routers, or a "domain name server" equivalent. It does not have to be a "search network" like gnutella. The only thing it must be, is crypto-signed to verify the link between the query and the data is indeed done by those who made the data, or someone you trust with categorizing it.
See reply about good netizens.
The "Bogus questions" is simply my addition (for purposes of the Enough project), and wasn't at all mentioned in the talk.
I believe it is bogus because it is legal and not technical, and because routers already duplicate information. If they also store it, its a mere technical difference.
The GPL would be invalid, but it would also be unnecessary.
Without copyright, the incentive to create and control closed-source software will sharply drop. With this drop in incentive, the only edge closed-source developers currently have (financial resources to pay developers) will disappear, and it would become irrelevant.
Openness will become the norm simply because its a more efficient development model, once no money is to be made with closed-source software.
Closed-source will lose by default.
Even more secretive than "you cannot touch it, reverse-engineer it, and if you ever see it you're NDA'd to hell"? :-)
I don't think you can be more protective of source code than they are today.
I thought I was going to skim through that video when I first saw it a while ago.
Then I started watching, and at some point noticed I watched the whole thing, without skipping anything.
I think he gives a good talk, and it kept me interested the whole way.
Its a very nice insight he has there, too bad it flies way over Slashdotters head (well, its just that almost all of them probably didn't even read the whole thing).
By the way, I summarized his ideas (as I understood them, which may not be the same as he explained them).
You realize this is a video driver issue in both Linux and Windows?
I did the same, and just clicked "nvidia settings", and it has a real nice GUI of what to do with my other monitors (should they overlap, be side-by-side, etc).
Windows offers this through a video driver interface and not a built-in interface as well.
In any case, I am not sure how "common" a task this is, but its already got GUI's for the most prominent video hardware.
The far-simpler approach is to use asynchronous programming. Never use blocking API calls. All good API's always provide non-blocking interfaces.
If long computations are required, split them up into short computations and run the short computations asynchronously from the reactor (event loop).
Firstly, a process is not a thread. It is much safer and cannot cause another process's exit to hang or overwrite its memory/etc. Secondly, I would explicitly declare the interface the plugin must adhere to, and verify that it does, rather than just trying IUknown and watch it for "hanging" via a timeout heuristic.