Become a fan of Slashdot on Facebook


Forgot your password?

Comment Re:Display (Score 1) 140

Since 2011, most of my reading is done in a Galaxy S. I read before I sleep, so I use amber text over a black background, with the dimmest light intensity available. I haven't found any better alternative to an AMOLED display, it is just excellent. I have a newer Acer smartphone, but its display sucks in comparison, at least in low light settings.

And for software, I can't recommend enough the Moon+ Reader app for Android, it has everything you need and the UI is perfect, imo. If any dev reads this, congrats, great job! :)

Comment encoding (Score 1) 187


And the walk of shame continues... bling bling bling! (

I hate Perl, but even I know that you could solve (palliatively) this disgrace with a simple:
$post =~ s/â\(TM\)/'/g;

Or just use SoylentNewsâ(TM) [yeah, it was on purpose] version of Rehash, as they fixed this ages ago.

Comment Re:Stupid python comment (Score 1) 167

But on the other hand, neither form is something that a beginner would know without being told, really you're going to need to be handed an example to learn it, so the actual practical difference between the two isn't that huge.

A beginner wouldn't know that a "read" method exists in a "file" object. But when confronted with a "" invocation, the meaning seems pretty straightforward to intuit.

Now, "local $/;" gives you absolutely nothing to reason over it. Only after your explanation I have a grasp on what's happening (which in Python could be represented with "".join(file)) , though I still don't understand how the $/ syntax means $INPUT_RECORD_SEPARATOR = undef.

Comment Re:Stupid python comment (Score 1) 167

It's mostly because Perl is line-by-line by default. Most of the time you don't want to read a whole file into memory, do you?


You could also do my @data = <$file>; which slurps the whole file, line-by-line, into an array, if that's what you need.

I can't say "most of the time", my guess is I use equally reading the whole file, reading chunks of binary files, and reading lines.

local $/; switches to slurp mode (temporarily).

Ahhh, of course!!! That's obvious! </sarcasm>

Not only the syntax is cryptic, the terminology is terrible! "Slurp" is a funny way to describe the process, but introduces one more step (two more for non-native speakers) to understanding it. Compare that to Python's `` and `file.readlines()` and you'll understand why Python is better for beginners and for people that want maintainable code.

Shakespeare's style might be great for poetry, but if you use it to write guides, don't be surprised if people get lost.

Comment Re:Stupid python comment (Score 1) 167

a) Scientists are terrible at Perl. "You can write FORTRAN in any language" applies to them; they often write Perl as if it were C. Or that's my experience based on Stack Overflow and Perlmonks questions. They aren't programmers, they're scientists, and it shows.

Yep, that's usually the case.

b) A rewrite is always clearer, no matter the language.

You are right, of course, and as I used the word "translated", that could imply a rewrite. I should have used "transliterated", as I kept the original structure.
I tried to find these scripts so I could give a concrete example, but I could only find my Python versions. But it was stuff in Perl like

open($file, "file.txt");
my $data = do { local $/; <$file> };

that in Python becomes

data = open("file.txt").read()

that makes you think, wtf Perl??? Really, why do you need all that crap just to read the whole file?

Comment Re:Stupid python comment (Score 1) 167

Thanks for your comment, it expresses my view pretty well. I want to add a note about this:

Also, Python has done pretty well as a first programming language, even if the design runs out of steam at certain points. In contrast, we tend to think of Perl (especially Perl 6) more as a last programming language, the language of choice for people who need a language that won't give up when the going gets tough.

I started coding with BASIC and Z80 Assembly in the late 80's, then coded mostly C until 97 when I switched to C++, then finally in 2006 I switched to Python as main programming language. In these ~30 years I obviously had to program in several other languages, and Perl is by far the one I most hated. After my bad experience with Perl I even translated some Perl scripts coded by a biologist friend (Perl seems to be strong in the field) to show her how much more clear and concise they can be made in Python, and the difference is undeniable.

So it seems to me that Python (with occasional C extensions for speed) is a suitable "last language", though what the future holds no one knows. Except that it will be neither Perl 5 nor 6.

P.S.: JavaScript as it was in the beginning was pretty terrible too, even if it had a saner syntax. But it redeemed itself in the latest ES standards, and with the recent frameworks it is actually quite enjoyable.

Comment Re:Microsoft announcement: "content youâ(TM)v (Score 5, Insightful) 115

It's even more interesting when you contrast it with the way the media conflate copyright infringement with stealing. When someone makes a bootleg copy of a movie, the original is still accessible. When someone steals something from you, you lose access to what has been stolen.

So, when will we read the news "Microsoft will steal workout videos from consumers"?

Comment Re:More Proof (Score 5, Insightful) 102

The FBI is only one of the cogs. Isn't it troubling when you can read either as ...

The secret *government requests* for customer information


The *secret government* requests for customer information

because the FISA Court allows for exactly that, a secret and unaccountable government. Some day they'll swap "Foreign" for "Federal" in that acronym and nobody will notice any difference.

Slashdot Top Deals

The clearest way into the Universe is through a forest wilderness. -- John Muir