“Cranking,” by Merlin Mann

Merlin Mann, who seems to be struggling with writing his new book about Inbox Zero, writes about what is really important in his life. This is one of the best posts I have read this year, and it is well worth your time.

 

Posted in Writing | Leave a comment

Python Magic

Have I mentioned that I’m teaching myself Python? These are my two favorite Python comics, from Abstruse Goose and xkcd.

Batteries included, by Abstruse Goose

Batteries included, by Abstruse Goose

 

Python, by xkcd

Python, by xkcd

Posted in Computing | Leave a comment

The Weasel Program

Iddo Friedberg at Byte Size Biology observed Shakespeare’s birthday a few days ago by writing a Python version of the Weasel program. The Weasel program is a simplified computer simulation of random variation and natural selection invented by Richard Dawkins in his book The Blind Watchmaker.

The timing of Friedberg’s post is fortuitous for me because I’ve been teaching myself Python recently, and now I’m able to read and understand Friedberg’s entire script without having to refer to a book. The Weasel program would make a nice homework assignment in a programming course.

 

Posted in Biology, Computing | Leave a comment

How to Shred a Barcode

Via Ann Finkbeiner at The Last Word on Nothing blog, Abstruse Goose works out the best way to shred a barcode.

 

Posted in Technology, Webcomics | Leave a comment

Can You Read Your Own Perl?

John Siracusa sets Dan Benjamin straight in Hypercritical #14, during a discussion about the evolution of programming languages (32:42):

John: Lots of people now are working in dynamic languages—Ruby, JavaScript, Python, stuff like that.

Dan: What do you work in, most days? Can you say that? ’Cause I know that—

John: I work in Perl. That will flip people out, but believe it or not, people still do that.

Dan: Can you read your own Perl once you write it?

John: Of course I can.

Dan: Okay. Most people can’t.

John: Not true.

Posted in Computing | Leave a comment

Comment Spam (Part 2)

Comment spammers, people and/or computers that submit comments to blogs in order to increase the number of links to their own websites, are an unpleasant reality on the Internet. As soon as your blog begins to receive some attention, you need a good tool that automatically identifies and sequesters comment spam.

As I have written before, this blog uses the WordPress blogging engine, and I have activated the Akismet plugin, which so far has done a perfect job of identifying comment spam. Since I turned on the plugin, I have received 2,400 comments, of which only 16 were real. That is, more than 99.3% of the comments to this blog are spam.

Nearly two months ago I quoted some of the comment spam I receive. I’m getting a new batch of comments (from Polish websites, which I will not name here) that are longer and almost sensible English.

Nearly all of the things you mention is supprisingly accurate and that makes me wonder the reason why I had not looked at this in this light before. Your article really did switch the light on for me personally as far as this particular subject goes. Nonetheless at this time there is 1 position I am not too comfortable with so whilst I make an effort to reconcile that with the core idea of your point, allow me see exactly what the rest of the subscribers have to say.Well done.

I do love the way you have presented this particular issue and it really does offer us a lot of fodder for consideration. Nonetheless, through what I have witnessed, I really trust when the actual comments stack on that men and women keep on issue and in no way embark upon a tirade of the news du jour. Yet, thank you for this fantastic point and though I do not concur with this in totality, I regard your point of view.

The root of your writing while sounding reasonable at first, did not settle perfectly with me personally after some time. Somewhere throughout the sentences you actually managed to make me a believer but only for a very short while. I nevertheless have got a problem with your jumps in assumptions and one would do nicely to fill in those gaps. When you actually can accomplish that, I will definitely end up being amazed.

Throughout the awesome scheme of things you actually receive an A+ with regard to effort. Where you actually confused us was on all the particulars. You know, it is said, details make or break the argument.. And that couldn’t be much more accurate right here. Having said that, let me inform you what did work. Your article (parts of it) is rather persuasive and that is most likely the reason why I am making the effort to opine. I do not really make it a regular habit of doing that. Secondly, despite the fact that I can see the jumps in reasoning you come up with, I am not necessarily sure of how you seem to connect your ideas which in turn produce your conclusion. For the moment I shall yield to your point but wish in the future you actually connect the dots much better.

With almost everything which appears to be building inside this specific subject material, a significant percentage of points of view tend to be fairly refreshing. On the other hand, I appologize, because I can not subscribe to your entire idea, all be it exciting none the less. It appears to everyone that your opinions are actually not completely validated and in fact you are generally your self not really totally confident of the argument. In any event I did appreciate reading through it.

These read like grading notes from a deranged teacher of English composition.

When I submit these comments to search engines, I get thousands of hits but none that are perfect matches. Each of these comments has variations in which the author—human or machine—has substituted near synonyms or has changed the word order slightly. For example, instead of “you actually receive an A+ with regard to effort,” variants I found include:

  • “you receive a B- with regard to effort”
  • “you’ll receive an A with regard to effort”
  • “you’ll receive an A with regard to hard work”
  • “you secure an A+ with regard to effort and hard work”
  • “you’ll receive an A+ just for effort”
  • “you get an A+ with regard to effort”

In order to create such variations efficiently, you need a spam comment engine that never generates the same comment twice. This can be achieved by using a base comment string with substitution positions and variants for each substitution position. Each time the engine creates a new comment, it uses a pseudorandom number generator to choose a variant at each position. Given ten base comment strings, eight substitution positions, and ten variants for each substitution position, the engine can create a billion different spam comments.

[Updated May 5, 2011]

Two days after I posted this, spam traffic to this site suddenly tailed off. Maybe the spammers are just giving up.

Posted in WordPress | Leave a comment

Retina Displays in Additional Apple Devices?

I have commented in this space that I am waiting for an iPad with a higher resolution display. What is the chance that this will happen at any time soon?

Via John Gruber’s Daring Fireball, I learned that Tim Ricchuiti at the elaborated has written a long and informative post describing what the dimensions of a retina display would be for different computing devices.

The term “retina display” was invented by Apple to describe a display with pixel density sufficiently high that the individual pixels can’t be seen by eye at the normal viewing distance. The current iPhone and iPod touch models have retina displays with a resolution of 960 x 640 pixels on their relatively tiny 3.5-inch displays.

Tim first walks his readers through the mathematics of what resolution is required for a retina display for different size screens. For an iPad being viewed at a distance of 15 inches, the resolution needs to be nearly doubled. (The 15-inch Dell laptop I’m using today to write this post has a 1920 x 1200 display, and my eyes are about 24 inches from the display. By Tim’s calculations, this display verges on qualifying as a retina display.)

Tim continues by explaining why doubling the resolution of current displays is easiest to support for the graphical user interface. Based on this premise of doubling display resolution, Tim predicts that a Retina Display iPad will have a resolution of 2048 x 1536 pixels—a pixel density of 264 pixels per inch—at which density the individual pixels couldn’t be detected by a viewer 13.0 or more inches from the screen.

It’s only a matter of time and technology improvements. Can Apple achieve this for the next iPad?

[Updated 2011-04-26]

For more information, I recommend that you read The Resolution Gap at DisplayBlog.

 

Posted in Computing, Technology | Leave a comment