meyerweb.com

Skip to: site navigation/presentation
Skip to: Thoughts From Eric

Archive: July 2004

Partied Out

By rights, I should be a Republican.  No, I’m not kidding.  Bear with me for a moment.

If the Republican Party actually carried through on the core principles it espouses, I’d pretty much have to register that way.  I’m all for a decrease in government’s interference in the personal lives of its citizens, and that goes for silent intrusion as well as active meddling.  I’m all for the government being as small as it needs to be, and no smaller.  I believe that the government provides a number of critical services, and those should be funded, but that there should be intelligent restrictions on its growth.  I also believe in fiscal responsibility, in eliminating deficits, and in returning any surplus to the taxpayers (once all debts are paid off and services are funded).

So what do we have instead?  A party that proposes amending the Constitution to prohibit some kinds of marriage, that keeps increasing the size of the government, and that runs up massive debts while cutting off income.  Their leaders and highest-profile supporters tend to be the most annoying brand of hypocrite: preaching morality and decency while not acting in accordance with those ideals, publicly or privately.

As for debates about national security and terrorism, the more often I hear right-wingers respond to questions and criticism with accusations America-hating, the more I start to think that they have no rational policy, and their lame rhetorical attacks are meant to obscure this weakness.  It’s probably an unfair perception, but it’s hard to avoid.

Then, of course, we have the Democrats.  They’ve traditionally been in favor of increasing spending in order to provide expanded social services, which in any sane fiscal environment requires an increase in taxes.  Thus the old cliché of “tax-and-spend liberal”.  (To which I usually reply, “Well, duh, if taxes are levied then the money should be spent”.)  But the last Democratic president, faced with a surplus, used it to get government debt under control.  He didn’t try to blow it all on entitlements, at least not after the universal health care proposal died, or try to fund some massive boondoggle.  He actually used it to reduce the fiscal burden on future generations.

The usual argument is that he didn’t do this of his own volition, but was forced into it by a Republican Congress.  I no longer accept that claim, because I’ve been watching the current Republican Congress.  No real signs of fiscal discipline there, I’m sorry to say.  So it would seem that the party of smaller government and fiscal responsibility is, in reality… the Democrats.  Say what?

As for national security, the left has been great about asking tough questions, but not all that good at formulating a decent policy—or, if they have one, then they’ve done a terrible job of promoting it.  It’s one thing to criticize what’s being done, and quite another to propose a workable alternative.

And that leads us up to the 2004 Presidential election.  I’m reminded of the 1988 election, when I seriously considered flipping a coin to determine my vote.  Neither choice really made me happy.  Same thing here.  I’m no fan of President Bush or his policies, but I’ve yet to see that Kerry is a worthwhile alternative.  I know some people who say “Anyone but Bush,” but I categorically refuse to pick the leader of the country that way.  I know some people claim nobody could be worse than Bush, and I’m glad they do, because it makes their reality-distortion tendencies more obvious.  There’s plenty of people who could be worse than Bush.  The question in my mind is whether or not John Kerry would make a better leader than George W. Bush.

It would be nice if I could get a clear picture along those lines.  So far, any hope of finding out has been obscured by the fountains of venomous bile the two sides keep spewing at each other.  Back in late 2000, I wrote:

…I’m finding that every time a campaign spokesman from either side opens his mouth, my opinion of him drops.  Every time. That’s just, you know, depressing.

It’s no less true, or for that matter less depressing, at present.  And pundits wonder why voter apathy runs so high.  I honestly think it’s because most of us just don’t want to waste any more time listening to the shrill schoolyard taunts that pass for political debate.

It doesn’t help that most taunts are equally applicable to both sides, thus deepening the sense of futility.  To take just one example, the Republicans keep painting John Kerry as a “flip-flopper”.  How droll.  He has been a senator long enough to have voted in myriad ways, it’s true.  In some cases, it’s because one bill is worth supporting, and another is not, even though they’re ostensibly about the same thing.  In others, it might be that he’d changed his mind.  Most humans do, at some point.

