Deadnode

Google Voice: AT&T's real fear?

Journalists and bloggers have now spent days poring over the recent controversy of Apple refusing to allow Google to distribute the client application for Google Voice through the App Store, meaning that only jailbroken iPhones are able to access the service without going via the web interface. There’s a consensus now that this was influenced by AT&T rather than being Apple’s own decision, and many comments seem to assume that the objection was because Google Voice carries voice calls over VoIP, using the (unlimited) data connection instead of the regular voice mechanism for which AT&T charge by the minute. A nice simple explanation, but fatally flawed: Google Voice still routes your calls over the voice network, so AT&T derive just as much revenue from a GV call as a regular one. Moreover, blocking the native app doesn’t prevent Google Voice calls: there’s a web interface for doing that which still works fine, and Google Voice is happy to forward incoming calls to you as well.

The native application does offer greater convenience, of course, and a slightly better user experience, integrating with your contact list nicely, but it can’t route calls over the data connection. What it can do, however, is route text messages that way — including receiving them, which the web interface cannot do. Unlike the voice functionality, this actually bypasses AT&T charging, wiping out the $20/month cash cow of their unlimited messaging plan.

(read more)

Unsubscribing from McAfee/Network Associates AVERT

McAfee offers quite a useful virus alert service by email – more details here – but unfortunately their mailing list is rather difficult to unsubscribe from. There are no instructions in the body of their emails at all; the headers do contain this promising looking entry:

List-Unsubscribe: <mailto:leave-512213-327810X@listserv.mcafee.com>

Frustratingly, however, although listserv.mcafee.com actually resolves and accepts SMTP connections, it rejects all delivery attempts for that domain…

(read more)

If you don't built it, they may come anyway

A perennial problem in maintaining widely-used platforms is backwards compatibility. Windows suffers more than most in this respect, both because of Microsoft’s unusual degree of commitment to backwards compatibility and the degree to which the platform has changed over time, from a 16 bit collection of libraries with cooperative multitasking running under MS DOS on a single 8086 processor with 640k to 32 or 64 bit pre-emptive multitasking operation on multi-core Xeons with gigabytes of RAM.

They’ve had to jump through endless hoops (NTVDM.EXE, anyone?) just to get those old applications running on operating systems created two decades later on radically different hardware. Further hoops, though, are imposed by applications relying on undocumented characteristics of components – sometimes, as Raymond Chen likes to point out, through laziness when someone just can’t be bothered putting in the effort to use the proper, documented method for something – but in other prominent cases like the MSI SlowInfoCache, an undocumented 552 byte binary block which controls how entries appear in Add/Remove Programs, and showing or hiding the Quick Launch bar, because Microsoft chose not to document an official way to do something out of fear “bad” people would use it. Needless to say, this just means they use undocumented methods instead!

(read more)

Caching with Radiant CMS, lighttpd and Lua

Lighttpd is now one of the top five web servers: very lightweight and efficient, with FastCGI support – which is how my half-dozen Radiant websites are served – and a clever built-in Lua interpreter, allowing you to script modifications to requests in ways beyond Apache’s mod_rewrite. For each request, Radiant can cache the complete rendered page in a pair of files (one for the body, another for metadata) – with a short Lua script, you can then arrange for Lighttpd to serve up recently generated cache files directly without ever touching the Radiant process – an enormous performance gain.

(read more)

Software and free utilities

A collection of utilities I have developed and released as a public service, including:

TFind - Quickly locate files by name on an NTFS filesystem.

BarPass - Generate sets of random passwords, with the corresponding barcode attached.

GTools - General tools for deploying Windows systems, including copying and moving files from batch files with a graphical progress indicator and changing or deleting drive letters

Bin2H - Convert binary files into character arrays for embedding in C source code.

Trix - Little snippets of code for re-use

Tablesearch - filter HTML tables based on a simple substring search in pure Javascript (no server side code)

EZMLM utilities - tools for automating some more complex administrative tasks on EZMLM mailing lists


Valid XHTML 1.1! Valid CSS! [Valid Atom 1.0]