Skip to main content.
Friday, September 22nd, 2006

Contact from NACE

I was browsing my visitor list yesterday (yes, although lately I have found myself incredibly short on time to write, I do still check in, if only to remove the comments that fool the spam filters), and saw a hit from a search engine that was corrosion-related. That always piques my interest – judging from how high my poor little site ranks using some common corrosion terms, there just isn’t much corrosion-related traffic out there on the Internet, and sometimes it’s from my own company (I try to keep tabs on that traffic.)

But this hit originated from the headquarters of NACE International, the world’s leading corrosion society, of which I have been a member since 1992. It’s also the group through which I hold a certification as a Cathodic Protection Specialist, one of the highest certifications in the CP field, which allows me to sign off on just about any regulatory requirement there is that’s aimed at protecting people and the environment from corrosion-related damage; i.e. keeping gasoline tanks from leaking or high-pressure gas or petroleum pipelines from rupturing.

Shortly thereafter I got an email from NACE. Someone there was surfing the net looking for information on Professional Engineers in California of the now defunct “Corrosion” type. She stumbled across my site, and contacted me because she thought I might know how get more information. PE’s in California are regulated by the California Board for Professional Engineers and Land Surveyors, which has a searchable database, but it doesn’t allow you to search by a category, such as the Corrosion type. I called and talked to her, took a look at the site, and offered to help; but I wanted to know why she was looking for this. She let me know that NACE was interested in trying to revive the Corrosion PE license.

This is very interesting to me. The difficultly at present for engineers to get the highly coveted PE label is, IMHO, one of the reasons that we seem to be experiencing a decline in new blood in this field. And by promising to help, she offered to keep me updated with NACE’s efforts and progress.

So I looked carefully at the online database and saw a way to prize the information about all licensed Corrosion PE’s, past and present, from the interface; including names, addresses (which I’m assuming are business), and license status. All I need to do is write a script that will retrieve information pages for each individual for Corrosion PE license number 1 through 1087 (the last one apparently issued), and dump the results into a comma delimited file, filtered via regular expressions, which I can them import into a database such as OpenOffice Base. This is all very much like what I had already done with my Google automated search plugin for WordPress, before that project came to a screeching stop when I learned that automated searches of Google violated their Terms of Service.

It shouldn’t be too hard to do; it’s just that I’m really clumsy with regex, and without the filtering, I would be holding a huge lump of information that would be very difficult to go through by hand.

Oh – and although she found my site the day before, she was at first put off by my rotating skull and bones image. She only persisted when she came across the site again using a different search. Is my adopted logo too severe for professional issues? I’m pretty fond of it, and don’t want to give it up.

Posted by Greg as Corrosion Control, My Website, Programming at 07:55 PST

1 Comment »

Monday, January 2nd, 2006

Little Fish in a Big Pond

Sometimes I’m still amazed that I have an impact on the Internet. It’s not a big one, granted, but it’s there. I get a solid 25 hits a day on my postings about hooking up a certain model of wireless network card under Linux, and even though hardly anyone posts a comment about it, it makes me feel good thinking that I’m helping someone switch over to Linux. Getting my various wireless cards to work after I installed Linux (I went through three before finally determining to keep trying until I succeeded) was a huge problem that kept me from using Linux for literally years. Now that I can use Linux and connect to the Internet, I keep finding myself rebooting when I sit down at my computer and see that Windows login screen. I want to use my Fedora instead. And I want to share that feeling.

What’s more, some of those hits are coming without referrals, which I can only interpret as either someone bookmarking my site, or emailing a link to someone else. Either one says I’m making a difference.

Some of my hits are from people looking up my brother’s comic strip. (I’m going to give him a boost in Google PageRank by linking to his site – even though he doesn’t link back to me.) So I’ve got the old family pride cred, too.

Speaking of family, I had a great day today up in LALALand visiting my brother, sister-in-law, nephews and parents. We were sitting around talking about my father’s impending retirement, and the consensus was that he needed to find an activity that kept him busy and happy. I mentioned that I would always have my computer and Internet tinkering, and that it was a most fulfilling hobby for me. I guess that since the subject matter had been covering activities that could also produce income, I was asked if I could make money off of blogging. I had to laugh – if I could figure out how to do that, I’d have a million opinionated schmoes beating a path to my door! But some bloggers have, particularly through Google’s AdSense, but I don’t know whether it would be enough to even cover the hosting expenses.

