There are sometimes good business reasons to develop open source software. There are factions within the software development community, however, that think software should generally be free and open source. The implication is either that what developers spend all their time producing has no value, or that it does have value, but that the developers don't deserve to be paid for producing it.
I can understand some consumers advocating this view, but developers themselves?! That's just stupid.
All the "paradoxes" it would cause are just arrogance.
"What if I got a message from my future self, and then decided not to send it?" Sorry, Pal: If you got the message, then it'll get sent. There just wouldn't be any significant alternatives in the wave function.
We already know that non-local communication exists between particles (Aspect experiment). People only have trouble with the possibility of non-local communication between people, because it conflicts with our notions of free-willed decision making.
--
Corrollary: Never ask a psychic about your future -- if they're not full of crap, you'd be giving up any say in it!
Anyone else see the face of the classic grey alien that was hidden by shadows in the original face-on-mars photo? In the new images, it shows up pretty clearly -- the face's mouth forms its left eye.
"There exists no way to undecompress an MP3 or other lossy file in the way you describe. If you disagree you are invited to link to software that actually exists that can do it, or even a paper decribing how to do it."
As I said, no one has written the software yet, but it's not particularly difficult. It's certainly a lot easier than compressing. Here's a layman's handwaving explanation:
The original compressor figures out the best way to capture the sound of the original track by summing a few simple component waveforms chosen from a restricted and well known set. Those decisions are recorded in the MP3 (or whatever) file. This is a hard thing to do.
The decompressor reads the MP3 and adds the selected waveforms together to create a cd track or.wav.
Essentially all the undecompresser has to do is check the.wav for presence of every simple waveform in the well known set from which the original compressor chose components. This is more work than decompressing, but is a lot easier than the original compression.
There is so much redundant information in the.wav that undecompression can be quite reliable, even if the conversion to.wav changed the volume or clipped the source. In fact, there is so much extra information in the decompressed form that you could probably plug your iPOD's audio output into your souncard's input, capture the audio, and perfectly undecompress to reproduce the original AAC.
Run this past the folks on, say, comp.compression if you need confirmation.
Here's something 'they' wouldn't want you to know:
Ripping a track and compressing it to AAC or MP3 is lossy, but _decompressing_ it to burn onto CD is not. Decompression is essentially lossless and can be perfectly inverted.
So just burn stuff onto audio CDs... When someone gets around to writing the software, you'll be able to extract DRM-free compressed versions exactly equivalent to your originals.
Those were some fine arguments against bothering to spell or pronounce anything correctly.
Unfortunately, by their writing styles, I can tell that the authors have all spent countless hours learning how to craft English language expressions properly, and that they are, in fact, proud of their proficiency in this.
It's obvious to me, therefore, that they are all hypocrites. They undoubtedly sneer amongst themselves whenever they hear "nucular", but pretend they don't, simply because it offers them an opportunity to appear clever and open-minded.
Sort of: I read it and thought "he can't really mean that -- it's too stupid".
I had to RTFA to figure out that, yes, he really did mean that.
For the record, Mr. Gibson: There is a talent that makes writers writers and musicians musicians. It's a talent that their audiences, in the main, don't share. The fact that they sample and remix within their own communities doesn't make it the normal mode of consumption.
The voodoo title would hightlight the real reason we need design patterns -- we (those of us in the software business) don't really know what we're doing.
Just like witch doctors, we do stuff that satisfies some inner aesthetic, built up over the years through experience.
We learn from our experiences, but don't really understand the causes and effects.
What they call "Rateless Erasure Codes" seem to be very close to what are called "Secret Sharing" schemes in cryptographic contexts.
Essentially, if you want to send N blocks of data, you can generate any number of specially encoded blocks, such that the original message can be reconstructed from any N of them -- it doesn't matter which N blocks you use.
For a TCP replacement, that means you don't need to do windowing, or to detect and retransmit dropped packets. Instead, you just send blocks until the receiver has enough to reconstruct the whole stream.
It's a very, very good idea, and there are lots of different ways to do it.
There are sometimes good business reasons to develop open source software. There are factions within the software development community, however, that think software should generally be free and open source. The implication is either that what developers spend all their time producing has no value, or that it does have value, but that the developers don't deserve to be paid for producing it. I can understand some consumers advocating this view, but developers themselves?! That's just stupid.
All the "paradoxes" it would cause are just arrogance.
"What if I got a message from my future self, and then decided not to send it?" Sorry, Pal: If you got the message, then it'll get sent. There just wouldn't be any significant alternatives in the wave function.
We already know that non-local communication exists between particles (Aspect experiment). People only have trouble with the possibility of non-local communication between people, because it conflicts with our notions of free-willed decision making.
--
Corrollary: Never ask a psychic about your future -- if they're not full of crap, you'd be giving up any say in it!
Anyone else see the face of the classic grey alien that was hidden by shadows in the original face-on-mars photo? In the new images, it shows up pretty clearly -- the face's mouth forms its left eye.
Exactly. Perhaps some OSS philanthropist will do it now, having heard about the idea from /.
I promise not to file for a patent.
As I said, no one has written the software yet, but it's not particularly difficult. It's certainly a lot easier than compressing. Here's a layman's handwaving explanation:
The original compressor figures out the best way to capture the sound of the original track by summing a few simple component waveforms chosen from a restricted and well known set. Those decisions are recorded in the MP3 (or whatever) file. This is a hard thing to do.
The decompressor reads the MP3 and adds the selected waveforms together to create a cd track or .wav.
Essentially all the undecompresser has to do is check the .wav for presence of every simple waveform in the well known set from which the original compressor chose components. This is more work than decompressing, but is a lot easier than the original compression.
There is so much redundant information in the .wav that undecompression can be quite reliable, even if the conversion to .wav changed the volume or clipped the source. In fact, there is so much extra information in the decompressed form that you could probably plug your iPOD's audio output into your souncard's input, capture the audio, and perfectly undecompress to reproduce the original AAC.
Run this past the folks on, say, comp.compression if you need confirmation.
Lets try this again:
As you can see, there is no lossy compression step in this sequence -- no information is discarded.
Sure you can. What makes you think otherwise?
You just can't do it by re-ripping with and compressing with an ordinary compressor -- undecompressing and compressing are different problems.
Here's something 'they' wouldn't want you to know:
Ripping a track and compressing it to AAC or MP3 is lossy, but _decompressing_ it to burn onto CD is not. Decompression is essentially lossless and can be perfectly inverted.
So just burn stuff onto audio CDs... When someone gets around to writing the software, you'll be able to extract DRM-free compressed versions exactly equivalent to your originals.
Those were some fine arguments against bothering to spell or pronounce anything correctly.
Unfortunately, by their writing styles, I can tell that the authors have all spent countless hours learning how to craft English language expressions properly, and that they are, in fact, proud of their proficiency in this.
It's obvious to me, therefore, that they are all hypocrites. They undoubtedly sneer amongst themselves whenever they hear "nucular", but pretend they don't, simply because it offers them an opportunity to appear clever and open-minded.
Sort of: I read it and thought "he can't really mean that -- it's too stupid". I had to RTFA to figure out that, yes, he really did mean that. For the record, Mr. Gibson: There is a talent that makes writers writers and musicians musicians. It's a talent that their audiences, in the main, don't share. The fact that they sample and remix within their own communities doesn't make it the normal mode of consumption.
That's the promise of Java -- write it once, and infect anything.
The voodoo title would hightlight the real reason we need design patterns -- we (those of us in the software business) don't really know what we're doing. Just like witch doctors, we do stuff that satisfies some inner aesthetic, built up over the years through experience. We learn from our experiences, but don't really understand the causes and effects.
Way too much Phillip K. Dick stuff has been coming true, lately. The future is creepy.
Essentially, if you want to send N blocks of data, you can generate any number of specially encoded blocks, such that the original message can be reconstructed from any N of them -- it doesn't matter which N blocks you use.
For a TCP replacement, that means you don't need to do windowing, or to detect and retransmit dropped packets. Instead, you just send blocks until the receiver has enough to reconstruct the whole stream.
It's a very, very good idea, and there are lots of different ways to do it.