Thing is, Bush is no less a flip-flopper.  He’s been against trade barriers like steel tariffs, and then for them.  He’s been against education reform, and for it.  He’s been against nation-building, and for nation-building.  He’s been against independent inquiries into the 9/11 attacks, and for them.  He’s been against negotiating with the North Koreans over their nuclear program, and in favor of negotiating with them.  Those are some pretty major changes of position.  And I’m generally okay with that; a pragmatist must sometimes change stance to get things done, and any intelligent person will change their mind if new and compelling information comes to light.  I will gladly accept a leader who changes his mind when it makes sense to do so, or even when they have become convinced of the need to do so.  Still, doesn’t it seems rather hypocritical of Bush and Cheney to excoriate Kerry for changing positions when W and company have been doing the same thing in fairly big ways?

It’s hard to take either party seriously any more.  I sometimes wonder if there will be a serious political party in my lifetime—either because one of the existing parties grows up, or due to a serious-minded third party actually gaining traction and becoming a force in national politics.  Both seem about equally unlikely.

And so I face the prospect of forcing myself to the polls, participating in the election process only because abstention is unacceptable to me.  Thus a right and a duty becomes a frustration and a chore.

That’s probably the worst part of all.

Upgrade Path

As one might have been able to infer from my recent post on Airport Extreme, I got a new PowerBook; it arrived Thursday afternoon along with an iSight.  My TiBook is a little less than a year old, but I found someone interested in buying it for a decent price, so I figured, what the heck, why not reward myself a bit for all the work I’ve been doing and get a nice high-powered machine?

So I did.  Since I still have an 802.11b access point (the aforementioned MR814v2) I plugged both laptops into the router and got to work transferring files.  Even at 10Mb/second, it took a while to move everything over from one to the other; the iPhoto library alone took an hour to cop.  Having close to four thousand images, many of them with red-eye reduction, will do that.  Nevertheless, I was up and running within most of a day, and a couple hours of that were figuring out the whole wireless access problem.  And six hours of sleeping.

I like the key response on this keyboard.  It’s a little snappier than the TiBook.  But the coolest thing about the new machine so far?  The way that, in a low-light environment, the display will dim down a bit and the keyboard automatically backlights.  It’s just so sexy.

(Don’t forget, there’s still a little bit of time left to support the Blog-A-Thon!)

Head In The Clouds

I recently wrote about being fascinated by clouds.  This fascination is something I’ve always had, and it doesn’t seem to have lessened over the years.  If anything, it’s become stronger.

More than a decade ago, I stood in a hotel room in Minneapolis and watched a tiny smear of a cloud appear, grow, shrink, and finally disappear completely from an otherwise clear blue sky.  As I watched it fade, I thought of the opening of Arthur C. Clarke’s Against the Fall of Night.  I still wonder why it appeared at all, especially since its lifespan was so brief.  If its existence was so tenuous to begin with, why did it ever exist?

On a recent flight from Minneapolis to Cedar Rapids, Iowa, our Saab 340 propeller plane nosed between and just over a series of wispy clouds.  I love looking at clouds from the air, particularly when they’re close enough to make out the fine structural details.  These were particularly complex, consisting of tangles of vaporous filaments that stretched and merged like pulled cotton.

Clouds mystify me.  What is it that causes one part of the air to contain a cloud, and another to be clear?  Put another way, what defines the edge of clouds, particularly the filamentary ones like those through which we flew?

At the macro level, of course, some atmospheric conditions simply don’t favor cloud formation.  The micro level is where I have the questions.  Once a cloud starts to form, what keeps it from continuing to grow until it fills the entire sky, or at least the entire vicinity?  As we flew over Iowa toward Detroit, there was a scattering of small, roundish clouds near the ground.  What caused them to form where they did, and why did they stay small and round?  Why didn’t they smear out, or build up in mass?  Another good example are the summer clouds that rapidly scoot through a clear sky on days that are not particularly humid.  The wind doesn’t rip these clouds apart, and they don’t seem either to grow or shrink.  What conditions formed them?  What holds them so firmly together?

As a child, I once ran out into a windy rain storm to look at the storm clouds overhead.  I stared straight up and saw a massive cloud wall stretching up into the haze and high-level rain, and in that moment I could almost feel the boundaries of the cold front as it swept over our house.  As a senior in high school, I watched a late-afternoon thunderstorm move away, bisecting the sky into dark gray and a profound golden glow that I can still scarcely believe existed.  I kept trying to understand how this combination could happen even as I thrilled at its existence.

I once thought seriously about studying for a career in meteorology, and this fascination is most of the reason why.

