Posts from 2005

Gatekeeper 1.5 RC2

Published 19 years, 8 months past

Thanks to the good offices of Server Logistics (providers of the Complete MySQL package) and Jonas Luster (who gave me the database import command I actually needed) I brought my local copy of WordPress back up to speed last night and was able to test the Gatekeeper update script.  Thus, WP-Gatekeeper RC2 makes its debut.

Here’s what changed:

  • Added “reset to default” links for the challenges and the markup template on the management page.  Remember that if you say “OK” to the pop-up dialog box, the data will be reset to install default and there’s no going back.
  • Fixed a bug where logged-in users still had to answer the Gatekeeper challenge.  Now there should be no challenge for logged-in users.  This assumes that your install allows people to register and log in, of course.  (Thanks, ColdForged!)
  • Tweaked the scanning routines to be more cross-platform friendly, the form scanning to be kinder to 1.5 themes that were ported from 1.2 installs, and fixed (I think) a slash-insertion bug that could affect the markup template.  (Thanks, Scott!)
  • Added theme-root support.  (Thanks, Terrence!)
  • Changed the gatekeeper_default_template option to be called gatekeeper_markup instead.

That last change was the original motivation to create the update script, since the plugin would break without updating the option name.  While I was at it, I decided to throw in routines to let users of the 1.0b1 version migrate their challenges over to version 1.5 and then delete the old tables.

So if you’ve run any previous version of WP-Gatekeeper, you’ll need to download and run the update script.  It’s called wp-gk-rc2-update.php.  To run it, uncompress the archive and drop the PHP file into your main WordPress directory, then load it up in a Web browser.  From there, the script should walk you through the update procedure.  If you’ve only ever used  GK 1.5 RC1, then it will be two steps and painless.  If you were running 1.0b1, then it’ll be three or so steps and still painless.  (Unless of course I have bugs, in which case there may be pain.)

Basically, you’ll need to run the updater either immediately before you install the RC2 plugin, or immediately after.  In the interval between the two, there will be trouble.  I’m sorry, but I don’t know of a way toclose that window.  My recommendation is to run the update script and then drop the plugin into your plugins directory as soon as the updater finishes.  However many seconds passes between the two will be the window of possible breakage.

So there you have it.  Assuming no problems are encountered, the plugin will reach 1.5 final within the next week.  Let me know if you hit any roadblocks or see ways in which the code can be improved.

Update: problems have been encountered.  The automatic-placement routines seem to have failed, so no challenge will appear unless you use the gatekeeper_pose_challenge() call in your comment form template.  This means nobody will be able to post unless they’re logged in (and maybe not even then).  I’ll post an update as soon as I figure out what’s failing and how to fix it.  Sorry for any inconvenience!


Stuck

Published 19 years, 8 months past

I have two coding projects going, and both are for the moment stalled.  Maybe you can help.

The more recent of the two is WP-Gatekeeper, which is almost ready to go from RC1 to RC2 except for one tiny little problem: I upgraded my local copy of MySQL, and it blew away my WordPress database.  So I mysqldumped the database from meyerweb.com, copied it down to my hard drive, and tried to mysqlimport it.  And tried, and tried, and tried, until eventually my eyes started bleeding.  No dice.  Therefore, no possible chance of my testing the update script, which is necessary because it actually deletes tables from the 1.0b1 version of Gatekeeper.  I don’t want to put it out into the wild without making sure that it deletes the right tables, and no others.

Obviously, without a successful import of the dump file, I can’t test the script.  I’ve read the MySQL documentation, and done everything it says to do.  It fails.  I tried logical variants, in case there was something the documentation was leaving out.  No dice.  Then I tried illogical variants, including some SQL statements that included words I wouldn’t ordinarily type, let alone say out loud.  The error message is basically always the same, and it never helps.  It goes something like this:

~/mw > mysqlimport -u root meyerweb meyerweb20050309.sql.dump 
mysqlimport: Error: Table 'meyerweb.meyerweb20050309' doesn't exist,
 when using table: meyerweb20050309

Well, no kidding, geniuses; there is no table called that, because it’s the name of the dump file, not anything in the database.  And yes, when I dumped the DB from meyerweb, I did it so that it contained the CREATE and USE directives at the top of the dump file.  They don’t seem to make any difference at all.

Plus all that was after I reinstalled MySQL about seventeen times because it refused to start up even though the installation was supposed to be point-and-click.  Eventually I switched to a different, third-party install package, and it went like a charm.  Serves me right, I suppose, for assuming that the MySQL.com folks could put together an install package that actually works.  At this point, as far as I’m concerned, MySQL is the rotted corpses of the maggots that once infested the corn inside a pile of moose droppings.

