Stone Age

In the process of switching connectivity to Speakeasy (needed faster upstream than my current provider could offer). They get nothing but rave reviews, but we didn’t get off to a great start – they gave the telco the go-ahead to drop my line before they had even shipped me a modem. Going from ADSL to RADSL so my current modem won’t work with their service. So tonight our line went dead and Amy and I get to go dial-up for the next 4-5 days. It feels kind of like driving Fred and Wilma’s stone-mobile with the hole in the floor so you can use your feet to push.

Ah well, it keeps things in perspective. Also a nice chance to test out OS X’s internet connection sharing feature, which is totally effortless and transparent. Turn it on in Sharing, set the client machines to DHCP, and tell the modem to dial when needed. “Just works.”

Music: Guru Guru :: Dagobert Duck’s 100th

Frying Spam

WebMonkey has an interesting piece titled Frying Spam — a quick tour of back-end procedures for spam detection and elimination. Doubles as a nice tutorial for anyone wanting to set up procmail recipes or Bayesian filters such as Bogofilter.

Music: Gong :: The Invisible Temple

Pinstripe Exhaustion

I’ve s-o-o-o-o had it with Aqua’s pinstripes. The more brushed aluminum apps I see, the happier I am. In theory, Apple employees should be as tired of seeing pinstripes as we are right about now. So you can mark this as my prediction for X 10.3 : A new default appearance plus additional UI customization options. Yes, I know there are 3rd party hacks for this kind of thing…

n.b.: The difference between a simple wishlist item and a public prediction is quantified as:

pi / (foolhardiness x huevos)

Music: Lilys :: Strange Feelin’

Mitnick Hacked

Amused by the fact that Kevin Mitnick’s web site has been hacked into twice already since his release a few weeks ago. Of course, the fact that his host was running unpatched IIS (for chrissake!) is not revealed until the second-to-last paragraph of the story.

Mitnick is pedestalized like he’s the great hacking guru of time, space, and dimension, but the fact is he’s been stuck in a time capsule for years and has much catching up to do to grok the current state of the art. Mitnick running a security company today is like bringing Michelangelo back from the grave and asking him to set up a CPU fab. The world has changed. Hacking has changed. The tools, environment, and culture of hacking have changed tremendously. He’ll catch up, but what a lot of egg on face. Yipes.

Unpatched IIS, for chrissake.

Music: Man or Astro-Man? :: Interstellar Hardrive

MusicBrainz

The MusicBrainz service aims to become a community-driven replacement to CDDB, which your favorite MP3 encoder / CD player uses to pull down metadata for the CDs you stick in your computer. CDDB, as you’ve probably discovered, is full of errors, the metadata categories are limited, and results can be ambiguous. The CDDB API is also notoriously difficult to build apps around.

MusicBrainz aims to fix all that in two ways: 1) By using positive, unambiguous techniques to fingerprint specific tracks (imagine sending a friend a playlist file and it working on their computer even though the filenames, paths, and metadata are different), and 2) Letting communities collaboratively build metadata and enhance it over time via constant collaborative peer review, Wiki-style. Sounds a lot more capable than freedb.

This could become a beautiful thing. Or at least interesting to watch. Boing-Boing has more.

Music: Mekons :: Tribbles Down South

Netsol

I am taking every opportunity to move domain registrations off of Netsol and onto Dotster. Currently trying to transfer betips.net to its new owner, but to do that, I need to retrieve a password. And to do that, Netsol’s password-retrieval system needs to be up and running. For the past 72 hours, I’ve gotten nothing but a “this service temporarily unavailable” message from them.

Music: Godley & Creme :: Sleeping Earth * Honolulu Lulu * The Flood

Wheels in Motion

It has begun. Chris Simmons has been selected as the new den mother for betips.net. Just went through years of accumulation and cleared out a distributable version. Redirects, discussion boards, credits, database exports, dynamic content linked in from other sites (such as BeBits.com’s Tip of the Day), working through all the little details of domain transfer. This process is like getting ready to leave a home, or a town, or a relationship that isn’t working — leaving sounds great when you first think of it, but unbearably sad when the time actually comes.

“You’ll never miss the water ’till the well runs dry.”

Music: Linton Kwesi Johnson :: Inglan Is A Bitch

Fixing the iLife Backing Store

ORA blog: Time for iLife Apps to Share a Unified Media Database?

To me, all of these database issues point to a similar need — find a more efficient backing store for the iApps. The more I ask around, the more it seems that XML is the smoking gun on iLife performance drags – it’s a great format for interoperability, but horribly inefficient and resource consumptive. Maybe, just maybe, it’s time to reconsider using XML for the iApps. Maybe, just maybe, Apple should consider using some of the highly efficient open source database code out there — MySQL would do nicely I’m sure.

And since the iLife apps are all so wonderfully integrated now, why not place all of my media in a single, integrated media database? Whether such a database would store media objects themselves (allowing full export to original formats of course) or just references to them (with iTunes-style non-breaking inode references) is unimportant to me. With modern Mac hardware, I should be getting modern media database performance where it counts the most — when using my Mac as the digital lifestyle hub it’s touted as.

Music: Frank Zappa :: The Legend Of The Golden Arches

register_globals

Have been receiving occasional emails that people couldn’t get past the login screen of the simple contacts app that accompanied my web database development article for MacWorld. Turns out that some people have manually upgraded their version of PHP beyond 4.12, which Jaguar ships with.

Great, but the gotcha is that later versions of PHP have register_globals turned off by default. This is a bummer for development convenience (the transparency of variable access has been something I’ve loved about PHP) but essential for security — now you have to carefully specify where a variable is expected to have originated — cookie, url, get, post, etc.

The upshot is that if you upgrade PHP, you have two choices:

1) Override the new default by setting register_globals=on in /usr/lib/php.ini, or

2) modify all your web apps (The original announcement and explanation from php.net is here.

I’ve updated the sample contacts database to accommodate installations with register_globals=off, which is the newer, shinier, safer way to do it.

Music: Beth Orton :: Sweetest Decline

Betips Going Away

Long after the flavor’s gone, I’ve decided to turn betips.net over to someone else. This is kind of a hard decison – many hundreds of unpaid hours have gone into the site, and it served as a test-bed for some cool things, like TrackerBase. For a couple of years it was one of very few full-time servers running BeOS on the Internet. These days the site is all PHP/MySQL under OS X, but I haven’t touched the content for ages… just keep it around because it’s nice to have a domain at my fingertips for file transfer, etc. But I’ve got other ideas for that now, and this really should be in the hands of someone who lives and breathes BeOS. Let me know if you’re interested in hosting – shacker at birdhouse org.

(This post has been modified).

Music: Velvet Underground :: I Heard Her Call My Name