Aug 23

I ran across Rawson-Tetley’s interesting inetdxtra project — looks like a great addition to buildroot when I have time. Ahhh… *sigh*… spare time…

Take a look when you have a chance, the author has created small/feature-limited SMTP kicker, DHCP with extras for Hauppage v1, Hauppage v2+ kicker, tiny workgroup we’re-all-friends jabberd, HTTP proxy, etc. The author shares my desire for an idle system to truly have zero apps running… as opposed to apps hanging around just for the monthly update (jusched, I’m looking at you…)

His umlspeed is fairly cool as a development tool :)

Aug 11

We use the Maildrop app extensively on our Macs at my work.

I’ve edited it to add:

1) copying: when a new “related to what” is chosen, if there’s a “related to who”(m) already selected, the “what” never goes to attachments. Copying (“n/a”, “who”, “what”) now selects which will cause a copied value on any change of selected items.
2) check length of subject, give the user a chance to truncate (this is a version-2.1 behavior)

Seems to have one bug: the submission still has too-long subjects, so I’m looking for a screencap to show what’s up.

Update: 2010-08-12 Fixed the Subject-truncation; new version made available.

I’ll attach a patch someday… this version still needs cleanup.

Aug 07

I’ve had a few problems with the SBG6580 — and some on the guest network setup, so they’re not obvious while it’s just me.

Today I had to back out the dual-channel setup — a client who was connected just fine on the Primary SSID could not get internet access through a good-signal connection on the secondary SSID. Dropping out Bridging and Dual-Channel (40MHz) (Wireless->Basic page (the link works if you have your default subnet configured)) resolves.

Frustrating. I know both dual-channel and secondary/guest SSID are unusual features, but lacking any ability to raise exceptions (ie SNMP traps or polling — although rsyslog is offered) I’m not 100% satisfied with this. Why sacrifice features commonly available on other platforms to provide new, flashy ones?

Aug 07

When I got my SBG6580 to work with Comcast, there was a bit of a problem, but it was quickly fixed.

As a reminder, the SBG6580 is similar to the SB6120 (I put a quick link if you wanted to find that to see what I’m talking about) but has four ethernet ports, so it’s like mating a small 4-port hub with the SBG6120

Normally, Comcast wants the HFC MAC — mine ends in “A3″ — that one can get an IP from Comcast, and they can manipulate the modem directly, but the tech at Comcast indicated there were problems in what he was seeing.

Instead, using the Gateway MAC — mine ends in “A4″ — works fine, except that there’s no time service offered, so my modem thinks it’s always 8am. It would increase in time, but Comcast seems to like to reboot my modem.

Also, any time you speak to Comcast, they’re going to cut off your modem. It seems to be what they do. Every time “oh, I just have to make an edit in the config” is what they tell me, then we go through a reboot (second reboot — I do reboot the modem before calling them) and it works fine. Case-in-point: I gave back the pre-SBG6580 modem that comcast rents, and within a minute of the guy accepting the modem, I was punted offline again. Maybe it’s just a reeeeeally big coincidence.

Still no sight of GPL code.

Jul 22

A fellow I had a lot of respect shrugged me off on a simple thing: “http:\\example.com/x/y/z” … I remarked that it would work better if he used forward-slashes, per RFC-1738 (yes, I actually quoted the number).

“nah, it works with IE, it should be fine” Yes, that was said today.

Firefox fixed it for him. He saw this as proof that it qualifies as a valid URL, despite what the actual rules for a URL says (which he didn’t even care existed, and couldn’t be bothered to check what he was arguing against)

Is it any surprise that compatibility just doesn’t happen online? Seriously? When “liberal acceptance” implies “you can be flakey in what you produce”, might as well toss out RFCs, ISOs, and everybody make up your own way… because the really cool things will be worth everyone spending a lot of time to reverse-engineer a 98% effective compatibility, so it’ll work just fine… until it doesn’t.

Jul 11

I do a lot of things using passive checks — if there are things I want to keep an eye on without actually watching all the time.

For example, consider the following:

define service {
        use                             bidaily-service
        name                            bidaily-service-passive
        active_checks_enabled           0        ; service is passive only
        passive_checks_enabled          1        ; enable passive which seems redundant but for clarity

        check_freshness                 1        ; ...but check freshness to catch when the service isn't reporting in
        freshness_threshold             129600   ; == 36 hours: echo 36 60 \* 60 \* p|dc    -- to catch 2 failures

        check_command                   panic-run-in-circles-shouting        ; command to be run when freshness fails
        register                        0
        }

… and an instance of that template:

define service{
        use                             bidaily-service-passive        ; passive: triggered by /etc/cron.daily/mirror-idisk
        host_name                       localhost
        service_description             iDisk Sync
        }

In this case, I also have a script /etc/cron.daily/mirror-idisk that backs up my Apple iDisk (I love backups) and finishes with:

date "+%s PROCESS_SERVICE_CHECK_RESULT;localhost:iDisc sync:0:iDisk Sync OK %Y-%m-%d_%H%m" >> /var/nagios/rw/nagios.cmd

As you can see, this script does its work, and drops a successful return code into Nagios; Nagios simply shows it with a happy green marker on the status page.

What happens if the script’s action fails? It gives a bad result, and Nagios reports that.

What happens if the script has an error and chokes and dies? Nagios sees no result for 36 hours, and executes the “panic-run-in-circles-screaming” command. In my case, that’s another command that puts a failure into a queue, but that’s a bit tangental.

This is quite effective especially when my Nagios is tied to my Jabber, and can escalate to a twitter feed that reaches my by SMS. I know that errors will reach me, so I never have to check the status screen.

Jul 09

