Thoughts From Eric Archive

Mail Mishandling

Published 19 years, 3 months past

As much as I detest IMAP, I have to admit that it makes testing new mail clients a heck of a lot simpler.  So after an extended period of using Thunderbird, I decided to try out Mail 2.  I quickly found myself in a familiar place:  wishing I could combine the best features of two programs.

There are things about Mail that I completely love, such as its smart folders.  Thunderbird’s “saved searches” never really seemed to work right; when I set up an “all unread in the Inbox” folder, the count jumped around more randomly than an Amazon sales ranking, and didn’t keep up with changes in the actual unread count in the Inbox.  I’ve also been completely underwhelmed by Thunderbird’s offline archiving.  It’s a major pain that any folder I want to have archived offline I have to configure individually in Thunderbird via “Properties…” and that I have to tell the application I’m going offline before it bothers to archive anything locally.  Compare all that to just saying (as in Mail) that I want to keep “All messages and their attachments” and then having the program do just that as the mail comes in.  Yes!  That’s what I want.  Why doesn’t Thunderbird allow that?

On the flip side, it’s a lot easier in Thunderbird to do things like navigate mailboxes with the keyboard.  It lets me highlight an arbitrary number of messages, hit command-R, and thus open a reply to each one.  It has labels like “important”, which are useful for helping messages stand out in a large mailbox, and allows the labels to be set with unmodified keystrokes.  In order to even get close to that in Mail, I had to install Mail Act-On, which is way cool, but also fundamentally hampered by what Mail allows filters to do.  Compared to Thunderbird, that honestly isn’t much.

When I’m in Mail, I also miss little touches like alternate-row highlighting in mailbox views.  Maybe there’s a way to make that happen with a plugin or something, but I couldn’t find one.  And what I really miss is the ability to define per-account behaviors.  In Thunderbird, I can say that one account should have all its outgoing mail bcc:ed to a given address, while another should not.  In Mail, that’s a universal setting—the very thing I like about its archiving configuration, ironically, I dislike here.

Mail seems a lot snappier than Thunderbird, that’s for sure.  But it has enough limitations for someone like me that I don’t think I can stick with it.  I’m probably not part of its target audience.  My biggest clue of that was the fact that there’s no setting (I can find) to have the text insertion point placed below the quoted text when replying.

If a mail client is going to try to force me to top-quote, then that’s no client for me.


Shirty!

Published 19 years, 3 months past

While in Chicago, we went for lunch at Navy Pier.  What can I say?  We were tourists.  As we were lead to our table, one of the waiters stopped me and said, “I love your shirt!”  It was my microformats icon shirt, and it turned out he had no idea what it was.  He just liked it.

A couple of days later, as we were passing through security at the base of the Sears Tower— Carolyn’s pick for what to do that morning— one of the guards burst out laughing and, pointing to my shirt, said “That’s right on, man!  I heard that!”  The source of his mirth was my ALA “Please code responsibly” T-shirt, the one with the car-off-a-dock icon on the front.

It’s literally been years since I had a random stranger comment on a shirt I was wearing.  Is there something about Chicagoans that they’re more conscious of other people’s shirts?


Sweet Home Chicago

Published 19 years, 3 months past

As Jeffrey said, An Event Apart Chicago was fantastic.  There was a great energy in the room—not only in the speakers, but in the audience as well.  The old talks felt like they had more punch, and the new material was crisp and fresh.  We got a lot of really sharp questions during our talks, and even the between-session chatter crackled with high-level insight and ideas.

There have been some great shots posted in the Flickr group, which includes a few humble efforts from yours truly.  Several of them give an idea of how packed the house was, and still there was a sense of intimacy.  For this, I give a great deal of credit the venue itself; as Jason said, I just want to take it with us wherever we go.

Thanks to all who made the day so great.  With the energy charge of Chicago still humming in my head, I’m looking forward to AEA New York more than ever.


Memorial Day

Published 19 years, 3 months past

One of my grandfathers served in the Navy during World War II.  The other worked in a critical industry and so was exempted from the draft.  After living and working in the Phillippines for a few years, he and his family left only a few weeks ahead of the Japanese.  Many of their friends and their friends’ families did not make it out in time.  Most of them spent the rest of the war in Japanese POW camps—assuming they survived that long.

A semi-distant relative worked on the Manhattan Project.  A few days after one of the test detonations, he and his children wandered the test site, picking up shards of alien glass littering the desert: bright leavings of a new technology whose more subtle dangers had yet to be identified.  All three of them eventually died of cancer.

None of them ever held a rifle.  None of them were soldiers.  They still died casualties of war.

It is they, and the countless people whose stories echo theirs, who I remember today.


Spoken Words

Published 19 years, 4 months past

