Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Slashdot videos: Now with more Slashdot!

  • View

  • Discuss

  • Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).


Comment: Re:Your justice system is flawed, too. (Score 4, Informative) 1081

by JesseMcDonald (#49258975) Attached to: How To Execute People In the 21st Century

There is something called "The Social Contract", which is something of a "shrink wrap license" you agree to by being born into a society, that by doing so, you agree to abide by that societies rules.

Ridiculous. You can't agree to anything just by being born; you aren't even sentient at that point. There is no meeting of the minds, no clear agreement. If this so-called "social contract" existed, it would be a contract of adhesion which no human being in history ever explicitly agreed to, and any competent court would throw it out with prejudice after a cursory hearing.

Comment: Re:Conversation went roughly like... (Score 1) 78

...a fix money supply like the gold standard or bitcoin is much more horrible system than having to deal with something like the Fed.

On the contrary, there is no need to adjust the quantity of money to reflect population growth or GDP or anything else. The value of the money will adjust automatically based on supply and demand; it's impossible to have a shortage or surplus, as the units are arbitrary and have no direct use apart from serving as money. Changing the quantity of money in an attempt to regulate the price ruins an extremely useful economic signal regarding the demand for money and the balance between consumption and investment, leading to overconsumption and/or malinvestment.

Bitcoin is inflationary for now—any new currency must be, during the initial distribution phase—but over the long term the supply will be relatively constant and the price thus will be fully determined by the demand for bitcoins. Variations in the price will thus signal changes in the demand for money—to the extent bitcoins are used; the effect is diluted by the presence of other, centrally-managed currencies—which in turn informs the market about which investments are better or worse than average. Assuming a growing economy, any investment which does not outperform the expected price deflation is worse than average: investing in it would reduce the rate of growth. Under forced inflation there is more investment, but some of it is malinvestment, driven by the fact that simply holding the money causes it to lose value (artificially, due to the increased supply), and thus contributes to a lower average return and a poorer economy.

Comment: Re:This is some serious sci-fi drama (Score 1) 78

No, mathematics like science is purely an invention of the human mind...

One could argue that the entire universe as we know it is nothing more than "an invention of the human mind", leaving no scope at all for discovery, but that is hardly a useful position to take in this context. Even if you did take that approach, mathematics should still be excluded, because mathematical relationships exist independently of human thought. The ratio of a circle's radius to its circumference is tau, and would remain tau even if no human ever existed to discover that fact.

Invention implies an element of creativity, deliberate choice among the available alternatives. The only choices in math are in the selection of axioms. Mathematical axioms may be invented (under significant constraints necessary to keep the results applicable to the physical universe, though there remains some flexibility), but everything beyond that follows mechanically from the axioms—and is thus discovered. Similarly, once your requirements are known, developing a software algorithm comes down to little more than solving the system of constraints described by the requirements—given the requirements specified in a formal language, this is something that could be solved in principle by a search through the solution space using tools similar to mechanical theorem-provers. Intuition helps in narrowing the search space (at the cost of possibly missing the solution entirely), but it isn't essential given sufficient time and memory. Of course, an actual program includes additional elements such as comments, identifiers and code style which are chosen by the programmer and have no effect on the program's behavior; these creative elements would be invented rather than discovered.

Science, moreover, is not "purely an invention of the human mind" any more than mathematics is. It consists of both discovery and invention. Science is essentially the process of making observations and developing statistically consistent models. There is more flexibility here than in math; models can fit the data to a greater or lesser extent, and the best-fitting model is not always the most useful. A useful approximation can thus be considered an invention; just the same, most of science consists of discovery rather than invention of new models, even more so when the goal is simply to fit a standard statistical model to the available data, pure math combined with discovered observations.

BitCoin's main [algorithms] go back about 30 years.

The algorithms have been known for about 30 years, but they've always existed as a solution to the problem Bitcoin was intended to solve, waiting for someone to discover them.

Comment: Re:This is some serious sci-fi drama (Score 1) 78

discoverer of Bitcoin

The word you are looking for is inventor. A discoverer is someone who finds something that was there all along.

In that case, the correct word is "discoverer". The name Bitcoin was invented, but the fundamental algorithms with which Bitcoin solves the distributed ledger problem have always existed; it just took someone asking the right questions to discover them. You don't invent solutions to math problems, you discover them, and that goes for software algorithms just as much as any other form of math.

Comment: Re:Conversation went roughly like... (Score 4, Insightful) 78

Instead the community glommed onto a rather flawed version based on artificial scarcity...

Scarcity is a fundamental requirement for any currency. It's either natural due to physical scarcity, as in gold, or artificial, as in bitcoin or US dollars or most other currencies in common use. Any digital currency will have the property of artificial scarcity, because information is not naturally scarce. Ensuring that scarcity is maintained without reliance on a central authority is what the blockchain is all about. The only significant difference in the form of scarcity between bitcoins and dollars is that one is governed by a fixed and unbiased mathematical formula, while the other is dictated by politics and thus unpredictable and subject to corruption.

You can complain all you like about "unfairly" enriched early adopters, but I for one would much rather have that than unfair enrichment based on one's political connections. When bitcoins come into existence they're distributed by a scrupulously fair lottery with proportional odds to people doing useful work for the network. When dollars are produced they benefit first with the authority to order them, and then those who decide how they're distributed, then finally the banks and government contractors and employees who get a chance to spend them before prices adjust to the increased supply; at each stage there is plenty of scope for self-enrichment through manipulation of the flow of new money.

Anyway, if you really want to trade traditional currencies online (as credit—the closest you're likely to get to trading the actual currencies), the reference client and server for Ripple are open source under the ISC License. Such a system can't be completely distributed, of course, since it's tied to external centralized currencies, so it's no substitute for Bitcoin; Ripple solves a different, and easier, problem by dealing in loans rather than assets, leaving it up to the users to decide how much credit to extend.

Comment: Re: Note that this is a little different from sof (Score 1) 207

by JesseMcDonald (#49115961) Attached to: Wired On 3-D Printers As Fraud Enablers

So you should be able to copy a bottle of Pappy Van Winkle (I.e., copy the bourbon, bottle, and label), tie a label to the bottle that reads "made by J. McDonald" and sell it?

Sure. Why not? Who would be harmed? Certainly not the buyer, who knows exactly what they're getting. Who else would have any standing?

The buyer's buyer.

Either the buyer's buyer was also informed about who the original manufacturer was, or the initial buyer/reseller is obviously committing fraud. But that has nothing to do with the original transaction, which was not fraudulent and harmed no one.

Comment: Re: Note that this is a little different from sof (Score 1) 207

by JesseMcDonald (#49107029) Attached to: Wired On 3-D Printers As Fraud Enablers

So you should be able to copy a bottle of Pappy Van Winkle (I.e., copy the bourbon, bottle, and label), tie a label to the bottle that reads "made by J. McDonald" and sell it?

Sure. Why not? Who would be harmed? Certainly not the buyer, who knows exactly what they're getting. Who else would have any standing?

Comment: Re:Note that this is a little different from softw (Score 1) 207

by JesseMcDonald (#49103807) Attached to: Wired On 3-D Printers As Fraud Enablers

... printing a copy and selling it for $100,000,000 to some very stupid collector who doesn't notice that it is made rather roughly from plastic.

I see your point regarding basic FDM printers, but note that for the right price you can 3-D print in steel, ceramics, wax, and more, or print a mold from which you can cast various other materials, including silver, brass, and bronze.

Comment: Re:That's a stretch (Score 1) 266

by JesseMcDonald (#49097501) Attached to: Lenovo To Wipe Superfish Off PCs

It injects advertising into search engine results, and also has the capability to intercept and hijack SSL/TLS connections to websites, thanks to the installation of a self-signing certificate authority on affected machines.

It's worst than that. Not only can the program MITM SSL/TLS connections on the infected machine, so can anyone else in a position to intercept the traffic. The private signing key employed by the program is public knowledge at this point, and the same on all infected systems.

Comment: Re:Black Hat 2014: A New Smartcard Hack .. (Score 1) 449

by JesseMcDonald (#49091175) Attached to: Credit Card Fraud Could Peak In 2015 As the US Moves To EMV

And I am also well aware that the cost of the losses are socialised across all people. And I am ok with that. I know that I am paying an insurance premium when I use credit cards, however that cost is acceptable to me for the convenience of using credit cards.

Your opinion is irrelevant here. Of course you're OK with it; you're one of the negligent freeloaders driving up costs for everyone else! It's the more careful credit card users who don't deserve those costs that are harmed by this system.

For that reason, the laws requiring a high default level of protection should be repealed. You would still be free to get a card from a bank offering "gold-plated" fraud protection, for an unsubsidized premium fee, while others who are more responsible with their cards can forego the fees in exchange for performing their own due diligence.

Comment: Re: I don't see the problem (Score 1) 216

by JesseMcDonald (#49068335) Attached to: Valve Censoring Torrent References In Steam Chat

I say, the Law is settled in the consequences of language, and it should only come into play if actual, demonstrable physical harm has resulted as a direct result of that language.

Then you will be glad to learn that it is absolutely impossible for any language to cause physical harm as a direct result. In your prior example of "inciting violence", the language wasn't the cause of the harm, the violence was the cause of the harm; and the cause of the violence was the listener's choice, not the speech, or the speaker.

The freedom of speech naturally extends to all speech. Your freedom of speech is respected if and only if you can say whatever you want to say without any change in your legal status. Social consequences are, of course, another matter entirely.

Comment: Re:Actually in a functional language ... (Score 1) 252

by JesseMcDonald (#49020063) Attached to: AP Test's Recursion Examples: An Exercise In Awkwardness

Now someone implemented the forEach function. How did they without imperative loop construct?

forEach(iterator, function):
..if (!iterator.at_end()):
....forEach(iterator.next(), function)

A better question would be: How do you implement a loop construct without recursion?

Keep in mind that recursion is nothing more or less than the ability to return to a previous point in the control flow of a program. The stack overhead associated with a lack of tail-call optimization and the special treatment of iterative constructs are merely implementation details, whereas recursion is a fundamental concept in computer science without which most programs would be impossible to express.

Comment: Re:What do you expect? (Score 1) 252

by JesseMcDonald (#49019111) Attached to: AP Test's Recursion Examples: An Exercise In Awkwardness

It's recursion. Therefore fundamentally incomprehensible!

I realize you were joking, but there isn't really anything conceptually difficult about recursion. It just means that part of the program refers back to itself. Whenever you have self-similarity in the program's control flow, including the trivial case of repetition, you have recursion.

I think part of the problem is that most students are introduced to specialized loop keywords and "the" stack (a mere implementation detail) first, and only exposed to explicit recursion later as an "advanced" concept. Recursion should come first. Really, which is easier to understand:

void iterative(int n) {
..while (n > 0) {
....n = n - 1;

void recursive(int n) {
..if (n > 0) {
....recursive(n - 1);

From a modern compiler's point of view (with support for tail-call optimization) these examples are exactly equivalent, but the recursive version doesn't require an understanding of mutation, which is counter-intuitive for many beginners, and makes the control flow explicit where the "while" statement hides the control flow behind a special keyword.

Comment: Re:if the national system were sane, yes. Each ins (Score 1) 223

by JesseMcDonald (#48992865) Attached to: US Health Insurer Anthem Suffers Massive Data Breach

I was speaking from the point of view of one insurance company. They have to provide the various agencies that administer ACA the access that the agencies demand.

Under the system I described, the insurance company can provide any level of access required. Even a full database dump, if necessary—just make sure it's locked down so that such requests can only come the agency needing access. If they want to use their own transfer protocol, arrange for a hardened proxy server and do whatever protocol translation you need at that point. If your database gets hacked through an insecure interface demanded by some external agency, there will be a log entry recording that proxy as the source and everyone will know who is to blame.

Sigmund Freud is alleged to have said that in the last analysis the entire field of psychology may reduce to biological electrochemistry.