Which brings me around to the inspiration for this post. (Yes, there’s a good reason why I picked the title “Ramblings“.) As I said before, I got a positive response to my feedback from GamerZ, the author of the WordPress plugin UserOnline. The latest version of his download includes all the things he said he would do. He added the GPL, he removed the core WP files hack, and he gave me credit for adding bot definitions. You just can’t get more responsive than that. Isn’t the Internet and the open source community great? I use stuff written by a someone 14,000 km away, talk to him, and it gets better. Next time I’m in Singapore (which, hopefully, will be in a few months – I have job in Diego Garcia coming up, and I’ll have to pick up a C-17 at Paya Lebar), I’m going to have to look him up. Perhaps I can persuade him to give me a better tour of the place than I gave myself with a guidebook when I was last there in 1999. I love Asia, and it’s always better to see it through the eyes of locals. Especially if you’re a 195 cm white guy who can’t speak the local lingo.

Posted by Greg as Family & Friends, My Website, People, Programming at 01:37 PST

Comments Off on Little Fish in a Big Pond

Saturday, December 31st, 2005

Responses From GamerZ

I said I would lay out my concerns to the author of the UserOnline plugin, and he has responded favorably. The whole GPL issue was just something he didn’t know about, and he has given permission to release my modified version of his plugin, which I thought was most gracious. If you haven’t already figured it out, the files themselves are one level deeper in my online files. I don’t think I’m going to write a modified instruction file and package it all up because I’m not trying to put a competing version of UserOnline. I have different interests, and have received support for those interests, and any plugin I release will be mine.

Posted by Greg as Programming at 05:54 PST

1 Comment »

Thursday, December 29th, 2005

UserOnline Plugin

I thought it was only fair to present my beefs to the author of the UserOnline plugin. (Wow, wonder how that’s going to translate into Dutch!)

After all, the guy came up with the plugin that we all what. I don’t want to usurp his well-deserved position in the WordPress world. Perhaps we can draw him in to our discussion and end up with a better plugin for everyone.

Posted by Greg as Programming at 18:46 PST


Wednesday, December 28th, 2005

Problems with UserOnline 2.0

Based on a quick review of the new code:

To give him credit, GamerZ does ask for feedback to improve his plugin.

Posted by Greg as Programming at 11:40 PST

Comments Off on Problems with UserOnline 2.0

Original UserOnline Rereleased for WP 2.0

GamerZ has announced that he has updated his UserOnline plugin for WordPress 2.0, so you should know that there may be an out-of-the-box solution for your needs. However, looking at his demo, it still doesn’t incorporate the functionality you’re asking for. I’ll download it and look at the code.

Posted by Greg as Programming at 05:45 PST

Comments Off on Original UserOnline Rereleased for WP 2.0

Tuesday, December 27th, 2005

WordPress 2.0 Release Candidate

WordPress has put out a release candidate for 2.0 and is asking for beta testers. I found a good description of the new features and was very disappointed to see that OpenID integration wasn’t included.

This is going to have a big impact on my plugin – tentatively named displayonline. I still want to include the OpenID login recognition at the same level as a registered user. But this means I have to fall back on the openid plugin, which the author describes as “very, very messy and a little buggy.” So encouraging, but beggars can’t be choosers.

I’ve downloaded the plugin and taken a quick look at the code. Once again, no GPL, and in this case, profanity in the comments. No wonder it’s not at the official plugin repository. I’m a little hesitant to install it.

But I’ve also noticed problems with the whole system. I can sign in to LiveJournal just fine, but get errors over at My delegated OpenID server explains that I need to “trust” a site in order to let it validate me, so the system is still apparently too complex. Oh – just got an email back from my OpenID server in response to my bug report. Says he no longer maintains the server. So I changed the tags on my website to reflect delegating to my alternate OpenID server. Now I’m having problems logging in to LiveJournal!

I guess I’ve have to backburner the OpenID aspect.

I have an outline written for the plugin code and have set up a database for the required fields, so I can start experimenting. I just need to find the time.

Posted by Greg as Programming at 12:27 PST

1 Comment »

Tuesday, December 20th, 2005

WP-UserOnline Hacks

I’ve compared my hacked versions of the WP-UserOnline plugin to the released versions and compiled the differences in a text file. I put the file, called “Instructions.txt”, in my online folders.

Hopefully, if you haven’t been able to get the old plugin working, you can follow these instructions and get your own version working. I can’t released my own hacked files because the author did not explicitly license them under the GPL. It was a tedious job to find the differences, so I would appreciate any feedback as to whether you were able to follow them and get the plugin working or not.

Good luck!

Posted by Greg as My Website, Programming at 13:34 PST


Visitor Maps

Aren’t these cool? They’re screenshots off Sitemeter from yesterday. They only have the last one hundred visitors to my site, so the pattern of dots changes constantly – right now I don’t show any from Africa or South America, but I’ve had several visits from both in the last couple of days. Also, the balance in these shots is tilted towards North America over Europe. When it’s evening in Europe, the balance typically tilts there.

World map of last 100 visitors to Greg R

European Map of last 100 visitors to Greg R

North American Map of last 100 visitors to Greg R

