Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment It's OK to be in the minority (Score 4, Insightful) 585

In fact, in my experience, the majority is wrong quite a lot.

Fortunately, this is not a popularity contest. The question is whether the government can compel a company to rewrite its products to make it easy for the government to snoop on its customers. If they can, it's only a small jump to forcing companies to include a backdoor in their products in the first place.

Comment Re:Apple - standing alone (Score 1) 339

Actually, ignoring the unique hardware key associated with the Secure Enclave (because it can't be read by anything except the Secure Enclave), each iPhone does have several other unique identifiers that can be used to lock OS firmware to the device, such as the serial number, the cellular radio IMEI, and the Wi-Fi and Bluetooth MAC. As already pointed out, Apple could hard-encode those values in the firmware update and sign that. The resulting binary could not be used with any device where those identifiers did not match. Bad actors could not just change the numbers to match a random victim's phone, because the Apple signature would not match the binary. This is discussed at

It is true that even having the source code for firmware creates a risk, but that risk cannot be turned into an exploit without Apple's secret key. And of course if someone gets Apple's secret key, all iOS devices are in trouble.

I think the real issue we should be talking about is whether the government can force companies to redesign their products to help the government spy on their customers. If it can do this, then why can't the government similarly require that circumvention mechanisms be built into devices in the first place to make snooping easy?

Comment Multiple devices, works great (Score 5, Insightful) 504

I've been running iOS8 since pre-beta on multiple devices, including phones and iPads. I've had no problem, nothing at all like you describe.

If you're so inclined, I'd try a fresh install and see if that makes things run better. You can always restore from backup later.

I assume there was nothing strange about your iOS7 install, like being jailbroken, right?


California Tells Businesses: Stop Trying To Ban Consumer Reviews 275

ericgoldman writes Some businesses are so paranoid about negative consumer reviews that they have contractually banned their customers from writing reviews or imposed fines on consumers who bash them. California has told businesses to stop it. AB 2365--signed by Governor Brown yesterday, and the first law of its kind in the nation--says any contract provisions restricting consumer reviews are void, and simply including an anti-review clause in the contract can trigger penalties of $2,500.

Comment Re:Python (Score 4, Interesting) 466

I think we're back to the "it can do X" argument (JavaScript can do OO, it can do functional, etc). The problem with this argument is that any language can do X if you try hard enough. Unfortunately, to do OO in JavaScript, you do have to try, because JavaScript is not an OO language, but rather a prototype-based language. Compatibility layers such as CoffeeScript that offer clean OO have to produce somewhat wordy JavaScript to provide that support, precisely because even though you can emulate OO in JavaScript, it's not concise, easy, elegant or fun, unless you are using something like Coffee, which is a different language than JavaScript.

Certainly Ruby and Python have beautiful OO models, much more attractive and natural than JavaScript's. And like JavaScript, both Python and Ruby can be programmed in a functional manner if you choose to do that; indeed, their libraries support functional behavior out of the box much better than JavaScript's. And, as with the OO example above, if you really want to do functional-style programming, you might be better off using a language designed with that in mind, for example with default currying and pattern-matching built in.

But I don't think OP cares about any of that. I think OP just wants to whip some scripts together fast. JavaScript was designed with a browser in mind. It was not architechted with single standalone scripts in mind, and it continues to be a poor tool for that purpose.

Comment Re:Python (Score 2) 466

I'd much rather code in Scala or Clojure than Java. And these languages have good, and increasing, user bases who can provide support for those languages. An increasing number of companies are adopting these languages for production tasks, too -- apparently they feel they can find people who can support them.

I'm not saying Groovy per se is a good choice (or not a good choice), just rejecting the general argument that we should stick to the core language of a system for support reasons. If that argument were valid, then we should use assembler instead of C, we should dump CoffeeScript and the like in favor of JavaScript, and of course we shouldn't use any of the great new JVM languages, presumably sticking with Java 6 or something so we can make the lives of lowest-common-denominator programmers maximally easy.

Comment Re:Python (Score 5, Interesting) 466

Python is a good language, but it can be a little tedious to do simple one-off text-parsing tasks. Regexes aren't first-class elements of the language. You have to know what libraries to import. And Python as a language has an ongoing, controversial split between Python 2 and Python 3 that makes myself and others a little uncomfortable. Having said that, there's a lot of good stuff going on in Python. It's a worthy language.

JavaScript, to me, is less worthy as a language. Yes, you "can do" pretty much anything in JavaScript (as you can with any Turing-complete language, meaning all of them), and yes, it has some desirable language features. But, it's typically hard to do simple things, at least if you want compatibility with older platforms. JavaScript has a substantial number of warts and language design problems. If JavaScript were a newly-introduced language, I think it would pretty much go nowhere. It's compelling because all the browsers use it, and because we now have some nice frameworks, like Node, that use it, and because of the browsers, some great debuggers and related tooling. Still, for quick programming of one-off tasks, I would not pick JavaScript.

I would give Ruby strong consideration. Although you can write complex, large programs in Ruby, including web apps using frameworks like Rails, the language is very well-suited to small text-processing tasks as well. Check out Practical System Administration Using Ruby.

None of these languages have a lot of the cool new language features that are coming out (it seems like) on a weekly basis lately. By this standard, they all seem a little backward. But these newer languages are almost always immature in important ways -- either the language is evolving too much, the docs are weak, there's not much community yet, they have no module system (gem/egg/CPAN) or a weak one, they're only good at a small subset of tasks, etc. In a few years, these languages might displace Python or Ruby, just as Python and Ruby largely displaced Perl. But the newcomers are not yet strong enough for that. In the meantime, Ruby or Python would make better here-and-now answers.

Comment If they want false comfort, let them have it (Score 2) 268

The central problem with DRM is that it stops only honest people. Anything that is located entirely on the user's computer in obfuscated form and plays from there can be cracked, and crackers will crack it, whereupon the cracked goods will quickly find themselves on BitTorrent and other sharing networks.

The thing is, competing with free isn't that hard. If you offer high-quality goods for a reasonable price, using an open format, at a convenient location, customers will buy from you. How did Tower Records thrive for so many years when recording tape-to-tape or record-to-tape was so easy? Or, for a modern example, look at Tor books, which has un-DRMed its books. They say the sky isn't falling. This transition has already largely completed in the realm of technical books at companies like O'Reilly, Manning, Apress, and others.

DRM is an endless and futile game for content creators, and an annoyance to customers. I doubt in the end that any DRM standard we settle upon will be sufficient for most publishers for many reasons, ranging from capabilities to safety, and in the end those publishers who are really serious about DRM will go with proprietary plugins anyway (and will find that those don't work very well either).

Comment Re:Terrible move by a dying entity (Score 1) 317

You, sir, have elucidated my thoughts eloquently.

A sane layoff program targets the X percent of employees who are actually worth the least. Trying to piss everyone off with a dumb policy and then watch them stream out the door indiscriminately is one of the worst strategies. You'd probably be better off randomly firing X percent of your company. You'd keep a lot of the good people and they wouldn't feel alienated.

Comment Re:An Old Discussion (Score 1) 1174

I think some folks have somehow gotten the idea that we have a right to be free of the consequences of our speech. This is not the case and has never been the case, regardless of one's level of fame. Most of us would be fired if we endorsed a sufficiently controversial view too loudly, and famous people have to deal with financial consequences as well, perhaps even more so than average.

Orson Scott Card has made no secret of his own controversial views. Let him deal with the consequences. I feel no pity for him.

Comment Re:Another idiot buying into the bitcoin scam. (Score 3, Informative) 347

So don't buy them if you think it's a scam. In the meantime, I can make use of a nice currency that is not under the control of any country, both as a consumer and a merchant. It's fairly anonymous / not easily trackable. It sets a stoploss, like cash -- if you cheat me in a Bitcoin transaction, you get at most the Bitcoins I sent you and no method to get more of my money. We don't need a bank to use Bitcoins -- they can be sent over the Internet with no third party intermediary, and there are Bitcoin escrow services to verify I received the product before I release the payment to you. Political systems routinely use currency as a way to control people. If people do not need the currency of a political system, that particular weapon becomes impotent. That's why the establishment opposes Bitcoin. I personally think Bitcoin is a great currency that helps me right now, so I'll continue to use it, "gullible rube" or not.

Slashdot Top Deals

"Maintain an awareness for contribution -- to your schedule, your project, our company." -- A Group of Employees