Quick updates

Too long a day yesterday to do any blogging. I’m catching up a bit now.

Sitting in Sea-Tac, using a paid wireless connection. It’s amazing how quickly that comes to seem acceptable. I used one in Starbucks earlier.

Word of advice–if you are in Seattle, on the way to the airport, and have a choice between paying for access at Starbucks or at the airport, use the airport access instead. It’s 6.95 for a full day, as compared to $2.95 plus 20 cents a minute…

Not a lot going on. Just getting some work done. Trying not to think about the little insanity that happened in the air over Chicago a few days ago. Or about congressmen finding out that security rules apply to them too.

Or people pulling the comic strip Boondocks because the cartoonist is calling the Reagan-Bush Republicans for supporting Bin Laden during the Afganistan conflict with the Soviet Union in the 80s, and then claiming it’s because “it’s more appropriately discussed in news and opinion pages” than in comic strips.

Back in Seattle Again

Sing along with me now: “I’m back in Seattle again”… Blogging in my bathrobe drinking Starbucks. Gotta love civilization, even if you’re scared to death about what’s happening half a world away. There will be some tense shifts in this piece. That’s one drawback about writing offline–it’s less spontaneous and therefore either requires the writer to edit more carefully or the reader to be more forgiving.

I started writing this: sitting in Logan Airport (now there’s a phrase that is scarier than it used to be!), listening to the gate personnel announcing that the flight to Denver is oversold. Listening to all the alarmist talk about heightened security and concerned about mile long lines at check-in and security checkpoints, I got on the subway at 8:30 for an 11:10 a.m. departure. Now, almost two hours later, I’ve been sitting in the gate area long enough to read the Sunday New York Times cover to cover and consume a grandé Americano.

Aside: Why do they call espresso with hot water an Americano? Because it’s weaker than regular espresso? Because it’s bloated and engorged with water?

Unlike SeaTac, Logan doesn’t have freely accessible wireless networks for passengers’ convenience–in fact, as far as I can tell, Terminal C has no wireless networks at all. So I’m writing this offline–in TextEdit, naturally–waiting for the boarding process to start. I’ll upload it later.

Lisa flies to Italy later today for a week with her Italian project team, working on the contract that she helped the company win. I don’t know how often I’ll get to see her over the next few months–her schedule is totally up in the air.

As for me, I have two days in Seattle ahead of me. Should be a fun time, even the part spent on business. For the plane, I have my laptop, my DVD drive, and copies of O Brother, Where Art Thou and And Now For Something Completely Different. Life is OK.

…At least, that’s what I wrote before I heard from Lisa in Denver that the bombing had started. I’m old enough to remember Desert Storm quite well, and I’m hoping that this one ends more decisively, but I have my doubts.

Printing without wires

So at long last I finally got our laser printer working on our wireless network. It was a little bit of a pain in the butt, so I thought I’d share the process with you.

The architecture of the solution, when all was said and done, was pretty simple. LaserJet with JetDirect card, connected via Ethernet cross-connect cable to Airport base station (dialup only), set up as an Ethernet bridge (thanks to Henry B for pointing this out). But getting there was pretty difficult.

First thing that we had to do was get a print server card for the printer. The LaserJet 2100M/TN doesn’t come with Ethernet connectivity, so connecting it to the wireless network required a JetDirect card. The standard card from HP is called the JetDirect 600N. Unfortunately it comes in about five flavors, depending on the type of networking you need to do. The cheapest model on E-Bay is the 3112. Unless you have some TokenRing needs, make sure you don’t buy this model. The one we finally ended up getting is the 3111a, which has 10Base-T and 10Base-2 support in addition to Appletalk (via the old fashioned serial connection). The card fit in the standard EIO slot in the LaserJet printer.

My initial plan was to connect the card to our AirPort base station using an old Intel 4-port 10BaseT hub we had lying around. Unfortunately, this didn’t work too well–we couldn’t address the card. I printed a test page for the JetDirect card and saw that the IP address and gateway were manually set to an unusual number–no doubt the settings required to run it in its previous home. But I couldn’t correct the settings from Mac OS X. I booted into OS 9 and connect to the JetDirect server using a crossover cable. I was able to reset TCP/IP to automatically get a DHCP address. However, when I reconnected the card through our hub, it didn’t seem to get an address. I then manually set the IP address, but still couldn’t address it.

Finally, I had to move the Airport base station to the other side of the room so that I could connect it using the 10-foot crossover cable directly to the printer. Almost immediately, I found it accessible via AppleTalk–apparently our hub was broken. I was able to set up an LPR printer to it, and we downloaded software from HP onto Lisa’s Windows 95 laptop so that she could connect to it as well.

All in all it only took about six weeks… Boy, I really must be a programmer now. Hardware and networking things used to seem easier.

One last note–I’ll have to get another hub if high speed broadband ever comes to our neighborhood–connecting directly to the base station won’t work too well then.

Food, Music, and Scripting

It’s a beautiful day here in Boston. What a pity that I have to do work.

It’s interesting how people pick up certain habits about writing their blogs. I think Dave sometimes starts with an introductory “Good morning!” and some random thing that’s floating through his mind. For me it’s like a vocal warmup–stretches the writing muscles and gets me thinking.

