Archive for December, 2006

Bjarne Stroustrup on the Problem with Programming

Monday, December 11th, 2006

A few extracts from a great two-part interview with Bjarne Stroustrup: Technology Review: The Problem with Programming,
More Trouble with Programming.

On over-abstraction:

Software developers have neutralized the astounding performance of modern computer hardware by adding layer upon layer of overelaborate [software] abstractions. We seem to have hit the limits of linear speedup for hardware, but in many cases, we could win a couple of orders of magnitude back from the software.

On “the next big thing”:

I don’t know what the next major conceptual shift will be, but I bet that it will somehow be related to the management of concurrency. As programmers, we have been notoriously bad at thinking about lots of things happening simultaneously, and soon our everyday computers will have 32 cores.

On .NET and the JRE:

I want my software to run everywhere it makes sense to run it. I also want to be able to change suppliers of parts of my system if the suppliers are not the best. Obviously, suppliers of huge integrated systems, such as .Net and Java, see things differently. Their claim is that what they provide is worth more to users than independence. Sometimes they are right, and of course some degree of integration is necessary: you cannot write a complete application of any realistic size without introducing some system dependencies. The question is how deeply integrated into the application those system dependencies are. I prefer the application to be designed conceptually in isolation from the underlying system, with an explicitly defined interface to “the outer world,” and then integrated through a thin layer of interface code.

Well worth the read.

Tackling “Undelivered Mail return to sender” and Image Spam with Greylisting

Sunday, December 10th, 2006

Over 90% of email is now junk mail according to a recent BCS article.

Not only are spam volumes increasing, but junk messages are proving harder to filter. Some spam buries its message in images to prevent filtering on content. To reduce the number of these in your inbox, quarantine messages with headers containing “Content-Type: multipart/related” but check your quarantine folder regularly for false positives.

Others send spam for you to a third party and forge the sender’s address so that it appears to have come from you. This technique is known as backscatter. If you keep receiving messages with the header “Undelivered Mail return to sender” about emails you never sent then you may be the victim of this technique. Quaranting messages containing “Action: failed”, “Delivery Status Notification (Failure)” and/or with the subject containing “Undeliverable” will help reduce the volume of these although again this risks filtering off genuine messages alerting you to a failed delivery.

I’ve just started testing greylisting on my email. Email from unknown senders is temporarily bounced back: legitimate mail clients will try again later; spammers either will not try again or hopefully will have been added to a blacklist by the time they do so. Known senders are added to a whitelist and automatically bypass the greylist filter.

Mailsnare offer server-side greylisting. However, I have been disappointed with their service levels recently and am not sure how strongly I would recommend them.