Last update: Fri, Jul 3, 2015 at 2:12 AM.

6/20/11 by DW

    • I rolled up my sleeves this afternoon and took a fresh approach to connecting the OPML Editor to Amazon's DNS server, and I got there. Whew!
    • A picture named ships.gifTheir API works very much like the connection to There are a bunch of tools provided by developers that allow you to interactively manage your domains the same way it works on GoDaddy or any other registrar. I'm using a service called Interstate 53. The first thing you have to do is give it a domain to work with. They give you four nameservers, and you tell your registrar about those servers. I chose one of my many domains --
    • Then I had to figure out how to call them. Unlike other Amazon services this one requires HTTPS. Luckily we have that debugged now on Windows with TLS. Then I read through the docs about how to construct an authentication string. Yet another variant of the usual dance. But after a bit of trial and error -- boom! -- I got through.
    • Then I had to do some more head-scratching, because as always it's ten times more complicated than you need it to be. Their interface can do a billion things that I have no clue about. I just want to add and maybe occasionally delete CNAMEs.
    • I had some fun with this part, I was pretty sure I had it figured out, and at about 6:30PM, I got my first blorkmark working through this interface. Yah! All right.
    • Still have a bunch more work to do to even be sure this performs, but I have some pretty high hopes for it. Meanwhile my dnssimple test app is doing a request every hour with not-acceptable results. I will benchmark Amazon the same way.
    • I still don't get a good response from
    • I've written a test app that monitors its performance.
    • Every hour it allocates a CNAME then loops until its defined, recording the number of seconds it took to be defined.
    • I'll publish the results after running it for a while...
    • It's another kind of include.
    • The URL points to an OPML file.
    • Which we render as code.
      • worldOutlineSuite.utilities.uploadCode
      • worldOutlineSuite.viewCodeCallback
      • worldOutlineSuite.init