Chip's Quips
A tiny spark of wit for a highly flammable world

Chipping the web: December 7th

December 7th, 2008 1:00:15 pm pst by Sterling Camden

Chipping the web

Posted in Share the Love | No Comments » RSS 2.0

Chipping the web: August 26th

August 27th, 2008 7:00:24 am pst by Sterling Camden

Chipping the web

Posted in Share the Love | 5 Comments » RSS 2.0

Chipping the web – lager legend

December 26th, 2006 5:47:02 pm pst by Sterling Camden

Chipping the web

Space: 32 is the decimal value for the space character in ASCII and related character encodings such as ISO 8859 and Unicode.

What to do with all that spam… Cleaning out my Gmail spam bin this morning, I noticed a link near the top of the page that led to this recipe. Wait, There’s more!

Better not say too much.

Shelley led me to Olduvai George, a most interesting blog on paleontology with illustrations by Carl Buell. Subscribed.

According to Randy, Microsoft is trying to hire an “open source evangelist”. Sounds like the foxes are hiring a chicken guard.

And here’s the pecking order (thanks, Assaf).

Posted in Share the Love | 4 Comments » RSS 2.0

Chipping the web – deux

November 14th, 2006 6:56:31 pm pst by Sterling Camden

The web just turned sixteen yesterday (thanks, TDavid), so I should take it easy on her, right?

No, I didn’t think so. Hey, wait a minute, didn’t we just sing Happy Webday back in August? We’re going to have to decide on which one of these dates really is the web’s birthday. Oh, and the oldest known web page?

Links and Anchors

A link is the connection between one piece of hypertext and another.

That’s a pretty good place to start.

TechRepublic: Microsoft flags Gmail as a virus:

“This was a limited false positive issue with our antivirus protection,” a Microsoft representative said Monday. “After we became aware of the issue, we released a new antivirus signature that resolved the issue for our customers on Sunday evening.”

Translation: “if you were using our e-mail service, you wouldn’t have been down for three days.”

Scott Adams presents a surprisingly balanced and unsurprisingly humorous discussion on the practical value of intelligence. Only one off-balance remark:

The best performing groups were the ones where there was one smart person and the rest of the group deferred to him.

Oops. Generic use of gender-specific pronoun in the worst possible location.

Shelley Batts (you thought I was going to say “Powers“, now didn’t you?) leads us on a deliciously snarky virtual tour of the soon-to-be-opened Creationist Museum in Kentucky, commenting on descriptions from The Guardian. My favorite:

Speaking of the Flood, in the museum you’ll also find a large model of the Ark, as well as a soothing voice explaining how all those animals that usually eat each other were able to behave themselves for 40 days on a big boat that didn’t even have a midnight buffet.

Then Shelley finds yet another instance of “who, us proselytizing?”

New topic aggregator Megite. Shelley (Powers, this time) says it’s more inclusive than Techmeme. A quick look at the current postings does seem to find more bloggers from farther down in the Technorati rankings, but it’s hard to tail.

Mother Earth, Father Sky? via [Geeks Are Sexy].

Awesome. Me neither, Chris. At work, I’m streaming Pandora. In the car, KPLU. Outside, it’s the melody of the birds and the soft brush of the wind in the trees.

Gee thanks, Joseph. Just wait ’til you see what I can do with rubber bands. I don’t think I’ll purchase those tickets to Stockholm just yet, though.

Posted in Share the Love | 5 Comments » RSS 2.0

Frail mail

November 1st, 2006 5:27:54 pm pst by Sterling Camden

A few weeks ago I was having trouble with my ISP’s SMTP server, so I setup my own local SMTP server under IIS on my local network, behind my firewall. Even when my ISP’s server is working properly, I prefer the local SMTP server. It runs faster, and it’s totally under my control.

But I have one problem: it seems like AOL is blocking my e-mails. Whenever I send to an address @aol.com, I get a message back about delivery being delayed, followed by a failure notice the next day or so later.

To try to diagnose this issue, I setup an AOL e-mail account for myself (I feel so dirty). I can send to it from my gmail account just fine, but e-mail sent from my local server doesn’t get through.

Stupid me, I didn’t save the failure notifications to look at them more closely, and now I’ll have to wait a day or so to get another one back.

