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

 



Forgot your password?
typodupeerror
×

Comment Interesting (Score 1) 140

Hardkernel used to be one of the #1 purveyors of Samsung Exynos development boards (The other being Insignal). Unfortunately, both Insignal and Hardkernel's BSPs for Exynos boards tended to be vastly outdated. (Hardkernel was even violating the GPL with some of their Android 4.2 releases for some of the Exynos 4412 boards for a while - putting up binary images with no source code in sight.)

Now even Hardkernel is putting effort into non-Haxxinos boards...

Comment Re:Creators wishing to control their creations... (Score 4, Informative) 268

Why not? Why should the creator not be able to impose any restrictions they damn please?

Largely because of the first-sale doctrine, which codifies property rights sanity: if you sell me something, it is now mine, not yours. I can do whatever I want with it. Use my spatula as a screwdriver? Use a thermos bottle for a hammer? Watch scenes in a movie out of order? It's none of your business. I bought it. It is now my property, and I'm free to do with it as I please.

(Averting pedantry: of course that doesn't involve violating copyright. Straw men will be ignored.)

Comment Re:100 TB @ 100 MBit/s == 12.5 days (Score 1) 528

Hell yeah, I'll admit that I am King of the Geeks. Talk nerdy to me.

OK, OK. I'll double-check with a calculator that's not "bc" before publishing. I've done enough physics work, though, to trust that 1) calculations showing explicit conversions are almost always correct, and 2) calculations that don't almost never are.

Comment Re:100 TB @ 100 MBit/s == 12.5 days (Score 1) 528

For nontrivial math, I don't always trust Google's interpretation of the question to be the same as mine. That page is a little short on details of what it's actually doing. On the other hand, WolframAlpha is really good about showing its work. I just always forget that it's there.

In either case, yeah, I like doing it the hard way. Or as I call it, "learning" or "practicing".

Submission + - Apple requires credit card information for "free" security updates

TheSHAD0W writes: Apple recently updated OS X to version 10.10, "Yosemite", and is no longer providing security updates for older versions. Yosemite is "free", but to upgrade you have to sign in to their App Store — and provide credit card information. With all the security breaches recently, is it smart to provide financial information for no good reason?

Google Play isn't above offering free stuff in exchange for credit card info either.

Comment Re:Why program in Python (Score 4, Insightful) 277

They think it's great because, in a tragic case of hilarity, jumping into code with minimal design is what python is great at.

We think it's great because, among other things, it has first-class functions and a very high code:boilerplate ratio. This lets us write very concise, readable, and maintainable code.

If you're a diligent programmer in python/php/javascript/etc then, in each function you write, you're going to double-check that the type passed in is correct, anyway.

Eww, no. I've never seen good Python code that asserts types because it's not the idiom for you to care. For instance, suppose you write a function like:

def get_contents_of(obj): return obj.read()

In this case, obj might be a file, or a web request, or a string (via the StringIO interface). Who knows? Who cares? As long as obj.read returns something, it works. BTW, this is supremely nice for unit testing when you don't really want to hit an SQL server 1,000 times in a tight loop.

Now, you could write something like assert isinstance(obj, file) to guarantee that you're only dealing with file objects. Of course, that lays waste to the whole concept of duck typing and people will laugh at you for doing it. So dropping that bad idea, you could write assert hasattr(obj, 'read') to ensure that the object has the needed methods. But why? Python gives you that check for free when you try to call the method. Let it do the heavy lifting and concentrate on the parts of the problem you actually care about.

Exceptions are one of the worst things to have become common - an "error" is almost always only caught outside the scope that it occurred in, hence the stack has already been unwound and thus there is no sane way to fix the error and retry the operation that caused the exception.

Yeah, that would be terrible. You almost never use them in Python like that, partially because Python tends to have a vastly shallower call stack than, say, Java (largely because you don't need 10 layers of abstraction between bits of code thanks to the duck typing we just talked about).

I think it boils down to you not knowing idiomatic Python. That's OK. I'm ignorant about lots of things, too. But I think you'd find that you enjoy it more if you stop trying to write C or Java in Python, because that almost never works out well.

Slashdot Top Deals

The Tao is like a glob pattern: used but never used up. It is like the extern void: filled with infinite possibilities.

Working...