Using the API

I live and ride bikes in Lawrence, Kansas. I used to be active in the Lawrence Mountain Bike Club, and I helped with their web site. One of the things that we needed to communicate to mountain bikers in the area was how much rain we’d gotten recently, so that we can help folks judge whether the trails might be too muddy ride.

In the early 2010s, the web site “Weather Underground” offered an API to query their broad database of weather data, including historical weather data. It was exactly what I needed, and gave me the impetus to build a custom WordPress widget for the web site’s sidebar.

The whole thing came to a crashing halt after Weather Underground, which had been purchased by the Weather Company ( in 2012, then got acquired by IBM in 2016. In December 2018, the free API service was entirely discontinued, even for a user like me who was only querying their service for a single weather station, once per hour. If you wanted any weather data at all through their API, you had to talk to a sales rep and pay a fee.

They were going to charge me money, to give me access to National Weather Service data. Public data that, no doubt, Weather Company (and IBM) were accessing and monetizing for free. This was so frustrating, because that data is is public (and paid for with public taxes) and is available for the public interest.

Well, I can play that game.

It took me a while to find, but I finally found the API (, and the source data for the weather station I needed (the Lawrence Municipal Airport:

So now, once again, I’ve got my little weather widget. Woo-hoo. Next step, hopefully soon, I’ve gotta put together a how-to, in case anyone else wants to know how I am using the API.

Facebook apps

So this post is really an experiment. I’m hoping that when I post this, I will see a link show up on my Facebook feed. If that works, I may have successfully integrated Facebook with this blog.

The crazy thing is that, of course, there’s really no coding involved with this process. It’s something that someone else has coded and built beautiful, user-friendly wrappers around nifty APIs and I’m just taking advantage of others’ work. My friend Trina has had this integration in her blog for well over a year – and it took me all this time to figure it out.

But, hey, I figured it out… Or I’m hoping I will see that I figured it out when I actually post this.

So enough of empty typing. Let’s see if this works, shall we?

(moments later…)


Successful Facebook post.
Yes, I run Facebook inside an incognito window. That’s just the way I roll.

The problem is that I now need to get the app to post as my Swingleton page, rather than me. But I feel the biggest hurdle is crossed, the rest is just minutia.

What a good way to get the day rolling.

Another WordPress site

I finally got around to updating with a new design and moved it over to WordPress.

I’m not ashamed to admit that a big hurdle for me was my existing PHP code for allowing people to join the club via our PayPal account. I loathed the idea of having to create some kind of custom page with hard-coded links, styled to look like it was a regular WordPress page.

As it turns out, WordPress is amazingly intuitive about allowing me to add some comment lines to the top of a template page, and then have that template be an option on the default “Add New Page” entry screen. Instead of feeling like a complete hack, integrating my existing code – and even a separate MySQL database – with a WordPress template worked so smoothly, it almost felt like this was the way it was supposed to be – that it wasn’t a kludge-y hack.

Not to bash too hard on Drupal, but nothing with Drupal has ever felt nearly so logical and effortless. I guess I just have to say that I am extremely fortunate that I’ve not had to deal with such complex sites that Drupal offered the only real solution. And when I do cross that threshold, I hope my intuition wakes up and sees the Drupal solution with the same clarity!

(A big hat-tip to for their Responsive WordPress Theme. Thank you!)

First Drupal site is live

I successfully converted my brother-in-law’s static and Dreamweaver-templated web site to Drupal this morning. I don’t know if he will like it, but I can certainly see where it’s going to make my life a little easier. Plus, now he can login and add and edit pages himself.

The URL, by the way, is

He suggested the new design, thought I had to do some interpretation to make it work as a web page. I guess I’ll see if he likes it or not.

One thing I definitely like about Drupal over WordPress for his site is the way views allow me to customize the uploading of images for him, without me having to write a long instruction sheet about how to add them. It automates the creation of thumbnail and basic image quite handily. I also love the way I can customize the look and feel of the user interface for him, so there no overwhelming list of links and terms to muddle through.

Of course, I say all that now, before he’s even opened my email to him, let alone the new web site, but I feel like I need to enjoy the glow of the moment while I can.

It’s a good feeling.


Well, I’m pleased to say that I am finally making some progress.

It’s one of those weird things about the creative process, for me anyway, that I go through periods of quiet, silence… dullness. And then other times I have flurries and storms of productivity. I seem to be in the midst of a storm, right now, and I’m hoping I can keep it up. I have a lot of stuff I could be working on.

My next goal is to get the Tour of Lawrence web site started. The show is back on for 2012, and I’m pleased to be able to get to take over the web site, as well as volunteering for the event. Should be a great time.

And that’s the great thing about being in the creative zone: now that I’ve gotten the ball rolling, keeping at it will only make it better.

Carry on.