Not that I’m bitter that this wasted four hours of my life or anything.

The other project is, of course, S5.  It’s currently stuck at 1.1b5, because there’s this problem in Firefox for Windows that I simply cannot figure out.  I commented on it a little over a month ago; the basic problem is that when viewing the testbed slide show in Firefox for Windows, it seems to “jiggle”, apparently from constant re-scaling of the fonts.  I can’t figure out how to stop it.

So any ideas, anyone?  At this stage, that’s pretty much the last major problem before going final.  Safari still blocks use of Page Up and Page Down when in the outline view, but that’s something I can live with.  The nervous-twitch display in Firefox for Windows isn’t acceptable in a non-beta version.

I’ll still be using S5 1.1b5 for my SXSW presentations, but that’s okay because I’ll be using Firefox for Macintosh, which doesn’t appear to suffer from the same problem.  If it does start having problems, I’ll just switch to Safari.  No big deal.

Anyway, that’s where things stand on those two projects.  Hopefully I’ll get over the roadblocks soon, and be able to get them moving again.


Part of the SXSW Herd

Published 19 years, 8 months past

Okay, everyone else is doing it, so here’s my “headed to SXSW” post.  Baaaa!

I’m getting in Saturday afternoon, just in time to miss Jeffrey’s opening remarks, and will be around through Tuesday.  Early Saturday evening, I’ll be at the WaSP/WD-L/CSS-D/WSM/AIR meetup at Buffalo Billiards; the festivities kick off at 6:00pm, and no RSVP is needed, so drop on by!  It promises to be a madhouse (a MADHOUSE!) of standards and billiards.

On Sunday, I’ll be speaking from 10:00am until 11:00am on the topic of “Emergent Semantics“.  I’ve been scheduled to do a half-hour book signing at 12:45pm that same day; if it’s anything like last year, there will be a few authors sitting at a signing table at the same time.  I’m told there will be copies of Cascading Style Sheets: The Definitive Guide, Second Edition, the CSS Pocket Reference, Second Edition, and More Eric Meyer on CSS in stock, but you don’t have to buy a copy at the show to get one signed—if you already have a book of mine, bring it and I’ll gladly sign it.  Heck, bring me anyone’s book and I’ll sign it.  I’m easy.

After the signing, I’m planning to sit in on Tantek’s presentation, “The Elements of Meaningful XHTML“.  His talk and mine make a good one-two combination, so if you’ve any interest in either, you might consider checking out both.

Come Monday, I’ll be getting a late start with an appearance on the panel “Where Are The Women of Web Design“.  Before I get raked over the coals again, I’d like to point you to Molly’s post about the panel and its genesis, as well as the comments that followed (particularly this one).  Just after that panel, assuming I haven’t been burnt to a tiny crisp, the SXSW folks have me doing another book signing.  That’ll be from 4:45pm until 5:15pm.

As soon as I’m done there, I have to skedaddle over to the Red Eyed Fly for Vox Nox, an early evening of New Riders authors showing their “B” sides.  Vox Nox, which starts around 6:00pm and is scheduled to end around 8:00pm, is in many ways a sort of mini-Fray Cafe, which is appropriate… because Fray Cafe 5 is going to be held at the Red Eyed Fly on Sunday, the night before Vox Nox.  I have to admit to being a touch nervous about my part in Vox Nox, because the piece I’ve created is deeply personal and I’m not totally certain how the audience will react.  But that’s one of the interesting things about public performance, right?

Tuesday I got nothin’.  No scheduled events at all.  I can just kick back, check out sessions, hang out in the halls, and generally act like I don’t have a care in the world.  Trust me, it’s just an act, but I’ve gotten kind of good at it.  That evening I’m doing whatever, and by the next morning I’ll be gone.

So if you’re going to be in or around SXSW, come over and say “hi”.  Even if you don’t have that much interest in me personally, you should still come by, because the concentration of Web design stars, standards gurus, and forward thinkers assembling at this year’s SXSWi is frankly a wonder to behold.


Gatekeeper 1.5 RC1

Published 19 years, 8 months past

Now playing: WP-Gatekeeper 1.5 RC1, a complete overhaul of the Gatekeeper plugin.  This version is compatible with WordPress 1.5, and is basically plug-and-play.  Why “basically”?  Because like Windows, there are situations where the plug doesn’t lead straight to play—but more on those in a bit.

First, if you’re using the default WordPress template or a template that uses the same markup, then literally all you have to do is install and activate the plugin.  The challenge will be placed into the comment form using the same markup patterns used for the other inputs (name, email, and so on).  In fact, this will happen for any theme that uses the same markup as the WP 1.5 default.  In cases where the plugin can’t find the appropriate markup pattern, it will insert the challenge just after after the textarea element in the comment form.

