I have no idea why they'd say that. Discrimination against classes of people is perfectly legal as long as those classes are not protected under the law, or a weasely attempt to ban those classes without explicitly saying so.
In fact, there are already people that discriminate on profession, although it's usually 'who can get in', verse 'who canno get in'. For example, you want to join a policeman's union, you have to, duh, be a policeman.
If you said 'People with red hair cannot view this site', because you dislike the Irish, you're on shakey legal ground because, while hair color is not a protected class under various civil rights statues, you are trying to ban a protected class by banning that.
However, 'policeman' doesn't translate to any protected class I can imagine. It is perfectly legal to discriminate against them as a group, to say 'policemen can go here, but not here, and teachers can go here, but not here'.
Now, of course, if you're setting rules for groups, there's always the argument that someone didn't know you were talking about them...which is why statements like those pretty clearly say anyone involved in law enforcement is banned.
Making threads is just as fast as making processes on Linux, you loon, because processes are threads and vis versa. It's literally the same system call, and all that gets specificied different is what 'the same' between things and what should be duplicated. (Although it's not actually duplicated until it changes.)
For example, apache and sshd, and various FTPds, can be restarted without anyone possibly noticing, because they simply leave any running children open. You connected before a certain time, you got the old copy, you connected after it, you got the new one.
And, of course, many protocols work fine if you go away for five seconds, like SMB. The client program will just say 'oops, connection hiccup' and reconnect silently, and the end user never notices. Same with IMAP clients. They go 'Hey, the server closed my connection, I better open it again'.
Restarting services on a Linux box is 99% transparent to end users, even ones that are currently directly doing something with the server.
Rebooting is not transparent, even if all the connections are reaqquired automatically, simply because work stopped for the two minute reboot.
That is not what I was talking about. I know what eugenics is, and I know it's not just killing people. In fact, you can do it wholely be encouraging certain people to breed, with no force or even discouragement against other people doing whatever they want.
The linking of Nazism and socialism, and, thus, the linking of socialism and eugenics, is why I called him an idiot.
Eugenics in the killing-people sense was picked up for a decade or two after Darwin came out with his theories. For a sci-fi treatment of this, notice the 'Howard Families' in Heinlein's books, where it's solely encouraging people to breed.
It wasn't, however, attached in any way to socialism, although there were a few people who were fans of both, and this wasn't 'modern' racist eugenics, it was a theory that to improve the human race, the sickly should voluntarily refrain from breeding. (At that point, it wasn't really understood that the reason most people, especially the poor, were so 'sickly' was malnutrition, not genetics. Darwin had made a very big impact.)
Which, incidently, is indeed something that happens in the real world, and is why people get themselves tested to see if they carry certain recessive harmful diseases, so they can refrain from passing them on. Don't confuse it with the genocidal eugenics practiced by the Nazi.
Trying to improve the gentic makeup of the species by refraining from passing on bad genes is eugenics, as is trying to kill all Jews to keep them from passing on 'Jew' genes. This does not make the actions morally equivilent, and you will not find any part of socialist ideals that includes the latter.
What people are missing is that it is illegal to access someone's computer if they have told you not to. This is a violation of various computer access laws.
Ergo, it is perfectly sane to put up a message banning whoever you want, and yes, that does have legal enforcablity. I don't know what this has to do with an Federal privacy bill, it's state laws that ban 'unauthorized access'.
Think of it this way: Bars are normally open to the public. People go in and out at will, and so can police.
Private clubs, with a bouncer? They have to ask to come in, and they can be told no, and then they don't get to wander in and look around.
This, of course, doesn't stop them from entering if they have a search warrant.
I don't know why people would think the police have some sort of special right to poke around online on a system they are explicitly unauthorized to use.
Erm, fear that people are controlling you and sending you messages is not uncommom among people with paranoid schizophrenia, to explain the voices and thoughts in their heads.
Neither is attempting to do something about it uncommon.
In the modern world, it quite commonly does in fact take the form of the CIA beaming mind-control rays into their head and they trying to block them with tin foil. Not because that makes any more sense than, say, witches running around casting spells on people and demonic possession, but simply because it's more modern.
That's not to say there aren't any people who think it's witches or whatever.
But there are a limited number of explanations as to where the crazy voices are coming from. Although a few people do, occasionally, invent new ones...and in 100 years, one of those might have really caught on enough to be the new 'tinfoil hat'.
Well, you can write code explicitly for that processor, for one thing. Instead of the many different added instructions that x86 processors have, and the timing differences between processors.
They can not run generic code, only short snippets called shaders.
And this comment is why I have the low ID and you don't, except it doesn't work that way.
GPUs, nowdays, are Turing-complete. They can run any damn software they want. They can sit there and emulate an X-Box or a z80 calculator or ENIAC, although obviously they'd be too slow to be an X-Box.
They are extremely crappy at many things a CPU is extremely good at, and vis versa. However, this does not logically lead to 'And, hence, we need propietary software running on the CPU.'. All that software does is talk to the GPU. How do I know?
Because if it did anything to manipulate the data by itself, competitors could rather trivially see what it was doing, and thus it wouldn't be very 'secret'.
What the hell are you talking about? I wasn't complaining about GPUs or CPUs.
I was complaining about the big proprietary blob of software running on the CPU that does nothing but talk to the GPU. That makes sense for, say, a Winmodem. It doesn't make sense when the thing you are talking to is also a processor. In theory, it could be a single port that the driver crams all requests and data into and the GPU does whatever it wants and hands any return data back on a second port, although there are obvious thoroughput problems there.
And, before you ask, I do indeed program, although admittedly it's been a decade since any assembly language.
As opposed to the unmaintained drivers in the Linux kernel that no longer work, in part because no one has the cable any longer because the company went out of business. Good plan there, chief.
This is what is called 'Making stuff up'. Drivers in the Linux kernel work. Sometimes, very rarely, the interface changes enough that they do not compile and they get removed from the kernel, but it has to be a fairly rare piece of hardware. If they are there, they work on the versions of hardware they were written for.
But, go ahead. Come up with an example. No, new hardware that is not yet supported does not count, come up with some drivers that stopped working for certain hardware.
And, incidentally, mine was not a made up example. I have that cable. It is laying on the floor next to my feet. It is called a PC-Linq USB Cable. It works in Linux. It does not work in XP. (Not that I partically want it anymore...it's USB1.1.) Yes, you can find drivers for 2000, and find claims you can use those drivers in XP. You cannot. They install but don't work.
I also have the SCSI card that does not have XP drivers over there, and the network card that XP doesn't support over there. (XP doesn't support any ISA PNP network cards, I believe. Or many any non-PNP ISA network cards. There's some crazy rule like that. It took forever to find a spare coax card that worked, and, no, I couldn't rewire the network on a whim because the OS doesn't like the network card.)
All of those work in Linux. All of them were fairly current and usable hardware when XP came out, although now they're rather old and I don't have a use for them. These are not hypotheticals, they are actual pieces of hardware.
All of those things worked in 98. None of them work in XP, because the theory that 'manufacturers maintain drivers' is completely wrong.
Oh, and I have a 2003 laptop that standard Windows XP won't install on at all. Linux installs fine. This is one designed for XP, but only if you use their magical install CD. (It's not a restore CD, it's a real install CD. Damned if I know what it's doing different.)
And additionally the display drivers provider by the display manufacturer won't installed right so I couldn't change which screen I was working on until I tracked down the version provided by the laptop manufacturer. Which was exactly the same drivers but a slightly older version of the install.
This is the kind of shit you get when manufacturers provide drivers. Let's make things non-standard and fix them in the drivers! They break completely in XP without the right drivers, and yet somehow work in Linux, I suspect because the drivers are better coded. (Or maybe the Linux people just put in some if statements.)
In Linux, of course, my laptop just worked. Yeah, I had to track down my USB wifi driver...which compiled and worked. Of course, I have to do that on XP also, unless I carry my driver CD around.
Linux's 'serious advantage' is THE major reason why I couldn't have USB until 5 years after the spec was released.
The spec was released in Jan 1996. Linux first got USB support without kernel patching in 2.2.7, which was out April 1999. That is, in fact, slightly over three years, not five.
And no one was using USB in 1996. It technically was supported in Windows 95 OSR 2.1 and 2.5, but not if you want to get any work done. (If you're counting that crappy support, you have to count the external USB patches for Linux 2.1.x in 1998.)
USB didn't catch on until 1998 when Apple started shipping computers with only USB. Which also lead to the new 1.1 USB standard in 1998, and MS shipping it with 98.
Windows 98 was released in June 1998. Linux 2.2.7 was released in April 1999, so let's say distros were out by June 1999.
So if you were using Linux and USB, it took roughly a single year extra to get USB support vs. people purchasing new copies of Windows. Not five.
Actually, you can say 'Kill Kyle Broflowski, because Kyle is a Jew.'.
You cannot, however, say it to a mob holding shotguns thirty feet from Kyle. I.e., you can't say it if the mob is actually going to do what you say and kill him, right there.(1)
However, this would be illegal no matter what the reason for killing Kyle was.
Although it is sad that, under hate speech laws, you could be punished more if the reason was 'he is a Jew' vs. 'he's drinking Pepsi instead of Coke'. Either way, you did exactly the same thing and got exactly the same result. Motive has never been a legal determination of guilt before.
Motive and intent are two different things, before anyone talks about 1st and 2nd degree murder. Intent is how much you plan a crime, and what you intend the results to be, but motive is why you want to commit it at all. Assuming you sat down and planned it out, killing Kyle for the money vs. killing Kyle cause he slept with your wife vs. killing Kyle because he cut you off in traffic all have the same punishment, but killing Kyle because he's a Jew is somehow a bit worse than that.
Which is logically the same as saying those other motives are better for some reason. It is morally more sound, and is better for society, to kill Kyle for his life insurance than to kill him because he's Jewish, according to the law.
I have a lot of problems with this reasoning, not to least because people are free to think whatever they want, so saying that 'disliking Jews' is a 'bad thought' is a bit dodgy in American law. And if we go there, we have to punish people who killed him for his life insurance more, because fraud is illegal, and punish people who killed him for cutting them off in traffic less, because stopping Kyle from driving dangerously is a good thing...
Frankly, 'motive' needs to be entirely left out of the 'which law did you break' consideration. It's obviously used to help prove the case against people. (Or the lack is brought up to disprove cases.) It can even be brought up as a defense 'I committed this crime out of the goodness of my heart', or even 'He needed killing.'. (2) And it can brought up at sentencing, by whichever side, thinks it would look best, as it always could be.
But making 'motive laws' is just a bad idea in America. It does, indeed, lead to Thought Crime, even if to commit that Thought Crime you have to commit another crime at the same time.
1) It is also illegal to hire people to commit crimes for you, but that's not exactly the same thing.
2) Which can actually work as a legal defense in places besides Texas, depending on what 'needed' means. Besides the obvious self-defense, I mean. The canonical example is in a lifeboat in freezing water that is sinking with three people in it, it is legal for two for them to throw a third out, and even kill him if he attempts to get back in. It is also legal for him to attempt to kill one of them and take that person's place.
See, that I have a rather large problem with. Accusations of criminal activity.
Sure, possibly it should be okay to punish students for actual criminal activity. After they get convicted. Although I fail to see how a) the justice system didn't already punish them , and b) it's going to hurt the school if people speed.
However, punishing students for possible crimes, one they have not actually been charged with, should be flatly outlawed, and I mean that literally. It should be illegal to claim a student has broken the law and punish them for it.
In fact, it is slander to claim someone has broken the law if they have not done so, so, in theory, it already is illegal.
Poeple here are really confused. Some stares outlaw possession for minors, some states don't. Some outlaw it with harsh fines and community service, some merely take the tobacco away.
The state I'm in, Georgia, outlaws possession for 'personal use'. I.e., it is perfectly legal for minors to possess tobacco if they do not intend to consume it.
Which is such an unprovable situtation that, for all intents and purposes, it is legal for minors to possess tobacco as long as they are not currently smoking it, or at least the police will not attempt to fine you the 50 dollars. If the police stumble across the cigarettes you just claim 'Those are my parents.'.
Even if they come across evidence you smoke them...it's legal to smoke in the presense of your parents in this state, or in their house with their permission. They have to prove you intend to smoke them elsewhere.
Although the cops will steal your cigarettes if they come across them. Legally, they probably can't do without charging you with possession, but objecting would probably piss them off enough they would give you a ticket and you'd have to fight it in court.
And, incidentally, this is why you'll see 16-year old kids selling tobacco in Walmart, at least in Georgia. They can legally do that, as they do not intend to consume the tobacco. (In fact, it is obviously illegal for them to stand around smoking Walmart's tobacco in Walmart for quite a few reasons, firstmost because that would be theft by conversion.) Hilariously, it is just as illegal for a 16-year old to sell tobacco to as 17-year old as anyone else.
And it's still illegal to purchase (or even barter!) cigarettes if you're underaged. And it's against the law to smoke at school, regardless of your age, and I'm not just talking about school rules or students. Against the law, period. Even visitors to football games cannot, in theory, smoke.
And, no, I didn't smoke as a minor, and I still don't smoke. I just knew a lot of smart people who did.
If they want to enforce a non-disruptive dress code, they shouldn't let students wear damn Halloween costumes, which is almost the defination of 'disruptive clothing'. Heck, the kids probably didn't think of that on their own, the school more than likely had an offical 'Halloween' where people dress up.
However, 'disruptive' in schools is almost always code for 'the teachers react to it'. Clothing is not disruptive unless it plays loud noises or flashes lights, or students get up during class to mess with it.
No student would even try to get away with the first two during class, and the later simply wouldn't happen in high school because the students enjoy watching accusations of 'disruption' too much, and the joke is ruined if it actually is causing one, so they will sit carefully and quietly facing forward, waiting for the lies about 'disruption' to start.
In the entire time I went to high school, I have yet to see anything except a fight or a loud argument cause a 'disruption' in school. And a cell phone, once. (This is in the age when cell phones were banned because 'drug dealers use them'.) Possibly if there were gangs, gang colors and symbols could cause a problem, but I suspect in schools where that is a problem, no one does anything about them.
Yet my peers kept having silly and provocative things they did called 'disruptive'.
All high schoolers know 'disruptive' is a lie. It's a way to get rid of anything the administration doesn't like, without actually making a rule against it.
OTOH, by our senior year, the school had caught on to our class, and even let a guy run for 'homecoming queen' without the slightest reaction.
Teachers work at a school. And despite what you think, pretty much all information about students is restricted, not just 'scans of tests', whatever the fuck you're talking about there. Even stuff that could trivially be observed by anything, like school attendance, people working for the school are not supposed to give out to the public.
They certainly are not supposed to comment on the relative intelligence of students, although they tend to ignore those rules when they are praising student. Almost every teacher in this country would agree that saying 'X is a moron' in public is not something teachers should be doing and should be dismissed for, or at least not have their contracts renewed. They would probably frown upon stating it in that manner even in the privacy of the teacher's lounge.
In general, people who work for the government should not be handing out random information or even opinions about people who interact with them, be that DEFACS talking about who gets food stamps, the tax people talking about what your cars are worth and what your income is, the social security people giving out your number, the censor talking about how many people live in your house, or the teachers talking about their students. Private businesses can set the rules however they want, but leakage of your information with the government should be nothing to people outside the government. Even if the information is retrievable elsewhere.
Students OTOH, are subjects of a school, it is in a position of authority over them. They do not work for the school. They are required to obey the school's instructions by law for behavior while at school, and leaving and going to school, and at no other time, and the school is restricted in how it can punish them. And as the school is a government institution, it has certain things it is forbidden to do even for students who are physically present at the school, freedom of speech being one of them.
Teachers are employees of government institutions, and students are forced users of those institutions. Their sitution is not comparable. It's as idiotic as comparing the rules of behavior for IRS employees with the rules of behavior for taxpayers. If I happen upon your tax return, I can tell everyone how much you make. They cannot, and this is how it should be.
As for people bearing responsiblity...the kid didn't start this. The school started illegally hassling him about something that was none of their business, eventually punishing him. It would be like the DMV telling you to cut your grass, and eventually refusing to renew your license for that. That is none of the DMV's business, barring some really weird law, and don't go blaming people who refuse for the problems that the DMV is causing.
Why the hell would it be the job of the kernel developers to debug other people's binary drivers? They didn't make them, they can't fix them(1), it's not their job. No one even vaguely thinks it is besides you.
What the 'We do not support binary modules in the kernel' rule means is that they will not debug a problem in a kernel in which a binary driver has been loaded at all, even if it has since been unloaded, as they do not know what it did. This is called 'tainting' the kernel, and it shows up on the stack trace. (The 'even if unloaded' rule is important, as a module unloading itself is actually harder to do correctly than loading. Which is why you can build a kernel without module unloading if you want.)
And, no, they cannot just 'test' it, because they don't have the binary kernel driver, but, more importantly, they are rather unlikely to have the actual piece of hardware that goes with it, and you can't run drivers without the hardware they go to. And if it actually was the binary driver's fault...what do they do then? They just wasted a bunch of time screwing around with something they can't fix.
Ergo, if you want to report a problem, you reboot and don't load the binary driver, and see if you can cause the same problem. If you can, report it. If it only happens when the binary driver is loaded, or has been loaded and unloaded, report it to whoever gave you the driver, and don't bother the kernel devs.
1) It could be their problem if, as you suggested, they had a ABI. This is one of the reasons they do not, because they'd have to make sure they never broke a binary module. They don't even promise that the binary interface will stay the same on the exact same version of the kernel between compiles. (In fact, there is an option you can toggle in the kernel config of 2.6 to use a 'new' way to pass parameters that will, in fact, break all modules compiled with the option the other way. This is actually a tiny attempt to a slight ABI instead of pettiness, because eventually only the 'new' way will be support, IIRC, but this lets you keep using the old binary interface for a bit.)
However, your ZeroConfig example is not what happened unless he was trying to distribute a binary modules, because the kernel API (Including the 'compile a module outside the kernel tree, which works perfectly well) does not change between minor kernel versions. It changed between 2.4 and 2.6, and will probably change for 2.8 or whatever, but not between 2.6.1 and 2.6.9. (And, obviously, it changed several times between 2.5.1 and the last 2.5.x, but people running dev kernels are not allowed to complain about that.)
The kernel vetting process is probably the one of the two reasons that Linux is successful.
Linus isn't a greatest coder around, probably not even the best coder working on Linux, and there are all kinds of hardware he doesn't understand at all.
But one thing he can do better than anyone is look at code and recognize if it's crap or not, and if it's crap he'll say 'No.'. And if it touches too many systems without good reason, even if well coded, he'll say 'No.'. Without this ability, the Linux kernel would have collapsed under its own weight long before now.
The reason is that he's willing to delegate subsystems to people who have demonstrated they can do the same thing as him. It's like a tree, where code goes downward, where at the top, at entry, it's checked 'does this do the right thing for hardware X?' by people who really know hardware X and how drivers for it work in Linux, and at the bottom Linus checks 'is this actually good code?', possibly without even understanding why it needs to do what it does, sometimes with people in the middle. Neither badly-written nor wrong-doing code makes it in.
This, incidentally, is why most of the disputes in the kernel development are about things outside this, non-driver things, like devfs/udev, or memory management, or OOM process killing. The code isn't bad, Linus would keep it out, but people disagree what is right and wrong behavior.
But when it comes to drivers, the process is almost seemless, because 'right' behavior is fairly obvious there. The only problems are in the few singular instances where someone who maintains a rarely-changed subsystem vanishes off the planet, and someone bounces around a while before they can get an update into the filtering tree.
In fact, there are already people that discriminate on profession, although it's usually 'who can get in', verse 'who canno get in'. For example, you want to join a policeman's union, you have to, duh, be a policeman.
If you said 'People with red hair cannot view this site', because you dislike the Irish, you're on shakey legal ground because, while hair color is not a protected class under various civil rights statues, you are trying to ban a protected class by banning that.
However, 'policeman' doesn't translate to any protected class I can imagine. It is perfectly legal to discriminate against them as a group, to say 'policemen can go here, but not here, and teachers can go here, but not here'.
Now, of course, if you're setting rules for groups, there's always the argument that someone didn't know you were talking about them...which is why statements like those pretty clearly say anyone involved in law enforcement is banned.
It just doesn't beat it by as the absurd amount as its process creation beats MS's process creation.
Think of it this way:
Linux threads: great
Linux processes: great
Windows threads: good
Windows processes: horrible
Making threads is just as fast as making processes on Linux, you loon, because processes are threads and vis versa. It's literally the same system call, and all that gets specificied different is what 'the same' between things and what should be duplicated. (Although it's not actually duplicated until it changes.)
For example, apache and sshd, and various FTPds, can be restarted without anyone possibly noticing, because they simply leave any running children open. You connected before a certain time, you got the old copy, you connected after it, you got the new one.
And, of course, many protocols work fine if you go away for five seconds, like SMB. The client program will just say 'oops, connection hiccup' and reconnect silently, and the end user never notices. Same with IMAP clients. They go 'Hey, the server closed my connection, I better open it again'.
Restarting services on a Linux box is 99% transparent to end users, even ones that are currently directly doing something with the server.
Rebooting is not transparent, even if all the connections are reaqquired automatically, simply because work stopped for the two minute reboot.
I meant 'Eugenics in the non-killing-people sense...'
The linking of Nazism and socialism, and, thus, the linking of socialism and eugenics, is why I called him an idiot.
Eugenics in the killing-people sense was picked up for a decade or two after Darwin came out with his theories. For a sci-fi treatment of this, notice the 'Howard Families' in Heinlein's books, where it's solely encouraging people to breed.
It wasn't, however, attached in any way to socialism, although there were a few people who were fans of both, and this wasn't 'modern' racist eugenics, it was a theory that to improve the human race, the sickly should voluntarily refrain from breeding. (At that point, it wasn't really understood that the reason most people, especially the poor, were so 'sickly' was malnutrition, not genetics. Darwin had made a very big impact.)
Which, incidently, is indeed something that happens in the real world, and is why people get themselves tested to see if they carry certain recessive harmful diseases, so they can refrain from passing them on. Don't confuse it with the genocidal eugenics practiced by the Nazi.
Trying to improve the gentic makeup of the species by refraining from passing on bad genes is eugenics, as is trying to kill all Jews to keep them from passing on 'Jew' genes. This does not make the actions morally equivilent, and you will not find any part of socialist ideals that includes the latter.
Ergo, it is perfectly sane to put up a message banning whoever you want, and yes, that does have legal enforcablity. I don't know what this has to do with an Federal privacy bill, it's state laws that ban 'unauthorized access'.
Think of it this way: Bars are normally open to the public. People go in and out at will, and so can police.
Private clubs, with a bouncer? They have to ask to come in, and they can be told no, and then they don't get to wander in and look around.
This, of course, doesn't stop them from entering if they have a search warrant.
I don't know why people would think the police have some sort of special right to poke around online on a system they are explicitly unauthorized to use.
Neither is attempting to do something about it uncommon.
In the modern world, it quite commonly does in fact take the form of the CIA beaming mind-control rays into their head and they trying to block them with tin foil. Not because that makes any more sense than, say, witches running around casting spells on people and demonic possession, but simply because it's more modern.
That's not to say there aren't any people who think it's witches or whatever.
But there are a limited number of explanations as to where the crazy voices are coming from. Although a few people do, occasionally, invent new ones...and in 100 years, one of those might have really caught on enough to be the new 'tinfoil hat'.
You are an idiot, aren't you?
Oh no! Gamma's running amuck on the internet!
Well, you can write code explicitly for that processor, for one thing. Instead of the many different added instructions that x86 processors have, and the timing differences between processors.
If it's doing that much work in the software, and can't be reasonably done on the GPU, they should just put a damn CPU on the graphic card.
And this comment is why I have the low ID and you don't, except it doesn't work that way.
GPUs, nowdays, are Turing-complete. They can run any damn software they want. They can sit there and emulate an X-Box or a z80 calculator or ENIAC, although obviously they'd be too slow to be an X-Box.
They are extremely crappy at many things a CPU is extremely good at, and vis versa. However, this does not logically lead to 'And, hence, we need propietary software running on the CPU.'. All that software does is talk to the GPU. How do I know?
Because if it did anything to manipulate the data by itself, competitors could rather trivially see what it was doing, and thus it wouldn't be very 'secret'.
I was complaining about the big proprietary blob of software running on the CPU that does nothing but talk to the GPU. That makes sense for, say, a Winmodem. It doesn't make sense when the thing you are talking to is also a processor. In theory, it could be a single port that the driver crams all requests and data into and the GPU does whatever it wants and hands any return data back on a second port, although there are obvious thoroughput problems there.
And, before you ask, I do indeed program, although admittedly it's been a decade since any assembly language.
This is what is called 'Making stuff up'. Drivers in the Linux kernel work. Sometimes, very rarely, the interface changes enough that they do not compile and they get removed from the kernel, but it has to be a fairly rare piece of hardware. If they are there, they work on the versions of hardware they were written for.
But, go ahead. Come up with an example. No, new hardware that is not yet supported does not count, come up with some drivers that stopped working for certain hardware.
And, incidentally, mine was not a made up example. I have that cable. It is laying on the floor next to my feet. It is called a PC-Linq USB Cable. It works in Linux. It does not work in XP. (Not that I partically want it anymore...it's USB1.1.) Yes, you can find drivers for 2000, and find claims you can use those drivers in XP. You cannot. They install but don't work.
I also have the SCSI card that does not have XP drivers over there, and the network card that XP doesn't support over there. (XP doesn't support any ISA PNP network cards, I believe. Or many any non-PNP ISA network cards. There's some crazy rule like that. It took forever to find a spare coax card that worked, and, no, I couldn't rewire the network on a whim because the OS doesn't like the network card.)
All of those work in Linux. All of them were fairly current and usable hardware when XP came out, although now they're rather old and I don't have a use for them. These are not hypotheticals, they are actual pieces of hardware.
All of those things worked in 98. None of them work in XP, because the theory that 'manufacturers maintain drivers' is completely wrong.
Oh, and I have a 2003 laptop that standard Windows XP won't install on at all. Linux installs fine. This is one designed for XP, but only if you use their magical install CD. (It's not a restore CD, it's a real install CD. Damned if I know what it's doing different.)
And additionally the display drivers provider by the display manufacturer won't installed right so I couldn't change which screen I was working on until I tracked down the version provided by the laptop manufacturer. Which was exactly the same drivers but a slightly older version of the install.
This is the kind of shit you get when manufacturers provide drivers. Let's make things non-standard and fix them in the drivers! They break completely in XP without the right drivers, and yet somehow work in Linux, I suspect because the drivers are better coded. (Or maybe the Linux people just put in some if statements.)
In Linux, of course, my laptop just worked. Yeah, I had to track down my USB wifi driver...which compiled and worked. Of course, I have to do that on XP also, unless I carry my driver CD around.
Linux's 'serious advantage' is THE major reason why I couldn't have USB until 5 years after the spec was released.
The spec was released in Jan 1996. Linux first got USB support without kernel patching in 2.2.7, which was out April 1999. That is, in fact, slightly over three years, not five.
And no one was using USB in 1996. It technically was supported in Windows 95 OSR 2.1 and 2.5, but not if you want to get any work done. (If you're counting that crappy support, you have to count the external USB patches for Linux 2.1.x in 1998.)
USB didn't catch on until 1998 when Apple started shipping computers with only USB. Which also lead to the new 1.1 USB standard in 1998, and MS shipping it with 98.
Windows 98 was released in June 1998. Linux 2.2.7 was released in April 1999, so let's say distros were out by June 1999.
So if you were using Linux and USB, it took roughly a single year extra to get USB support vs. people purchasing new copies of Windows. Not five.
As for your Intellimouse..
You cannot, however, say it to a mob holding shotguns thirty feet from Kyle. I.e., you can't say it if the mob is actually going to do what you say and kill him, right there.(1)
However, this would be illegal no matter what the reason for killing Kyle was.
Although it is sad that, under hate speech laws, you could be punished more if the reason was 'he is a Jew' vs. 'he's drinking Pepsi instead of Coke'. Either way, you did exactly the same thing and got exactly the same result. Motive has never been a legal determination of guilt before.
Motive and intent are two different things, before anyone talks about 1st and 2nd degree murder. Intent is how much you plan a crime, and what you intend the results to be, but motive is why you want to commit it at all. Assuming you sat down and planned it out, killing Kyle for the money vs. killing Kyle cause he slept with your wife vs. killing Kyle because he cut you off in traffic all have the same punishment, but killing Kyle because he's a Jew is somehow a bit worse than that.
Which is logically the same as saying those other motives are better for some reason. It is morally more sound, and is better for society, to kill Kyle for his life insurance than to kill him because he's Jewish, according to the law.
I have a lot of problems with this reasoning, not to least because people are free to think whatever they want, so saying that 'disliking Jews' is a 'bad thought' is a bit dodgy in American law. And if we go there, we have to punish people who killed him for his life insurance more, because fraud is illegal, and punish people who killed him for cutting them off in traffic less, because stopping Kyle from driving dangerously is a good thing...
Frankly, 'motive' needs to be entirely left out of the 'which law did you break' consideration. It's obviously used to help prove the case against people. (Or the lack is brought up to disprove cases.) It can even be brought up as a defense 'I committed this crime out of the goodness of my heart', or even 'He needed killing.'. (2) And it can brought up at sentencing, by whichever side, thinks it would look best, as it always could be.
But making 'motive laws' is just a bad idea in America. It does, indeed, lead to Thought Crime, even if to commit that Thought Crime you have to commit another crime at the same time.
1) It is also illegal to hire people to commit crimes for you, but that's not exactly the same thing.
2) Which can actually work as a legal defense in places besides Texas, depending on what 'needed' means. Besides the obvious self-defense, I mean. The canonical example is in a lifeboat in freezing water that is sinking with three people in it, it is legal for two for them to throw a third out, and even kill him if he attempts to get back in. It is also legal for him to attempt to kill one of them and take that person's place.
Sure, possibly it should be okay to punish students for actual criminal activity. After they get convicted. Although I fail to see how a) the justice system didn't already punish them , and b) it's going to hurt the school if people speed.
However, punishing students for possible crimes, one they have not actually been charged with, should be flatly outlawed, and I mean that literally. It should be illegal to claim a student has broken the law and punish them for it.
In fact, it is slander to claim someone has broken the law if they have not done so, so, in theory, it already is illegal.
The state I'm in, Georgia, outlaws possession for 'personal use'. I.e., it is perfectly legal for minors to possess tobacco if they do not intend to consume it.
Which is such an unprovable situtation that, for all intents and purposes, it is legal for minors to possess tobacco as long as they are not currently smoking it, or at least the police will not attempt to fine you the 50 dollars. If the police stumble across the cigarettes you just claim 'Those are my parents.'.
Even if they come across evidence you smoke them...it's legal to smoke in the presense of your parents in this state, or in their house with their permission. They have to prove you intend to smoke them elsewhere.
Although the cops will steal your cigarettes if they come across them. Legally, they probably can't do without charging you with possession, but objecting would probably piss them off enough they would give you a ticket and you'd have to fight it in court.
And, incidentally, this is why you'll see 16-year old kids selling tobacco in Walmart, at least in Georgia. They can legally do that, as they do not intend to consume the tobacco. (In fact, it is obviously illegal for them to stand around smoking Walmart's tobacco in Walmart for quite a few reasons, firstmost because that would be theft by conversion.) Hilariously, it is just as illegal for a 16-year old to sell tobacco to as 17-year old as anyone else.
And it's still illegal to purchase (or even barter!) cigarettes if you're underaged. And it's against the law to smoke at school, regardless of your age, and I'm not just talking about school rules or students. Against the law, period. Even visitors to football games cannot, in theory, smoke.
And, no, I didn't smoke as a minor, and I still don't smoke. I just knew a lot of smart people who did.
At least his business plan had no ? in it.
However, 'disruptive' in schools is almost always code for 'the teachers react to it'. Clothing is not disruptive unless it plays loud noises or flashes lights, or students get up during class to mess with it.
No student would even try to get away with the first two during class, and the later simply wouldn't happen in high school because the students enjoy watching accusations of 'disruption' too much, and the joke is ruined if it actually is causing one, so they will sit carefully and quietly facing forward, waiting for the lies about 'disruption' to start.
In the entire time I went to high school, I have yet to see anything except a fight or a loud argument cause a 'disruption' in school. And a cell phone, once. (This is in the age when cell phones were banned because 'drug dealers use them'.) Possibly if there were gangs, gang colors and symbols could cause a problem, but I suspect in schools where that is a problem, no one does anything about them.
Yet my peers kept having silly and provocative things they did called 'disruptive'.
All high schoolers know 'disruptive' is a lie. It's a way to get rid of anything the administration doesn't like, without actually making a rule against it.
OTOH, by our senior year, the school had caught on to our class, and even let a guy run for 'homecoming queen' without the slightest reaction.
Teachers work at a school. And despite what you think, pretty much all information about students is restricted, not just 'scans of tests', whatever the fuck you're talking about there. Even stuff that could trivially be observed by anything, like school attendance, people working for the school are not supposed to give out to the public.
They certainly are not supposed to comment on the relative intelligence of students, although they tend to ignore those rules when they are praising student. Almost every teacher in this country would agree that saying 'X is a moron' in public is not something teachers should be doing and should be dismissed for, or at least not have their contracts renewed. They would probably frown upon stating it in that manner even in the privacy of the teacher's lounge.
In general, people who work for the government should not be handing out random information or even opinions about people who interact with them, be that DEFACS talking about who gets food stamps, the tax people talking about what your cars are worth and what your income is, the social security people giving out your number, the censor talking about how many people live in your house, or the teachers talking about their students. Private businesses can set the rules however they want, but leakage of your information with the government should be nothing to people outside the government. Even if the information is retrievable elsewhere.
Students OTOH, are subjects of a school, it is in a position of authority over them. They do not work for the school. They are required to obey the school's instructions by law for behavior while at school, and leaving and going to school, and at no other time, and the school is restricted in how it can punish them. And as the school is a government institution, it has certain things it is forbidden to do even for students who are physically present at the school, freedom of speech being one of them.
Teachers are employees of government institutions, and students are forced users of those institutions. Their sitution is not comparable. It's as idiotic as comparing the rules of behavior for IRS employees with the rules of behavior for taxpayers. If I happen upon your tax return, I can tell everyone how much you make. They cannot, and this is how it should be.
As for people bearing responsiblity...the kid didn't start this. The school started illegally hassling him about something that was none of their business, eventually punishing him. It would be like the DMV telling you to cut your grass, and eventually refusing to renew your license for that. That is none of the DMV's business, barring some really weird law, and don't go blaming people who refuse for the problems that the DMV is causing.
s/abuse/get abused by/
Hey! The President has an IQ of at least 80. Possibly as high as 90!
What the 'We do not support binary modules in the kernel' rule means is that they will not debug a problem in a kernel in which a binary driver has been loaded at all, even if it has since been unloaded, as they do not know what it did. This is called 'tainting' the kernel, and it shows up on the stack trace. (The 'even if unloaded' rule is important, as a module unloading itself is actually harder to do correctly than loading. Which is why you can build a kernel without module unloading if you want.)
And, no, they cannot just 'test' it, because they don't have the binary kernel driver, but, more importantly, they are rather unlikely to have the actual piece of hardware that goes with it, and you can't run drivers without the hardware they go to. And if it actually was the binary driver's fault...what do they do then? They just wasted a bunch of time screwing around with something they can't fix.
Ergo, if you want to report a problem, you reboot and don't load the binary driver, and see if you can cause the same problem. If you can, report it. If it only happens when the binary driver is loaded, or has been loaded and unloaded, report it to whoever gave you the driver, and don't bother the kernel devs.
1) It could be their problem if, as you suggested, they had a ABI. This is one of the reasons they do not, because they'd have to make sure they never broke a binary module. They don't even promise that the binary interface will stay the same on the exact same version of the kernel between compiles. (In fact, there is an option you can toggle in the kernel config of 2.6 to use a 'new' way to pass parameters that will, in fact, break all modules compiled with the option the other way. This is actually a tiny attempt to a slight ABI instead of pettiness, because eventually only the 'new' way will be support, IIRC, but this lets you keep using the old binary interface for a bit.)
However, your ZeroConfig example is not what happened unless he was trying to distribute a binary modules, because the kernel API (Including the 'compile a module outside the kernel tree, which works perfectly well) does not change between minor kernel versions. It changed between 2.4 and 2.6, and will probably change for 2.8 or whatever, but not between 2.6.1 and 2.6.9. (And, obviously, it changed several times between 2.5.1 and the last 2.5.x, but people running dev kernels are not allowed to complain about that.)
Linus isn't a greatest coder around, probably not even the best coder working on Linux, and there are all kinds of hardware he doesn't understand at all.
But one thing he can do better than anyone is look at code and recognize if it's crap or not, and if it's crap he'll say 'No.'. And if it touches too many systems without good reason, even if well coded, he'll say 'No.'. Without this ability, the Linux kernel would have collapsed under its own weight long before now.
The reason is that he's willing to delegate subsystems to people who have demonstrated they can do the same thing as him. It's like a tree, where code goes downward, where at the top, at entry, it's checked 'does this do the right thing for hardware X?' by people who really know hardware X and how drivers for it work in Linux, and at the bottom Linus checks 'is this actually good code?', possibly without even understanding why it needs to do what it does, sometimes with people in the middle. Neither badly-written nor wrong-doing code makes it in.
This, incidentally, is why most of the disputes in the kernel development are about things outside this, non-driver things, like devfs/udev, or memory management, or OOM process killing. The code isn't bad, Linus would keep it out, but people disagree what is right and wrong behavior.
But when it comes to drivers, the process is almost seemless, because 'right' behavior is fairly obvious there. The only problems are in the few singular instances where someone who maintains a rarely-changed subsystem vanishes off the planet, and someone bounces around a while before they can get an update into the filtering tree.