A couple of interviews that involved me were recently released, and I’ve been very tardy in linking to them.  Life has been like that of late: I passed a major career anniversary last week and completely failed to note it.  I was lucky not to overlook Mother’s Day, which is not really something you want to do when there are children in the house.

So anyway, the interviews:

I’ll be showing up again on the Web 2.0 show as part of an ensemble cast in their discussion of ma.gnolia, but I don’t know when.  I’ll probably linkblog it when it comes out.

Ya know, I remember when interviews were printed, not audible, which was preferable because I tend to sound more intelligent in print than I do in person.  Of course, I also remember acoustic-couple modems, so maybe it’s not that I’m less intelligent so much as more senile.


Framework Fix

Published 19 years, 4 months past

“You know,” I said to the guys at the car lot, “I just don’t understand the deal with this car here.”

“Oh, it’s absolutely worth it!” they exclaimed.  For the next half-hour, they extolled the power of the engine, the smooth handling, the tight cornering, the rakish styling, and all manner of other wonderful features of the car.

“Wow,” I said.  “Thanks!  But it turns out that what I didn’t understand was how that steering wheel thingy and the foot pedals worked.”

That, in a nutshell, is what happened with the frameworks post.  Predictably, it drew a large number of detractors and supporters of various frameworks, and of the whole concept of frameworks.  Since I focused a good deal on how the tutorials and other materials (yes, including the effin’ manuals) confused me, it should have been no surprise that there’d be a whole lot of debate about the “hype” surrounding frameworks.

But here’s the thing: I didn’t get what frameworks really were.  I wasn’t complaining about the hype.  I was complaining about my lack of understanding, and to a large degree how little help I’d found in correcting that problem.  This is, as it turns out, because my problem was such an elementary misconception that no framework documentarian would think to address it.

How elementary?  My perception was that frameworks were ways of putting a simpler (or perhaps just different) syntactical front end on a language.  My belief about Ruby on Rails, for example, was that the Rails part was almost like a new interpreter that hid Ruby from the programmer.  I didn’t grasp that it was Ruby.  I thought it was a simplified or more elegant or somehow different language that generated actual Ruby on the back end, the same way Ruby or any other language interpreter eventually generates assembly language (or, if you like, a lot of ones and zeroes).

So that was the “very basic, fundamental, obvious thing” I was missing.  Hard to get much more basic than that, really.  I’m entirely not sure how I formed that perception, but there you have it.

My perception now, as I explained in a comment to my own post, is that frameworks are:

A framework… can be thought of as a collection of libraries, though in actuality a good framework is both that and a formalization of best practices, condensed into an efficient syntax and approach.

That may not be 100% accurate, but it’s a hell of a lot closer than before.  As a result, I feel like I have a much better grasp on the situation and no real reason to worry, so thanks to everyone who commented.

Oh, and I swear that Mr. Snook and I had no idea we’d be publishing on the same topic at nearly the same time.  At least, I had no idea.  If he did, then I’d like to talk to either his fortune teller or his server access logs.


Flummoxed By Frameworks

Published 19 years, 4 months past

I used to be a programmer.  Way back in the day, I wrote great big heaps of BASIC and Turbo PASCAL 4.5 and worked in a few other languages of that era (I may be one of the few people left who remembers Clipper).  At one point, a high school friend and I worked on creating our own command-line environment for the C64, for no other reason than it seemed like a fun challenge.  I’ve written quite a bit of JavaScript—not like a wizard, but well enough to get some things done—and a fair amount of PHP.  These are languages that I understand, that make sense to me.  I can make them do what I want to do.

But I just don’t get all these new-fangled programming frameworks.  Is something wrong with me?  Seriously.  I have this grumpy, churlish feeling that I suspect is rather similar to the way SGML experts felt when they saw HTML becoming so popular, and that scares me.

People who’ve drunk the various kinds of framework kool-aid don’t make it any easier, though.  “Oh”, they gush, “you should absolutely try Ruby on Rails!  It’s so easy!  It’s almost like writing regular English!”  Which means they’re clearly on crack, because Ruby on Rails is so very different from a human-written language that the few ways in which it sort of resembles prose, assuming you look at it under a dim light through a heavily fractured fresnel lens, serve only to confuse me further.  I have many of the same problems with MySQL, actually:  by dint of its being sort of human-like in its syntax, I’m led into all kinds of incorrect assumptions about what I can do.  Thus I spend a lot more time screaming at opaque error messages than seems necessary, just because I thought a comma made sense when the language didn’t.

I’ve looked at all kinds of different intros and tutorials and “for regular folks” resources, most of which I get from Simon‘s linkblog, for a number of different frameworks.  They serve only to confuse me.  The CakePHP 15-minute blog tutorial?  Didn’t get it, and remember, I can write PHP relatively well (I wrote all of An Event Apart‘s registration stuff using PHP and MySQL, for example).  The oft-recommended Tutorial in Ruby on Rails?  Lost me, Coach.  Even Jeff Croft’s Django for Non-Programmers left me in the dust.