So suppose that you’ve completely altered your comment form markup, and what’s more, you don’t want the challenge appearing after the textarea element.  No problem: insert a call to gatekeeper_pose_challenge at whatever point in the form you want the challenge to appear, surround it with whatever markup is needed, and you’ll be good to go.  That’s the kind of situation where you have to do a little more work than simple plug-and-play.  Otherwise, the installation should be quick and painless.

There is a potential exception: non-UNIX servers.  I think I have things set up so it shouldn’t matter, but I may well be wrong, not having other servers on which to test.  So if you run into trouble, disable the plugin and everything should go back to normal (unless you added gatekeeper_pose_challenge to your comment forms, in which case you’ll have to remove those too).  Let me know if you hit trouble, and we’ll see about getting it fixed before going final.

I’m running GK 1.5 on meyerweb now, and everything seems to be proceeding without incident.  My upgrade problems earlier today were due to forgetting to pull out the hooks I’d hacked into wp-comments-post.php and other files for the old version of Gatekeeper.  Those hooks are no longer needed in GK 1.5, and leaving them in place broke commenting.

If you were thinking about using Gatekeeper but were put off by the long DIY instructions in the old version, then now’s the time to try it out.  It’s easy to install, and even easier to back out if you run into trouble.

I’d like to thank Scott Sauyet for helping me with a number of the new routines and features in GK 1.5, including the use of the built-in options table instead of having to set up a separate table for Gatekeeper, the form-scanning routines, and more.


Comments Are Back

Published 19 years, 8 months past

Thanks to some version skew problems with WP-Gatekeeper, I managed to break commenting last night.  I believe I have things fixed now, but if not, leave me a comment.  I kid!  Speaking of WP-Gatekeeper, the new 1.5 version is almost ready to go, so if you’re interested, stay tuned.


The Home Stretch

Published 19 years, 8 months past

As I mentioned a while back, my friend Dave is running, biking, and swimming in the Strawberry Fields Triathlon this coming Saturday.  For those who missed the original post, the short version is that he undertook this effort to do something constructive in response to his wife’s battle with Stage II Hodgkin’s lymphoma.  His fundraising efforts have been eminently successful: as I write this, he’s up to $10,325.00 in donations, exceeding his original goal of ten thousand dollars.  He’s raised the goal to $12,000, so if you wanted to make a last-minute donation and push the donation thermometer over his stated goal once again, then now’s the time.

To do so would be a fantastic way to help Dave and Kim celebrate a wonderful turn of events.  As Dave wrote last Thursday:

It’s official — Kim is cancer-free! Her scans have come back completely clean and according to her doctor, she requires no further treatment! Thanks to everyone for their thoughts and kind words and generous donations throughout this process. Next Saturday is the triathlon and the closing of this chapter of our lives. Neither one of us will forget the kindness and support we’ve received from treasured friends and total strangers alike — thank you all so much!!

Dave’s told me that the generosity of meyerweb readers was an important part of his meeting his original fundraising goal—so to his thanks, I add my own heartfelt appreciation.


Stop Hurting Us

Published 19 years, 8 months past

Dear DVD Industry,

Stop with the repetitive time-wasting soul-killing animated menu transitions already.

Thank you.

Sincerely,
Eric

P.S. Special note to whoever designed the mystery-meat “special features” menus for the Harry Potter DVDs: I hate you.


Search Engine Strategies New York

Published 19 years, 8 months past

Talking with attendees and hanging out with the speakers at Search Engine Strategies was quite fascinating. 

In the first place, they’re all pretty fascinating people, from where they’ve been to what they’re like now.  In the second place, they’re all working in a field that doesn’t really interest me, except in indirect ways.  A lot of the “white hat” search engine friendliness has to do with strong text copy, building traffic, and all that good stuff.  But to spend my days picking apart search engine behavior?  Not interested.

Of course, a lot of people would find what I do eye-wateringly boring, so I’m not casting stones here.  Just saying that it’s interesting to spend time with people who are smart, funny, motivated, and gladly doing something very different from what I’m used to doing.