Last night’s anniversary dinner was really nice. I made a risotto Milanese with pancetta, and a Siena style dish of chicken breast fillets with lemon and parsley. The risotto was fantastic, and I think I might have to add it to my regular repertoire. We decided to make a special night of it because Lisa’s trips to Italy are about to begin, and at this point we don’t know how often she’ll be home. Work is tough…

Speaking of repertoire, I’m in the middle of trying to build one for the E-52s. I’m finding it more challenging than I thought. There are two main challenges: finding good songs for female soloists and finding music that I like and the group likes too. I knew I had weird tastes in music, but there’s nothing like directing an a cappella group and watching their reaction to your musical ideas to really bring that home.

I might do a little Applescript work this morning, now that the fuss has pretty much died down over my first attempt. We’ll see how things go. I had one great plan dashed because the application I wanted to use wasn’t scriptable. It’s interesting. My initial thoughts about using script as a glue to tie website access to my desktop was that once I had the plumbing and the website API, I would be all set. Now I’m discovering the downside of relying on scripting: all the applications I use need to participate, or it won’t work. I already had to move from BBEdit Lite to TextEdit for updating my blog–I could write against the full version of BBEdit, but I’m a student and spending money for another software license when I have a passable text editor is hard to justify.

It’s a Big Scripting Party

Yesterday’s piece on using AppleScript to update a Manila blog interested a lot of people, thanks largely to Dave‘s link to my page. A typical story on my site might accrue 10 hits the first day it’s posted. This one garnered 559. Which leaves open the question: by writing that little script and telling Dave about it, was I just shamelessly whoring for hits? Hopefully a few people downloaded the script and found it worthwhile.

I’d like to issue a public invitation to all the people who are interested in using Apple’s new RPC capabilities with Manila. Let’s have a discussion about what would be the most valuable scripts to write and what would add the most value. I’ll kick it off: I think that (a) automatic spellchecking prior to posting and (b) ability to post image files directly from the Finder to my blog would be great things to have. What do you think?

I’d also like to point out that there are people doing similar things for Blogger. Following my referer links, I just came across this script at Web Entourage. It’s smarter than my script–it uses the selected text from any application. This is cool. I’m learning more about Applescript (I’ll be the first to admit I’m pretty illiterate in it) and about the other people out there who are doing this stuff.

I like the WebEntourage web page better than the page that shows off my script, since he links clearly to the API and to Blogger. I wonder if there could be some way to pull out the links from a Manila message automatically and format them for display somehow, like what Slashdot does.

In non-scripting news…

Today is the fourth anniversary of my wedding to Lisa. We got a lovely e-card yesterday from our dear friend Larry Mueller. I sang with Larry in college and he read at our wedding.

Getting the email from him, I realized it’s been far too long since I spoke with a few of my friends like Larry. Distance is pretty hard to conquer when you’re a student. I think it’s ironic that as my ability to write for my blog has improved, my letter writing skills have diminished.

A long day today. Lots of coursework. I have to keep reminding myself that corporate finance is worth all the trouble.

Blogging in New Places

I write this blog from an unaccustomed place: Apple’s TextEdit application. That I’m doing it from a text processor isn’t in and of itself unusual; normally I write my blog in BBEdit before uploading it to the web. The unusual part is that this blog will be published to the web without my opening a web browser.

This is what I started writing about in July when Apple quietly announced that they would make support for web services–web applications that can be addressed using either XML-RPC or SOAP–available in the operating system and accessible via AppleScript in Mac OS X 10.1. Yesterday I wrote a short AppleScript (available for download) that uses SOAP to call web services belonging to Manila, the publishing system that hosts this blog. The script takes the content of the topmost TextEdit window and makes it a story on my website.

Apple’s made web services pretty darn easy to use. You specify the URL you’re going to and the location of the command you want to use, and the parameters that it takes. You execute the SOAP call. You can call out elements of the resulting XML result by name as though they were normal AppleScript properties (enabling me to get the message number that results when the story is posted).

Le Bien, Le Mal

What’s not to like? Well, sometimes if the script you’re writing doesn’t work, it’s hard to figure out whether you’ve made an error, whether something has gone wrong on the other end, or something else entirely. Case in point: I was getting error messages yesterday from Manila complaining I hadn’t supplied enough parameters to create a message. Had I missed something? Had Dave added something? Then I looked at the XML output (using a great tool from one of Apple’s scripting guys) and realized that the password element had been dropped out. On a little digging, the same Apple guy tipped me off that “password” has a special meaning in AppleScript and I had to treat that property differently (see the script source).

Okay, not perfect, but still having fun. What’s next? How about tying a spellchecker into the workflow? Ease of use capabilities like saving username and blog address, and keychain support, and other applications, and…

I better not get ahead of myself.


The subtitle is taken from Guru’s jazz/hip-hop album, Jazzmatazz. It’s a duet with MC Solaar, French hip-hop artist, in which Solaar basically shows Guru up as a rapper of inferior skills. But I don’t think he knew that when he recorded it. 🙂