Scorning Standards

So in the last week, we had relaunches of Feedster and allmusic.com, and both sites were straight out of the Nineties: “this site best viewed on…”, browser blockers, and general lack of standards awareness.  Scott Johnson’s response in the case of Feedster is, in effect, “we don’t have the resources to support all browsers”.

Yes, you do.  It actually costs less to support all browsers.

What costs more is obsessing over making a design “look the same in all browsers”, which is in any case impossible.  Your site can’t possibly look the same on a cell phone as it does on my Cinema Display, and it’s not going to look the same in Mosaic 1.0 as it does in IE/Win.  Remember Mosaic?  It didn’t support tables.  A table-driven layout will completely and totally shatter in Mosaic.  I wonder if Feedster has a blocking message for Mosaic.

The point is that if you properly structure your content, then you can make it available to everyone.  You can set things up so that in more current browsers, the site will look pretty.  In older browsers, it won’t.  If the user really wants to get your content but your styles confuse it, then the user can disable styles (all the older browsers, and many newer ones, let you do that via the preferences).  If you identify a particularly problematic browser—whether it’s IE5/Mac or Netscape 4 or Opera 3.6 or whatever—then you can use JS to withhold the CSS from the browser.  Users of those browsers get the content.  You can throw in a message telling them why the site looks plain, if you like, but the important thing is that they get the content.

For a site like Feedster, there’s really no excuse.  The main page is a search form that looks a whole lot like Google, except with more stuff on it.  After that, you get a list of search results.  The results will be just as useful with an unstyled presentation as with all the CSS in the world applied.  So to say that it would cost $1,500 to support IE/Mac, or anything else, is misleading at best.  It might cost $1,500 to figure out how to hack around a browser’s limitations in order to make the page “look the same”.  It would have cost $750 less to not take half an hour to implement a browser blocker and set up the blocker page, and just let all browsers in.  It would maybe have taken $275 worth of time to write a detector that withholds the style sheet from “unsupported” browsers, or else adds in a style sheet for the browsers you “support”.

As for allmusic.com, Tim Murtaugh created a more standards-compliant version of the main page in two hours.  Of course, it may not have consistent layout in multiple browsers, but another six hours could probably fix that.  I wish they would, because I use allmusic.com a lot in preparing for my radio show.  (And did I mention that the station has a new design for its site?  I had nothing to do with it.)  I won’t stop using it, of course, because they have good biographical information. but I wish they’d done better.  It would have been little enough effort to do so.

Floats Don’t Suck If You Use Them Right

Andrei’s redesigning Design By Fire.  I hesitate to comment on a partially-finished design, since I never know if the things that annoy or delight me are going to go away in the next revision.  I will say that there seems to be an awful lot of whitespace in the masthead area.  I’m more interested in responding to the concluding sentences of the section titled “Floats suck”:

All that CSS goodness however, does not mean that I think the logic behind float makes any real design sense, especially to someone who has an extensive graphic design background like myself. The whole float layout approach smacks of using a CSS property for more heavy duty work than it was intended.

That is precisely the case.  float was never meant as a layout tool.  I summarized the history of floats in the article “Containing Floats“, but the short version is that floats are not supposed to be a design tool.  They’re simply meant to take an element, put it to one side, and let other content flow around it.  That’s all.

Floats have been bent to the purpose of large-scale layout for exactly one reason: clear. Because you can clear a footer below two floated columns, float layout came into being.  If there had ever been a way to “clear” elements below positioned elements, we’d never have bothered to use floats for layout.  We’d have used floats in layouts, but that’s not the same thing.

Shaun Inman’s solution to this problem is to use JavaScript to “clear” positioned below others.  For whatever reason, I tend to resist using scripting to solve layout problems, but in this case we really don’t have any other choice.  I’m planning to employ his strategy when I adjust meyerweb’s design, since it’s possible to use it in such a way that things won’t be any worse if JavaScript is disabled, but much better if it is.

So to me, floats sort of suck for design purposes.  They’re not bad, but not great.  If you use them for their original (albeit limited) purpose, though, they rock.

Airport Extreme and Netgear MR814v2