That said, I observed some interesting differences between the search engine crowd and the Web design/standards crowd.

  • There’s a dark side to the search engine business that just doesn’t exist in the standards crowd.  The “black hat” SEOs, the ones who are comment spamming and keyword stuffing and link farming, don’t just lurk in the shadows.  They’re right up front, sitting on panels and buying booths in the exhibit hall (not to mention doing a little in-person spamming).  They don’t pretend to be anything but what they are.  The honesty is refreshing, but it’s something that doesn’t have a direct analogue in Web design.  The closest we get is coding to a specific browser, and that isn’t evil so much as it is amateurish and short-sighted.  I don’t think there’s really any comparison.

    The existence of that dark side creates an entirely different dynamic in the search engine field.  People are always watching to see if someone’s white hat is covering up a black hat, to see who’s shifted from one camp to another.  From what I heard, people have gone both directions; some black hats have gone to white over time.  And vice versa.

    This fact also seems to have created a gossip stream that completely dwarfs anything I’ve ever encountered in the standards design field.

  • In a similar vein, there’s an incentive to keep one’s knowledge to oneself in the search engine business.  Suppose you’ve uncovered something about search engines that nobody else has figured out.  That’s a competitive advantage, and there’s a financial incentive to keep it to yourself.

    In the standards design field, it’s almost the other way around.  If you come up with a new technique, you’re better off publishing it and adding to your reputation.  You could keep it to yourself, of course, and that would stay secret until the first time you used it on a public site.  At that point, the secret will be there for anyone who views source to figure out and use for themselves.  Writing it up instead and sharing it with the world adds to your reputational capital, which might lead to more work—so there’s a financial incentive to share.

    That’s not to say that everything search engine experts uncover is kept secret: they do plenty of publishing and sharing, and consultants in the field are constantly referring clients to each other as needs change.  That’s sort of a flip side to what I’ve observed in the standards design field, where referrals seem to be (comparatively) infrequent.  I’m not complaining, mind you.  Just observing.  But when someone creates a unique approach, it’s more likely to benefit them by being held close to the chest.

  • The field is dominated by the search engines.  Whatever they do, the experts have to adjust to keep up.  If Google alters its algorithm, a top-ranked site can drop to 100th place in an instant, and a ninth-page site can vault to the first results page.  The playing field is always shifting, always in flux.  Slow flux, but flux nonetheless.  It’s actually a lot like Web design was back in the late 1990s, when browsers were updating their rendering engines on a regular basis, instead of in cycles that can be reasonably measured in fractions of decades.

    So there’s the threat that today’s winning strategy is tomorrow’s loser.  In the standards design space, not really the case; or if it is the case, it’s only on much longer time scales.  Sure, CSS will likely be a discarded relic some day, but it’ll probably be quite a while—several years at the very least.  Comment spamming could become obsolete next week, were the engines to figure out a way to programmatically detect and penalize it.  (nofollow doesn’t quite count, but it’s a start.)

  • On a related note, there’s a lot more mobility in the search engine space.  People work as independent SEOs, then go to work for a search engine, then shift to an SEO firm, leave that to work for a large corporation… and so on.  Not everyone, of course, but enough to add lots more grist for the gossip mill.  In the standards design space, most of the leading names are working for themselves, and show few signs of changing.

  • The last observation is perhaps the one that drives everything that I’ve mentioned: the money.  There’s a lot of money on the table in SEO, way more than in standards design.  Sure, a big design job can be worth many thousands of dollars.  An effective SEO can make many more thousands, possibly millions if he or she gets the right job.  They can increase a company’s traffic, and potentially their revenue, by large percentages.

    Certainly, standards design can save companies money, and it can increase revenue by making a site more responsive due to smaller page weights.  That’s useful, and it’s important.  But the money being thrown around on SEO is… well, it’s a lot.

Lest anyone get the wrong idea, none of this is meant to be a condemnation.  Sure, the spammers are loathsome parasites, but there are a lot of SEOs who aren’t spammers.  They get companies better rankings through the basics I mentioned before.  In a lot of ways, they seem to be content, usability, and community-building consultants all rolled up into one.  Those are all useful, needed services, and it’s kind of interesting to me that all those things are hiding behind the term “search engine optimization”.  Well, not hiding, exactly.  You see what I mean, though, right?

The last observation is more personal: it was quite an experience attending a conference where I was largely unrecognized.  There were developers there who knew my name, and who were on the standards bandwagon, but the majority of attendees were not developers and had never heard of me, or Zeldman, or Shea, or Bowman, or any of the other names known in our field.  Which is only to be expected: I had never heard of most of the big names in their field.  So I was largely an outsider, and that was a refreshing change of pace.  It served as a (possibly necessary) ego check, and let me look at the Web from an entirely new angle.

So my thanks to Danny, Chris, Grant, Shari, Amanda, Tim, Matt, and the other folks who helped orient me to this new arena, discussed points of common interest and divergent aims, and made sure I didn’t feel too terribly out of place.


Browse the Archive

Earlier Entries

Later Entries