Others are Doing It Too

Larry responded to my piece to point out that he’s done this between TextEdit and Blogger. There are probably other people out there doing this too. Let’s have a scripting-our-blog party!

A Long Awaited Upgrade

The title of this piece comes from “A Long Awaited Party,” the first chapter of The Fellowship of the Ring by J.R.R. Tolkien. I’ve been re-reading it lately. It has some interesting things to say today about the value of innocence and protecting it: it’s better if the innocents stay safe even if they are ignorant about the dangers around them. For me, that puts all the ranting I used to do about the uninformed American public in an entirely new light.

So, Mac OS X 10.1. As someone pointed out on Slashdot, a pleonasm of a version number. But a heck of a good operating system.

Where do I begin? The trip to Northshore for the disc was pretty humorous. Lisa had something else to see in the mall and left me alone at the front door of the Apple Store. Words don’t do the place justice. How about ten-foot glass panes suspended on wires from the ceiling and floor displaying the Aqua interface? Shelves and shelves of software? All the current hardware on display, plus “digital hub” accessories? Heck of a retail experience.

I asked the floor guy where I found the upgrade, and he said, “Oh, that’s back at the Genius Bar. I’ll walk you back there.” He went back and told one of the Mac Geniuses (yes, that’s a job title) that I needed the upgrade. The Genius said “Stand back a little.” Wondering, I did, and he tossed the package to me like a frisbee. “There you go,” he said.

The actual install wasn’t nearly as fun, but it also wasn’t onerous. I left it alone for about half an hour (I think I accidentally had it include resources for a bunch of other languages, or it probably would have been faster). On boot, the login screen defaulted to listing all the users in the system with pictures next to them. Pick a login name, then type in a password. Great for home users. I promptly changed the setting back to force people to type in a username. I take my laptop everywhere and it makes me feel better that if my laptop walks off the person will have to know my login name before he can do anything with it.

So, logging in: the login window shows a spinning progress bar now and stays open until a few seconds before the Dock appears. The Dock is now hidden by default. The battery, clock, volume, and Airport indicators are now in the menu bar and their Dockling counterparts are gone. I mean gone–not on my hard drive any more. A little disconcerting, but I can get over it. I open an application and am knocked back in my seat, it’s that fast. And they’re all fast. And that’s really cool. Mozilla is more stable now when compared with the same build running under 10.0.4.

What about that whole SOAP/XML-RPC thing? I go to Apple’s scripting site for OS X and download the Script Menu. Drag it to the menu bar to install it. Pull it down–there’s a few Internet services already there. Select “Temperature by Zip Code.” Type in my zip. Within about a second (over a dialup line) it tells me what the temperature is outside. Not a gee whiz demonstration, but it did it all using a Web service and SOAP. No browser had to be open.

Apple released the manual for programming this interface yesterday. I might have something to say about how it all works later this week. Right now I have to go watch a DVD. Which, by the way, I no longer have to reboot to do.


On a completely different note, mahna mahna! Also, Esta has some hilarious things to say about pickled squirrels today…

Getaway in Maine

Sorry about the cryptic message that was on the site over the weekend. I was trying to demonstrate the workings of this website to classmates of mine and I inadvertently flipped the homepage. I figured that, rather than leave it blank, I would put something up temporary and change it later. Shortly afterwards I hopped in a car and we drove to Maine. 🙂

Lisa and I were in Bar Harbor over the weekend. It’s a gorgeous little village on a small island off the mid-coast of Maine. We got there about 9:30 pm on Friday and all was dark, cold and windy. A pint of porter from the local brewery took some of the cold away and we enjoyed some excellent mussels and clam chowder.

In the morning, I was astonished to see how close the water was all around us. A quick breakfast followed by some driving and we were at the top of Cadillac Mountain, a huge outcropping of pink granite rock at the center of Acadia National Park in the center of the island. We walked around the top of the mountain and continued on the park loop road to the Sand Beach.

(A quick word about the history of the park: Bar Harbor used to be a home for the rich and famous. To prevent overdevelopment of the island, the residents, including some Rockefellers, donated the bulk of the eastern half of the island to the US government to create a national park. The park is encircled by a loop road, reminiscent of the Dingle Peninsula in Ireland.)

From Sand Beach we hiked about 1.5 mi south to Otter Point and were treated along the way to spectacular views of the water and the rocks. Returning to Sand Beach, we climbed more or less straight up a rock face to the headland protecting the beach. More spectacular views, some aching muscles. We headed back for dinner and some sleep in town. Sunday we had an excellent breakfast on the (somewhat heated) front porch of the 2 Cats restaurant and inn (featuring a note from Martha Stewart by the cash register!), and began the long drive back.

We made only one stop on the way home–the Apple Store in the Northshore Mall in Peabody, Massachusetts, where I picked up my copy of Mac OS X 10.1. I’m using it now and it’s spectacular. All the rock solid performance of the original version (maybe more so), great DVD playback, and fast. I’ll write some more notes about the new OS tomorrow. For now, I’ll just say: drive to your closest Apple Store or CompUSA or order your copy on the online store. You’ll thank yourself for doing it.