I was recently looking into web mapping applications so that I could display something like this on my own website without using an external host. I could have sworn I saw exactly the same world map, in flash, as an open source project on SourceForge, but I couldn’t find it again last night. If anyone recognizes these, can you let me know which project it is? Maybe I initially dismissed it because it required loading on the hosting machine, which I don’t think my hosting supplier allows – at least, not without upgrading my account.

Still, something like this would require exactly the same type of underlying visitor recording that I’m considering for the plugin I’ve been discussing with my new-found Dutch friends, and would probably need only the simplest of overlays using the Google Maps API. But the big problem is time. My first online priority right now should be spiffying up my daughter’s color guard website, not coding plugins. Besides, I searched Google for wordpress openid, and saw a lot of calls for WP to integrate OpenID support to the core WordPress files. Add me to the list of supporters! It is an official suggestion for the 1.6 release, but it doesn’t seem to have been accepted. OpenID logins would change everything, so the plugin would be very quickly outdated, unless I could get some inside poop on how the integration would work so that I could incorporate something into the code like an isset($_COOKIE) check.

Almost finished documenting the hacks in my wp-useronline deployment. Maybe I can finish and post during my lunch time.

Posted by Greg as My Website, Programming at 06:17 PST

Comments Off on Visitor Maps

Sunday, December 18th, 2005

Logging In

Well, the consensus is that it would be best to create a new plugin from scratch, which I agree with, but the trouble is the time it’s going to take. I would want to do it right, which would take a while. I figure in the meantime that I should publish my WP-UserOnline hacks as soon as I’ve finished the documentation, which the guys can test out. It may also give them ideas for what should go in my project.

Vincent seems to think that getting visitors to register is a good idea, and that distinguishing the registered users from the casual visitors is a way to motivate people to do that. I’m not quite sure I agree with that position.

The old WP-UserOnline plugin didn’t use registered users – it used the ‘comment_author_’ cookie. If you look at my last post, you’ll see a couple of comments posted by me saying “Give me a cookie”. That’s because I was using FC4 at home, which I still haven’t set up completely, and Mozilla didn’t have a cookie stored for me. In fact, I had to post a second comment to get a cookie for when I was logged on as root, which I did to grab the bookmarks out of my WinXP partition (I haven’t finished tweaking my fstab yet, and only root can access the ntfs partitions.) I’m sure the author had a good motivation for choosing to use the comment_author_ cookie, and I’m sure it was because he didn’t expect visitors to routinely register when they go to blogs, even ones that they visit a lot. But if someone was interested enough to leave a comment, he or she got a cookie that identified them later.

That strategy isn’t perfect, but I think it’s a lot more practical than expecting visitors to register when they visit your blog. Personally, I hate registering, and I’ll only do it if it gives me a distinct advantage. Even without customizations, you can understand why someone would want to be part of the community at Slashdot or SourceForge, but do they want to do it just to see one article at the West Chester (Pennsylvania) Daily Local News, or to read and post a comment on anything less than a top 100 blog? I don’t think so. They probably arrived there from a search engine, and they don’t even know if the article or post contains the information they’re looking for. They have 2,000 other hits, so why bother? Just go back and try the next one. This is why I use the BugMeNot extension for Mozilla. Besides, do you remember what it was like to register at a WordPress site? It’s much more of a hassle than filling in your name, website if you have one, and email to post a comment. The entire WordPress registration system needs to be rewritten or bypassed. Vincent points out that he took pains to prominently position a login box in his sidebar – that’s great, but to really encourage logging in we need a cookie system where you get that little “Remember me on this computer” checkbox and an automatic login when the visitor returns.

An alternate strategy is to use a single sign-on registration system, such as MSN Passport or TypeKey, or the less rigorous identity system OpenID; all of which I have actually signed up for, but don’t necessarily like. Of the three, OpenID is less oppressive because it is open source and uses a decentralized verification system. However, it’s not for the casual net surfer – you have to have a website, and you have to be able to insert the appropriate meta tags in your root page. This is an evolving situation – website operators want to verify the identity of their visitors, but a huge founding principle of the Internet is anonymity, and lots of people just don’t want to give it up. So far, no dominant identity verification system has emerged, but I see that eventually changing. Historically, in the struggle against personal privacy and public accountability, the tide is slowly and inexorably moving towards the individual surrendering his or her freedoms. This is why I regularly read the RSS feeds from Bruce Schneier, the Electronic Frontier Foundation, and DRM News, and am a card-carrying member of the ACLU, even though I consider myself a conservative; although my definition of “conservative” falls more in along the lines of the traditional Burkean conservatism than those damned religious zealots who have tried and apparently succeeded in rewriting the definition of conservatism, at least in the United States. (Oh crap, I’ve gone on in this vein long enough that I will have to tag this post with Politics as well.)

