WordPress Switches to Hourly Pinging, Tells No One
Blogger Christian Bolstad found a new feature in WordPress 2.8, undocumented and not among the release notes in the Codex. Basically, it changes the notification behavior of WordPress, from notifying ping services like Pingomatic and others you might use automatically when publishing a post or editing a previously published post, to doing a once an hour notification using the built-in pseudo cron.
So why is this a bad thing? [Note! Bullets updated below! See comments for more.]
- It delays updates to
the RSS feedto services relying on pinging.
- Delaying pings delaying all services depending on pinging.
- Delaying pinging to middle man services means that syndication of the links will be delayed.
My guess is that this feature was implemented to speed up the admin interface. After all, if you’ve got a bunch of services to ping, publishing or editing a published post would mean that you’d have to wait while the admin interface parsed through the pinging.
Christian Bolstad thinks this is putting the real time web to a halt. That might a bit over the top, but it does delay everything coming from a WordPress install.
Denis de Bernardy was the developer responsible for this change in behavior, and he find the post alarmist and intolerable. This are his words in a comment on the post:
If an end user with no coding skills can’t write a patch, he can always submit a comment in trac, and suggest things to be done otherwise. That’s fine.
The same from a coder is not fine. Add an alarmist post on top, and things become intolerable. If a coder isn’t not happy with a behavior, he can and should write a patch. If he doesn’t, he should put up with the behavior.
As to why this wasn’t added in the release notes, it’s a Wiki. It occurred to nobody who contributed to them (without getting paid either) that it was worth a mention. Go right ahead and add the note yourself if you think it’s so important.
Obviously he is just defending the decision to change the pinging behavior, albeit in a somewhat poor way. For some reason he thinks that coders are not allowed to criticize choices made, they should be quiet and submit patches instead. Let’s hope he didn’t really mean it that way. And the fact that an end user should update the release notes is something of an issue with open source overall, because as Bernardy says the developers do it on their free time. Ideally they would write complete release notes, but if the choice is to either finish a function/feature, or write the notes, the developer will finish his coding instead. As he should. Still, it is an issue as this discussion surely points out.
Anyway, one should be aware that WordPress per default does not ping on publish anymore, it does it on a per-hour basis instead. It is also a reminder of the fact that developers can change behavior at any time, and that it might in fact effect your site, or even break it.
There’s ticket in the trac on this, of course. Pitch in if you like. There is also a counter patch submitted.
Update! I’m glad to see this change has been approved, thanks for sharing the link, Aaron Brazell.
Thord Daniel Hedengren is a designer, writer, and blogger, and also the former editor of The Blog Herald. He used to be a hotshot in the gaming industry in Sweden, but sold everything and went International. Most recently he wrote a book called Smashing WordPress: Beyond the Blog, and does loads of kickass design.
Though it does seem to be an interesting problem your “So why is this a bad thing?” would all seem to be factually incorrect. Feeds in WordPress are not dependent on the ping service.
I would be very surprised if any of the syndication services are dependent on ping to update, though it would likely effect their timeliness (“you’ve lost that real time feeling, now it’s gone, gone, gone”) as you and Christian describe well.
“It is also a reminder of the fact that developers can change behavior at any time, and that it might in fact effect your site, or even break it.” basically is saying “software has bugs” ;-)
PS. the italics in the comment box makes it a little hard to read what I’m writing.
Echoing Lloyd. Feeds are generated by the Loop.
If you’re looking to FeedBurner, then you should say so. As it is, FeedBurner checks feeds (or did) every 15 mins. If a feed is different (and it will be because the Loop generates a new feed when accessed) then Feedburner will update. If the feed isn’t changed, then it gets a HTTP 304 code Not Modified.
Regardless, WordPress is not at fault for stale feeds and I think you should update this post to reflect that.
OpenSource mean participation. You get it free, if you want it to change contribute to it, not crying about it. Denis de Bernardy told you the way you contribute better and you chose to critize not contribute .
@Thord Daniel Hedengren
As Denis de Bernardy suggested “Go right ahead and add the note yourself if you think it’s so important” – did you do that?
You are all douches. Go back to your basements, geeks!
Don’t forget one can use FeedBurner + the recently released PubSubHubBub functionality. Searching for this will bring you the required knowledge. Automattic isn’t in the syndication business and I don’t think they should be. To point out the obvious, this code is GPL’d; please get a grip ;)
The “Tells No One” in the title is a tad alarmist. There are thousands of commits and changes for every release, they can’t all be explicitly noted in a more efficient manner (other than the trac reports).
As Aaron pointed out, there’s already a fix in place. How did I know? I was immediately “told” by @wpdevel.
This is interesting and the first time I am learning about this. To me it does not seem like that big of a deal..Am I missing something?
Even without the fix, the article is simply inaccurate. While there could be some concerns about the change in ping logic, as others have pointed out your RSS feeds would be unaffected (both the built in feeds as well as FeedBurner feeds).
The only thing affected would be that some 3rd party services (such as technorati) would not be notified of an update to your blog *if* they had already been notified of another change in the last hour. That’s it. Nothing earth shattering, that’s for sure.
I have updated the criticism in the post. It wasn’t my intention to point to the RSS feeds and how they are updated, but rather the fact that services that rely on pinging will be delayed and hence syndication of the content (which usually is a link back, as in widgets displaying sites discussing a particular topic) will also be unnecessarily delayed. Bolstad goes into detail on some of these services in his post so I’ll not delve deeper on that.
As for alarmist titles etc., that’s just nonsense. It wasn’t in the release notes of 2.8, hence no one was told in the wider sense. I can see why this happens, but it doesn’t make it less of an issue. The discussion here and elsewhere just proves that open source works, with the fix (link added to the post) being approved and all. So there you go, another feather in the open source hat! :)