Viruses on Windows propogate through mail attachments, yes, but not just programs: they propogate through pictures and documents that use exploits in the programs that read them to execute code without any user intervention. Once code is running, it can take advantage of local privilege escalation exploits (or just pop up a gksudo window and trick the user into elevating its privileges through social engineering) and bang, you've been rooted!
Note that I'm not claiming Linux can't be rooted. Duh, of course it can. I'm claiming that the way it works makes it hard for viruses to spread.
This is just totally not true. ActiveX is conceptually pretty much the same thing as Linux technologies like D-Bus. And there are many types of document commonly used on Linux platforms that can have executable content. (In Emacs, with the right setting enabled, even a plain text document could execute arbitrary code by design. The setting is off by default and carries large warning labels, but it's there.)
The default makes all the difference. On Windows, using ActiveX is a necessity if you're ever going to use Windows Update. On Linux nothing of the sort is the norm. AFAIK, D-Bus doesn't download code from the Internet.
While in theory it's quite possible to make a Linux system execute random code downloading from the net, in practice this isn't the default and so it's just not viable to make a virus that takes advantage of that.
Note that IMO this isn't as much as a matter of Linux being better as of Windows being horribly stupid. Kill ActiveX completely, make any sort of macros in office documents be disabled by default without asking the user whether to turn them on, remove any support for filesystem access or anything that could allow the virus in a document to spread, make sure mail clients don't offer the possibility of executing, and it'll get a lot better.
Why do that when you can just not buy this junk in the first place?
It's not like this is high tech or anything. There are probably at least 20 chinese manufacturers that will gladly sell you something with the same functionality, but none of the restrictions.
While we're talking about false sense of security, let's don't forget the smug Mac and Linux users. We don't need virus checkers. More accurate would be We don't need virus checkers yet.
Linux doesn't need virus checkers for a simple reason: The distribution of executable code is much different than on Windows.
Viruses on Windows distribute mainly through mail attachments these days. On Linux where you need to save and chmod +x a file the barrier to entry is much higher. Linux users also for the most part don't deal with binaries from random sources, they get them from the distribution.
Linux also lacks the braindead design of Windows software with concepts like ActiveX, and documents with executable content (MS Office formats).
Most software used on Linux is free, so anybody can have it. That removes a big vector of nasty stuff: cracked software and keygens.
One of the jobs of a distribution is shipping the software properly tested and packaged. Unlike on Windows, I don't know of any distribution that ships any package with embedded spyware or attached junk like the Google toolbar.
These things combined ensure that while a virus is something that is technically doable in Linux, in practice it just doesn't spread around.
This leaves worms, but virus checkers aren't going to save you from that, since many of them only exist in memory. You could catch the network packets they send, but nothing new is needed for this as it exist already, it's called an IDS.
Did you read what I said? There's no way to calculate actual numbers.
It's like trying to calculate the number of *people* using Slashdot. Some have one account. Some will have many. Some are probably not even human (there are quite a few bots in SL).
Point is, not even Linden Lab has accurate stats on it. They do however have stats on the number of accounts, the number of them used in the last 90 (I think) days, how many are paid subscribers, and how many are logged in right now. It's about as good as it gets.
If you have some way of calculating the exact numbers, I'd love to know of it.
So much of it can be boiled down to "please make the game 100 times more nitpicky and tedious". I swear, some of these guys would cream their pants if an RPG came along where you have to spend 20 minutes tending to your charatcer's bathroom activities every morning, another 30 minutes sharpening their sword and polishing their armor and then two hours deciphering an elven scroll in order to make a level 1 fireball.
I think that's because most RPGs don't actually have much Role Play in them. Take Neverwinter Nights for instance. While you have considerable freedom, each campaign still ends the same way. Real role play would mean I could suddenly decide to cut Aribeth's head off, present it to Queen Morag, and march against Neverwinter. If that sort of flexibility is available in any game without a human DM, I'd love to know of it.
Now since there are good reasons why a game can't be programmed to deal with every possibility like the above, what you have left is role playing your character. As in roleplaying a rogue, wizard, etc. And that of course comes down to wanting to have an intimate knowledge of swords, magic and bows that goes far beyond point and click. Hardcore roleplaying a wizard would probably involve an actual magical system you could work with, and where skill would be based on learning how it works, and your ability to cast spells (with gestures say).
There isn't one, because it's not something that can be defined.
You can get starts on the number of accounts, and the number of accounts that were used in the last X days. The actual amount of people is impossible to tell because SL doesn't require paying to login anymore.
But I don't get what's with the obsession with numbers anyway. You can login and see that there are a lot of people. Whether it's 1, 5, or 50 million doesn't really change much.
Well, the definition of "large reserves of L$" varies quite widely. Things are cheap in SL. An expensive avatar might be $5. Usually much cheaper.
If you're interested in stuff (as in toys and not services of some sort) you can gather a huge heap of all sorts of things for $25.
"Goods" are far more than "cybersex animations", btw. Those generally include avatars, weapons, toys, clothes, utilities (RSS readers say), buildings, etc, etc. You want to live in a medieval castle? Or a house on a tree? A Stargate? A lightsaber? There are lots of things like that available.
Building a house in SL is easy in theory and free unless you need to upload textures (no problem there, lots of free ones available). But it turns out that building a good looking one takes serious work, and if all you want is to have a virtual house on a virtual beach it's far easier to pay for it.
Right, because Apple is a tiny poor company that doesn't have the resources to watch the traffic over the wire, or to disassemble the program. They couldn't possibly figure it out without the source.
So if you just want to grab code and turn it proprietary, your best choices are public domain or BSD. There's a fair amount of code licensed BSD, but for some reason GPL is more popular with developers (in general, not necessarily you in particular).
Alternatively, you could buy non-GPL licenses from the authors or copyright holders. Most of them would be quite willing to deal for a reasonable price. Many would even contribute under a BSD license for free if it were for a project that they respected. You just wouldn't get an exclusive license.
I think you answered your own question (why the GPL is more popular) in your second paragraph.
The GPL puts the developer in a position of power. You get to wave your software in front of the nose of an interested company, while still not letting them have it. If you have something good, that's a potential source of money.
Now with BSD, you really can't demand anything from anybody. 99% of the companies will probably just grab your stuff if it's useful, integrate it, and you'll never even hear of it. After all time is money, and if there's no need to do anything, then there's no gain for the company in doing anything.
Note that I'm not some sort of anti-BSD zealot, I'm just an egoist and like deriving some sort of benefit. The GPL provides potential for either improvements (and since I use what I work on that's good), or money. The BSD doesn't provide them, and if I'm not benefitting in any way, why would I even bother to upload the source somewhere?
Now if somebody wants me to release something under the BSD, then that can be done for a price, but I won't release something under the BSD or similar on my own unless there's something in it for me.
Not really. What about software for managing employee payroll? That's pretty widely useful. But a payroll manager has training in and cares about financial matters. He only cares about software as far as making his job easier, not the pursuit of Software Freedom. What incentive does he have to distribute it?
That *is* obscure. There's very little open source software of this sort, because most OSS coders code to "scratch an itch", and payroll software isn't really in that category. There are companies that internally do it, but this usually turns out to be something very customized for a specific company, so they don't even try to release it.
I already covered this point. First, there's the great enhancements that BigCorp has added, which your product doesn't have. Second, BigCorp doesn't have to tell anyone that most of the product was written by someone else. Their customers would have to actively investigate that to find it out, and they aren't going to do that because they have better things to do. Like get on with using the software to make more money. So they won't even know about you.
Even for payroll software they'd probably know. If you're in the market for payroll software you've probably done some research about what's available. And for a company to want to take my GPLd stuff and make business with it, it should be something quite widely know to have some quality, so with any significant userbase I'd expect somebody to figure out that I'm the original author.
I don't know what type of software you write, maybe it's only useful for other software developers. In that case, I agree.
Among other things, I have my own customized version of the Second Life client. I also do paid work on it (that is released under the GPL since the original source is GPLd)
But I was speaking more generally. There are a lot of companies that don't have in-house programmers. They don't do any kind of software development. Their IT staff is mostly concerned with keeping the general tech infrastructure running, and they have support contracts for when the software bugs out. Those companies and their employees don't care about the GPL. It's not in their field of operation, and they're busy doing things that are in their field.
That's not really a big deal. For example, SL moves forward quickly. Somebody trying to keep their modifications closed will find that they need to fix their custom code to make it work with the new versions. It's just easier to release it.
And if they decide to go the copyright infringement way, it's mostly Linden Lab's code, who is far bigger and more dangerous than I am.
Anyway, I won't argue the point further. The fact that you think the example is so contrived means you don't have the experience to understand that it isn't, so the discussion can't move any further.
It's a contrived example because it needs a piece of software that is not useful to most people. It really won't fly with a text editor, or the Linux kernel, or the SL client.
At least you realize that anyone making changes to your software is not automatically obliged to return them to you. Most GPL lovers don't even understand that.
There's no such thing as absolute perfection. But for me, the GPL is much closer to it than anything else.
The GPL doesn't have any special behavior in that respect. If you integrate GPL code code into a proprietary codebase you're not suddenly forcing the distribution of the whole, you're committing copyright infringement. Then it really depends on the author what happens. In my understanding:
* The author can reach an agreement. Say, you pay $X, he gives you a different license * The author says, "OK, make the whole thing GPL and I'll leave you alone" * The author ignores all of the above and sues you for statuory damages.
In my understanding (which may be incorrect), even if you make your own code GPLd, the author can sue you anyway for the infringement that happened during the time it wasn't.
You're wrong. You'll only be able to use any improvement if your competitor distributes the changes to you . Only the recipient of the modified GPL software is entitled to the changed source.
This is correct
Here's an example: You write GPL software that is used by LargeCompany, and sell the support to them. BigCorp takes your software, makes some great enhancements, and sells it to the same LargeCompany saying, "Hey, this software does everything that guy's does and more!" Do you think, because of the GPL, you're entitled access to those changes? You aren't. Only LargeCompany is, and they're not going to share them with you, because why should they? They're getting better features and support from BigCorp. In fact, they probably don't even know the product is just an enhancement of your product, because they don't care about reading the source, they're busy with their actual business.
It's a quite contrived example though. Since it's GPL software, any employee who gets their hands on it can then redistribute it for free. Assuming the program is useful, it'll spread around soon enough. For this scheme to work indefinitely it'd need to be a quite obscure piece of software, and there should be a reason to get the software from the company and not from me.
I don't think this is a very likely situation, since any company attempting to do this can't distribute it very widely, so any potential gains from it won't be large.
I want to get something out of my work. The usual options are:
A. The source of whatever improvements people come up with. The GPL comes here. AGPL or GPL3 if possible. B. Money.
Ocassionally I might contribute something under the BSD or similar. Not out of the goodness of my heart, but because it's in my self-interest. This generally applies to things like features that need wide distibution to be of use. Canonical example: File formats. To push a file format, you want everybody, MS included to support it.
I like the sound of public domain. Its simple with out any complicated rules.
I saw Open Source as a free exchange of ideas and code that let you do what ever you wanted with it. Public Domain fits that better than a lot of others.
All the Gotchas and legal overhead built into some of them are just overhead that make the whole process fustrating.
Ah, but many people writing GPL licensed software have an agenda. Why do you think IBM works on GPL licensed and not BSD licensed software? Because IBM is not interested in "free exchange of ideas" without getting anything for it. The GPL on the other hand is perfect, because if a competitor ever does any improvement, you'll be able to use it. It makes your competition unable to take advantage of your work without working for you.
I work on GPL software. Exclusively. I don't work on BSD or public domain code because it's not my intention to effectively be an unpaid employee in whatever company uses my work. If they want it that badly, they can either drop a mail and negotiate a price, or release their improvement according to the GPL.
Actually, they do. See the SMART Reallocated_Sector_Ct parameter.
However it just happens that while Flash degrades in a very gradual fashion, hard disks tend to die very suddenly. If there was a head crash there will now be debris inside the drive bouncing around and making things even worse. Once a hard disk started reallocating sectors, it's very likely something went quite badly wrong and it doesn't have much life left in it.
Flash just doesn't have problems like a moving head that can plow through the disk surface all of a sudden.
I've always wondered why random number generators don't pull values from an A/D converter hooked to a white noise generator or Lorenz attractor or some such.
Because most computers don't have the hardware for it.
You can get it on server boards or VIA CPUs (not all of them), but most computers don't have any sort of hardware RNG.
I wasn't referring to the price, I was trying to say that making a robot out of components that won't melt is not possible as AFAIK semiconductors fail much below 450C, and so will any sort of solder I heard of.
Note that I'm not claiming Linux can't be rooted. Duh, of course it can. I'm claiming that the way it works makes it hard for viruses to spread.
The default makes all the difference. On Windows, using ActiveX is a necessity if you're ever going to use Windows Update. On Linux nothing of the sort is the norm. AFAIK, D-Bus doesn't download code from the Internet.
While in theory it's quite possible to make a Linux system execute random code downloading from the net, in practice this isn't the default and so it's just not viable to make a virus that takes advantage of that.
Note that IMO this isn't as much as a matter of Linux being better as of Windows being horribly stupid. Kill ActiveX completely, make any sort of macros in office documents be disabled by default without asking the user whether to turn them on, remove any support for filesystem access or anything that could allow the virus in a document to spread, make sure mail clients don't offer the possibility of executing, and it'll get a lot better.
Why do that when you can just not buy this junk in the first place?
It's not like this is high tech or anything. There are probably at least 20 chinese manufacturers that will gladly sell you something with the same functionality, but none of the restrictions.
Linux doesn't need virus checkers for a simple reason: The distribution of executable code is much different than on Windows.
Viruses on Windows distribute mainly through mail attachments these days. On Linux where you need to save and chmod +x a file the barrier to entry is much higher. Linux users also for the most part don't deal with binaries from random sources, they get them from the distribution.
Linux also lacks the braindead design of Windows software with concepts like ActiveX, and documents with executable content (MS Office formats).
Most software used on Linux is free, so anybody can have it. That removes a big vector of nasty stuff: cracked software and keygens.
One of the jobs of a distribution is shipping the software properly tested and packaged. Unlike on Windows, I don't know of any distribution that ships any package with embedded spyware or attached junk like the Google toolbar.
These things combined ensure that while a virus is something that is technically doable in Linux, in practice it just doesn't spread around.
This leaves worms, but virus checkers aren't going to save you from that, since many of them only exist in memory. You could catch the network packets they send, but nothing new is needed for this as it exist already, it's called an IDS.
Did you read what I said? There's no way to calculate actual numbers.
It's like trying to calculate the number of *people* using Slashdot. Some have one account. Some will have many. Some are probably not even human (there are quite a few bots in SL).
Point is, not even Linden Lab has accurate stats on it. They do however have stats on the number of accounts, the number of them used in the last 90 (I think) days, how many are paid subscribers, and how many are logged in right now. It's about as good as it gets.
If you have some way of calculating the exact numbers, I'd love to know of it.
I think that's because most RPGs don't actually have much Role Play in them. Take Neverwinter Nights for instance. While you have considerable freedom, each campaign still ends the same way. Real role play would mean I could suddenly decide to cut Aribeth's head off, present it to Queen Morag, and march against Neverwinter. If that sort of flexibility is available in any game without a human DM, I'd love to know of it.
Now since there are good reasons why a game can't be programmed to deal with every possibility like the above, what you have left is role playing your character. As in roleplaying a rogue, wizard, etc. And that of course comes down to wanting to have an intimate knowledge of swords, magic and bows that goes far beyond point and click. Hardcore roleplaying a wizard would probably involve an actual magical system you could work with, and where skill would be based on learning how it works, and your ability to cast spells (with gestures say).
There isn't one, because it's not something that can be defined.
You can get starts on the number of accounts, and the number of accounts that were used in the last X days. The actual amount of people is impossible to tell because SL doesn't require paying to login anymore.
But I don't get what's with the obsession with numbers anyway. You can login and see that there are a lot of people. Whether it's 1, 5, or 50 million doesn't really change much.
Well, the definition of "large reserves of L$" varies quite widely. Things are cheap in SL. An expensive avatar might be $5. Usually much cheaper.
If you're interested in stuff (as in toys and not services of some sort) you can gather a huge heap of all sorts of things for $25.
"Goods" are far more than "cybersex animations", btw. Those generally include avatars, weapons, toys, clothes, utilities (RSS readers say), buildings, etc, etc. You want to live in a medieval castle? Or a house on a tree? A Stargate? A lightsaber? There are lots of things like that available.
Building a house in SL is easy in theory and free unless you need to upload textures (no problem there, lots of free ones available). But it turns out that building a good looking one takes serious work, and if all you want is to have a virtual house on a virtual beach it's far easier to pay for it.
I thought that the device NASA might leave behind was the AMS, which doesn't look habitable
And why does it even need the ISS?
Couldn't it be just launched with a rocket, after adding the necessary bits so that it doesn't need the ISS?
I don't fork money, I earn it! My return from SL is very positive and approaches that of a job I could live on.
SL works as a convenient paypal-like money transfer system. People pay me for programming projects through SL.
It's quite possible to make a living from it. I currently probably could live exclusively from SL.
Right, because Apple is a tiny poor company that doesn't have the resources to watch the traffic over the wire, or to disassemble the program. They couldn't possibly figure it out without the source.
I think you answered your own question (why the GPL is more popular) in your second paragraph.
The GPL puts the developer in a position of power. You get to wave your software in front of the nose of an interested company, while still not letting them have it. If you have something good, that's a potential source of money.
Now with BSD, you really can't demand anything from anybody. 99% of the companies will probably just grab your stuff if it's useful, integrate it, and you'll never even hear of it. After all time is money, and if there's no need to do anything, then there's no gain for the company in doing anything.
Note that I'm not some sort of anti-BSD zealot, I'm just an egoist and like deriving some sort of benefit. The GPL provides potential for either improvements (and since I use what I work on that's good), or money. The BSD doesn't provide them, and if I'm not benefitting in any way, why would I even bother to upload the source somewhere?
Now if somebody wants me to release something under the BSD, then that can be done for a price, but I won't release something under the BSD or similar on my own unless there's something in it for me.
That *is* obscure. There's very little open source software of this sort, because most OSS coders code to "scratch an itch", and payroll software isn't really in that category. There are companies that internally do it, but this usually turns out to be something very customized for a specific company, so they don't even try to release it.
Even for payroll software they'd probably know. If you're in the market for payroll software you've probably done some research about what's available. And for a company to want to take my GPLd stuff and make business with it, it should be something quite widely know to have some quality, so with any significant userbase I'd expect somebody to figure out that I'm the original author.
Among other things, I have my own customized version of the Second Life client. I also do paid work on it (that is released under the GPL since the original source is GPLd)
That's not really a big deal. For example, SL moves forward quickly. Somebody trying to keep their modifications closed will find that they need to fix their custom code to make it work with the new versions. It's just easier to release it.
And if they decide to go the copyright infringement way, it's mostly Linden Lab's code, who is far bigger and more dangerous than I am.
It's a contrived example because it needs a piece of software that is not useful to most people. It really won't fly with a text editor, or the Linux kernel, or the SL client.
There's no such thing as absolute perfection. But for me, the GPL is much closer to it than anything else.
The GPL doesn't have any special behavior in that respect. If you integrate GPL code code into a proprietary codebase you're not suddenly forcing the distribution of the whole, you're committing copyright infringement. Then it really depends on the author what happens. In my understanding:
* The author can reach an agreement. Say, you pay $X, he gives you a different license
* The author says, "OK, make the whole thing GPL and I'll leave you alone"
* The author ignores all of the above and sues you for statuory damages.
In my understanding (which may be incorrect), even if you make your own code GPLd, the author can sue you anyway for the infringement that happened during the time it wasn't.
This is correct
It's a quite contrived example though. Since it's GPL software, any employee who gets their hands on it can then redistribute it for free. Assuming the program is useful, it'll spread around soon enough. For this scheme to work indefinitely it'd need to be a quite obscure piece of software, and there should be a reason to get the software from the company and not from me.
I don't think this is a very likely situation, since any company attempting to do this can't distribute it very widely, so any potential gains from it won't be large.
I'll explain it plainly: I'm a greedy bastard.
I want to get something out of my work. The usual options are:
A. The source of whatever improvements people come up with. The GPL comes here. AGPL or GPL3 if possible.
B. Money.
Ocassionally I might contribute something under the BSD or similar. Not out of the goodness of my heart, but because it's in my self-interest. This generally applies to things like features that need wide distibution to be of use. Canonical example: File formats. To push a file format, you want everybody, MS included to support it.
Ah, but many people writing GPL licensed software have an agenda. Why do you think IBM works on GPL licensed and not BSD licensed software? Because IBM is not interested in "free exchange of ideas" without getting anything for it. The GPL on the other hand is perfect, because if a competitor ever does any improvement, you'll be able to use it. It makes your competition unable to take advantage of your work without working for you.
I work on GPL software. Exclusively. I don't work on BSD or public domain code because it's not my intention to effectively be an unpaid employee in whatever company uses my work. If they want it that badly, they can either drop a mail and negotiate a price, or release their improvement according to the GPL.
Actually, they do. See the SMART Reallocated_Sector_Ct parameter.
However it just happens that while Flash degrades in a very gradual fashion, hard disks tend to die very suddenly. If there was a head crash there will now be debris inside the drive bouncing around and making things even worse. Once a hard disk started reallocating sectors, it's very likely something went quite badly wrong and it doesn't have much life left in it.
Flash just doesn't have problems like a moving head that can plow through the disk surface all of a sudden.
There's an old story on how the BSA works
I have two monitors under Linux, works fine.
Some applications don't handle it as well as they should, but that's an application issue.
Because most computers don't have the hardware for it.
You can get it on server boards or VIA CPUs (not all of them), but most computers don't have any sort of hardware RNG.
It's pointless to try to increase swap speed when you could just add more RAM. These days you can have 8GB easily and more is possible.
Doesn't matter how fast you make the swap storage device, it'll still crawl when compared to RAM.
I wasn't referring to the price, I was trying to say that making a robot out of components that won't melt is not possible as AFAIK semiconductors fail much below 450C, and so will any sort of solder I heard of.
What will you solder the electronics with? Or what will you make them from for that matter?