johnk's blog

PHP DOM to Implement a Form Class with Pure HTML Templates

So, I had this painful gout attack today and was mostly bedridden. It sucked. But I got some reading done, which was nice. My mind wandered and came up with this idea (and a headache).

Languages, IMC Keywords, Zend Framework, and Bad Data (random caffeinated thoughts)

I'm getting back to setting up Drupal for LA IMC, but keep hitting little walls. I've decided I definitely want to extract proper nouns and keywords from the articles.

What is a Cat5 HDMI Extender?

More to the point, what the hell is a cat-5 HDMI extender?

File Naming Anti-Pattern

Click this link to see why you should not name your PHP files *.inc.

I still see people naming their files "". The problem with doing that is the server won't interpret .inc files as PHP files. By default it treats them as text. So if you have your database password in a file named, it might accidentally get exposed.

Managing and Displaying External Links in WordPress

I've been having a helluva time figuring out how to manage and display a list of links in WordPress. The program has a links feature, but it's aimed at managing the list of links in the sidebar.

Roff, Groff, and the Roots of Computer Typesetting

Today we take it for granted that computers can set type, but from the 60s to the 80s, most computers used either teletypes or character-based screens. The Xerox Star and Apple Lisa and Apple Macs, and PostScript changed this, but before them, typesetting was done using weird command languages that would send pages to special typesetters. The most well known setup was troff, which lives on in groff and in Solaris. The troff system used a computer typesetter called a CAT, and it wasn't a bitmap laser printer. It has these fonts that were spools of film that were photographs of letters. The font sizes were created by projecting the image of the letter onto the page at different sizes. I believe the rest of the process was like a photocopier - the toner goes on, and then is transferred to the paper, and fused.

Distributing a Large IMC Website P2P

It's always a concern that an IMC can be taken offline. As the sites get larger, it's more of a challenge to keep it backed up and distributed. There's also the problem of software upgrades.

Does software get old and wear out?

This isn't addressed to anyone in particular, but it's a common question: does software get old and wear out. They ask because their computers have gotten slower, or features have stopped working.

Hashcash Anti-Spam

A ten second calculation to deter comment spam. It's an old technique called "hash cash" and has nothing to do with drugs.

Database Libraries versus Database Servers

MySQL on my server is fading out more often than in the past. i wonder what's up.

Expensive Barracuda Anti-Spam Appliance... looks like Spamassassin

This is interesting. These headers are from an email I got. It passed through someone else's Barracuda Networks anti-spam appliance (starting at $700, plus annual fees).

An Idea for More Memorable Identicons

Identicons are those odd graphics you see next to peoples' names in comments.

Using PHP's ArrayObject to Implement a Primitive Data Tainting System for URI Parameters

[Turns out there's a PECL extension for tainting:
So this article is already kind of obsolete.]

Comparison Shopping for Toilet Paper, in multiple computer languages.

It's hard to concentrate when you're tired and cranky, so I wasted some time writing a simple calculator in several different languages.

Hauppage WinTV-1600 on Linux

I bought this several months back, and finally installed it on the Linux box. It works, sort of. ATSC (HDTV terrestrial broadcast) works fine. FM Radio does not. More info:

Syndicate content