IP addresses have always been tracable. Believe me. I've been on both end and the middle of such traces.
So, there's a way that the authorities could trace some offence back to you if you committed it over a link from an Internet cafe that you paid for in cash?
Once you have considered the unspoken assumptions in your wording, you may have reason to re-consider my statement that there are other ways of living, prioritizing and evaluating the success of one's life than the way which makes ever-increasing efficiency its final solution.
Residential water use is usually so close to constant that charging by the gallon (or whatever unit they use - one place I know charges by the "block", and everyone generally uses three-four per month) is likely a waste of time, when you consider all the effort required to determine who is using what.
The point of metered water charging is not to make the system fairer or anything like that -- it is to discourage people from wasting water.
Given the number of people who took measures to reduce their water usage (like placing bricks in the cisterns of their toilets) when it was introduced in the UK about 10 years ago, I'd say it probably works.
[Parent equates windows tax with a DirectX royalty that would be charged to a game developer]
Fine. But this applies to any game that is developed to run on Windows, and is not DirectX specific. Sorry to burst your bubble, but Windows is the most popular platform (other than consoles) for gamers because most games are released first (and frequently only) under Windows. Therefore, as a game developer, it makes a certain kind of sense to primarily target Windows... therefore the 'tax' is already paid, so what does it matter which library you're using?
My end users (who have Windows 2000 or XP, as that is the required minimum system I develop for) have already paid Microsoft royalties[1]. Therefore running the DirectX setup that I am permitted to redistribute to them costs them nothing.
[1]: Or they're happy with their pirated versions. If that suit's them, I'm not complaining, because it doesn't cost me anything.
# Chief executives at U.S. companies that shipped jobs overseas won a 46 percent pay hike last year [...] # average compensation for chief executives at the top 50 outsourcing companies was $10.4 million last year
These numbers are meaningless without the corresponding figures for companies that didn't outsource.
What's your source for that? Concise Oxford mentions your definitions 3 and 4 but warns that they are disputed (i.e., you should normally avoid using them because many people won't understand what you meant).
His networking idea might also bear out a new programming model
I've come across researchers in massively parallel systems using remarkably similar ideas -- you take an array of very simple components and connect them in order to form a system that does what you want. ISTR seeing solutions for linear time sorting -- of course, you need 1 processing element per item you want to sort which is not exactly helpful, but the processors were _very_ simple (I think they needed to implement instructions like compare, transmit and receive, I think the destination of transmit & receive could be varied based on the comparison). The problem is, that actually understanding the system was _incredibly difficult_.
And this, of course, is also the problem with working with hardware. This is why we don't routinely solve problems using FPGAs. Designing such things is actually _much harder_ than designing an equivalent procedural computer program.
A point: the author of the article talks about the complexity of a modern microprocessor, and how amazing it is that they work. Perhaps he doesn't realize how much time and money it costs (e.g.) Intel to ensure that their processors work correctly. It took them 4 years, for instance, to design the original Pentium (assuming they started work on it immediately after the release of the 486, which sounds likely, if not leaving it a little late). I don't know how many people worked on that design, but you can bet you couldn't count them on the fingers of your hands. Let's be generous and call it 10, though. 10 people x 4 years x 2,000 hours per year = 80,000 man hours (almost certainly a gross under-estimate). I bet you I could write software that simulated what a Pentium does in substantially less time. In fact, in less than a tenth of the time.
If anyone wants to take me on, I'll do it for GBP 80,000. If I can't do it in less time than it took Intel to develop the Pentium, that means I've effectively worked for you for GBP 1 per hour or less, and you get to do whatever you want with the results.
Test based programming is an interesting approach. You write a specification of the program you want, create an empty file, compile it, and define the fact that it doesn't do what your spec said as a bug. Implement a test for some aspect of having fixed that bug ('cause that's what you do when you find a bug...) and then fix it. Now, determine other bugs (i.e. things your program should do but doesn't) and fix those in the same way.
Second, the goal of software engineering is to produce a viable product. The best programmer in the world may still be subject to the whims of management which may override his choice of approach or tools.
I think what he's producing is an argument for management not to override the developers on choice of tools -- he's saying: it won't make much difference, so you ought to be hiring talented programmers, therefore we must be talented, so listen to us when we tell you what tools we want to use. Or maybe that's just wishful thinking:)
Was it just me, or did anyone else find the "interview" pathetic?
Where's the followup questions?
Web publishers seem to have grown into the belief lately that an acceptable way of conducting an interview is to e-mail a list of questions to the subject, and then print his responses.
It works fine in many cases (see some of the more successful slashdot interviews, for example), but often just winds up with unsatisfactory answers that don't help anyone (e.g. the slashdot interview of Shatner last year(?)). In a live interview situation, the interviewer would respond to the inadequacy of the answer. This doesn't happen in an e-mail interview.
That's 100% wrong. They did specify a license. The donated code under the presumption that the license was GPL.
No, they didn't specify a license. This is the whole problem. We may assume they intended to license the code under the GPL, but in order to do that you need to _specifically state_ that you are licensing under those terms. They probably didn't.
This means that if this case ever goes to a court, it will be up to the judge to decide what license those contributions were made under. And who knows what will happen then?
You're saying that because he had licensed his code under the GPL, all contributions were licensed to him under the GPL: even though none of them followed the basic GPL requirement of including the GPL notice. I just don't think that's going to fly in court.
It might, and it might not.
Clearly, a judge would look at this case (if it ever gets that far) and come to the following conclusions:
* The contributors sent patches to the maintainer of the software * They clearly intended these patches be included in the software, in order to improve it * They did this without mentioning any restrictions on usage, or asking for any compensation * In order for this to happen, a license grant would be required * Such a license grant must, at the bare minimum, have given the maintainer permission to incorporate the patches into the software he distributed
There are three possible outcomes now:
1. The judge rules that the most restrictive license that fulfils these conditions is the one to use; that license is the GPL. He orders the maintainer pay compensation to the contributors
2. The judge reaches the same conclusion as above, but because there were no clear restrictions indicated in the submission, merely grants an injunction preventing the maintainer from further distribution of the patches
3. The judge decides that a simple, unrestrictive license grant was implied, and that therefore the maintainer is within his rights to distribute the contributed code as he is doing.
I'm not sure which of these outcomes is most likely. If there is a precedent (I'm not aware of any, but IANAL, just a legal theorist) he would probably follow that. Otherwise, I would favour number 2 if I were a judge, although how much exactly that means I'm not sure.
In that case, he had no license to those contributions.
In most country's laws, it would be deemed that the contributions came with an implicit license. The legal argument would go: It was obviously the contributor's intent that the patch they sent should be included in the program. In order to do this, a license grant would be required. Hence, there was an implicit license grant.
The question is, what would the form of this grant be? That would be a question for a judge to answer, and I'm not sure which way it would go.
No, that's total BS. The GPL says that derived works must also be licensed under the GPL (or a compatible license).
That's irrelevant. This restriction can be relaxed by the copyright holder if he wishes, which clearly he did.
It also says you cannot arbitrarily impose additional restrictions, which a 30 day cutoff absolutely is.
Again, this is irrelevant. The Windows version is not being distributed under the GPL.
The key point is, what would a judge think? And in this case there would be no shortage of expert witnesses willing to testify that patches with no explicit license have an implicit license identical to the original codebase as a matter of course (being derived works).
Expert witnesses are irrelevant here. This is a legal point, and it would probably be up to the judge to decide, based on case precedents. I'm not aware of any, to be honest.
I don't see any way how one could lock a user out after 30 days without it being breakable from seeing the sourcecode.
If the source contains a public key that is used to verify a signed unlock message, having the source code will not help. Other than in the ability to remove said code and recompile, of course...
As someone who has worked in a company that has practiced pair programming for a lot longer than XP has been around, I know you're right. We find substantially fewer defects in code that has been produced by a pair of engineers than code than single engineer code. Also, the code is often much more efficient, as the programmer who isn't typing the code has more time to think of and suggest possible optimisations that might help performance.
"one simple set of verbs that lets you richly find,"
WTF? Does he not speak English?
Yes, before anyone says anything, I know what a DDE verb is. And I am familiar with the jargon meaning of "rich" which is being used in this unusually placed adverb. But I don't think most of MS's customers do.
So, having lost when suing Morpheus, which uses a network on which something like 95% of activity is sharing songs illegally, they're going to try for eDonkey next, a network where 95% of activity is sharing adverts for porn sites. That'll work.
IP addresses have always been tracable. Believe me. I've been on both end and the middle of such traces.
So, there's a way that the authorities could trace some offence back to you if you committed it over a link from an Internet cafe that you paid for in cash?
Once you have considered the unspoken assumptions in your wording, you may have reason to re-consider my statement that there are other ways of living, prioritizing and evaluating the success of one's life than the way which makes ever-increasing efficiency its final solution.
Can you suggest a counterexample?
Residential water use is usually so close to constant that charging by the gallon (or whatever unit they use - one place I know charges by the "block", and everyone generally uses three-four per month) is likely a waste of time, when you consider all the effort required to determine who is using what.
The point of metered water charging is not to make the system fairer or anything like that -- it is to discourage people from wasting water.
Given the number of people who took measures to reduce their water usage (like placing bricks in the cisterns of their toilets) when it was introduced in the UK about 10 years ago, I'd say it probably works.
[Parent equates windows tax with a DirectX royalty that would be charged to a game developer]
Fine. But this applies to any game that is developed to run on Windows, and is not DirectX specific. Sorry to burst your bubble, but Windows is the most popular platform (other than consoles) for gamers because most games are released first (and frequently only) under Windows. Therefore, as a game developer, it makes a certain kind of sense to primarily target Windows... therefore the 'tax' is already paid, so what does it matter which library you're using?
My end users (who have Windows 2000 or XP, as that is the required minimum system I develop for) have already paid Microsoft royalties[1]. Therefore running the DirectX setup that I am permitted to redistribute to them costs them nothing.
[1]: Or they're happy with their pirated versions. If that suit's them, I'm not complaining, because it doesn't cost me anything.
Doesn't help. Many merchants leave it up to 2 days before charging your card, so that they can check they have what you ordered in stock, etc.
for instance any page that does turn up (if any) will get the card number in the HTTP_REFERER URL.
But, given that they must already have your card number in order to turn up on the list, this isn't actually a problem.
Open source is not a business model.
Err... DirectX is a free redistributable. There are no royalty costs involved in using it.
# Chief executives at U.S. companies that shipped jobs overseas won a 46 percent pay hike last year
[...]
# average compensation for chief executives at the top 50 outsourcing companies was $10.4 million last year
These numbers are meaningless without the corresponding figures for companies that didn't outsource.
What's your source for that? Concise Oxford mentions your definitions 3 and 4 but warns that they are disputed (i.e., you should normally avoid using them because many people won't understand what you meant).
His networking idea might also bear out a new programming model
I've come across researchers in massively parallel systems using remarkably similar ideas -- you take an array of very simple components and connect them in order to form a system that does what you want. ISTR seeing solutions for linear time sorting -- of course, you need 1 processing element per item you want to sort which is not exactly helpful, but the processors were _very_ simple (I think they needed to implement instructions like compare, transmit and receive, I think the destination of transmit & receive could be varied based on the comparison). The problem is, that actually understanding the system was _incredibly difficult_.
And this, of course, is also the problem with working with hardware. This is why we don't routinely solve problems using FPGAs. Designing such things is actually _much harder_ than designing an equivalent procedural computer program.
A point: the author of the article talks about the complexity of a modern microprocessor, and how amazing it is that they work. Perhaps he doesn't realize how much time and money it costs (e.g.) Intel to ensure that their processors work correctly. It took them 4 years, for instance, to design the original Pentium (assuming they started work on it immediately after the release of the 486, which sounds likely, if not leaving it a little late). I don't know how many people worked on that design, but you can bet you couldn't count them on the fingers of your hands. Let's be generous and call it 10, though. 10 people x 4 years x 2,000 hours per year = 80,000 man hours (almost certainly a gross under-estimate). I bet you I could write software that simulated what a Pentium does in substantially less time. In fact, in less than a tenth of the time.
If anyone wants to take me on, I'll do it for GBP 80,000. If I can't do it in less time than it took Intel to develop the Pentium, that means I've effectively worked for you for GBP 1 per hour or less, and you get to do whatever you want with the results.
Test based programming is an interesting approach. You write a specification of the program you want, create an empty file, compile it, and define the fact that it doesn't do what your spec said as a bug. Implement a test for some aspect of having fixed that bug ('cause that's what you do when you find a bug...) and then fix it. Now, determine other bugs (i.e. things your program should do but doesn't) and fix those in the same way.
Second, the goal of software engineering is to produce a viable product. The best programmer in the world may still be subject to the whims of management which may override his choice of approach or tools.
:)
I think what he's producing is an argument for management not to override the developers on choice of tools -- he's saying: it won't make much difference, so you ought to be hiring talented programmers, therefore we must be talented, so listen to us when we tell you what tools we want to use. Or maybe that's just wishful thinking
Was it just me, or did anyone else find the "interview" pathetic?
Where's the followup questions?
Web publishers seem to have grown into the belief lately that an acceptable way of conducting an interview is to e-mail a list of questions to the subject, and then print his responses.
It works fine in many cases (see some of the more successful slashdot interviews, for example), but often just winds up with unsatisfactory answers that don't help anyone (e.g. the slashdot interview of Shatner last year(?)). In a live interview situation, the interviewer would respond to the inadequacy of the answer. This doesn't happen in an e-mail interview.
That's 100% wrong. They did specify a license. The donated code under the presumption that the license was GPL.
No, they didn't specify a license. This is the whole problem. We may assume they intended to license the code under the GPL, but in order to do that you need to _specifically state_ that you are licensing under those terms. They probably didn't.
This means that if this case ever goes to a court, it will be up to the judge to decide what license those contributions were made under. And who knows what will happen then?
You're saying that because he had licensed his code under the GPL, all contributions were licensed to him under the GPL: even though none of them followed the basic GPL requirement of including the GPL notice. I just don't think that's going to fly in court.
It might, and it might not.
Clearly, a judge would look at this case (if it ever gets that far) and come to the following conclusions:
* The contributors sent patches to the maintainer of the software
* They clearly intended these patches be included in the software, in order to improve it
* They did this without mentioning any restrictions on usage, or asking for any compensation
* In order for this to happen, a license grant would be required
* Such a license grant must, at the bare minimum, have given the maintainer permission to incorporate the patches into the software he distributed
There are three possible outcomes now:
1. The judge rules that the most restrictive license that fulfils these conditions is the one to use; that license is the GPL. He orders the maintainer pay compensation to the contributors
2. The judge reaches the same conclusion as above, but because there were no clear restrictions indicated in the submission, merely grants an injunction preventing the maintainer from further distribution of the patches
3. The judge decides that a simple, unrestrictive license grant was implied, and that therefore the maintainer is within his rights to distribute the contributed code as he is doing.
I'm not sure which of these outcomes is most likely. If there is a precedent (I'm not aware of any, but IANAL, just a legal theorist) he would probably follow that. Otherwise, I would favour number 2 if I were a judge, although how much exactly that means I'm not sure.
In that case, he had no license to those contributions.
In most country's laws, it would be deemed that the contributions came with an implicit license. The legal argument would go: It was obviously the contributor's intent that the patch they sent should be included in the program. In order to do this, a license grant would be required. Hence, there was an implicit license grant.
The question is, what would the form of this grant be? That would be a question for a judge to answer, and I'm not sure which way it would go.
No, that's total BS. The GPL says that derived works must also be licensed under the GPL (or a compatible license).
That's irrelevant. This restriction can be relaxed by the copyright holder if he wishes, which clearly he did.
It also says you cannot arbitrarily impose additional restrictions, which a 30 day cutoff absolutely is.
Again, this is irrelevant. The Windows version is not being distributed under the GPL.
The key point is, what would a judge think? And in this case there would be no shortage of expert witnesses willing to testify that patches with no explicit license have an implicit license identical to the original codebase as a matter of course (being derived works).
Expert witnesses are irrelevant here. This is a legal point, and it would probably be up to the judge to decide, based on case precedents. I'm not aware of any, to be honest.
I don't see any way how one could lock a user out after 30 days without it being breakable from seeing the sourcecode.
If the source contains a public key that is used to verify a signed unlock message, having the source code will not help. Other than in the ability to remove said code and recompile, of course...
As someone who has worked in a company that has practiced pair programming for a lot longer than XP has been around, I know you're right. We find substantially fewer defects in code that has been produced by a pair of engineers than code than single engineer code. Also, the code is often much more efficient, as the programmer who isn't typing the code has more time to think of and suggest possible optimisations that might help performance.
Ouch! :)
"one simple set of verbs that lets you richly find,"
WTF? Does he not speak English?
Yes, before anyone says anything, I know what a DDE verb is. And I am familiar with the jargon meaning of "rich" which is being used in this unusually placed adverb. But I don't think most of MS's customers do.
imagine that... treating everything as files...
Actually, I think it only treats files as files.
So, having lost when suing Morpheus, which uses a network on which something like 95% of activity is sharing songs illegally, they're going to try for eDonkey next, a network where 95% of activity is sharing adverts for porn sites. That'll work.