All these frameworks’ proponents say “Just write in this totally simple and obvious way and the messy details will be magically handled for you!” but that’s just not how it works.  You have to write in a very specific and unintuitive way, and unless you know specific magic words and what roles they can take then nothing will happen except the return of an error message.  This is no different than any computer language, of course.  What I think bothers me is that the cheerleaders always seem to believe, or at least pretend, otherwise.

Maybe it’s just that the tutorials never seem to clearly state what’s a piece of built-in magic that I’ll learn about later, what’s something that I’m building myself, or whatever.  I mean, look partway through Jeff’s Django piece.  I don’t mean to pick on Jeff, because he’s not doing anything worse or even different from the other stuff I’ve read; it’s just the one I happened to read most recently.  Anyway, he says, and I quote:

These four lines create a very pretty admin area…. with appropriate entry fields for all of your fields.  The “pub_date” field will automatically get a pop-up calendar for choosing a date. The “enable_comments” field automatically knows to use radio buttons for its interface. The “lead_image” field will be a browser-based upload tool. Et-cetera. Without doing a thing, you’ll get an admin interface the likes of this…

That whole interface just magically happens?  How and why?  Is it part of the Django core?  Why?  Is it useful for other stuff besides what we’re doing here?  How?  Did all this happen based on the class I created, or the variables I defined, or the values I gave them?  How can I tell?  Where can I find a list of the magic things?  How can I re-use them; or, put another way, how far will the magic things stretch?

I feel like there’s some very basic, fundamental, obvious thing that I’m missing, but I don’t even have the necessary level of knowledge to frame the right question.  Or questions.  See?  I don’t even know how little I know.  Is it that I spent too much time doing old-style programming, and so I’m too suspicious of anything I didn’t write myself?  (In which case you’d think I’d be an assembly-language kind of guy, but I’m not.  At all.)  Is it that for years I taught myself programming languages using reference manuals, so I need that kind of function listing before my mind will start to absorb a new language?  Is it just that I’m too old now and my mind isn’t sufficiently elastic to take in radically new concepts?

Basically, my nose is telling me that I’m up a putrescent watercourse and I lack a means of locomotion.  Maybe I’m not alone there, but sometimes it sure seems like it.


Presentation Remotes

Published 19 years, 4 months past

This one will be of interest to the dozen or so of you who regularly give presentations that involve some sort of (Powerpoint, Keynote, S5, whatever) slide show.

Just before An Event Apart Philadelphia, I went out and bought a Keyspan Presentation Remote.  I picked this particular make and model because I’d used one at Web Essentials 05 and it’s programmable, which always hooks me.  It also has the ability to control the mouse pointer, change the audio volume, and more.  So I bought one.

Bad move.  As attendees of An Event Apart can tell you, we had problem after problem with the damn thing, both with the default settings and with the customized configuration I’d set up.  It turns out the remote has two “modes”, and the default mode can be only partly reprogrammed.  Sadly, it won’t stay in the alternate mode.  If you don’t interact with the remote for a minute or so, it goes back to default mode, which means it stops doing what it’s supposed to do (advance slides).  We ended up just not using it.

While I was at IceWeb, I borrowed Molly‘s (or maybe it was Andy‘s) Kensington Pocket Presenter to deliver my talk.  This little baby is simple as anything: largish back and forth keys that map to Page Up and Page Down, a red button for the laser pointer, and a “stop” button that blanks the screen in supporting applications.  That’s it.  And that’s what makes it great.  Even better, the USB receiver slides into a storage slot in the remote itself, and doing so turns the whole thing off, is pure genius.  It fits easily in the hand, both in terms of size and shape.  It’s the iPod of presentation controllers, designed to do one thing and do it very well.  It’s enough to make me reconsider my whole “one device to rule them all” stance.

I picked one up at the Apple Store the other night for not much more than it costs at your favorite online discount e-store, and I couldn’t be happier.  The one little quirk I noticed was that the first time I plugged one of these into my PowerBook (running Tiger), the system said I was plugging in a new keyboard.  I dismissed the dialog box, and it’s worked without a hiccup ever since.

So: Keyspan remote bad, Kensington remote good.  Of course, if you really need a presentation remote that can do a convincing impression of a slow-moving mouse driven by an Etch-A-Sketch interface, then you may disagree with me on this one.  Me, I’d rather just have a slide controller, and if I need to do something with the mouse, I’ll walk over to the computer and use the mouse.  Shocking!


Browse the Archive

Earlier Entries

Later Entries