Singpolyma

Technical Blog

Archive for the "Tech" Category

Trackback Errors (Haloscan Bug?)

Posted on

Many users of my trackback script, including myself, have complained of odd errors. Awhile back, I upgraded the script to give better error messages. On pinging a haloscan trackback addresses (which we on Blogger mostly are) I get:

Error #11 : Problem saving. Please contact Haloscan

I have posted it in the appropriate thread of the Haloscan forums, but that seems to be a thread where we report bugs and get no reply. I have not changed the trackback code from what was previously working, and I cannot seem to find any problems with it. Nor do I find any documentation on this error.

So basically, this is a ‘Googleseeding‘ post to see if anyone else has any bright ideas.

Don’t JUST Eat Your Dogfood

Posted on

Blogger (and Google in general) have been getting some bad press lately. They decided to make a counterpost on Buzz, not a bad idea. Some people are cynical about the entire post, but it has good and bad points.

They’re right, Google is only a company and its employees are only human. Mistakes are made and they’re very good at fixing (at least the big ones). The do eat their own dogfood and that is why bugs like this can be spotted faster.

It’s also what causes the press.

If a single Blogger blog malfunctions, no one cares. Unless that single blog is the Google blog. They can’t expect bloggers not to notice this. This isn’t the old-style press where we wait until it’s a proven, serious, do-or-die issue before printing. Bloggers write while the news is hot. If in two hours it’s all fixed, that’s not the point.

Are our expectations of Google and Blogger too high? Undoubtedly. We all know that as consumers, especially geeky consumers, we demand more than is possible. That’s just the way things are. Users of my hacks expect far more than I can deliver, and I expect far more than Blogger can deliver. The mark of greatness is handling this well.

Their post makes some good points, and I won’t disagree with them completely. We can give them some slack. However, they try to get out of responsability a little too much. EAT your dogfood, FIX the service, and BE RESPONSIBLE for what happened, even if it’s no big deal. They’ve done their PR bit, but actions speak louder than words. It is far more powerful to say ‘we did’ than ‘we do’. So while I sympathise with them, I must side with the great penguin:

Don’t give me excuses – give me results!

Free ‘Domain Names’ in the Underground

Posted on

Disclaimer: This article may be extremely geeky, and some links may not work unless you have specially-modified system settings.

Hoodwink’d, the self-dubbed “underground mumbler’s club“, is very geek. Until recently, the only way to access the main part of the site was by manually editing your hosts file (a settings file that is unknown to most users, and very hard to find for Windows users).

Recently, _why, the founder/head-hancho of Hoodwink’d, set up a DNS server that allows the registration of domain names that do not exist (such as hoodwink.d and _.singpolyma). As long as you have a simple settings change done on your system you can access all of these ‘bogus’ domain-names the same as normal websites, and if you’re a member at Hoodwink’d you can create as many new ones as you want for free at nic.d (blog announcement, forum thread).

For more information on Hoodwink’d itself see Johan’s article. To get access to Hoodwink’d and nic.d domains on Windows XP follow these steps (linux and other users, just add 72.36.180.123 as your primary DNS, you likely know how):

  1. Open your network connections pane (Start > Connect to > Show all connections).
  2. Right-click on the connection you use to get on the Internet (the dial-up connection for dial-up users, and the Wireless Network Connectin or Local Area Connection for broadband, usually) and select ‘Properties’.
  3. Select Internet Protocol (TCP/IP) from the list box and click the ‘Properties’ button.
  4. Select the ‘Use the following DNS server addresses’ radio button if not already selected.
  5. If there is anything in the first box, move it to the second, otherwise find the automatically assigned DNS address from the status window for the connection and enter that to the second box.
  6. Enter 72.36.180.123 into the first box.

Regarding Inline Comment Forms and Blogger BETA

Posted on

I have run up into a wall in translating my inline comment form hacks to Blogger BETA code. The translation is done, but the forms don’t really work. Why not? The submission always produces an error. A quick analysis shows that Blogger BETA comment pages generate auth keys now to prevent non-Blogger forms from spoofing info (just what this hack tries to do). While this is a security feature, it makes this hack (as it currently is) pretty useless.

So what am I going to do? I am going to attempt the creation of an offsite PHP script to scrape the auth key out of the form code (surprised?). Based on how these systems usually work, it should fix the problem if this is then included (via JavaScript) into the comment form code. What this does mean is that the comment form will require JavaScript to fuction, and so I will probably just translate the more popular asynchronous version which does already anyway (since the purpose of keeping the other version alive was to have one that didn’t require JavaScript).

If this approach is successful I will create a similar partner script to enable the inline comment forms to work with word verification, something many people have asked for in the past.

So I’m not giving up just yet, but the process may take longer than I had anticipated. To see the literally-translated hack with error messages see my BETA test blog.

BlogID in Blogger BETA

Posted on

Blogger BETA seems to have no template tag (or equivalent) any more for the BlogID, which is sometimes a very useful value to have. I have hacked together the following JavaScript function which should return the BlogID of any Blogger BETA blog it is run on:

function getBlogID() {
var links = document.getElementsByTagName('link');
var href = '';
for(var i=0; i<links.length; i++) {
if(links[i].rel == 'EditURI') {
href = links[i].href;
break;
}//end if rel == EditURI
}//end for i<links.length
href = href.match(/blogID=([\d]+)/);
return href[1];
}//end function getBlogID