So let’s say you’re trying to wirelessly connect an Airport Extreme system to a Netgear MR814v2 access point, but you find that it can’t or won’t do so.  You’ll be able to see the SSID from the access point, and even to manually configure your networking so the Mac thinks you’re connected to the Internet, but when you try to go somewhere (like a Web site) it won’t work.  If you try to pick up networking settings via DHCP, you’ll get a self-assigned address instead.  Furthermore, the MR814v2 will only occasionally notice the system as an attached device, and even when it does the situation doesn’t get any better.

So how do you get them working together?

  1. First, make sure you’re reasonably up to date on firmware, having at least version 5.01.  I’m on 5.03, electing not to upgrade to 5.30.
  2. Log into your MR814v2 using the administrator username and password.
  3. In the left-hand menu, scroll to the bottom until you find the “UPnP” item.  Select it.
  4. Enable UPnP (Universal Plug and Play) for the router.  Apply the change.

After a few seconds, everything should work fine.  It did for me, anyway; I was able to hit the Internet within seconds, and when I switched over to DHCP it immediately received a lease.  I’m using the system to post this entry, in fact.

I found the answer buried in a Mac OS X Hints thread.  I’m posting this largely so Google can find and add it to the collective cyberconscious.

Dashboard Again

To paraphrase Tim Bray, I had thought I’d said enough about the Dashboard and its markup, but when Dave Hyatt says he’s interested in hearing your thoughts, out loud you think.  Dave’s interest in my thoughts was sparked by Ian Hickson‘s post about extending HTML, where he raised objections to all the technical proposals made thus far and advocated working with the WHAT WG before adding anything new.  So let me first establish my baseline for my thinking on the subject, both past and present:

Dashboard will happen, and will be present in Tiger, and will have at least the features described thus far.  All that remains is to advocate for interoperability with standards.

That isn’t some sort of admission of defeat: I’m really looking forward to the Dashboard.  I think it’s a great thing.  I think it shows how, with just a little bit of extension, the standards we already know can be used in compelling and useful ways, and for that matter how standards can yield powerful applications on their own.  The baseline assumption I make above is a way of establishing the parameters for my discussions of the subject.  It helps keep me focused.

In order to keep things clean, I proposed an approach centering around a new DOCTYPE, and Tim Bray proposed another revolving around namespacing.  Ian pointed out the technical flaws in all of our suggestions.  Strictly speaking, Ian’s right: there are technical problems with each of the proposed solutions.  In the world of pragmatic standards, though, what’s important is making things work as necessary to get the job done.  Thus my approach.  You haven’t heard me complain about the addition of contenteditable to the Web Core’s DOM, for example.  Why would I?  Dave’s right to add it.

It seems that both Tim and Ian felt that creating a new DOCTYPE was a poor idea; one reason was that it would mean recreating the entirety of HTML in DashboardML, with elements bearing the same name and given (presumably) the same semantics.  I don’t really see why that’s a problem, since it’s already been done once before, for a little number we call XHTML.  Now, it might very well be a better idea to create WHATML instead of DashboardML.  That’s fine with me; in fact, I mentioned that as a possibility in my proposal.  The actual name and home of the new language doesn’t much matter to me, although I should point out that whoever is responsible for the new language, it’s going to require either a new DOCTYPE or some kind of namespacing solution.  If Apple’s additions can be accepted by the WHAT WG in time to get Dashboard shipped with Tiger, then great.  If not, they’ll have to move ahead without that imprimatur.  My goal is to advocate that they do so in a standards-friendly way.

In response to my comment that I thought Dashboard would be better off as XML instead of HTML, because that way you can make up whatever markup is needed, Ian said:

So let me get this right. It’s ok to send proprietary non-standard markup over the Web, so long as the angle brackets are XML angle brackets and not HTML angle brackets?

In a word, yes.  That’s what the W3C has been telling us for a while now, so why would I think otherwise?  Sure, the W3C publishes new stuff using XML and it’s all been thoroughly vetted and worked over and generally committeed to death, and that’s great.  But XML makes it possible to invent any markup language you like.  So far as I can tell, that’s kind of its point.  As long as things are well-formed, you’re good; if you’re both well-formed and valid, then angels descend from the markup heavens to sing your praises.

HTML is a well-defined, long-understood (almost-)SGML application.  Changing it willy-nilly is like making up new words to add to English.  (Hey, did you see that roopyrastic article in last month’s Scientific American?)  On the other hand, if you create a new XML language, then you’ve gone the Esperanto route.  The language is as valid as you say it is, and it is a whole new thing, but at least you’re not polluting an existing language with stuff you made up.

