I make an assortment of purchases.. PepperCoin keeps an account with me and pings my CC with the total aggregate sum of my purchases through them on a monthly basis.. therefore my CC is not littered with 5 cents here, 17 cents there, etc. Basically, I see a charge of 78.13 (example).
This sounds pretty risky to Peppercoin. What if a large number of customers sign up and then only spend 5 or 10 cents in a month? Then Peppercoin will have to pay huge amounts more in credit card fees than they take in.
I think they'll have to do it by setting up prepaid accounts for customers, or by allowing customers to participate in the payment gambling scheme.
Your expected income is in fact $10000 while your standard deviation is 10(20000*.05*.95)^(1/2)=$308 or so. So while the variation is painful, it actually turns out you'll be in the $9000-$11000 range 99% of the time.
You're assuming the tokens are valued independently of each other. If the vendor saves up the tokens, there's no reason Peppercoin couldn't choose to aggregate them, and reduce the variability even further.
The innovation of Peppercoin is that it doesn't *require* aggregation in order to reduce the transaction fees.
Whitelisting is a really good solution for some people: those who get email from a relatively fixed and small group of correspondents. But it doesn't work at all well for people who need to be contacted by strangers.
For example, I'm the Secretary of a non-profit society. I'm also one of the maintainers of an open source project. In both of those roles, I often get email from people I don't know.
There are schemes for auto-whitelisting people: any mail from someone not in the whitelist triggers a reply requesting a confirmation from the sender. (Spammers never confirm, because they don't see the reply.) I don't think those work very well, because some users are so unsophisticated that they won't respond properly. They also put an extra burden on the sender, and some will just decide not to bother jumping through your hoops.
Filtering is not a true spam solution. All it takes is for one false positive on a Really Important Email and be accidentally deleted to totally destroy the value of any filtering system.
One of the side effects of spam is that there are no "Really Important Emails" any more. Spam and spam filters have degraded the reliability of email to such an extent that you'd have to be crazy to send anything Really Important by email.
Right now, I get 60-80 spams a day. What happens when I start getting 600-800 a day?
That's a good point. The solution is to get less spam. You can do that by changing email addresses frequently (a really inconvenient solution that I don't recommend), or by getting spammers shut down (or yourself listwashed by the spammers).
Let the spammers know that if they send something to you, they'll lose money, and they won't send you so much spam. SpamCop reporting makes this easy. If you want to be listwashed, don't munge your address when you send reports. (This is an option with SpamCop.)
Some people claim that you'll get more spam or get listbombed or something if you send complaints without munging; that's not my experience. I get 20-30 spams per day, total, at all of my 4 publicly available email addresses. (Ninety to 95 percent of them get caught by the SpamCop filters, which have almost never caught valid email.)
Re:Turn Javascript, activex, java off
on
Cross-Site-TRACE
·
· Score: 1
For now I've just turned Javascript off completely for Slashdot, and that seems to have solved the problem. I forget why I had it turned on; there's probably something somewhere that wants it...
Of course, the people at Slashdot who sell the ads might not think this is a good solution, since I don't see *any* ads now.
Re:Turn Javascript, activex, java off
on
Cross-Site-TRACE
·
· Score: 2, Interesting
Sure you stop being able to view many sites, but most of those sites that lock you out when you don't have this stuff on are full of junk anyway.
For the last couple of weeks, IE has been popping up warnings that my security settings may not allow Slashdot to display properly, because I don't have ActiveX scripting enabled. I do allow Slashdot to use Javascript, but don't allow everything it wants to do.
The stupid warnings are really irritating, but the only things I'm losing are the banner ads at the top of the page. I think the offending code is this: var prs="ads.PointRoll.com/PRServe/?ad=424m20021219174 23&pub=osdn&num="+prInst+"&size=728_90&code=no&red ir="+pr_redir+"&defredir="+pr_redir_def+"&r="+Math.random();
Ok say i put a bowling ball (sun) on the trampoline, and put a baseball (earth) in orbit of it. Now lets say i pick up the bowling ball quickly (almost instaneously), the baseball does just go off in a straight line, right?.
No way. It would go shooting up in the air, then come down and bounce a few times.
Here we see a CSS descrambler in C that is 434 bytes long and runs at better than 10 times the speed of the next smallest implementation (472 bytes of perl code).
You're right, this is a model of clarity and good programming: #define m(i)(x[i]^s[i+84]) unsigned char x[5],y,s[2048];main(n){for(read(0,x,5);read(0,s,n= 2048);write(1,s,n))if(s[y=s[13]%8+20]/16%4==1){int i=m(1)17^256+m(0)8,k=m(2)0,j=m(4)17^m(3)9^k ...
The only way of truely solving bugs is to know exactly whats going on in the code
This is the key. Anything that makes it easier to know what's going on in the code is good.
Modern debuggers like the one in Delphi (probably similar to J Builder's) make this fairly easy. You need the GUI interface so you're looking at the source all the time, command line debuggers obscure it. It needs to be absolutely easy to find out the state of any relevant variables. You need to be able to drop down into an assembly view (or some equivalent if you're in an interpreter) to see what code got generated at a low level.
The more *well-designed* stuff you add to the debugger, the better the opportunity for understanding the state of the program. Delphi doesn't have backward stepping; it would be great if it did, because it's often easy to detect that something has gone wrong, but hard to detect exactly when it happened. Conditional breakpoints are essential. Hardware breakpoints (which let the program run at full speed, but break when a particular memory location changes) are great.
You also want to be working in an environment where it's easy to add custom views of data structures, so that you'll see when things have gone wrong. Delphi (and probably Visual Basic, though I've never used it) are very good at that. If you've got a lot of numerical data, it's basically a one line addition to generate a graph of it, and one keypress and a second or two to wait to compile a new executable containing that addition.
You want tools like the various heap diagnostic utilities to be built in to the debugger, and you want system libraries to be written cleanly. It's easy to detect that you've got a memory leak if on exit your heap is always supposed to be completely empty; it's much harder if the run-time library leaves variable amounts of junk there, or if it's hard to determine what's there at all.
Knowledge about your program is good. Adding features that make it easier to see how your program runs makes debugging much easier.
I know that Spamcop has blocked Declan McCullagh's politech mailing list several times, in revenge against Rackspace.com. Only bad press has made them stop. Their blocks have had no effect on Rackspace. They have only created bad press.
I think the last time Politechbot.com was blocked was in November, when Spamcop was introducing a new listing policy to target "round-robin" spammers. These spammers buy a block of IP addresses, and spam from each of them in turn, switching away from one when it gets blacklisted. Spamcop started listing the whole/24 block when it saw evidence that a large proportion of the IPs had been used for spamming. Unfortunately, politechbot.com shares a/24 with enough spammers that it got caught in the crossfire.
Once that happened, Spamcop refined the rules to make listing of a whole/24 harder. Since then I don't think politechbot.com has been listed.
There are other cases (e.g. spamex.com) where the current policy doesn't work either. In this case, there's a spammer doing round-robin spamming in a/27 that's near spamex's IP; currently Spamcop isn't flexible enough to block a/27.
Spammers are not thieves. Under your logic, the weekly coupons your supermarket sends out snail mail would make your supermarket thieves. When in reality, it is those "junk mail" advertisements that are keeping the postal service alive. While spammers certainly are not keeping ISP's alive,
You pointed out the difference yourself. Your supermarket pays for its flyers to be delivered. Spammers steal resources from their recipients in order to deliver their ads.
Spammers are thieves because of the way they deliver their ads. Sometimes they're also thieves because they're cheating scum who deliver fraudulent scams, but that's beside the point.
Yes, Kahn was one of Wirth's students, and he may have written the original Pascal compiler, but it was Anders Hejlsberg who wrote Turbo Pascal. It was a Pascal compiler, not p2c plus a C subset compiler.
All versions of Delphi have included a (renamed) copy of Borlands' C/C++ compiler.
Delphi's pascal source code files are converted to something the C compiler can understand, and then compiled. It's been this way since Delphi 1.0.
That's nonsense. The current compiler has a common back end with the C/C++ compiler, but that doesn't mean it translates into something the compiler can understand (which is presumably C or C++), it just means that the front-ends of both compilers produce a parse tree which the back end converts to object code.
I'm not sure that this was true of Delphi 1.0, though. That was a 16 bit compiler, which used the same code generation as its Turbo Pascal predecessor. The TP compiler was written in assembler.
I think what's new is that recent versions distribute both front-ends in the same package.
You can even invoke it (DCC) from the command line. Check your documentation, it's all there.
What does that show? Turbo Pascal had command line compilers for years.
Widespread adoption will never occur: So what? This system will work for me even if I'm the only user. It's not one of those things that require a critical mass of users to be useful.
Actually, this *is* a stumbling block. It won't work without widespread adoption.
Let's suppose you decide to do this. Then someone decides to email you, and your system replies with a request for a nickel. If the person getting that request doesn't know about the system, they won't be able to give you a nickel, so they'll just phone you (or take their business to someone else, if they were planning to do business with you).
If adoption were widespread, then it would work well. Most people send about the same amount of email as they receive, so they'd just get used to having an account that was sometimes positive, sometimes negative.
Mailing lists send much more than they receive, so they'd have to start asking people to whitelist them in order to sign up. (And if the system weren't widespread, they wouldn't know to do this, and you'd have trouble joining. Do you know the name of the sender for a mailing list before you join it? Sometimes yes, usually no.).
Spammers send much more than they receive, so this would reduce the amount of spam a lot. But as others have said, it wouldn't wipe out spam: you get paper junk mail, don't you?
The other (bigger) stumbling block is the lack of a micropayment system. Put that in place, and lots of people will join a pay-to-email system. Without it, the system doesn't work at all.
The only thing we mean by "more interesting" is "less likely to occur by chance." In this search, that's the only thing we have to go on.... We've restricted ourselves to nearby stars with known distances because nearby stars are more rare than distant ones and are less likely to be coincident with a hit.
That makes sense. The only part that doesn't make sense (to me, at least!) is the bonus for being blue.
I simply delete spam. It's not hard. It takes up about five seconds of my day. There is no chance of not receiving something due to filtering.
There may be no chance of not receiving the good stuff, but once you start getting a substantial spam load, there'll be an appreciable chance that you'll accidentally delete something you want. If you're getting 50 spams a day, you get in the habit of hitting the DEL key really quickly -- and some of those things you delete wouldn't really be spam.
There aren't any perfect filters, not even your own eyeballs.
It's not necessarily that blue is good, it's just that blue is more rare than red. A chance coincidence of a potential signal with a rare blue star is less likely than a chance coincidence with a common red star. If it's less likely to occur by chance, then by this measure, it is more interesting.
I don't think this is a good idea, if by "more interesting" you mean "more likely to be an ETI signal". Selecting for blueness will mean you'll select bluer stars. You've already got the Gaussian term to select Sun-like stars; this additional term is just going to bias your search away from slightly redder stars towards slightly bluer ones.
I'd tend to look for Sun-like stars that are a bit younger or a lot older. What do the models say the Sun will look like in a few billion years?
How exactly do you test the validity of a formula like this?
That's easy -- it's clearly wrong. It's saying the Sun gets the lowest possible score according to the 3rd factor, when it should obviously get the highest score. (They left out a negative sign.)
Why do journalists put formulas online when they don't have a clue what they mean?
BTW, those two countries [China and India] are also the largest producers of greenhouse gasses with Mexico and Brazil following way behind them.
That's not true, according to the US Department of Energy. According to them the top producer is the USA. China is second, and India is 5th.
I make an assortment of purchases.. PepperCoin keeps an account with me and pings my CC with the total aggregate sum of my purchases through them on a monthly basis.. therefore my CC is not littered with 5 cents here, 17 cents there, etc. Basically, I see a charge of 78.13 (example).
This sounds pretty risky to Peppercoin. What if a large number of customers sign up and then only spend 5 or 10 cents in a month? Then Peppercoin will have to pay huge amounts more in credit card fees than they take in.
I think they'll have to do it by setting up prepaid accounts for customers, or by allowing customers to participate in the payment gambling scheme.
Duncan Murdoch
Your expected income is in fact $10000 while your standard deviation is 10(20000*.05*.95)^(1/2)=$308 or so. So while the variation is painful, it actually turns out you'll be in the $9000-$11000 range 99% of the time.
You're assuming the tokens are valued independently of each other. If the vendor saves up the tokens, there's no reason Peppercoin couldn't choose to aggregate them, and reduce the variability even further.
The innovation of Peppercoin is that it doesn't *require* aggregation in order to reduce the transaction fees.
Whitelisting is a really good solution for some people: those who get email from a relatively fixed and small group of correspondents. But it doesn't work at all well for people who need to be contacted by strangers.
For example, I'm the Secretary of a non-profit society. I'm also one of the maintainers of an open source project. In both of those roles, I often get email from people I don't know.
There are schemes for auto-whitelisting people: any mail from someone not in the whitelist triggers a reply requesting a confirmation from the sender. (Spammers never confirm, because they don't see the reply.) I don't think those work very well, because some users are so unsophisticated that they won't respond properly. They also put an extra burden on the sender, and some will just decide not to bother jumping through your hoops.
Filtering is not a true spam solution. All it takes is for one false positive on a Really Important Email and be accidentally deleted to totally destroy the value of any filtering system.
One of the side effects of spam is that there are no "Really Important Emails" any more. Spam and spam filters have degraded the reliability of email to such an extent that you'd have to be crazy to send anything Really Important by email.
Right now, I get 60-80 spams a day. What happens when I start getting 600-800 a day?
That's a good point. The solution is to get less spam. You can do that by changing email addresses frequently (a really inconvenient solution that I don't recommend), or by getting spammers shut down (or yourself listwashed by the spammers).
Let the spammers know that if they send something to you, they'll lose money, and they won't send you so much spam. SpamCop reporting makes this easy. If you want to be listwashed, don't munge your address when you send reports. (This is an option with SpamCop.)
Some people claim that you'll get more spam or get listbombed or something if you send complaints without munging; that's not my experience. I get 20-30 spams per day, total, at all of my 4 publicly available email addresses. (Ninety to 95 percent of them get caught by the SpamCop filters, which have almost never caught valid email.)
For now I've just turned Javascript off completely for Slashdot, and that seems to have solved the problem. I forget why I had it turned on; there's probably something somewhere that wants it...
Of course, the people at Slashdot who sell the ads might not think this is a good solution, since I don't see *any* ads now.
Sure you stop being able to view many sites, but most of those sites that lock you out when you don't have this stuff on are full of junk anyway.
4 23&pub=osdn&num="+prInst+"&size=728_90&code=no&red ir="+pr_redir+"&defredir="+pr_redir_def+"&r="+Math .random();
For the last couple of weeks, IE has been popping up warnings that my security settings may not allow Slashdot to display properly, because I don't have ActiveX scripting enabled. I do allow Slashdot to use Javascript, but don't allow everything it wants to do.
The stupid warnings are really irritating, but the only things I'm losing are the banner ads at the top of the page. I think the offending code is this:
var prs="ads.PointRoll.com/PRServe/?ad=424m2002121917
document.write("<scr"+"ipt language='JavaScript' src='http://"+prs+"'></scr"+"ipt>");
Any suggestions on how to get rid of this irritant?
Ok say i put a bowling ball (sun) on the trampoline, and put a baseball (earth) in orbit of it. Now lets say i pick up the bowling ball quickly (almost instaneously), the baseball does just go off in a straight line, right?.
No way. It would go shooting up in the air, then come down and bounce a few times.
Here we see a CSS descrambler in C that is 434 bytes long and runs at better than 10 times the speed of the next smallest implementation (472 bytes of perl code).
= 2048);write(1,s ,n))if(s[y=s[13]%8+20]/16%4==1){int i=m(1)17^256+m(0)8,k=m(2)0,j=m(4)17^m(3)9^k
...
You're right, this is a model of clarity and good programming:
#define m(i)(x[i]^s[i+84])
unsigned char x[5],y,s[2048];main(n){for(read(0,x,5);read(0,s,n
In C:
... [ Then save, make, wait, run ...]
.. and it saves my sanity too!!
printf("MyVar is %d\n", MyVar);
Works better than any debugger I've ever used
That "save, make, wait, run" part has been pretty hard on my sanity. Give me a good GUI debugger any day.
The only way of truely solving bugs is to know exactly whats going on in the code
This is the key. Anything that makes it easier to know what's going on in the code is good.
Modern debuggers like the one in Delphi (probably similar to J Builder's) make this fairly easy. You need the GUI interface so you're looking at the source all the time, command line debuggers obscure it. It needs to be absolutely easy to find out the state of any relevant variables. You need to be able to drop down into an assembly view (or some equivalent if you're in an interpreter) to see what code got generated at a low level.
The more *well-designed* stuff you add to the debugger, the better the opportunity for understanding the state of the program. Delphi doesn't have backward stepping; it would be great if it did, because it's often easy to detect that something has gone wrong, but hard to detect exactly when it happened. Conditional breakpoints are essential. Hardware breakpoints (which let the program run at full speed, but break when a particular memory location changes) are great.
You also want to be working in an environment where it's easy to add custom views of data structures, so that you'll see when things have gone wrong. Delphi (and probably Visual Basic, though I've never used it) are very good at that. If you've got a lot of numerical data, it's basically a one line addition to generate a graph of it, and one keypress and a second or two to wait to compile a new executable containing that addition.
You want tools like the various heap diagnostic utilities to be built in to the debugger, and you want system libraries to be written cleanly. It's easy to detect that you've got a memory leak if on exit your heap is always supposed to be completely empty; it's much harder if the run-time library leaves variable amounts of junk there, or if it's hard to determine what's there at all.
Knowledge about your program is good. Adding features that make it easier to see how your program runs makes debugging much easier.
And if I'm your customer, do I have a right to disable this blocking?
Of course not. But you do have the right to take your business elsewhere, if they don't give you that option.
I know that Spamcop has blocked Declan McCullagh's politech mailing list several times, in revenge against Rackspace.com. Only bad press has made them stop. Their blocks have had no effect on Rackspace. They have only created bad press.
/24 block when it saw evidence that a large proportion of the IPs had been used for spamming. Unfortunately, politechbot.com shares a /24 with enough spammers that it got caught in the crossfire.
/24 harder. Since then I don't think politechbot.com has been listed.
/27 that's near spamex's IP; currently Spamcop isn't flexible enough to block a /27.
I think the last time Politechbot.com was blocked was in November, when Spamcop was introducing a new listing policy to target "round-robin" spammers. These spammers buy a block of IP addresses, and spam from each of them in turn, switching away from one when it gets blacklisted. Spamcop started listing the whole
Once that happened, Spamcop refined the rules to make listing of a whole
There are other cases (e.g. spamex.com) where the current policy doesn't work either. In this case, there's a spammer doing round-robin spamming in a
Spammers are not thieves. Under your logic, the weekly coupons your supermarket sends out snail mail would make your supermarket thieves. When in reality, it is those "junk mail" advertisements that are keeping the postal service alive.
While spammers certainly are not keeping ISP's alive,
You pointed out the difference yourself. Your supermarket pays for its flyers to be delivered. Spammers steal resources from their recipients in order to deliver their ads.
Spammers are thieves because of the way they deliver their ads. Sometimes they're also thieves because they're cheating scum who deliver fraudulent scams, but that's beside the point.
Yes, Kahn was one of Wirth's students, and he may have written the original Pascal compiler, but it was Anders Hejlsberg who wrote Turbo Pascal. It was a Pascal compiler, not p2c plus a C subset compiler.
Dude, check your dead-tree manuals.
I'd be happy to. Just give me a page reference.
All Borlands' compilers were written in assembler. So what? They still compiled from C.
Strange then that their Turbo Pascal compiler came out several years before their Turbo C compiler.
All versions of Delphi have included a (renamed) copy of Borlands' C/C++ compiler.
Delphi's pascal source code files are converted to something the C compiler can understand, and then compiled. It's been this way since Delphi 1.0.
That's nonsense. The current compiler has a common back end with the C/C++ compiler, but that doesn't mean it translates into something the compiler can understand (which is presumably C or C++), it just means that the front-ends of both compilers produce a parse tree which the back end converts to object code.
I'm not sure that this was true of Delphi 1.0, though. That was a 16 bit compiler, which used the same code generation as its Turbo Pascal predecessor. The TP compiler was written in assembler.
I think what's new is that recent versions distribute both front-ends in the same package.
You can even invoke it (DCC) from the command line. Check your documentation, it's all there.
What does that show? Turbo Pascal had command line compilers for years.
Widespread adoption will never occur : So what? This system will work for me even if I'm the only user. It's not one of those things that require a critical mass of users to be useful.
Actually, this *is* a stumbling block. It won't work without widespread adoption.
Let's suppose you decide to do this. Then someone decides to email you, and your system replies with a request for a nickel. If the person getting that request doesn't know about the system, they won't be able to give you a nickel, so they'll just phone you (or take their business to someone else, if they were planning to do business with you).
If adoption were widespread, then it would work well. Most people send about the same amount of email as they receive, so they'd just get used to having an account that was sometimes positive, sometimes negative.
Mailing lists send much more than they receive, so they'd have to start asking people to whitelist them in order to sign up. (And if the system weren't widespread, they wouldn't know to do this, and you'd have trouble joining. Do you know the name of the sender for a mailing list before you join it? Sometimes yes, usually no.).
Spammers send much more than they receive, so this would reduce the amount of spam a lot. But as others have said, it wouldn't wipe out spam: you get paper junk mail, don't you?
The other (bigger) stumbling block is the lack of a micropayment system. Put that in place, and lots of people will join a pay-to-email system. Without it, the system doesn't work at all.
The only thing we mean by "more interesting" is "less likely to occur by chance." In this search, that's the only thing we have to go on. ... We've restricted ourselves to nearby stars with known distances because nearby stars are more rare than distant ones and are less likely to be coincident with a hit.
That makes sense. The only part that doesn't make sense (to me, at least!) is the bonus for being blue.
I simply delete spam. It's not hard. It takes up about five seconds of my day. There is no chance of not receiving something due to filtering.
There may be no chance of not receiving the good stuff, but once you start getting a substantial spam load, there'll be an appreciable chance that you'll accidentally delete something you want. If you're getting 50 spams a day, you get in the habit of hitting the DEL key really quickly -- and some of those things you delete wouldn't really be spam.
There aren't any perfect filters, not even your own eyeballs.
It's not necessarily that blue is good, it's just that blue is more rare than red. A chance coincidence of a potential signal with a rare blue star is less likely than a chance coincidence with a common red star. If it's less likely to occur by chance, then by this measure, it is more interesting.
I don't think this is a good idea, if by "more interesting" you mean "more likely to be an ETI signal". Selecting for blueness will mean you'll select bluer stars. You've already got the Gaussian term to select Sun-like stars; this additional term is just going to bias your search away from slightly redder stars towards slightly bluer ones.
I'd tend to look for Sun-like stars that are a bit younger or a lot older. What do the models say the Sun will look like in a few billion years?
Duncan Murdoch
Why is blue good? I would have thought "old and stable" would be good, and blue stars generally aren't old, are they?
score= N*(bv-bv0)*exp(0.5*(bv-bv_sun)^2)/(par+0.01)^3
How exactly do you test the validity of a formula like this?
That's easy -- it's clearly wrong. It's saying the Sun gets the lowest possible score according to the 3rd factor, when it should obviously get the highest score. (They left out a negative sign.)
Why do journalists put formulas online when they don't have a clue what they mean?
Why didn't the grammar police notice the use of "poignant" where "pointed" was meant? Eloquence's ineloquence brought a tear to my eye.
every system call was documented,
Someone should have told that to Andrew Schulman and his co-authors, and they wouldn't have wasted time writing Undocumented DOS (Addison-Wesley, 1990).