I’m not aware of any plugins that would extend this capability to a WordPress blog. [Revision – there’s a WP OpenID plugin here – it looks a little clunky, but that was 4 months ago.] I’ll have to look. But I was thinking of something else. I’m also interested in visitor tracking – at first because I was curious (and wanted to demonstrate to my friends that I knew when they came to visit), but then because the practical considerations of running a website that attracts visitors requires that you know what draws people to you – how you are positioned in search results using terms appropriate to your interests (search engine optimization), how long visitors stay, if and where they go elsewhere on your site after that first hit, how many incoming links you have, etc. Vincent knows what I’m talking about, because he is interested in “building a community around your weblog.” Since I’m a really cheap bastard, it’s notable that of all the bells and whistles my hosting service tries to lure me with, one of the few extras I have purchased is the extended traffic reports, which also gives me access to server logs. I’ve also been trying out free web-based services, even though it slows down my pages’ load time, and delivers my personal traffic information to a company who’s corporate interests are not likely to be the same as mine. I just thrive on this information, and it affects the content I end up putting up – I am more likely to blog on a subject that I have learned draws more traffic. But I was also thinking about writing a plugin that would track my visitors for me – catching and storing the particular information that I am interested in, and giving me the detailed read outs and spiffy features on my blog for the visitors – such as a world map with pins showing where my visitors come from. I love Sitemeter’s Recent Visitors by World Map, even though it looks like an open source project rip-off, and I’ve signed up for and started using my Google Maps API key so I can play with that little toy.

So to complete the lead-in, I’m thinking about using using visitor recording and fleshing it out with something more subtle, perhaps more Machiavellian. I don’t think we can count on any significant portion of our traffic to come from registered users, no matter how attractive we make registration. Because most surfers have dynamic IP’s, we can’t track visitors on that alone. Cookies might help, but without the visitor’s cooperation, we can’t get a name to go with the cookie, even if we can get past the increasing precautions against cookies thanks to the spyware problem. We could try to match any new visitor against our record of past visitors, using not only cookies and ip addresses, but also useragent strings, ISP and geographic information looked up on the ip’s, and ephemerals such as language settings and monitor resolution. We could generate a fairly high probability of recognition after a few visits, and it’s the repeat visitors we care about. Of course we would need a good privacy policy and notifications of the fact that we’re trying to place cookies, and why. What about redirecting a suspected repeat visitor to a page set up to invite him or her to register – not in the WordPress sense, but a quick-and-easy and in-your-face way, for our own tracking and recognition purposes. But what benefit can we offer them for registering? Registering in forums is expected, and there is a recognized advantage in getting credit for what you have to say; or the alternative – the community recognizing someone who doesn’t have anything to say that’s worth listening to. (Besides, in most of them I get to put up my spinning skull and crossbones image as an avatar.) But a forum is by nature built on a sense of community – people coming together to seek answers, ask advice, share knowledge, or show off their expertise. What sense of community does a blog have? After all, it’s just a public journal, isn’t it? It’s more an interrupted monologue than a dialog. If you peel through all the layers of reasons and rationalizations for a blog to exist, does it ever come down to anything else at the very core other than a search for external validation of self? Does showing a list of names on our site do anything other than prove that we’re interesting? How do you build a community around that?

Real participatory websites have a reason for being, most of which I already described. And they’re usually not blogs, except for the top rated ones, when they are actually a discussion group set up and led by a controlling instigator. WordPress is supposed to be a blogging tool, and if you want to set up a website for, say, a local chapter of a non-profit professional organization or a high school extracurricular activity, you should probably be using some other software. (And if you know something better for either of those applications than the lumbering Mambo, please let me know!!) I don’t see a need for a chat room in a blog. Yes, I met my wife in what was essentially a chat room, but kids nowadays keep their IM client open whenever they’re on the computer, and it seems to me that a chat room is extraneous. I could be wrong – throughout the day today I kept seeing Vincent on my site, and several times I felt the urge to tell him I was working on such-and-such, or to kid him about looking over my shoulder, and I only had the options of posting a comment or contacting him through email. I guess there’s been many times I saw someone on my site and wanted to say something to them and didn’t even have their email. Unfortunately, a PHP controlled, database rooted, dynamically-generated website relies on the visitor either refreshing the page or clicking on a link to another site page to get new information. It’s kind of hard to shoot them a message that way.

I guess I sound like I’m trying to talk myself out of this, but that’s not what I mean. There are still plenty of technical challenges and learning experiences waiting for a project like this. But no matter how perfectly I could design, code and implement this, it would mean nothing if it relied on a premise that was unsupportable. You would end up with a feature that showed yourself, maybe one or two groupies, and a whole lot of Guests, even when you had high traffic. Although that might be ego-stroking for the blogger, it’s not really different, other than in style, than the existing plugin.

Posted by Greg as Politics, Programming, Society at 12:11 PST


« Previous Entries  Next Page »