I’m guessing that because the server is behind a firewall that denies all incoming requests, they might be trying to ping or otherwise verify back to my server in order to weed out spammers. When they can’t get to me, they fail. Does anyone know what port I would need to open up to let them see me?

Many thanks in advance.

BTW, the AOL on-line help treats me like an ignorant n00b. “Verify that the sender has correct e-mail address”. Puhlease!

Update: e-mails sent to gmail addresses also fail. Fortunately, they fail quickly. Here’s the detail:

Reporting-MTA: dns;zeus.internal.camdensoftware.com
Received-From-MTA: dns;DIONYSUS
Arrival-Date: Wed, 1 Nov 2006 16:19:21 -0800

Final-Recipient: rfc822;chip.camden@gmail.com
Action: failed
Status: 5.5.0
Diagnostic-Code: smtp;550-5.7.1 [216.160.99.195] Our system has detected an unusual amount of unsolicited
550-5.7.1 mail originating from your IP address. To protect our
550-5.7.1 users from spam, mail sent from your IP address has been
550-5.7.1 rejected. Please visit
550-5.7.1 http://www.google.com/mail/help/bulk_mail.html to review
550 5.7.1 our Bulk Email Senders Guidelines. 18si1655506hue

I’m thinking reverse DNS is the problem?

Tags: , , , , ,

Posted in Get Outta Here | 8 Comments » RSS 2.0

Taking care of #1

August 10th, 2006 10:28:01 am pst by Sterling Camden

Yesterday, stimulated by Kathy Sierra, I posted about bridging the gap between what your product can do and what your users want to do with it. I included this diagram along with an open-ended list of alternatives for what to do when your users hit the solid regions of discontent:

1. Add what the user wants to the feature list, and thank them for their suggestion.
2. Demonstrate how the same goal can be reached inside the green line.
3. Tell them “sorry, no can do”.

This morning I realized that I should have discussed some more creative options for doing #1, especially when it’s urgent.

First, you can develop what they need as an add-on (plugin, extension, whatever you want to call it). That way, you don’t have to touch the core product or weigh it down with features. If you charge for the product, the add-on could even mean additional revenue — allowing those who need the extended capabilities to bear the cost of providing them.

Second, there may be third-party solutions available that work in concert with your product to provide the desired functionality. Think creatively about how to stack the building blocks together to create sophistication out of simplicity. Randy Morin gave us a good example yesterday: take a simple RSS-to-email aggregator like Rmail, hook it up to a nice e-mail client like GMail, and you’ve created a pretty decent feed reader. No need to add a client UI to Rmail, or feed subscription support to GMail.

There may even be third-party providers who are willing to create add-ons specifically for your product. I post a lot of that kind of work over on Chip’s Tips. Of course, that does create its own set of issues. It can be difficult, if not impossible, to insure that future versions of your product don’t break the third-party add-ons. That’s where building in a good strategic design for extensions (like those provided by Firefox and WordPress, for example) from the start can pay huge dividends. The language you choose can help with this also. Ruby’s ability to add functionality to existing classes makes extensibility exceptionally easy. Still, unless the person writing the extension has an intimate understanding of not only how the application works but also the directions it is likely to take in the future, you can’t completely insure upward compatibility.

And sometimes it just can’t be done as well from the outside. Often the extension would like to be able to control internal behaviors of the product for which there are no published hooks. That creates pressure on you, the original product vendor, to incorporate the solution to some degree, or at least to provide the required interfaces. A good example of this would be the container support for Synergy/DE I originally posted on Chip’s Tips years ago. It has received wide adoption among Synergy/DE developers, but it’s only about a 90% solution. Some UI behaviors, like tabbing and window activation for example, can’t be smoothly controlled outside of the Synergy/DE runtime. Plus, my implementation created some unforeseen interactions that made their way to Synergex’s help desk. So now Synergex is incorporating support for containers in their next major version (and guess who gets to help).

It might seem like my add-on module bullied Synergex into adding this feature to their product, but there are lots of more charitable ways of looking at it. It provided an immediate solution for a very real user need, without forcing Synergex (or their users) to go through a release cycle to get it. Better yet, my version acted as a free prototype that identified the issues Synergex would face when implementing this kind of solution, as well as the ways in which their users would expect to be able to use it. It drew the red circles before they had to redraw the green one.

Posted in Get Real | No Comments » RSS 2.0