And this is a great example of why most people shouldn't be allowed near a security product without training. Training which includes getting their head slapped when they say things like this.
Repeat after me: If the debug symbols in your executable have ANY EFFECT WHATSOEVER on the security of your product, your product is insecure.
Let's say that again: Debug symbols are a good thing. They allow people to analyze the behavior of your software better. If analyzing the behavior of your software leads them to conclude that it's insecure, then it was insecure WHETHER OR NOT YOU HAD DEBUG SYMBOLS.
A third time: A secure piece of software is secure whether or not you ship the debug symbols, the source code, and a giant manual explaining the design of the system in excruciating detail. If any of these things affects the security in any way, your design is broken.
The fact is, every time something like this comes up, people start screaming "kill the messenger!" In this case, the messenger was the debug symbols. The message was, "this security product is a laughable toy."
Come on, if they'd shipped you the software in non-compiled python, would you have screamed, "What fools! Only hand coded assembly can be secure!" ? Ridiculous. A secure design can be implemented in any language whatsoever, with or without source code, object code, and symbols.
If you are the least bit worried about supplying all those things with your software, you have no business calling it a security product.
It's a toy.
Case in point: this memory stick. It sure is a good thing they made it so easy to analyze their system with debugging symbols. If they hadn't, people might still be falsely believing it was a security product, and putting their valuable data in it. Now wouldn't that be a terrible thing?
"As it is, it's Tacoma, and thus only has merely common levels of decency, and thus there's a few vultures present."
... that is, if you consider zombie hordes of meth heads prowling the streets in broad daylight, tearing people from their cars and then ripping the human flesh off with rotting zombie teeth and broken shards of Chihuly glass to be the common level of decency. We are talking about Tacoma here, right?
It's nice to know that you hold "intellectual property" with a higher standard of protection than actual real property.
So, if you steal from Sue, the court can order you to hand Sue the keys to your car in compensation. Your car is actual property.
But... in-tel-lec-tu-al property?! OMG Ponies No! That must be protected by knights flying on gilded dragons from ever being at risk, no matter what!
Considering the shit Microsoft has pulled in the past, they're lucky the EU doesn't just seize Windows in compensation, and leave the company trying to sell Clippy licenses.
What you're basically saying is that some places are intolerable places to work, and if you put up with their bullshit, they'll abuse you. If too many people put up with their bullshit, other places will tend to become intolerable too.
The only ways to curtail the race to the bottom are strong will and legislation.
Why do you assume that some idiot scanner company has the slightest clue about linux? Particularly the support people?
Most hardware is supported by Linux, and 90% of the linux drivers were written by the linux community with little vendor support. With few exceptions, companies have historically been worse than useless at providing linux drivers (very often, they actively try to prevent them from being written).
If you want to find a scanner that's supported by linux out of the box, ask linux people.
You're quite right - not only is it possible to load things in as-needed, it's not even particularly hard.
It's amazing how many/. comments on the Gimp bear no resemblance to reality at all.
The Gimp has had support for enormous images for a long time through the use of tiling.
I have The Gimp open right now editing a 3 gigabyte image, and it works fine... and it's using 200MB of ram to do it!
Well, ok, it's a little slow, but nothing a few hundred dollars in RAM couldn't fix. I'm sure it could be improved, but this thread is just hilarious. Far from being impossible, in fact, the Gimp already has this "one nasty hack" and has had it for a while.
And as for the XP comment... Your average Linux system can't allocate more than 2-3GB of ram to a process, either (depending on configuration). This isn't an OS limitation - a 32-bit processor only has 4GB of address space to use. And yet, somehow, many programs, including for example The Gimp can open and manipulate images much larger than this!
I'd like to propose a DRM scheme which I'm confident is the only one which can meet all the requirements for a non-evil DRM simultaneously -- specifically, it must allow legal copying, but prevent illegal copying. In addition, it must be compatible with all operating systems, including ones that already exist and don't yet exist, and those operating systems that will exist in 500 years or whenever the copyright eventually expires.
Here is how this DRM scheme works: 1. There is a field in the file which specifies that it's copyrighted, along with some details about who owns the copyright, when it was copyrighted, in what location, etc. 2. When you make a copy of the file in a way that might reasonably be thought to infringe a law somewhere (eg. you send it over the network), software should show the following:
"Warning: file is copyright (c) Joe Schmoe, 2007." "Please verify that the copy you are about to make is legal." "Really copy? [Copy] [Cancel]"
3. If the user presses [Copy], the copy is made. 4. If the user pressed [Cancel], the copy is not made.
This is the only workable "DRM" scheme which will effectively prevent infringing copies, while allowing users to make the legal copies to which they're entitled.
If you wanted to make it really fancy, you could extend it to Manage Digital Rights, and for example display a link to a site you can go to purchase the right to make another copy, as well as keep track of when the copyright expires.
The funny thing is, all the popular file formats already support this scheme (mp3, etc.), yet for some reason the *AA don't seem to want anyone to use it. I wonder why... Could it be that they don't actually want a scheme that effectively manages your rights and allows you to make use of them as the law allows?
You assume Hans Reiser actually has anything to do with the development of his filesystem. This isn't true, at all. Rather, he hired a couple Russian guys to write it for him. They've done all the work for years.
His main contribution in reality is getting into flame wars on the linux kernel mailing list. And if you read any of his posts there, you'd surely believe he's guilty.
Graphics processors aren't really as important for a console system as a PC, though, since consoles target an output device with a typical resolution of 640x480 at 60 frames per second at most (and more like 30 in most cases). Sure, a few people might have HDTV, but not many.
Plus, the PS3 has a herd of vector coprocessors to assist the video engine. I don't think anyone is going not buy a PS3 because it fails to meet some artificial benchmark in the lab. They're going to complain that it costs a hell of a lot for the small number of games available.
Two monitors. Each monitor has its own set of 8 virtual desktops. Most of these desktops have maximized terminal windows, though some of them have groups of smaller terminal windows.
Each monitor also has an Emacs window taking up one desktop. One monitor has a Firefox window. I'd probably have two of those too, except Firefox kind of blows and can't do that reasonably.
The terminals are split up among several different sorts of tasks. A few of them are dedicated to specific things like email (mutt), IRC/IM, and the like. Many of them display various program-related outputs from various processes/execution threads. Other ones are general purpose shells.
Overall, there are probably about 25 windows at all times. In addition, Firefox will always have at least half a dozen tabs.
Under no circumstances will I touch that horrible rattain thing except to drive Firefox. Those things are evil. All workspace switching etc. is by keyboard. If the main UI environment tried to make me use the rattail thing for any ordinary task, I would delete it and install another. In general, if something asks me to "click here" a lot, I go to a terminal window, type "kill pid" and then delete it. Obviously certain types of apps (drawing programs etc.) are exempted.
At one point I was working at a place where we had to work with some horrific Windows based build process. I spent about a week trying to beat the Winblows box into submission, but there was really no way to make the horrible user interface work in a reasonable fashion. I ended up installing cygwin and ssh'ing into the thing from a Linux box to run builds. That worked a lot better.
Recently I've tried using Macs a bit, and found them to be fairly ok. The lack of decent virtual desktop support kind of restricts them to toy uses for now though, though I hear they might support a functional environment for doing work in the next release.
In the long run, this is exactly what should be done on desktop systems, though. With a decent realtime kernel, it's mostly a matter of the userspace API as to whether the apps are allowed to demand realtime priorities.
For example, we could have an API that guarantees a video player realtime scheduling and all that goes with it, as long as it uses less than eg. 50% of the CPU (to prevent lockup). If the apps are then properly written (impossible for video, right now, because of the X server), then it won't be a matter of fewer skips as it is of no skips ever, under any circumstances. This is as it should be - modern computers are plenty powerful enough to give a good audio/video experience.
Absolutely the opposite of the truth. Your professor is utterly full of shit.
Microsoft is notorious for trying to run employees into the ground with continuous 60-hour work weeks, never ending political battles, constant re-orgs, and in general an insane culture so absurd that books have been written about it.
And let's not forget their sexist hiring practices, the thousands upon thousands of "temporary" employees who do all the QA in the nine months before they get hit with the yearly layoff, and the fact that dodging flying chairs becomes a survival instinct.
There's a reason Microsoft is called "the evil empire" - and it's not just because of their products. People who work at Microsoft find it very hard to ever escape, or work at other companies. The psychotic work environment there rots their brain and gives them skills (dodge chair! dodge!) that don't apply at other companies, while ruining any general computer skills they may once have had.
Yes, a person would have to be crazy not to take the job at Google.
Usually, if an application can split its work up into 2 threads, it can split its work up onto n threads (if it's well designed). This isn't always the case, but it tends to be. The hard part is breaking an algorithm up into pieces, usually not the number of pieces in particular.
So, for example, it could spread its work over 100 threads on a 1-CPU machine. This would be an inefficient use of threads, if they're all doing work. Usually 1 or 2 threads is ideal for a 1-core machine.
Similarly, it could spread over 2 threads on a 4-core machine. This would also be inefficient, since 2 of the cores would be idle.
So, ideally, the program usually should have some way of asking the OS, "how many threads should I run for best efficiency?" In general, the question it really asks is, "how many execution cores are there?" and then it just uses that, or multiplies by 2, or something.
So, the application needs to know how many cores there are as part of its auto-configuration, for performance. Often apps don't auto-configure this sensibly, and just spawn a fixed number. This isn't ideal, since it requires the user to twiddle something for no particular reason.
This all gets back to the purpose of the GPL: Freedom to change your software.
The original reason for the GPL (the specific case) was not being able to support a printer, because the software for it is unavailable. So, to make it work with a new OS, you're screwed unless the company decides to help you (and is still around).
Hence, the GPL, which states that if you get some software from someone, you can make changes, recompile it, and distribute those.
Now apply this exact same problem with the Tivo: They've given you a piece of hardware which is run using GPL software. The whole point of the GPL is that you're able to make changes to the software and distribute them. So for example, you could change the GPL software in the Tivo to do something else, such as remove HDMI copy restriction codes. That's a perfectly reasonable thing to do, particularly in a country where there's no law against it.
So, according to the GPLv3, that would be perfectly fine. If Tivo wants to benefit from GPL software in their device, then they simply have to make sure that you can make some changes to the software and load those changes onto the device, and have it work.
To say that they should be able to give you a device and some source code, but use a hardware signing scheme such that you can't update the software (but they can) is really not in the spirit of the GPL. How can you make changes if you're not allowed to load new software onto the computer? What if your printer used a hardware signing code to prevent you from changing the device driver so it'll run in a new version of the OS?
Why should I allow someone this backdoor around the GPL as a software creator? I gave my software away for free. If you want to distribute it and not give your users the same benefits I gave you (freedom to change and distribute), then you'd better come and ask me for some different terms. The terms I distributed it under were the freedom to make changes and distribute them.
Of course, this doesn't apply to Tivo's own non-GPL software, but if they want to use my software to implement HDMI or something, the user had better be able to make changes.
The idea of this requirement is to stop the client from having to differentiate itself to the server. So in this case, the client could (at your - the user's - option) send the same user agent string, or not. It's up to you.
The point is to prevent people from putting out GPL systems that implement DRM client-executable authentication. An example would be if the client was required to transmit a SHA1 hash of its executable image to the server, and the server then decided whether to give you the page or not based on that.
For such a system to pass the GPLv3 requirements, then the correct SHA1 hash for the version the server wants to talk to has to be included along with the source code, and the source code, when you build it, has to send that hash instead of a real hash. In other words, it has to keep working when you build your own copy, even if you change it.
This requirement basically forbids that sort of thing entirely. You can give a hash, and the server can respond to that hash, but it can't be a secret hash. This is the sort of thing DRM systems sometimes do to make sure you can't access your data. For example, games like WoW and EQ do things like this to prevent you from using a GPLed game client.
Yes, you're right of course - many people would skip the ads. But many people skip the ads anyway, by walking out of the room, fast-forwarding, muting them and chatting with their friends, or just ignoring them. The network can't force you to watch the ads -- all they can do is piss you off.
But they have this power mad mania with trying to impose their will on their customers, so the idea that you might be able to skip the ads just like you already could before is unacceptable to them, thus they won't even consider doing it.
This is a good point, but I think you're failing to see the incredible horribleness of corporate video offerings from an ease of use standpoint.
For example, I won't even consider touching the video on commercial web sites (except google). Why? Well, it's not because I'm morally opposed to downloading a video from ABC or CNN. No... it's because their video always sucks to an unbelievable degree, to the point where watching it is a nightmare. Let's consider:
Video is invariably hidden in some retarded web site which opens a window to try to force me to play the video in a thumbnail. Thus, I have to use firefox to tear their HTML apart to find a real link to the video. This is an extreme hassle - I hate having to debug other peoples' web sites just to use them.
Must have Microsoft Winfuck XP SP3 XXX mega pr0n MAX version 10 to install the player. Therefore, there is no chance I will ever consider watching this video. Use a generic video format + player, or game over.
Must install their software. BZZZT forget it. Too hard. Won't work. Will have a virus.
Must watch the video live on the network. I used to work at a company that wrote software to do this. It never worked well. Still doesn't. If I can't download it first, forget it.
Their software has a 100% chance of sucking. Case in point: Quicktime. My girlfriend has a Mac iBook with Quicktime on it. Does it suck? Yes, unbelievably so. The video is crappy and jittery, and the full screen button (get this) is greyed out and has a buy a non-crippled player ad next to it.
I can't skip commercials? That means the player doesn't work right. Hello, fast-forward? This thing is inferior to a VCR from 1982. Forget it.
... etc. The point is, the reason Bittorrent is so incredibly popular isn't because people are so excited that they can get an episode of Lost without commercials for free. They could already do that -- VCRs are old hat. The great thing about Bittorrent is that it's incredibly convenient compared to any of these pile-of-garbage corporate offerings.
And that's the problem with this ABC thing. It, like all the garbage before it, sucks. The network that created the show is going to offer a vastly inferior experience, with more hassle, than some random guys using bittorrent.
If they wanted to do something innovative, and better, they would simply have placed MPEG4 files (or torrents to keep their costs down) on their web site, with the commercials. This would have been much cheaper and easier to develop for them, and would be a better experience for their users. But of course, they never will do this, because the industry is insane.
Have you ever considered that there are better things to do with your money than blow it on petty hollywood entertainment? I mean, seriously. TV?!
Things you could do with $15k that are more fun than any amount of TV:
Fly to Europe and drink beer for a long time.
Buy a Motorcycle. Ride it very fast.
Remodel your house.
Buy a few very large monitors for your computer. Use them to display fish tanks.
Buy a large fish tank. Pay people to clean it for you.
Fly to Africa. Drink beer.
Fly to South America. See above.
Go to an actual movie theater with a nice woman. A thousand times.
Buy some books. Hundreds of them. Put them on wooden shelves. Read them in a nice armchair.
Invest it. In bonds. They're boring. But not as boring as "reality tv."
I mean, seriously. The point isn't that $15k is a lot of money (though it is an insane amount to spend on a freaking TV), but practically anything you spend it on is going to be more fun than television. The same goes for $1.5k, $.15k, or $.015k. Television sucks.
Forget looking again in 5 years. In 5 years, however much you have to spend, $150 or $1.5 million, you'll be able to find any number of things to do with it that are more fun than the boob tube.
Of course, my copy of firefox will leak about 10 megabytes a second if I just go to a page with hundreds of jpegs on it and hit shift-reload over and over again.
I wonder if that's a feature too?
(Even better, it doesn't leak Firefox process memory, but rather X11 pixmaps)
Basically, your question is:
"Is the US patent system absolutely bat-shit psychopathic lunatic insane?"
Yes.
"Could this be used to harm or destroy our business in unpredictable and random ways?"
Yes.
Any more questions?
And this is a great example of why most people shouldn't be allowed near a security product without training. Training which includes getting their head slapped when they say things like this.
Repeat after me:
If the debug symbols in your executable have ANY EFFECT WHATSOEVER on the security of your product, your product is insecure.
Let's say that again:
Debug symbols are a good thing. They allow people to analyze the behavior of your software better. If analyzing the behavior of your software leads them to conclude that it's insecure, then it was insecure WHETHER OR NOT YOU HAD DEBUG SYMBOLS.
A third time:
A secure piece of software is secure whether or not you ship the debug symbols, the source code, and a giant manual explaining the design of the system in excruciating detail. If any of these things affects the security in any way, your design is broken.
The fact is, every time something like this comes up, people start screaming "kill the messenger!" In this case, the messenger was the debug symbols. The message was, "this security product is a laughable toy."
Come on, if they'd shipped you the software in non-compiled python, would you have screamed, "What fools! Only hand coded assembly can be secure!" ? Ridiculous. A secure design can be implemented in any language whatsoever, with or without source code, object code, and symbols.
If you are the least bit worried about supplying all those things with your software, you have no business calling it a security product.
It's a toy.
Case in point: this memory stick. It sure is a good thing they made it so easy to analyze their system with debugging symbols. If they hadn't, people might still be falsely believing it was a security product, and putting their valuable data in it. Now wouldn't that be a terrible thing?
Rrrroooaaaaaah... <drool> <stab> <stab> Wwwweeeeelcoo tuuu Taaaaacohma... <gnaw gnaw gnaw>
Yeah, that's what Tacoma is like.
She's lucky they didn't set up a meth lab and then torch the place to see the pretty colors.
It's nice to know that you hold "intellectual property" with a higher standard of protection than actual real property.
So, if you steal from Sue, the court can order you to hand Sue the keys to your car in compensation. Your car is actual property.
But... in-tel-lec-tu-al property?! OMG Ponies No! That must be protected by knights flying on gilded dragons from ever being at risk, no matter what!
Considering the shit Microsoft has pulled in the past, they're lucky the EU doesn't just seize Windows in compensation, and leave the company trying to sell Clippy licenses.
And if you're smart, you won't do it.
What you're basically saying is that some places are intolerable places to work, and if you put up with their bullshit, they'll abuse you. If too many people put up with their bullshit, other places will tend to become intolerable too.
The only ways to curtail the race to the bottom are strong will and legislation.
Why do you assume that some idiot scanner company has the slightest clue about linux? Particularly the support people?
Most hardware is supported by Linux, and 90% of the linux drivers were written by the linux community with little vendor support. With few exceptions, companies have historically been worse than useless at providing linux drivers (very often, they actively try to prevent them from being written).
If you want to find a scanner that's supported by linux out of the box, ask linux people.
You're quite right - not only is it possible to load things in as-needed, it's not even particularly hard.
/. comments on the Gimp bear no resemblance to reality at all.
It's amazing how many
The Gimp has had support for enormous images for a long time through the use of tiling.
I have The Gimp open right now editing a 3 gigabyte image, and it works fine... and it's using 200MB of ram to do it!
Well, ok, it's a little slow, but nothing a few hundred dollars in RAM couldn't fix. I'm sure it could be improved, but this thread is just hilarious. Far from being impossible, in fact, the Gimp already has this "one nasty hack" and has had it for a while.
And as for the XP comment... Your average Linux system can't allocate more than 2-3GB of ram to a process, either (depending on configuration). This isn't an OS limitation - a 32-bit processor only has 4GB of address space to use. And yet, somehow, many programs, including for example The Gimp can open and manipulate images much larger than this!
I'd like to propose a DRM scheme which I'm confident is the only one which can meet all the requirements for a non-evil DRM simultaneously -- specifically, it must allow legal copying, but prevent illegal copying. In addition, it must be compatible with all operating systems, including ones that already exist and don't yet exist, and those operating systems that will exist in 500 years or whenever the copyright eventually expires.
Here is how this DRM scheme works:
1. There is a field in the file which specifies that it's copyrighted, along with some details about who owns the copyright, when it was copyrighted, in what location, etc.
2. When you make a copy of the file in a way that might reasonably be thought to infringe a law somewhere (eg. you send it over the network), software should show the following:
"Warning: file is copyright (c) Joe Schmoe, 2007."
"Please verify that the copy you are about to make is legal."
"Really copy? [Copy] [Cancel]"
3. If the user presses [Copy], the copy is made.
4. If the user pressed [Cancel], the copy is not made.
This is the only workable "DRM" scheme which will effectively prevent infringing copies, while allowing users to make the legal copies to which they're entitled.
If you wanted to make it really fancy, you could extend it to Manage Digital Rights, and for example display a link to a site you can go to purchase the right to make another copy, as well as keep track of when the copyright expires.
The funny thing is, all the popular file formats already support this scheme (mp3, etc.), yet for some reason the *AA don't seem to want anyone to use it. I wonder why... Could it be that they don't actually want a scheme that effectively manages your rights and allows you to make use of them as the law allows?
My girlfriend has a Prius. She generally gets about 50mpg. It can go as low as 45 in bad weather.
You assume Hans Reiser actually has anything to do with the development of his filesystem. This isn't true, at all. Rather, he hired a couple Russian guys to write it for him. They've done all the work for years.
His main contribution in reality is getting into flame wars on the linux kernel mailing list. And if you read any of his posts there, you'd surely believe he's guilty.
Graphics processors aren't really as important for a console system as a PC, though, since consoles target an output device with a typical resolution of 640x480 at 60 frames per second at most (and more like 30 in most cases). Sure, a few people might have HDTV, but not many.
Plus, the PS3 has a herd of vector coprocessors to assist the video engine. I don't think anyone is going not buy a PS3 because it fails to meet some artificial benchmark in the lab. They're going to complain that it costs a hell of a lot for the small number of games available.
Just pick the races you feel you are informed about. If you don't feel you're informed about any of them, study a few.
If you're not sure, leave that part blank. Surely you have some sort of opinion about something?
Two monitors. Each monitor has its own set of 8 virtual desktops. Most of these desktops have maximized terminal windows, though some of them have groups of smaller terminal windows.
Each monitor also has an Emacs window taking up one desktop. One monitor has a Firefox window. I'd probably have two of those too, except Firefox kind of blows and can't do that reasonably.
The terminals are split up among several different sorts of tasks. A few of them are dedicated to specific things like email (mutt), IRC/IM, and the like. Many of them display various program-related outputs from various processes/execution threads. Other ones are general purpose shells.
Overall, there are probably about 25 windows at all times. In addition, Firefox will always have at least half a dozen tabs.
Under no circumstances will I touch that horrible rattain thing except to drive Firefox. Those things are evil. All workspace switching etc. is by keyboard. If the main UI environment tried to make me use the rattail thing for any ordinary task, I would delete it and install another. In general, if something asks me to "click here" a lot, I go to a terminal window, type "kill pid" and then delete it. Obviously certain types of apps (drawing programs etc.) are exempted.
At one point I was working at a place where we had to work with some horrific Windows based build process. I spent about a week trying to beat the Winblows box into submission, but there was really no way to make the horrible user interface work in a reasonable fashion. I ended up installing cygwin and ssh'ing into the thing from a Linux box to run builds. That worked a lot better.
Recently I've tried using Macs a bit, and found them to be fairly ok. The lack of decent virtual desktop support kind of restricts them to toy uses for now though, though I hear they might support a functional environment for doing work in the next release.
In the long run, this is exactly what should be done on desktop systems, though. With a decent realtime kernel, it's mostly a matter of the userspace API as to whether the apps are allowed to demand realtime priorities.
For example, we could have an API that guarantees a video player realtime scheduling and all that goes with it, as long as it uses less than eg. 50% of the CPU (to prevent lockup). If the apps are then properly written (impossible for video, right now, because of the X server), then it won't be a matter of fewer skips as it is of no skips ever, under any circumstances. This is as it should be - modern computers are plenty powerful enough to give a good audio/video experience.
Absolutely the opposite of the truth. Your professor is utterly full of shit.
Microsoft is notorious for trying to run employees into the ground with continuous 60-hour work weeks, never ending political battles, constant re-orgs, and in general an insane culture so absurd that books have been written about it.
And let's not forget their sexist hiring practices, the thousands upon thousands of "temporary" employees who do all the QA in the nine months before they get hit with the yearly layoff, and the fact that dodging flying chairs becomes a survival instinct.
There's a reason Microsoft is called "the evil empire" - and it's not just because of their products. People who work at Microsoft find it very hard to ever escape, or work at other companies. The psychotic work environment there rots their brain and gives them skills (dodge chair! dodge!) that don't apply at other companies, while ruining any general computer skills they may once have had.
Yes, a person would have to be crazy not to take the job at Google.
To elaborate:
Usually, if an application can split its work up into 2 threads, it can split its work up onto n threads (if it's well designed). This isn't
always the case, but it tends to be. The hard part is breaking an algorithm up into pieces, usually not the number of pieces in particular.
So, for example, it could spread its work over 100 threads on a 1-CPU machine. This would be an inefficient use of threads, if they're all doing work. Usually 1 or 2 threads is ideal for a 1-core machine.
Similarly, it could spread over 2 threads on a 4-core machine. This would also be inefficient, since 2 of the cores would be idle.
So, ideally, the program usually should have some way of asking the OS, "how many threads should I run for best efficiency?" In general, the question it really asks is, "how many execution cores are there?" and then it just uses that, or multiplies by 2, or something.
So, the application needs to know how many cores there are as part of its auto-configuration, for performance. Often apps don't auto-configure this sensibly, and just spawn a fixed number. This isn't ideal, since it requires the user to twiddle something for no particular reason.
This all gets back to the purpose of the GPL: Freedom to change your software.
The original reason for the GPL (the specific case) was not being able to support a printer, because the software for it is unavailable. So, to make it work with a new OS, you're screwed unless the company decides to help you (and is still around).
Hence, the GPL, which states that if you get some software from someone, you can make changes, recompile it, and distribute those.
Now apply this exact same problem with the Tivo: They've given you a piece of hardware which is run using GPL software. The whole point of the GPL is that you're able to make changes to the software and distribute them. So for example, you could change the GPL software in the Tivo to do something else, such as remove HDMI copy restriction codes. That's a perfectly reasonable thing to do, particularly in a country where there's no law against it.
So, according to the GPLv3, that would be perfectly fine. If Tivo wants to benefit from GPL software in their device, then they simply have to make sure that you can make some changes to the software and load those changes onto the device, and have it work.
To say that they should be able to give you a device and some source code, but use a hardware signing scheme such that you can't update the software (but they can) is really not in the spirit of the GPL. How can you make changes if you're not allowed to load new software onto the computer? What if your printer used a hardware signing code to prevent you from changing the device driver so it'll run in a new version of the OS?
Why should I allow someone this backdoor around the GPL as a software creator? I gave my software away for free. If you want to distribute it and not give your users the same benefits I gave you (freedom to change and distribute), then you'd better come and ask me for some different terms. The terms I distributed it under were the freedom to make changes and distribute them.
Of course, this doesn't apply to Tivo's own non-GPL software, but if they want to use my software to implement HDMI or something, the user had better be able to make changes.
The idea of this requirement is to stop the client from having to differentiate itself to the server. So in this case, the client could (at your - the user's - option) send the same user agent string, or not. It's up to you.
The point is to prevent people from putting out GPL systems that implement DRM client-executable authentication. An example would be if the client was required to transmit a SHA1 hash of its executable image to the server, and the server then decided whether to give you the page or not based on that.
For such a system to pass the GPLv3 requirements, then the correct SHA1 hash for the version the server wants to talk to has to be included along with the source code, and the source code, when you build it, has to send that hash instead of a real hash. In other words, it has to keep working when you build your own copy, even if you change it.
This requirement basically forbids that sort of thing entirely. You can give a hash, and the server can respond to that hash, but it can't be a secret hash. This is the sort of thing DRM systems sometimes do to make sure you can't access your data. For example, games like WoW and EQ do things like this to prevent you from using a GPLed game client.
That article didn't even come close to talking about the strangest iPod accessories. I mean, come on!
How about the iBuzz?
Now that's a strange iPod accessory.
Yes, you're right of course - many people would skip the ads. But many people skip the ads anyway, by walking out of the room, fast-forwarding, muting them and chatting with their friends, or just ignoring them. The network can't force you to watch the ads -- all they can do is piss you off.
But they have this power mad mania with trying to impose their will on their customers, so the idea that you might be able to skip the ads just like you already could before is unacceptable to them, thus they won't even consider doing it.
For example, I won't even consider touching the video on commercial web sites (except google). Why? Well, it's not because I'm morally opposed to downloading a video from ABC or CNN. No... it's because their video always sucks to an unbelievable degree, to the point where watching it is a nightmare. Let's consider:
... etc. The point is, the reason Bittorrent is so incredibly popular isn't because people are so excited that they can get an episode of Lost without commercials for free. They could already do that -- VCRs are old hat. The great thing about Bittorrent is that it's incredibly convenient compared to any of these pile-of-garbage corporate offerings.
And that's the problem with this ABC thing. It, like all the garbage before it, sucks. The network that created the show is going to offer a vastly inferior experience, with more hassle, than some random guys using bittorrent.
If they wanted to do something innovative, and better, they would simply have placed MPEG4 files (or torrents to keep their costs down) on their web site, with the commercials. This would have been much cheaper and easier to develop for them, and would be a better experience for their users. But of course, they never will do this, because the industry is insane.
So how much are you charging them to subsidize their Microsoft addiction? Might I suggest $20/hour?
Remember, just because you're their personal tech support doesn't mean you have to be their free tech support!
Things you could do with $15k that are more fun than any amount of TV:
I mean, seriously. The point isn't that $15k is a lot of money (though it is an insane amount to spend on a freaking TV), but practically anything you spend it on is going to be more fun than television. The same goes for $1.5k, $.15k, or $.015k. Television sucks.
Forget looking again in 5 years. In 5 years, however much you have to spend, $150 or $1.5 million, you'll be able to find any number of things to do with it that are more fun than the boob tube.
Of course, my copy of firefox will leak about 10 megabytes a second if I just go to a page with hundreds of jpegs on it
and hit shift-reload over and over again.
I wonder if that's a feature too?
(Even better, it doesn't leak Firefox process memory, but rather X11 pixmaps)
I'm shocked. Shocked I say!
I was so sure that the founder of Gentoo getting a job at Microsoft was going to end well...