So with XML, anyone can make up anything and release it into the wild.  It might be argued that to send new XML languages flying around the public Web is a technological rebirth of the Tower of Babel, to which I would respond, “What else did you think was going to happen?”  In fact, it’s been happening for a while, as the widespread use of RSS will attest.  I haven’t noticed that being a major problem for anyone, and in fact you can combine RSS and CSS to display them in a browser.  That doesn’t seem to be a problem either.

Besides, all of the XML-centric solutions, flawed or not, were excluded by Dave from the outset when he said that Dashboard widgets needed to be HTML, not XML.  The reason given was to lower the entry barrier for would-be widget developers.  I personally don’t agree with that perspective, as I believe anyone skilled enough to create a decent widget will find XHTML (or even namespacing) syntax the least of their concerns.  My disagreement isn’t terribly relevant, though, since I’m not the one defining the way Dashboard widgets work.

As for the concern that adding new stuff to HTML will leave it free of semantics and confuse everyone, I don’t accept that at all.  The semantics that exist in HTML, XHML, and so on exist because we’ve collectively agreed on what they mean.  I don’t mean that we all held a big convention and voted on the meaning of h2.  The HTML specification defined what h2 means semantically, and the rest of us (authors, editors, search engines, etc.) tacitly agreed to go along with that definition.  The same thing can happen again—and, in RSS, already has.  RSS defines its own semantics, and everyone’s agreed to go along with its definitions.  It helps that the elements are given obvious names like description, of course.  RSS also has a title element for every entry in the feed.  Yet nobody, so far as I know, has gotten those title elements confused with HTML’s title element.

So now what?  Now the team at Apple keeps pushing forward to make Dashboard the best product it can be while still making it as easy to develop for as possible.  Fortunately, Dave is willing to publicly discuss how that will be accomplished, which is nothing short of amazing (although totally in keeping with what I know of Dave).  He has also said Apple is willing to submit their additions to the WHAT WG for discussion.  I honestly don’t know what more one could ask for at this juncture.  There is every opportunity to work with Apple (rather than protesting against it) to make sure that Dashboard widgets interoperate with the Web’s foundations… or at least don’t cause unnecessary problems.  Apple is listening.  It’s up to us to talk with them, understanding their needs and limitations while making clear our concerns and suggestions.

Despite my complete lack of time and reluctance to add still more mail to my bulging Inbox, I may well have to subscribe to the WHAT WG public mailing list.

Blog-A-Thon

This Saturday, July 17th, I’m going to be participating in a Blog-a-thon.  “What’s that?” you may ask.  It’s like a Walk-a-thon, where a person collects pledges for charity and then participates in a walk or other event.  Well, in this case Gini and Ferrett are conducting a Blog-a-thon, where they’ll be posting a new blog entry every half hour for twenty-four hours.  The proceeds go to charities of their choices.  In Ferrett’s case, it’s the The National Hemophilia Foundation, in honor of his late uncle Tommy.  Gini is raising money for the Breast Cancer Research Foundation, in honor of her late friend Annie.

This year, Gini’s cause is my cause as well, in honor of my late mother Carol.  If you’d like to support my participation in the event, or indeed simply support breast cancer research on general principles, then please go make a donation to Gini via PayPal.  As I say, all money raised for Blog-a-thon will go to the charities involved; nothing will be held back.

I won’t be going the whole 24 hours—I’m old, I’m terrible at all-nighters, and I have a baby girl to exhaust me.  What I will be doing is showing up early in the afternoon on Saturday with Carolyn and hanging out with the blogging crowd.  They’re planning to set up a web cam, so you’ll be able to see Carolyn furrow her brow at the rest of us.  I’ll also be posting entries as the spirit moves me, not on an every-half-hour basis.  Kat will join us later on in the afternoon.  We may or may not stay until the Blog-a-thon ends at midnight.  That will be determined by how we feel, and how well Carolyn deals with a whole house of hooting, giggling, typing people when she’s trying to sleep. 

Thanks to any and all who can help out.

July 2004
SMTWTFS
June August
 123
45678910
11121314151617
18192021222324
25262728293031

Archives

Feeds

Extras