For enclosed spaces, I’m a big fan of all-in-one devices: they fit inside one smaller footprint, and use a single power connection, and doo all the things I need. I was a big fan of WRTSL54GS for this reason, plus the modifiable sourcecode.

The Motorola SurfBoard SBG6580 (damn, Moto, ever hear of shorter URLs?) showed up when I was looking for a Wifi-N/DOCSIS/hub that might fit inside my “Smart Panel” in my closet, and covers all the bulletpoints: DOCSIS-3.0, Wifi-N, 4 ports of 1gb goodness.

SBG6580 doesn’t have a simple way to create persistent VPN/PPTP connections (that I can see), and the SNMP only goes to the “head end” (the cable provider, I would assume). Finally, when it goes to sleep to conserve power, it’s not in any way fast about coming back up. I’m not sure whether it has a mdns stack to help printers work (one of those things they can’t really advertise because Joe Public doesn’t get it, and Moto doesn’t get blamed if the printer doesn’t work)

Despite these issues, I’m looking at repeating this exercise in my buddy’s closet to replace Comcast’s DOCSIS box, plus a WRTSL54GS.

Notable mention: the SBG6580 has a plug/wart/plug rather than a wall-wart, so it’s a bit easier to share the power connection inside the panel. I think I can lash down that power brick so that it gets a bit of heat-space around it. I’d feel better punching holes in the panel for heat-convection, though — count me crazy: it’s only a 1A/12V power connection, so would have trouble creating dangerous levels of heat without triggering its own thermal fuse.

Since the source for SB6120 is available, perhaps SBG6580 will be there too (it seems to be an evolution of the same product: add some ports) … that would give true future-proofing of the device, allowing it to evolve into an Asterisk server, proper VPN tunnels, SNMP that’s usable for end-users (non-head-end), etc.

No far, no SBG6580 (or SB6580) on Motorola’s website, nor at Modem-Help.co.uk, and every google shows marketing information (nice google-bomb there) but nothing detailed nor usable.

So… where’s the source?

Jun 28

I received a strange email today:

From: Juliet Burgess <juliet.burgess@oracle.com>
Subject: MySQL Support
X-Source-IP: acsmt355.oracle.com [141.146.40.155]

MySQL User:

I am reaching out to you because I was told you were interested in learning more about MySQL support.

Here is a link showing our prices and various levels of support and what you get at each level. http://mysql.com/products/enterprise/features.html

I have discounts available for quotes that close in June, as it is our year-end. I also have extensive multi-year discounts available this month.

Would you have time to talk on Monday?

Let me know of your availability and I’ll give you a call.

Thank you,

Juliet Burgess
Oracle – MySQL Sales Team
214 707 4971

Unfortunately, this conversation starts with a false statement:

I am reaching out to you because I was told you were interested in learning more about MySQL support.

I tried to recall asking Oracle anything, and went through past calls and emails. I didn’t find anything, and eventually Juliet confirmed that she is bulk-mailing from a list of email names given in a web form.

Let’s ignore for now that I always opt-out of additional unsolicited communication.

Juliet really should have started the conversation with the truth:

you downloaded a product from us, and I was reaching out to see if I could further the dialog

This would have been a true statement. That’s not what she used.

Juliet took a list of emails — some of which including mine didn’t want additional callbacks — and claimed that we asked a question. She sent a spammy unaddressed email (ie there is no “to:” part there) that triggers spam-blockers as it is. That kinda sucks, but I’m sure she’s not the only one at Oracle doing it, and I’m sure she’s not the only tech person ignoring opt-outs.

The worst is that she chose to lie. How, seriously, can we begin a conversation and a relationship with a lie?

Jun 14

I was just sitting beside an older couple who regretted audio quality on an iPod; this reminded me of a friend who has similar sensitivity to fidelity. Even before I shared a taxi later that night with the founder of Gotham Records, I had sent off emails to ask about quality.

The Spoiler: ALAC.

Ken and his wife (I forget her name) had a number of concerns — she didn’t know how to let her Mac switch between two preferred Wifi networks automatically, didn’t know how to use a graphics package on her Mac, and hadn’t considered asking the Apple Store for help… so here are some un-checked paths to problem-solving here.

For what it’s worth, Apple Stores have both in-store experts to help you fix your problems — some stores are 24/7 — and they have classes at more civilized schedules to help you build your skill and independence. Few people seem to consider this perhaps because there’s no Microsoft store, no Dell Store, no HP Store to help them, but Apple’s “Genius Bar” has helped me diagnose problems before, politely and quickly.

As Rev. J. Paul tells me, had Ken and his wife walked into an Apple store, Apple might have recommended ALAC, the Apple Lossless Audio Codec — this is a lossless format similar to FLAC, but can be selected as the Apple Default format — this triggers both CD/media import, and the “convert to” option for converting existing tracks.

J. Paul uses Max, but he’s very particular about his content, and tends to use extensive tagging, and may have additional album art or associated content to keep together. ALAC includes metadata so that moving the file moves the metadata with it.

Ken and his wife may never find this post given their difficulty in finding help in an Apple store. Anyone else searching might get a few pointers from this.

Jun 01

I previously wrote that to block Spotlight indexing, one should create a basic file on the root of the Volume such as:

$ touch /Volumes/ALLANC_16G1/.metadata_never_index

I’ve recently found that the following should also work:
$ mdutil -i off /Volumes/ALLANC_16G1
which can be checked using:
$ mdutil -sv /Volumes/ALLANC_16G1
/Volumes/ALLANC_16G1:
Indexing disabled.

Needs verification, and it’s only useful when you have a MacOSX at your disposal. I used the first trick inside MySQLFS (around v0.4.0) but will look further into the second. This is one of those “making a note for you and for myself” kind of posts)