But that just makes me thing of, "He who can destroy a thing, controls a thing."
('eh, I screwed it up - it's a Dune reference, though I'm not sure if it was just in the movie(s) or not.)
Re:Interesting point
on
GPL's Strength
·
· Score: 2, Informative
Argh!
The GPL is *not* the same thing as a standard software contract, largely because of the differences explained in the article that started this topic!
You have no need to accept a GPL to use the software. Nobody cares.
If you want to distribute it, you must find some way to obtain a license from the copyright holder(s). In GPLed works, that typically comes with the source, in the form of the GPL.
A traditional EULA says that "You can't use this in ways we don't like, and may not redistribute it." It restricts you in unexepected ways after you open the package - the GPL loosens those restrictions after you open the package: "If you want to distribute this, or a modified version, you must provide the source code as well."
That's the (amazingly significant) difference.
Oh, and once again, IANAL.
Re:Saw something similar about EULAs in general
on
GPL's Strength
·
· Score: 1
First sale doesn't let you photocopy books and distribute them.
You could make the argument that if you distribute only the original media, and destroy all other copies you have (or include them with the originals, I would guess) that you can get by on just the first sale doctrine...
I found that when comments are embedded in the code itself (POD for Perl in my personal experience) - I feel obliged to correct things that are incorrect as I go - that doesn't mean I will keep adding new information, but I *will* make sure that incorrect assumptions are removed from the code.
I believe javadoc works in a similar manner (embedding the documentation as semi-structured comments in the code).
If nothing else, it gives you a nice template to follow when you do go back and document some things, and for complex functions you can stick documentation of the flow of the function as it goes, to make it clear what is going on in each step.
Don't you mean, "hey look, Britney is going down again."
Re:Why did it take so many posts?
on
Abusing the GPL?
·
· Score: 2, Insightful
The GPL is "probably" more binding than an EULA, because it is not a software *usage* license, it is a license to distribute something. (i.e, a Copyright license).
There is nothing other than the GPL (ignoring dual licensed situations here) that allows you to distribute the code and/or binary that resulted from creating a derived work from a GPLed source, so by distributing that code, you must be agreeing to the GPL. If you don't agree to the GPL and still distribute that derived work, you are violating the copyright owner's rights to control distribution.
That's the argument, and from my point of view (IANAL), it has nothing to do with EULA's. Even companies with paid lawyers manage to get that wrong, in that they sometimes display the GPL as if it were a EULA (i.e, click to "Accept" during the installation or first run of a program...)
When I was taking college physics (the calculus variety, for engineers, math majors, etc), I discovered that occassionaly, in the middle of a long problem, involving lots of simple calculations, I'd be thinking about how to solve the problem, and accidentally take something like 2+3 and multiply instead of add.
Yes, that would be the *only* thing wrong - but once I realized what I was doing, I tended to use a calculator for *all* the arithmetic in the problems, because I didn't trust myself to not screw something like that up.
Now, using a calculator in elementary school to do 50+50 is bad, because you never learn the skills. Using it in college for the same thing seems to be different, because it's assumed you can add, and you're just being absent-minded.
"hacking software" is designed to let me exercise fair use rights. i.e, to take small excerpts, and/or to make a backup.
(I'm not sure if format conversion is covered under that, but past practices would imply that it is... copying CDs to tapes, copying CDs into mp3 format to be played by the person that purchased the CD, etc.)
Of course, even this is outlawed under the DMCA (or more accurately, I believe it's illegal to distribute this software, so only the techno-elite have the ability to excercise their fair-use rights... everyone else is screwed.)
Don't get me wrong, I don't build projects with a single makefile, I build them up out of hierarchical pieces where each level only knows about targets in the level below it.
(And I include "Makefile.inc" instead of "Makefile" just to make sure they don't function as regular makefiles...)
I really haven't had any problems with this, and I know it will work on any system with GNU Make. (And it's guaranteed to know all the dependencies so that make -j will work...)
I guess I'm not seeing how I could simplify this - it works for large projects without anyone knowing everything about the project, we just share some common top-level definitions, and a few conventions on how to name targets so we don't clash).
How exactly does make (or really, GNU Make) fail to compute dependencies properly, when you give it all the information needed? (i.e, you include everything into one big Makefile, instead of using recursive make calls.)
I've never had a problem with make -j failing when plain make worked.
So , you're saying that cookies are *more likely* to be logged than URLs?
Hogwash, I say.
The fact that your 'session information' is never written to disk has nothing to do with use of cookies.
And my statement that putting session identifiers (not information, the identifier) into URLs makes them much more likely to be logged by proxys that users have no control over isn't really in dispute by you, is it? You just stated that cookies *can* be logged. As far as I know, every URL passing through a webserver gets logged - so someone able to access proxy or webserver logs in realtime but not the actual system (if, for example, you dump your logs off to another box in real-time) can hijack a session if your only identifier is the session ID. If you're doing better checking than just session ID, cookies provide exactly the same solution, and are a hell of a lot simpler to use from a programming point of view. (No continual url rewriting on static content, for one thing)
Yes, it's possible to completely remove cookies from use - but it's not generally worth the effort.
(And I actually work on a website where I'm forced to use *purely* relative paths - I can't ever specify a complete URL due to some insane amounts of NAT that the machine is behind. Providing a service to 5 or 6 distinct networks off of one server, where the network support group refuses to maintain a table of 'destination network vs our IP' is impossible in a pure URL rewriting environment.
You'd like to stick all the session information into plain-text logs and proxy server logs? (Proxy servers that many users on broadband connections can't even avoid, because they are forced to use them at the network level.)
Thanks. Good job protecting privacy of my 'sessions'. Anyone with access to those logs (a bigger group than those that can sniff my connection on that particular network, typically), can now hijack my session.
Cookie's don't get logged. That's a huge plus over your method.
The pirate ships weren't the first ones with hulls
on
Why Can't LEGO Click?
·
· Score: 1
I remember having two or three floating ships way back in the 80s. They had a big weight you stuck on the bottom to keep their bouyancy from flipping them right over.
Admittedly, the hulls weren't useful for much else, but then again, they floated. That, in my opinion, is a pretty good tradeoff.
Now, purely specialized parts for other things aren't nearly as appealing, unless you get a huge benefit out of it in the end. (Like floating ships)
that the MySQL AB response was as polite as it is. The personal affirmation of NuSphere's contributions strikes me as an extremely professional, given the fighting that's going on.
Well, my desktop Debian (unstable) machine has been disturbingly stable.
1 152 days, 17:20:02 | Linux 2.2.17 Tue Sep 26 18:43:29 2000
2 105 days, 23:36:46 | Linux 2.2.17 Wed Mar 7 17:27:26 2001
The first of those ended when my video card decided to fail (partially, but I got headaches looking at the monitor), and the second one when something locked up while I was in X, and I couldn't get the machine to respond.
Now, I'll admit that updating Init and X is something I don't do or care about much - but lots of other applications get updated and I quit/restart them without losing my other sessions.
BTW: I'm running Enlightenment on this machine, and I *really* can't remember it crashing since I installed Debian on this box.
I'd say the biggest reason to brag about uptime is that you demonstrate that when your web browser crashes, your OS doesn't die with it, so your editing/email/irc/compile/debug sessions don't die as well. That's a level of isolation that only Win2k seems to have duplicated on the Windows side of the industry. (and I still have a few doubts, given that IE crashes about as often as Mozilla does, for me.)
Your business model is aimed around selling software. The truly successful computer companies (other than Microsoft) have all been services companies.
What a GNU world would say is, "Don't sell the software, lease your expertise in the software." In other words, support, customize, redesign the software, and let your customers help. Run the best *software* shop you can, because that's how you compete.
Well, unless you're attempting to write a technical document:
To delete a line using vi, type "dd."
That has some nasty consequences if you don't fully understand English grammar rules. For that reason, most technial documents have switched styles to:
GRE doesn't use a port. GRE is a protocol on top of IP, such as TCP, UDP, ICMP, etc.
I'm pretty sure the protocol identifier is 47 (i.e, GRE is protocol 47 in the TCP/IP protocol suite).
I believe GRE is the IP Tunneling protocol MS used under another name, which of course I've forgotten now.
What you forget is that, under Linux (or any Unix that uses shared libraries, I believe) you get things like "libc.so" "libc.so.2" "libc.so.2.2.1"
If your app needs libc.so.2.2.1, preferentially, it'll get that. But you can also have libc.so.2.2.2 installed for another app.
An app that requires just libc gets the most recent version, I believe. (I forget the exact semantics of ldd, honestly, but the gist is here)
In windows, you get mfc42.dll and mfc43.dll. It's up to the application to ask for the version it wants, and if it can't find it, keep looking for the different versions until it finds the one it wants.
In Linux, that happens automatically. (I don't know about other OSes, as I haven't gotten nearly this detailed with them.)
So, Yes, Windows has a similar problem, but it's so, very very much worse.
But that just makes me thing of, "He who can destroy a thing, controls a thing."
('eh, I screwed it up - it's a Dune reference, though I'm not sure if it was just in the movie(s) or not.)
Argh!
The GPL is *not* the same thing as a standard software contract, largely because of the differences explained in the article that started this topic!
You have no need to accept a GPL to use the software. Nobody cares.
If you want to distribute it, you must find some way to obtain a license from the copyright holder(s). In GPLed works, that typically comes with the source, in the form of the GPL.
A traditional EULA says that "You can't use this in ways we don't like, and may not redistribute it." It restricts you in unexepected ways after you open the package - the GPL loosens those restrictions after you open the package: "If you want to distribute this, or a modified version, you must provide the source code as well."
That's the (amazingly significant) difference.
Oh, and once again, IANAL.
First sale doesn't let you photocopy books and distribute them.
You could make the argument that if you distribute only the original media, and destroy all other copies you have (or include them with the originals, I would guess) that you can get by on just the first sale doctrine...
but I wouldn't want to use that as a defense.
Oh, IANAL.
Implementation was put on hold in... Maryland, I think.
I say that purely from my shoddy recollection - InfoWorld's Gripe Line would be a better place to trace back and find out.
Really? Can you do bi-directional syncs that delete files properly?
If so, please provide a link - because I haven't figured out a way to do this yet.
I was thinking the same thing.
Does Slashdot have any idea how hypocritical they look right now?
I found that when comments are embedded in the code itself (POD for Perl in my personal experience) - I feel obliged to correct things that are incorrect as I go - that doesn't mean I will keep adding new information, but I *will* make sure that incorrect assumptions are removed from the code.
I believe javadoc works in a similar manner (embedding the documentation as semi-structured comments in the code).
If nothing else, it gives you a nice template to follow when you do go back and document some things, and for complex functions you can stick documentation of the flow of the function as it goes, to make it clear what is going on in each step.
Don't you mean, "hey look, Britney is going down again."
The GPL is "probably" more binding than an EULA, because it is not a software *usage* license, it is a license to distribute something. (i.e, a Copyright license).
There is nothing other than the GPL (ignoring dual licensed situations here) that allows you to distribute the code and/or binary that resulted from creating a derived work from a GPLed source, so by distributing that code, you must be agreeing to the GPL. If you don't agree to the GPL and still distribute that derived work, you are violating the copyright owner's rights to control distribution.
That's the argument, and from my point of view (IANAL), it has nothing to do with EULA's. Even companies with paid lawyers manage to get that wrong, in that they sometimes display the GPL as if it were a EULA (i.e, click to "Accept" during the installation or first run of a program...)
Well, I can explain why *some* people do that...
When I was taking college physics (the calculus variety, for engineers, math majors, etc), I discovered that occassionaly, in the middle of a long problem, involving lots of simple calculations, I'd be thinking about how to solve the problem, and accidentally take something like 2+3 and multiply instead of add.
Yes, that would be the *only* thing wrong - but once I realized what I was doing, I tended to use a calculator for *all* the arithmetic in the problems, because I didn't trust myself to not screw something like that up.
Now, using a calculator in elementary school to do 50+50 is bad, because you never learn the skills. Using it in college for the same thing seems to be different, because it's assumed you can add, and you're just being absent-minded.
At least, that's my take on it.
I don't have "Fair Use" rights?
Since when?
Oh, right, DMCA. Nevermind.
I read that as "ruining".
"hacking software" is designed to let me exercise fair use rights. i.e, to take small excerpts, and/or to make a backup.
(I'm not sure if format conversion is covered under that, but past practices would imply that it is... copying CDs to tapes, copying CDs into mp3 format to be played by the person that purchased the CD, etc.)
Of course, even this is outlawed under the DMCA (or more accurately, I believe it's illegal to distribute this software, so only the techno-elite have the ability to excercise their fair-use rights... everyone else is screwed.)
Don't get me wrong, I don't build projects with a single makefile, I build them up out of hierarchical pieces where each level only knows about targets in the level below it.
(And I include "Makefile.inc" instead of "Makefile" just to make sure they don't function as regular makefiles...)
I really haven't had any problems with this, and I know it will work on any system with GNU Make. (And it's guaranteed to know all the dependencies so that make -j will work...)
I guess I'm not seeing how I could simplify this - it works for large projects without anyone knowing everything about the project, we just share some common top-level definitions, and a few conventions on how to name targets so we don't clash).
How exactly does make (or really, GNU Make) fail to compute dependencies properly, when you give it all the information needed? (i.e, you include everything into one big Makefile, instead of using recursive make calls.)
I've never had a problem with make -j failing when plain make worked.
So , you're saying that cookies are *more likely* to be logged than URLs?
Hogwash, I say.
The fact that your 'session information' is never written to disk has nothing to do with use of cookies.
And my statement that putting session identifiers (not information, the identifier) into URLs makes them much more likely to be logged by proxys that users have no control over isn't really in dispute by you, is it? You just stated that cookies *can* be logged. As far as I know, every URL passing through a webserver gets logged - so someone able to access proxy or webserver logs in realtime but not the actual system (if, for example, you dump your logs off to another box in real-time) can hijack a session if your only identifier is the session ID. If you're doing better checking than just session ID, cookies provide exactly the same solution, and are a hell of a lot simpler to use from a programming point of view. (No continual url rewriting on static content, for one thing)
Yes, it's possible to completely remove cookies from use - but it's not generally worth the effort.
(And I actually work on a website where I'm forced to use *purely* relative paths - I can't ever specify a complete URL due to some insane amounts of NAT that the machine is behind. Providing a service to 5 or 6 distinct networks off of one server, where the network support group refuses to maintain a table of 'destination network vs our IP' is impossible in a pure URL rewriting environment.
You'd like to stick all the session information into plain-text logs and proxy server logs? (Proxy servers that many users on broadband connections can't even avoid, because they are forced to use them at the network level.)
Thanks. Good job protecting privacy of my 'sessions'. Anyone with access to those logs (a bigger group than those that can sniff my connection on that particular network, typically), can now hijack my session.
Cookie's don't get logged. That's a huge plus over your method.
I remember having two or three floating ships way back in the 80s. They had a big weight you stuck on the bottom to keep their bouyancy from flipping them right over.
Admittedly, the hulls weren't useful for much else, but then again, they floated. That, in my opinion, is a pretty good tradeoff.
Now, purely specialized parts for other things aren't nearly as appealing, unless you get a huge benefit out of it in the end. (Like floating ships)
that the MySQL AB response was as polite as it is. The personal affirmation of NuSphere's contributions strikes me as an extremely professional, given the fighting that's going on.
Well, my desktop Debian (unstable) machine has been disturbingly stable.
1 152 days, 17:20:02 | Linux 2.2.17 Tue Sep 26 18:43:29 2000
2 105 days, 23:36:46 | Linux 2.2.17 Wed Mar 7 17:27:26 2001
The first of those ended when my video card decided to fail (partially, but I got headaches looking at the monitor), and the second one when something locked up while I was in X, and I couldn't get the machine to respond.
Now, I'll admit that updating Init and X is something I don't do or care about much - but lots of other applications get updated and I quit/restart them without losing my other sessions.
BTW: I'm running Enlightenment on this machine, and I *really* can't remember it crashing since I installed Debian on this box.
I'd say the biggest reason to brag about uptime is that you demonstrate that when your web browser crashes, your OS doesn't die with it, so your editing/email/irc/compile/debug sessions don't die as well. That's a level of isolation that only Win2k seems to have duplicated on the Windows side of the industry. (and I still have a few doubts, given that IE crashes about as often as Mozilla does, for me.)
Your business model is aimed around selling software. The truly successful computer companies (other than Microsoft) have all been services companies. What a GNU world would say is, "Don't sell the software, lease your expertise in the software." In other words, support, customize, redesign the software, and let your customers help. Run the best *software* shop you can, because that's how you compete.
Well, unless you're attempting to write a technical document:
That has some nasty consequences if you don't fully understand English grammar rules. For that reason, most technial documents have switched styles to:
GRE doesn't use a port. GRE is a protocol on top of IP, such as TCP, UDP, ICMP, etc. I'm pretty sure the protocol identifier is 47 (i.e, GRE is protocol 47 in the TCP/IP protocol suite). I believe GRE is the IP Tunneling protocol MS used under another name, which of course I've forgotten now.
(From a statement made by a former Wizards of the Coast employee, FYI.)
What you forget is that, under Linux (or any Unix that uses shared libraries, I believe) you get things like "libc.so" "libc.so.2" "libc.so.2.2.1" If your app needs libc.so.2.2.1, preferentially, it'll get that. But you can also have libc.so.2.2.2 installed for another app. An app that requires just libc gets the most recent version, I believe. (I forget the exact semantics of ldd, honestly, but the gist is here) In windows, you get mfc42.dll and mfc43.dll. It's up to the application to ask for the version it wants, and if it can't find it, keep looking for the different versions until it finds the one it wants. In Linux, that happens automatically. (I don't know about other OSes, as I haven't gotten nearly this detailed with them.) So, Yes, Windows has a similar problem, but it's so, very very much worse.