People don't become maniacs simply by having ideas about property rights that differ from yours.
...no, only by making a lifelong crusade of it, using the term "The Great Satan" to refer to people who have ideas about property rights that differ from his, and writing terrible songs about it.
"If programmers deserve to be rewarded for creating innovative programs, by the same token they deserve to be punished if they restrict the use of these programs."
-RMS "The GNU Manifesto"
BTW, I release my code into the public domain. Many programmers have been fed a lot of lies about liability and told things like "if you don't GPL it, proprietary companies can take it for themselves," without really thinking about what things like that mean. GPL is just the default by sheer publicity, no other license (much less the public domain) has a dedicated cadre of propagandists working for it. --
Which perhaps explains why they call it a "license".
In essense, a license is a waiver of prosecution. Essentially a binding statement "although what you are doing is a crime, we won't bother you about it." For example, driving a car on a public road is, by default, a criminal act, but your license makes you an exception to the rule.
The term "license agreement" has come to mean a contract granting some license, usually to copy software. To call it simply a "license" is misleading.
In particular, the so-called "General Public License" is a full-fledged contract (in theory... it may yet prove legally invalid), placing an eternal obligation on you to provide matching source code to any and all users to whom you distribute object code.
In contrast, a statement like "all are permitted to redistribute this work, in original or modified form, so long as they do not remove this notice, including the copyright notice and disclaimer" is a true public license. If someone removes the notice and redistributes it, they aren't breaking a contract, but doing something prohibited by default which they don't have permission for. There are no obligations imposed upon the distributor, it is just that the permission granted him is limited.
If the GPL was a license, it wouldn't be so restrictive. So let's not start saying licenses are restrictive by definition.
I've got that steaming pile of excrement right here, propping up my monitor to eye level. The major practical example? How to implement a stack.
In Perl, you want a stack? Use push and pop on an array. Want a queue? A deque? A shelf or scroll? Use shift and unshift too. It's all done in C, and faster than anything you can write yourself in a scripting language, even though it's all random access, too. In Python, you write a class, making sure you provide all the methods you will want to use with it, and carefully considering the performance issues of various methods, because you're working around a tremendously slow interpreter to make a basic data structure that should be built into every scripting language.
(incidentally, the multifunction list of Perl is probably my favorite feature, even over regexps and hashes; I use stacks and queues for everything, far more often than I use random-access arrays)
That's the impression I got from this book anyway. I was very enthusiastic about Python before I read Programming Python. To this date I don't know whether Python really only looks good until you actually try to use it, or I just got that feeling of utter hopelessness from the book. --
I believe that current probabilities that a strike will hit in the next decade or century are accurate for practical purposes. We calculate that there is well under a 0.1% chance of a catastrophic meteor strike in the next century. That's plenty good enough for me.
Since the odds are that viable human colonies will be created off-Earth, and technology will advance to the point of making asteroid defense simple, within the next century, I see little point in emphasizing immediate development of asteroid defense.
We're like a 6-year-old boy who has just realized that the oak tree next to his house might fall on it, and realized the possibility of figuring out when it will fall and cutting it down so it falls the other way. He isn't really capable of doing it yet, and when he grows up a little more, he'll take such problems in stride. If he's a halfway bright boy, he'll realize this is a problem for later, and from what he knows about oak trees, probably not an immediate threat, and he won't worry about it. --
we cannot determine exact odds. All we can say is that is it very unlikely
Since interplanetary ballistics is completely deterministic, if we had them catalogued, we could predict if and when they'd strike. Since we don't, we have to settle for calculating odds from the past and a relatively small sample of current data. In a deterministic system, either we have exact information, or we have probability based on sample data, we can't have exact probability. --
When I first started, it was a little painful, but I figured it had to be better than being painfully little. I was only hanging fishing weights from my wang, but I quickly increased the load (and needed higher chairs!).
Now I've had a special seat hung by thick steel cables between the Petronas Towers, from which I hang an oil tanker just inches from the ground. I'm doing it right now; I've got internet and everything up here. It feels wang-tastic.
It is a little-known fact that properly conditioned wang is the strongest material known to man, surpassing even carbon nanotubes.
Once day, I will be the first astronaut to double as a space elevator.
The chance that any object will collide with the Earth, however, is not calculable given the amount of data we possess about intrasolar/near extrasolar objects.
We can't predict specifically when these things will hit, but we have enough data to know the odds.
What do we know? There have been many millions of years between the big ones, and the rate continues to drop off as the millions of years pass, as there are a limited number of rocks and they can only fall on a planet once.
Consider where the technology will be in even a hundred years, and it doesn't look like there's much point in hurrying to figure out how to stop these things with current technology. --
It specifies conditions which are not appropriate to non-programs, such as requirements to distribute the source.
Applying it to a legal document is like applying a car warranty to a candy bar. Even if both sides agree to it, it doesn't make any damn sense, and won't mean a thing in court. --
2) Nobody has to state anything, they can change one line of code, and claim copyright. If they want their own code in the public domain, then they can explicitly state it is in the pd, otherwise they retain copyright over the whole caboodle.
A single line modification is not effectively copyrightable. Any use of such a small change is fair use. Claiming copyright on it would be a fraud against the people who are thus restricted from using it.
OTOH, adding 20 lines which significantly change the function of a program (such as fixing a bug) would enable the modifier to claim copyright on his change.
"This version of the software is crippled, restricted by license, and the source is unavailable. To get the freely redistributable full version, send $5."
I'm sure that single $5 sale will be very satisfying before nobody ever touches the crippled version again.
OTOH, depending on the type of game, you can GPL the engine and sell the data. --
A common justification for choosing an open source license, and putting up with all the license-compatibility issues, over simply releasing the code into the public domain is fear of litigation. Do you believe that the creator of public domain software (perfection disclaimed, use at own risk) is at any greater legal risk than the creator of open-source licensed software in the case of costly software failure? (I'm especially interested in any relevant precedent you are aware of) --
Well, I'll be damned...
on
Apocalypse 2
·
· Score: 1
Why couldn't I find this is the reference book the first time I looked?
Ruby looks better the more I look into it. I suppose I'll have to learn it after all...
Perhaps, once a civilization reaches a high enough level of development, its citizens become satisfied and cease interacting with the universe, like an enlightened yogi disappearing into his own navel.
In our case, this is happening with automated production and escapist entertainment. Once we have nanotechnology and perfect virtual reality, we will be able to trick ourselves into eternal happiness, and won't want to bother with anything else.
Any pleasure-driven intelligence which learns to satisfy its survival needs without effort will eventually just turn on its pleasure center and live in perfect contentment.
Not that it really makes a difference. They may be out there, but they don't want to be bothered. --
I suppose the headlined "read once, write never" memory is marginally better than the competing standard of Write Only Memory.
In all seriousness, do we really need to look at every one of these companies whose business is based on ignorance of the simple rule: "If I can see it or hear it, I can record it."? --
With a nice engraving of giant dirgible squids, and compliments on their wonderful microscopes for being able to see the markings.
That way, not only can we have a bunch of giant H-bombs floating in Jupiter's atmosphere to turn it into one huge H-bomb and wipe out their whole invading force in one trap, but we will be immune to their carefully tuned poke-pop technology (aside from the occasional blimp). --
Could the next one be designed "the Open Source Way"?
Ugh.
There is no source code to a language design, so the concept of open source simply does not apply. Can we please try to preserve some distinct denotative meaning in our words, and not just throw them in wherever we want to exploit their connotations?
Yet another top-level post accepted for being buzzword compliant. --
You forgot to mention the quantum-entanglement of a pair of dogs.
They must be created as structured pure energy, which spontaneously splits into a dog and anti-dog in a box and anti-box with a radioactive sample and radioactive anti-sample; all with identical traits down to a quantum level, guaranteeing identical behavior.
To keep them identical, they must be flash-frozen into "dogsicles" before delivery. However, the recipient must send back only whether he has checked that the dog is dead, or if it has thawed.
This is one of the many pair of dogsicle traits of quantum mechanics. --
The experiments have been done. For electrons the left polarizer is set at 45 degrees and the right one at zero degrees. A beam of, say, a billion electrons is measured to determine Number(right spin-up zero degrees, left spin-up 45 degrees). The polarizers are then set at 90 degrees/45 degrees, another billion electrons are measured, then the polarizers are set at 90 degrees/zero degrees for another billion electrons.
It's even dumber than I thought. They're not inferring C from A and B. They're taking a sample of A1~B1, then a seperate sample of B2~C2, and yet another sample A3~C3, and combining these entirely seperate numbers to find that A1~B1 + B2~C2 >= A3~C3 doesn't match up. This isn't remotely the same thing as A1~B1 + B1~C1 >= A1~C1 not matching up.
Ugh. Either this is just a terribly inaccurate explanation of the experiment, or someone needs to give these physicists a smack upside the head.
Anyone else remember how for years biologists consistently miscounted the number of chromosomes? --
Namely, that there is only one hidden variable for spin and it is an actual direction. A more complex hidden variable scheme, in which there is no relationship between measures of spin at 0 degrees, spin at 90 degrees, and spin at 45 degrees is unaffected.
Reading the spin at 0 degrees, and that at 45 degrees, they deduce the spin at 90 degrees, but is this deduction accurate? Only if spin is a simple matter of direction and magnitude. This is something untestable without quantum-entangled triplets at the least. --
Einstein hated the way people talk about this stuff, because he believed in the hidden variable explanation. This makes perfect sense without action at a distance if you imagine that the information exposed by reading was set at the time the particles became quantum entangled and carried by both particles all along.
The common explanation (the one taught in universities) is that the data of quantum state is created (purely randomly) at the moment it is read. Hence spooky action at a distance when you read one entangled particle, because it creates the same data in its partner, no matter how far away. The Einstein/hidden variable explanation is that the data is read from hidden variables (which are changed by the reading, in chaotic ways we don't have a model of, and so can't predict, thus creating apparently random new settings for the variables); there's no spooky action at a distance because "quantum entanglement" simply means that they somehow have the same hidden variable settings.
The justification for going with the spooky explanation is that it is "simpler" and thus preferable by Occam's Razor. To me, this is just bad philosophy, and a misunderstanding of the uses of Occam's Razor. For one thing, it throws out determinism, saying that not only are the reasons for things we can't predict hidden, but there are no reasons for them at all! For another, it tells people to stop looking for the hidden variables and the rules that create the apparently random values, because there are no hidden variables and quantum state is truly random.
It's not a difference in actual predicted results, it's a difference in philosophy. Einstein preferred the theory which admitted its gaps over the one that pretends things don't exists whenever you can't see them.
It's a common theme in his work: his theories suggest things beyond those fully predictable by his theories (such as black holes), thus spurring new research. If relativity was dominated by the same bad philosophy as quantum mechanics, it would claim that the interior (beyond the event horizon) of a black hole does not exist because we apparently can't observe it, just as it claims that the internal state of a quantum particle doesn't exist.
Favoring a "complete theory" is pure hubris, and has contributed to the stagnation of quantum theory.
Respect Einstein, give hidden variables a chance! --
People don't become maniacs simply by having ideas about property rights that differ from yours.
...no, only by making a lifelong crusade of it, using the term "The Great Satan" to refer to people who have ideas about property rights that differ from his, and writing terrible songs about it.
"If programmers deserve to be rewarded for creating innovative programs, by the same token they deserve to be punished if they restrict the use of these programs."
-RMS "The GNU Manifesto"
BTW, I release my code into the public domain. Many programmers have been fed a lot of lies about liability and told things like "if you don't GPL it, proprietary companies can take it for themselves," without really thinking about what things like that mean. GPL is just the default by sheer publicity, no other license (much less the public domain) has a dedicated cadre of propagandists working for it.
--
Which perhaps explains why they call it a "license".
In essense, a license is a waiver of prosecution. Essentially a binding statement "although what you are doing is a crime, we won't bother you about it." For example, driving a car on a public road is, by default, a criminal act, but your license makes you an exception to the rule.
The term "license agreement" has come to mean a contract granting some license, usually to copy software. To call it simply a "license" is misleading.
In particular, the so-called "General Public License" is a full-fledged contract (in theory... it may yet prove legally invalid), placing an eternal obligation on you to provide matching source code to any and all users to whom you distribute object code.
In contrast, a statement like "all are permitted to redistribute this work, in original or modified form, so long as they do not remove this notice, including the copyright notice and disclaimer" is a true public license. If someone removes the notice and redistributes it, they aren't breaking a contract, but doing something prohibited by default which they don't have permission for. There are no obligations imposed upon the distributor, it is just that the permission granted him is limited.
If the GPL was a license, it wouldn't be so restrictive. So let's not start saying licenses are restrictive by definition.
(IANAL,IAABT)
--
Words should not be used as delimiters of any kind.
--
I've got that steaming pile of excrement right here, propping up my monitor to eye level. The major practical example? How to implement a stack.
In Perl, you want a stack? Use push and pop on an array. Want a queue? A deque? A shelf or scroll? Use shift and unshift too. It's all done in C, and faster than anything you can write yourself in a scripting language, even though it's all random access, too. In Python, you write a class, making sure you provide all the methods you will want to use with it, and carefully considering the performance issues of various methods, because you're working around a tremendously slow interpreter to make a basic data structure that should be built into every scripting language.
(incidentally, the multifunction list of Perl is probably my favorite feature, even over regexps and hashes; I use stacks and queues for everything, far more often than I use random-access arrays)
That's the impression I got from this book anyway. I was very enthusiastic about Python before I read Programming Python. To this date I don't know whether Python really only looks good until you actually try to use it, or I just got that feeling of utter hopelessness from the book.
--
While we're saying exactly what we mean...
I believe that current probabilities that a strike will hit in the next decade or century are accurate for practical purposes. We calculate that there is well under a 0.1% chance of a catastrophic meteor strike in the next century. That's plenty good enough for me.
Since the odds are that viable human colonies will be created off-Earth, and technology will advance to the point of making asteroid defense simple, within the next century, I see little point in emphasizing immediate development of asteroid defense.
We're like a 6-year-old boy who has just realized that the oak tree next to his house might fall on it, and realized the possibility of figuring out when it will fall and cutting it down so it falls the other way. He isn't really capable of doing it yet, and when he grows up a little more, he'll take such problems in stride. If he's a halfway bright boy, he'll realize this is a problem for later, and from what he knows about oak trees, probably not an immediate threat, and he won't worry about it.
--
we cannot determine exact odds. All we can say is that is it very unlikely
Since interplanetary ballistics is completely deterministic, if we had them catalogued, we could predict if and when they'd strike. Since we don't, we have to settle for calculating odds from the past and a relatively small sample of current data. In a deterministic system, either we have exact information, or we have probability based on sample data, we can't have exact probability.
--
When I first started, it was a little painful, but I figured it had to be better than being painfully little. I was only hanging fishing weights from my wang, but I quickly increased the load (and needed higher chairs!).
Now I've had a special seat hung by thick steel cables between the Petronas Towers, from which I hang an oil tanker just inches from the ground. I'm doing it right now; I've got internet and everything up here. It feels wang-tastic.
It is a little-known fact that properly conditioned wang is the strongest material known to man, surpassing even carbon nanotubes.
Once day, I will be the first astronaut to double as a space elevator.
(this post is dedicated to Penny Arcade)
--
The chance that any object will collide with the Earth, however, is not calculable given the amount of data we possess about intrasolar/near extrasolar objects.
We can't predict specifically when these things will hit, but we have enough data to know the odds.
What do we know? There have been many millions of years between the big ones, and the rate continues to drop off as the millions of years pass, as there are a limited number of rocks and they can only fall on a planet once.
Consider where the technology will be in even a hundred years, and it doesn't look like there's much point in hurrying to figure out how to stop these things with current technology.
--
It specifies conditions which are not appropriate to non-programs, such as requirements to distribute the source.
Applying it to a legal document is like applying a car warranty to a candy bar. Even if both sides agree to it, it doesn't make any damn sense, and won't mean a thing in court.
--
2) Nobody has to state anything, they can change one line of code, and claim copyright. If they want their own code in the public domain, then they can explicitly state it is in the pd, otherwise they retain copyright over the whole caboodle.
A single line modification is not effectively copyrightable. Any use of such a small change is fair use. Claiming copyright on it would be a fraud against the people who are thus restricted from using it.
OTOH, adding 20 lines which significantly change the function of a program (such as fixing a bug) would enable the modifier to claim copyright on his change.
(IANAL)
--
Just because they claim the document is GPL'd doesn't make this an open source legal issue.
Incidentally, I don't think the GPL (which is quite clearly a compiled computer program license) can apply to such a document.
--
Hmm... I can just see the nag screen.
"This version of the software is crippled, restricted by license, and the source is unavailable. To get the freely redistributable full version, send $5."
I'm sure that single $5 sale will be very satisfying before nobody ever touches the crippled version again.
OTOH, depending on the type of game, you can GPL the engine and sell the data.
--
A common justification for choosing an open source license, and putting up with all the license-compatibility issues, over simply releasing the code into the public domain is fear of litigation. Do you believe that the creator of public domain software (perfection disclaimed, use at own risk) is at any greater legal risk than the creator of open-source licensed software in the case of costly software failure? (I'm especially interested in any relevant precedent you are aware of)
--
Why couldn't I find this is the reference book the first time I looked?
Ruby looks better the more I look into it. I suppose I'll have to learn it after all...
Those "end"s have to go, though.
--
Ruby lacks some key features. One example is inline data (multiline strings).
Ruby's string handling is inferior to Perl's in other ways, too. It's a nice language in many ways, but it's not really a replacement for Perl.
--
Perhaps, once a civilization reaches a high enough level of development, its citizens become satisfied and cease interacting with the universe, like an enlightened yogi disappearing into his own navel.
In our case, this is happening with automated production and escapist entertainment. Once we have nanotechnology and perfect virtual reality, we will be able to trick ourselves into eternal happiness, and won't want to bother with anything else.
Any pleasure-driven intelligence which learns to satisfy its survival needs without effort will eventually just turn on its pleasure center and live in perfect contentment.
Not that it really makes a difference. They may be out there, but they don't want to be bothered.
--
Yep, just look at the last few years: Napster, Gnutella, Freenet. We're definitely moving away from the free exchange of computer data.
("Andre creep, Andre creep...")
--
I suppose the headlined "read once, write never" memory is marginally better than the competing standard of Write Only Memory.
In all seriousness, do we really need to look at every one of these companies whose business is based on ignorance of the simple rule: "If I can see it or hear it, I can record it."?
--
With a nice engraving of giant dirgible squids, and compliments on their wonderful microscopes for being able to see the markings.
That way, not only can we have a bunch of giant H-bombs floating in Jupiter's atmosphere to turn it into one huge H-bomb and wipe out their whole invading force in one trap, but we will be immune to their carefully tuned poke-pop technology (aside from the occasional blimp).
--
I see.
[Okay boys, they want to go that-a-way, so that's where to install the curving runway to herd them into our pen.]
--
Could the next one be designed "the Open Source Way"?
Ugh.
There is no source code to a language design, so the concept of open source simply does not apply. Can we please try to preserve some distinct denotative meaning in our words, and not just throw them in wherever we want to exploit their connotations?
Yet another top-level post accepted for being buzzword compliant.
--
You forgot to mention the quantum-entanglement of a pair of dogs.
They must be created as structured pure energy, which spontaneously splits into a dog and anti-dog in a box and anti-box with a radioactive sample and radioactive anti-sample; all with identical traits down to a quantum level, guaranteeing identical behavior.
To keep them identical, they must be flash-frozen into "dogsicles" before delivery. However, the recipient must send back only whether he has checked that the dog is dead, or if it has thawed.
This is one of the many pair of dogsicle traits of quantum mechanics.
--
The experiments have been done. For electrons the left polarizer is set at 45 degrees and the right one at zero degrees. A beam of, say, a billion electrons is measured to determine Number(right spin-up zero degrees, left spin-up 45 degrees). The polarizers are then set at 90 degrees/45 degrees, another billion electrons are measured, then the polarizers are set at 90 degrees/zero degrees for another billion electrons.
It's even dumber than I thought. They're not inferring C from A and B. They're taking a sample of A1~B1, then a seperate sample of B2~C2, and yet another sample A3~C3, and combining these entirely seperate numbers to find that A1~B1 + B2~C2 >= A3~C3 doesn't match up. This isn't remotely the same thing as A1~B1 + B1~C1 >= A1~C1 not matching up.
Ugh. Either this is just a terribly inaccurate explanation of the experiment, or someone needs to give these physicists a smack upside the head.
Anyone else remember how for years biologists consistently miscounted the number of chromosomes?
--
Namely, that there is only one hidden variable for spin and it is an actual direction. A more complex hidden variable scheme, in which there is no relationship between measures of spin at 0 degrees, spin at 90 degrees, and spin at 45 degrees is unaffected.
Reading the spin at 0 degrees, and that at 45 degrees, they deduce the spin at 90 degrees, but is this deduction accurate? Only if spin is a simple matter of direction and magnitude. This is something untestable without quantum-entangled triplets at the least.
--
Einstein hated the way people talk about this stuff, because he believed in the hidden variable explanation. This makes perfect sense without action at a distance if you imagine that the information exposed by reading was set at the time the particles became quantum entangled and carried by both particles all along.
The common explanation (the one taught in universities) is that the data of quantum state is created (purely randomly) at the moment it is read. Hence spooky action at a distance when you read one entangled particle, because it creates the same data in its partner, no matter how far away. The Einstein/hidden variable explanation is that the data is read from hidden variables (which are changed by the reading, in chaotic ways we don't have a model of, and so can't predict, thus creating apparently random new settings for the variables); there's no spooky action at a distance because "quantum entanglement" simply means that they somehow have the same hidden variable settings.
The justification for going with the spooky explanation is that it is "simpler" and thus preferable by Occam's Razor. To me, this is just bad philosophy, and a misunderstanding of the uses of Occam's Razor. For one thing, it throws out determinism, saying that not only are the reasons for things we can't predict hidden, but there are no reasons for them at all! For another, it tells people to stop looking for the hidden variables and the rules that create the apparently random values, because there are no hidden variables and quantum state is truly random.
It's not a difference in actual predicted results, it's a difference in philosophy. Einstein preferred the theory which admitted its gaps over the one that pretends things don't exists whenever you can't see them.
It's a common theme in his work: his theories suggest things beyond those fully predictable by his theories (such as black holes), thus spurring new research. If relativity was dominated by the same bad philosophy as quantum mechanics, it would claim that the interior (beyond the event horizon) of a black hole does not exist because we apparently can't observe it, just as it claims that the internal state of a quantum particle doesn't exist.
Favoring a "complete theory" is pure hubris, and has contributed to the stagnation of quantum theory.
Respect Einstein, give hidden variables a chance!
--