Weekly spam summary on March 11th, 2006
Hotmail had an amazingly good week this time around:
- 5 messages accepted.
- 2 messages rejected because they came from non-Hotmail emailaddresses.
- no messages sent to our spamtraps.
- 6 messages refused because their sender addresses had already hitour spamtraps.
- only 1 message refused due to the origin IP address being in the CBL(and now in the SBL, as SBL34115 ).
Muting the happiness is the fact that the one CBL-rejected messagewas from a sympatico.ca address, and several
A DNS realization
One thing I did today was set up DNS for a hostname that we may needto re-point elsewhere very rapidly. This caused me to realize somethingimportant:
Setting low TTLs doesn't mean squat if you can't cause secondaries toreload on command.
Low TTLs mean that people will re-query A records frequently, but thatdoesn't help me change where the traffic is going if my secondarieshaven't updated to my new set of A records. Unfortunately, none of thesecondaries for
Web design trends that I don't understand (part 1)
Every so often, I run into web design trends that I simply don'tunderstand. Since I've already grumbled about small font sizes , today's contestant is the mysterious case of thevanishing links.
Technically they haven't vanished. Instead they've carefully beengiven a colour that is almost exactly the same as the regular textcolour. Sometimes even exactly the same as the regular text colour.Ironically, in this situation the 'click here' style of link textactually becomes good, because
我的敗家生活
The dynamic linking tax on fork()
Most people will tell you that dynamic linking is an unalloyed good, orat least that any effects on performance are small (for simple programsthat don't cascade to a huge set of shared libraries). This isn'tnecessarily so.
A long time ago, back when dynamic linking was new and people weresuspicious of it, I conducted some timings of how dynamic linkingaffected the speed of fork() . To my surprise, the impact wassignificant, and on the hardware of the day it was
Why dynamic linking
Originally, shared libraries and dynamic linking was sold as the way tomake (newly) bloated libraries tolerable: you'd only have one copy ofthe library on disk and in memory, no matter how many Motif applicationsyou had running. (Motif in specific and GUI libraries were really theoriginal poster boys for shared libraries.)
As R. Francis Smith notes in his comment on my previous entry , these reasons are not entirely relevant any more.Disk space is cheap, and (although I haven't
學術愛恨,歇斯底里肥皂
Closures versus classes for capturing state
Possibly like a lot of other people, I have a 'thread pool' Pythonmodule for doing decoupled asynchronous queries of things. The basic interface looks like this:
wp = WorkPool(HOWMANY)for w in what: wp.enqueue(wrap_up(w))wp.waitDone()res = wp.getanswers()
The important operation is It's always nice when people's software saves me from having to wonderif they're up to no good by handing out obvious signs of it. Take, forexample, the spate of people whose web crawling software advertisesitself by having the User-Agent string of: Evidently no one told them not to stutter. (There are a couple ofvariations in what they claim to Via a link from MiniMsft 's latest entry ,I wound up reading this item on hiring people. In it I hit an interviewer question I realized that Iprobably wouldn't pass: 6. I will ask you in an interview to describe a project you worked onor effort you made that failed - partially, completely, and miserablyare all OK for response fodder. If you've worked for a substantiallength of time in IT, you've been part of at least one of theseturkeys. .enqueue(
Making things simple for busy webmasters
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Thinking about project failures
Menu