No, you randomise the image filenames every time, as well as the positions. If there is no correlation between the image filename and the content, then there's one less thing for the spammers to pick up on.
Better still, just block all e-mail. Really, it's dead. The only people who use e-mail for anything are spammers and morons. If people really want to contact you, they can do so via other means.
There's probably a place for private, closed e-mail networks which are not accessible to spammers and where anyone attempting to spam will get terminated without prejudice..... but the present mess is just unworkable.
How about if we could somehow convince Bush that spam is funding terrorism? All the money people are making from selling counterfeit viagra, pirated "OEM" software and doing dodgy share trading deals could be buying weapons of mass destruction for the next country we don't like very much.....
Or, just as effective and even less expensive, try withholding water from people until they solve enough CAPTCHAs.
For some time I have been thinking about having "field-of-endeavour-specific" human-detection; that is, using some piece of information which will be generally known within a specific field of endeavour but perhaps not to some third world click-monkey. So, for instance, if you are running a Star Trek fansite, you could have something along the lines of "click on William Shatner to continue" and have a few pictures. If you are running an evolution-vs-intelligent-design website, you could have something like "Behe, Dembski, Hovind, Dawkins. Which is the odd one out?"
It's not perfect, but not much is. The point is that just recognising distorted text isn't enough: we have to make the test harder, with questions that only a human being can answer. But you have to be aware of Dumbing Down, and the very real possibility that someone might take you to court for discriminating against thick people. About 15 or 20 years ago you could be certain that a School Leaver With Passing Grades In All Subjects would know certain things, but nowadays it seems you only need to write your name on the paper to get an A grade GCSE. And spell it properly to get an A*.
It's actually worse than that (I gave it some thought awhile back). You'd have a.feet, a.inches and also a.feet.inches being the inches corresponding to the fractional part of a.feet. There'd also be a.yards, a.yards.feet, a.yards.feet.inches and even a.yards.inches -- in fact, a pretty cascade of units. And that's just for length..... I'd hate to see the full list of definitions for units of pressure! On the other hand, you'd be able only to import the units you were actually going to be using from the library. And of course most of the world would get by fine with just a, perhaps multiplied by various powers of 10.
Assigning the unit and the quantity separately doesn't buy you much. If you can do heterogeneous mathematical operations, then you have to be able to convert from any unit to any other. With your way, when you have mixed units such as feet and inches there's no easy way to get it into the usual form; if you added 6 inches to 5 feet you would get either 65 inches or 5.5 feet, not 5ft6in. To get that, you first need to know how many inches there are in a foot -- bear in mind that in Britain, nobody under 30 knows that (they might claim to know their height in feet and inches, but not the relationship between one and the other -- if they ever wanted to do maths on the figure, they'd get a tape measure and re-measure themselves in centimetres) and in most countries, nobody at all knows. And with my method, all the maths is done using the standard unit and conversions are made on-the-fly.
Incidentally, whenever I've been writing PostScript by hand (don't ask), I have always put
/mm { 72 mul 25.4 div } def
near the beginning. This is just a subroutine which converts the number on the top of the stack from millimetres to PostScript points, but it allows me to position things on the page using units I'm familiar with. So
newpath 10 mm 10 mm moveto 10 mm 287 mm lineto 200 mm 287 mm lineto 200 mm 10 mm lineto closepath .5 mm setlinewidth 0 setgray stroke
gives me a nice half-millimetre border, one centimetre in from the edge of the page. And it's quite readable (or as near as PostScript gets)
Instead of tying the value of currency to something capricious like gold or silver, why not tie it to something whose value is absolute and determined, like energy?
if a.qty = 1 and a.unit = foot and b.qty = 12 and b.unit = inch,
c:= a + b makes c.qty = 2 and c.unit = foot.
Then would c:= b + a make c.qty = 24 and c.unit = inch? Because now you've got an addition operator which is not commutative.
Much better would be to have all "length" objects be metres (which, if you think about it, is what they really are), and then represent alternative units as properties of a generic "length" object. So then your example would be more like
length a = 0;// must set to zero initially
length b = 0;
length c;
a.feet = 1;// now a = 0.3048
b.inches = 12;// now b = 0.3048
c = a + b;// now c = 0.6096
and then c.feet = 2 and c.inches = 24.
Note also that temperature and tempdiff can't be the same datatype, because both the Celsius and Fahrenheit scales have offsets (based on the triple point of H2O and what was believed at the time to be the coldest temperature realisable, respectively). When you subtract a temperature from a temperature you get a tempdiff. And you can't add two temperatures, only a temperature and a tempdiff.
I was actually trying to create a parody of a riduculously-strongly-typed language, which I was going to call "Rosie" (something else you can have a cup of, see..... it's rhyming slang..... "Rosie Lee" == "tea") and which would actually have types representing physical quantities. Every object-type in Rosie has an "obvious manifestation" as a general scalar and various properties. An object of type "length" has as its "obvious manifestation" a floating-point number of metres, and properties which give its conversion into other units. For instance, a length object has a feet property, which is actually of type lengthInFeet and which manifests obviously as a floating-point number of feet (you can use its numFloor property to convert it to an integer); but has an inch property of type lengthInInches which manifests obviously as a floating point number representing the odd inches. But the length object has its own inch property, which represents the whole length in inches. (The division sign / is overloaded as an infix operator; which does not make any less sense than overloading the addition sign + as a string concatenation operator, although Rosie doesn't do that. If you want to divide, you must put spaces before and after the / symbol.) For example, if h (of type length) = 1.72 then h/feet = 5.643045, h/feet/inch = 7.716535 and h/inch = 67.716535. Easy innit? You can also assign to properties, though you should always reset a variable before performing any non-obvious assignment. For instance, the sequence reset h h/feet = 3 h/feet/inch=3.370007 leaves h/inch equal to 39.370007 and h equal to 1.
"In Rosie, there are NO comments; there are only string constants evaluated in a void context"; d isOfType length; n isOfType numericAuto/user; r isOfType stringWithPlaceholders = "$m metres is $f feet, $i inches.\n";
"Obtain the value of n from the user."; n/prompt = "Enter a distance in metres"; n/ask; d:= n;
"Fill in the placeholders in our response text with selected properties of d"; "Note, we need to use numFloor property of feet in order to discard fractional part.";
The UK is still (only just.....) part of the EU, where regulations mandate handset portability across networks. Even if you buy an iPhone connected to O2, you will have to be able to transfer it to any other telco with whose networks it is physically compatible. That means at least Vodafone (who are also using the 900MHz band) and possibly Orange and T-Mobile, if the RF section also does 1800MHz.
How's it theft if somebody who has paid their TV licence, which entitles them to watch TV programmes, watches a TV programme that they are entitled to watch by virtue of having paid for it? What is the thing that somebody used to have before the programme was watched that they no longer have afterward?
Would crops grown with the aid of a robot weeder (even if it wasn't armed with nasty chemicals) be automatically ineligible for organic status, just because a machine had been used in the course of tending them?
We need to encourage the search for prior art, and discourage bogus patent applications. How about a "reward and penalty" system? The first person to discover some prior art that would invalidate a patent gets half the applicant's deposit by way of a bounty. The disgraced patentor must then wait a reasonable period of time (6 weeks?) before submitting any further patent applications.
Also, patent examiners need to be paid at least as much for the applications they reject as for the ones they approve. And while you're overhauling your patent system, mandate that patents be licenced out on an equitable and non-discriminatory basis; every licencee must pay the same amount for their use of a patent and no person or organisation may be prevented from licencing a patent. You could even go down the route of having the patent office stipulate maximum fees.
Finally, if "intellectual property" is really to be treated as though it were property, then patents must be subject to lien and expropriation as any other goods. One should be able to use a patent as collateral for a loan (obviously the lender would have to bear in mind that a patent expires, but there is plenty of precedent where loans have been secured against other sorts of perishable goods); and the courts should have the power to order that a patent be handed over to another party (e.g. in settlement of a debt), or forfeit (to the public domain) in the event that it has been seriously misused.
This only works on badly-implemented VMs because it is relying on the bad implementation. The "inside" of any decent virtual machine implementation should be absolutely indistinguible from a real machine.
Except that the files they were offering for download probably were not real movies.
If they were being smart, there would be just a small enough excerpt of the real stuff to count as "fair dealing" (so there is no breach of copyright), followed by bogus data crafted to crash the MPEG codec engine with a buffer-overflow and execute some code of their choosing. Since different systems will require different data to crash the MPEG engine, and movies are by definition large files, they could use just one file to knock over many different systems (and know, from which code actually ran, what they were running). Obviously the crashcodes would have to be placed in descending order of commonness of system, so as to minimise the amount of static / skipped frames before the user twigs onto their bustedness.
It's totally illegal, of course (Misuse of Computers act makes such crashing an offence; Unfair Contract Terms Act applies if the EULA tries to press-gang you into agreeing to it; Data Protection Act might apply; might constitute an offence such as Soliciting a Crime or Aiding and Abetting; somebody may well flesh out the above description a little, secure a patent on it, and stick the MPAA for patent infringement), but that never really stopped anybody before.....
You clearly don't understand what a VM is. There is, as a matter of definition, no way for software to determine whether or not it is running on a virtual machine, much less access anything to which the virtual machine is not allowed access. If someone sold you some software claiming it created a "virtual machine" and it lets "virtualised" programs know, you want to take it back because it's not fit for rightful purpose.
If I have a friend record a TV show (VCR or DVR) and give me the recording so I can watch it later, It's okay. BUT... If my 'friend' is an unknown person sharing a bittorrent, it's NOT okay?
What if you had a really long cable from your friend's VCR to your TV set? Would that be OK? (I mean, apart from the 398V (= 230 * sqrt(3)) between your TV's chassis and their VCR's chassis if you're on different phases. We'll assume you've dealt with that.) We'll also assume both your and your friends' TV licences are fully paid-up. The only possible objection is that your friend might technically be acting as a rebroadcaster and thus incur some obligations.....
So why is it a problem if the "really long cable" happens to be part of the public Internet? Well, a computer is involved. This creates a powerful Reality Distortion Field where normal laws and common sense absolutely do not apply, and any analogy with a non-computerised situation is null and void.
I've been saying for a long time that what the world needs is a simple passive defence against mobile phones. Putting up signs only pisses off people who weren't going to be using a mobile anyway, and there are enough people who ignore them to make them ineffective.
A faraday shield is unintrusive (if implemented properly) and can't be ignored. Nobody thinks their rights are being violated when they can't get a signal..... but they also can't annoy people with a phone if it simply doesn't work.
In spoken English, pitch, loudness and timing are all used to indicate grammatical structure. Notice how your voice rises in pitch at the end of a sentence when you ask a question? Yet it falls when you make a statement. And everyone knows that writing in all capitals is SHOUTING! (I once told someone who was a bit ignorant about technical matters that sending text messages in all capitals would drain her phone's battery more quickly. She believed me -- for just long enough to get into the habit of not using caps all the time.) English seems to bounce along with alternating stressed and unstressed syllables (you need to say that one out loud). We introduce pauses to separate items in a list, to separate thoughts or just for effect.
Punctuation marks are just a way of conveying all these subtleties in writing. Spoken out loud, your sentences would sound like "The panda eats shoots and leaves" (slight emphasis on "shoots" because it's first in a list, and probably a euphonic "r" sound inserted between "panda" and "eats" to break up the pair of vowel sounds) and "The panda eats........ shoots..... and leaves" (with no euphonic "r", instead a glottal stop [imagine someone saying "glottal stop" in a Cockney accent -- that's what the sound you heard in place of the T's is called] and emphasis on "eats", and pauses where indicated by thought marks). If you meant to indicate that the black-and-white bear engaged in a spot of post-prandial target practice, then you would write a comma after "eats" to indicate the pause there (there's no need for one after "shoots" because it is the last-but-one item in a list and so followed by "and" or "or", which do not usually require a preceding comma.) There are also techniques for conveying inflection by displaying animated text, but these are of limited value since they can't be printed.
Over-punctuation is a tendency to indicate every subtle nuance of the spoken language, even the ones which could be inferred. It tends to look rather old-fashioned. Modern practice is generally only to indicate the most important ones (and I agree, in your panda example, the meaning of the sentence depends on the punctuation). Another example is the publican's request to his signwriter: "We need more space between Wagon and and and and and Horses" which really requires at least a comma (We need more space between Wagon and and, and and and Horses) but would look better with either speech marks ("We need more space between 'Wagon' and 'and' and 'and' and 'Horses'") or (if available in the medium) some form of visible emphasis ("We need more space between Wagon and and, and and and Horses"). Note that this breaks the rule about not putting a comma before "and"; but this is merely an invocation of The Last Rule, which states "Anytime you have to break any of the preceding rules, make sure you break 'em good and hard." (Closing full stop inside speech marks in this case, because it belongs to the text being quoted).
The key is complete analysis of the problem , knowing what you want to create and how the application will be build up ( see the Waterfall model ) . that will be more likely to lead to a succesfull program.
Then you run afoul of Mitchell's Law of Committees, which states that:
Any simple task can be declared impossible if enough meetings are held to discuss it.
This appears to be an incorrigible problem with human nature and is not unrelated to the fact that it is easier to obtain forgiveness than permission. People are fearful of the unknown. If you do actually dive in and produce something, even if it's not exactly right, at least it's not unknown anymore -- therefore it's less scary.
Everything in real life that actually works well follows the classic biker's model of "try it, saw a bit off here, weld a bit on there and try it again". Meanwhile in meeting rooms all over the world, people are arguing over the merits of things that aren't actually happening because they're still being discussed.
Not necessarily. There are two schools of punctuation: one, which believes in including a punctuation mark -- a dash, a comma, a semicolon or a colon -- at any point in a sentence where a pause, or a change of inflection, might reasonably be indicated; and the other which believes that unnecessary punctuation marks serve only to clutter up sentences and reduce visibility.
No, you randomise the image filenames every time, as well as the positions. If there is no correlation between the image filename and the content, then there's one less thing for the spammers to pick up on.
Better still, just block all e-mail. Really, it's dead. The only people who use e-mail for anything are spammers and morons. If people really want to contact you, they can do so via other means.
..... but the present mess is just unworkable.
There's probably a place for private, closed e-mail networks which are not accessible to spammers and where anyone attempting to spam will get terminated without prejudice
How about if we could somehow convince Bush that spam is funding terrorism? All the money people are making from selling counterfeit viagra, pirated "OEM" software and doing dodgy share trading deals could be buying weapons of mass destruction for the next country we don't like very much .....
Or, just as effective and even less expensive, try withholding water from people until they solve enough CAPTCHAs.
For some time I have been thinking about having "field-of-endeavour-specific" human-detection; that is, using some piece of information which will be generally known within a specific field of endeavour but perhaps not to some third world click-monkey. So, for instance, if you are running a Star Trek fansite, you could have something along the lines of "click on William Shatner to continue" and have a few pictures. If you are running an evolution-vs-intelligent-design website, you could have something like "Behe, Dembski, Hovind, Dawkins. Which is the odd one out?"
It's not perfect, but not much is. The point is that just recognising distorted text isn't enough: we have to make the test harder, with questions that only a human being can answer. But you have to be aware of Dumbing Down, and the very real possibility that someone might take you to court for discriminating against thick people. About 15 or 20 years ago you could be certain that a School Leaver With Passing Grades In All Subjects would know certain things, but nowadays it seems you only need to write your name on the paper to get an A grade GCSE. And spell it properly to get an A*.
Assigning the unit and the quantity separately doesn't buy you much. If you can do heterogeneous mathematical operations, then you have to be able to convert from any unit to any other. With your way, when you have mixed units such as feet and inches there's no easy way to get it into the usual form; if you added 6 inches to 5 feet you would get either 65 inches or 5.5 feet, not 5ft6in. To get that, you first need to know how many inches there are in a foot -- bear in mind that in Britain, nobody under 30 knows that (they might claim to know their height in feet and inches, but not the relationship between one and the other -- if they ever wanted to do maths on the figure, they'd get a tape measure and re-measure themselves in centimetres) and in most countries, nobody at all knows. And with my method, all the maths is done using the standard unit and conversions are made on-the-fly.
Incidentally, whenever I've been writing PostScript by hand (don't ask), I have always put near the beginning. This is just a subroutine which converts the number on the top of the stack from millimetres to PostScript points, but it allows me to position things on the page using units I'm familiar with. So gives me a nice half-millimetre border, one centimetre in from the edge of the page. And it's quite readable (or as near as PostScript gets)
Instead of tying the value of currency to something capricious like gold or silver, why not tie it to something whose value is absolute and determined, like energy?
How about back to Perl? It's like a white Ford Transit Van. Won't win any awards for being trendy, but it gets you from A to B every time.
Much better would be to have all "length" objects be metres (which, if you think about it, is what they really are), and then represent alternative units as properties of a generic "length" object. So then your example would be more like
length a = 0;
length b = 0;
length c;
a.feet = 1;
b.inches = 12;
c = a + b;
and then c.feet = 2 and c.inches = 24.
Note also that temperature and tempdiff can't be the same datatype, because both the Celsius and Fahrenheit scales have offsets (based on the triple point of H2O and what was believed at the time to be the coldest temperature realisable, respectively). When you subtract a temperature from a temperature you get a tempdiff. And you can't add two temperatures, only a temperature and a tempdiff.
I was actually trying to create a parody of a riduculously-strongly-typed language, which I was going to call "Rosie" (something else you can have a cup of, see
reset h
h/feet = 3
h/feet/inch=3.370007
leaves h/inch equal to 39.370007 and h equal to 1. I never finished coding up the interpreter, though
The UK is still (only just .....) part of the EU, where regulations mandate handset portability across networks. Even if you buy an iPhone connected to O2, you will have to be able to transfer it to any other telco with whose networks it is physically compatible. That means at least Vodafone (who are also using the 900MHz band) and possibly Orange and T-Mobile, if the RF section also does 1800MHz.
How's it theft if somebody who has paid their TV licence, which entitles them to watch TV programmes, watches a TV programme that they are entitled to watch by virtue of having paid for it? What is the thing that somebody used to have before the programme was watched that they no longer have afterward?
Would crops grown with the aid of a robot weeder (even if it wasn't armed with nasty chemicals) be automatically ineligible for organic status, just because a machine had been used in the course of tending them?
We need to encourage the search for prior art, and discourage bogus patent applications. How about a "reward and penalty" system? The first person to discover some prior art that would invalidate a patent gets half the applicant's deposit by way of a bounty. The disgraced patentor must then wait a reasonable period of time (6 weeks?) before submitting any further patent applications.
Also, patent examiners need to be paid at least as much for the applications they reject as for the ones they approve. And while you're overhauling your patent system, mandate that patents be licenced out on an equitable and non-discriminatory basis; every licencee must pay the same amount for their use of a patent and no person or organisation may be prevented from licencing a patent. You could even go down the route of having the patent office stipulate maximum fees.
Finally, if "intellectual property" is really to be treated as though it were property, then patents must be subject to lien and expropriation as any other goods. One should be able to use a patent as collateral for a loan (obviously the lender would have to bear in mind that a patent expires, but there is plenty of precedent where loans have been secured against other sorts of perishable goods); and the courts should have the power to order that a patent be handed over to another party (e.g. in settlement of a debt), or forfeit (to the public domain) in the event that it has been seriously misused.
This only works on badly-implemented VMs because it is relying on the bad implementation. The "inside" of any decent virtual machine implementation should be absolutely indistinguible from a real machine.
Except that the files they were offering for download probably were not real movies.
.....
If they were being smart, there would be just a small enough excerpt of the real stuff to count as "fair dealing" (so there is no breach of copyright), followed by bogus data crafted to crash the MPEG codec engine with a buffer-overflow and execute some code of their choosing. Since different systems will require different data to crash the MPEG engine, and movies are by definition large files, they could use just one file to knock over many different systems (and know, from which code actually ran, what they were running). Obviously the crashcodes would have to be placed in descending order of commonness of system, so as to minimise the amount of static / skipped frames before the user twigs onto their bustedness.
It's totally illegal, of course (Misuse of Computers act makes such crashing an offence; Unfair Contract Terms Act applies if the EULA tries to press-gang you into agreeing to it; Data Protection Act might apply; might constitute an offence such as Soliciting a Crime or Aiding and Abetting; somebody may well flesh out the above description a little, secure a patent on it, and stick the MPAA for patent infringement), but that never really stopped anybody before
You clearly don't understand what a VM is. There is, as a matter of definition, no way for software to determine whether or not it is running on a virtual machine, much less access anything to which the virtual machine is not allowed access. If someone sold you some software claiming it created a "virtual machine" and it lets "virtualised" programs know, you want to take it back because it's not fit for rightful purpose.
So why is it a problem if the "really long cable" happens to be part of the public Internet? Well, a computer is involved. This creates a powerful Reality Distortion Field where normal laws and common sense absolutely do not apply, and any analogy with a non-computerised situation is null and void.
He'd not give it to someone like you, even if he had one.
I've been saying for a long time that what the world needs is a simple passive defence against mobile phones. Putting up signs only pisses off people who weren't going to be using a mobile anyway, and there are enough people who ignore them to make them ineffective.
..... but they also can't annoy people with a phone if it simply doesn't work.
A faraday shield is unintrusive (if implemented properly) and can't be ignored. Nobody thinks their rights are being violated when they can't get a signal
Not quite.
........ shoots ..... and leaves" (with no euphonic "r", instead a glottal stop [imagine someone saying "glottal stop" in a Cockney accent -- that's what the sound you heard in place of the T's is called] and emphasis on "eats", and pauses where indicated by thought marks). If you meant to indicate that the black-and-white bear engaged in a spot of post-prandial target practice, then you would write a comma after "eats" to indicate the pause there (there's no need for one after "shoots" because it is the last-but-one item in a list and so followed by "and" or "or", which do not usually require a preceding comma.) There are also techniques for conveying inflection by displaying animated text, but these are of limited value since they can't be printed.
In spoken English, pitch, loudness and timing are all used to indicate grammatical structure. Notice how your voice rises in pitch at the end of a sentence when you ask a question? Yet it falls when you make a statement. And everyone knows that writing in all capitals is SHOUTING! (I once told someone who was a bit ignorant about technical matters that sending text messages in all capitals would drain her phone's battery more quickly. She believed me -- for just long enough to get into the habit of not using caps all the time.) English seems to bounce along with alternating stressed and unstressed syllables (you need to say that one out loud). We introduce pauses to separate items in a list, to separate thoughts or just for effect.
Punctuation marks are just a way of conveying all these subtleties in writing. Spoken out loud, your sentences would sound like "The panda eats shoots and leaves" (slight emphasis on "shoots" because it's first in a list, and probably a euphonic "r" sound inserted between "panda" and "eats" to break up the pair of vowel sounds) and "The panda eats
Over-punctuation is a tendency to indicate every subtle nuance of the spoken language, even the ones which could be inferred. It tends to look rather old-fashioned. Modern practice is generally only to indicate the most important ones (and I agree, in your panda example, the meaning of the sentence depends on the punctuation). Another example is the publican's request to his signwriter: "We need more space between Wagon and and and and and Horses" which really requires at least a comma (We need more space between Wagon and and, and and and Horses) but would look better with either speech marks ("We need more space between 'Wagon' and 'and' and 'and' and 'Horses'") or (if available in the medium) some form of visible emphasis ("We need more space between Wagon and and, and and and Horses"). Note that this breaks the rule about not putting a comma before "and"; but this is merely an invocation of The Last Rule, which states "Anytime you have to break any of the preceding rules, make sure you break 'em good and hard." (Closing full stop inside speech marks in this case, because it belongs to the text being quoted).
Everything in real life that actually works well follows the classic biker's model of "try it, saw a bit off here, weld a bit on there and try it again". Meanwhile in meeting rooms all over the world, people are arguing over the merits of things that aren't actually happening because they're still being discussed.
Not necessarily. There are two schools of punctuation: one, which believes in including a punctuation mark -- a dash, a comma, a semicolon or a colon -- at any point in a sentence where a pause, or a change of inflection, might reasonably be indicated; and the other which believes that unnecessary punctuation marks serve only to clutter up sentences and reduce visibility.