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.


Note

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.

Some smiles

Thank God the Onion is back. I’ve missed them the last two weeks. Highly recommended: U.S. Vows to Defeat Whoever It Is We’re At War With: “‘The United States is preparing to strike, directly and decisively, against you, whoever you are, just as soon as we have a rough idea of your identity and a reasonably decent estimate as to where your base is located.’ Added Bush: ‘That is, assuming you have a base.'”

Funky Mouse Jive


Another thing making me smile: my browser. For the last five months, my browser of choice has been Mozilla, the open source descendant of Netscape. There are lots of good reasons to use it: better standards support than Internet Explorer, never any threat of smart tags, open bug reporting, daily improvements. On my Mac OS X laptop it’s much faster than Internet Explorer too. But today it’s giving me two pretty revolutionary user interface functions: a tabbed browser window, allowing me to switch back and forth between multiple browser sessions in the same window, and mouse gesture navigation. Gesture navigation uses easily remembered mouse gestures to perform browser navigation, like drag left to go back in the history, drag up then down to reload the page, mouse up and then right to maximize the window… Less overall mouse movement than going to the toolbar. Pretty darn cool.

Where Everyone (Wants to) Know Your Name

A few months ago, I wrote about single sign-in and why AOL and Microsoft are both trying to be the Internet’s major providers of it. Yesterday, Sun announced they were jumping on the bandwagon with digital identity services. It’s surprising that it took Sun as long as it did to come to the party, given their ambitions as an Internet platform company. Why did they wait so long? What’s so important about single sign-on?

When I was a programmer, I used to hate one thing about debugging my application: Every time I wanted to run it to test my code fixes, I had to type in my user name and password. We couldn’t do anything nifty at that point like tying it to some automated central login — the military still didn’t fully trust NT security, and half our user base was running on Windows 95 or 98, which weren’t designed to be bulletproof when it came to authenticating users.

So I did what any self respecting developer would do when he got a loud complaint from his user (me): I hacked my local code base so that it automatically supplied my username and password when I ran. Single sign-in, for sure–I was the only one who could sign-in.

There’s definitely a user benefit to only having to log on once to access information, even when you’re talking about logging into your computer and only one other system. But what about the web? Every merchant, chat room, vendor site, newspaper, whatever site in existence wants you to sign in somewhere. I calculated the other day that it takes visits to four web sites to pay our monthly bills on line. One of those sites, our bank, consolidates information from at least ten other billing agents behind its “single sign-in.” By doing that consolidation, our bank has reduced the number of user name and passwords that I have to remember from fourteen to four. Do they have my business for a long time? You bet.

Microsoft has announced part of its business strategy behind the .NET initiative. While it will be working with service providers across the Internet to deliver tons of value to the end customer, it will be the customer, as value recipient, who will pay for the service. This is probably good, since it avoids all the known bad business models (advertising supported services, VC funded free software, etc.) that have caused so many dot-coms to implode. But how does Microsoft convince customers that paying for these services is worth it? I think single sign-in is one of the benefits they’re betting that customers will pay for. And I think Sun just woke up and realized that a business shift is occurring, and they are about to miss it.

Yankee Hotel Foxtrot

Listening to the new Wilco album, Yankee Hotel Foxtrot, in streaming audio from their website. It’s a very different album from the predecessors, but I like what I’m hearing. I don’t think their old label, Reprise, did, though–they’ve been dropped and are currently shopping for a new home. I’ll be looking forward to hearing them next week at the Avalon. I haven’t been hearing as much music as I did in Seattle (after all, I have to go to classes!) but I’m still getting out when I can.

Any guesses on the meaning of the album name? I still get a giggle from an interview with Jeff Tweedy where he revealed that the name of their previous album, “Summerteeth,” came from the fact that a lot of the members of the band had severe dental problems while recording the album. “You know the joke: I have summerteeth. Some are teeth and some aren’t.”

Still playing with the website. I think I’m going to turn the front page of the site into a proper news bits format, like Dave uses on scripting.com. Maybe then I’ll update more frequently. The nice thing about that format is it works much better for syndication than essays.

If you haven’t looked at what’s been keeping me busy lately, check out “e-MIT” and the “E-52s”. I’m looking forward to Thursday’s general e-MIT meeting and finding some people who want to continue the work I’ve been doing on the operational strategy and execution for the website. And we should be announcing a new E-52s lineup tonight.

What is Evil?

Is evil doing what hurts other people? Is evil doing what is a violation of all human rules? If so, no wrong can be done during war. But there are atrocities of war, right?

So what’s evil? Walt Whitman says that he is just as much evil as good, and that it is “just as important to you, to the land or to me, as any thing else.” What the hell does that mean? Except the insight that we can all be capable of evil.

Two sentences ago I said, “what the hell.” Let’s not get into hell. Except that about 6000 people saw what it looked like (or a close approximation of it, as close as you can get on Earth) on September 11.

According to Milton, the Serpent said that we shouldn’t be forbidden from the knowledge of good and evil: “Of good, how just? of evil, if what is evil / Be real, why not known, since easier shunnd?” Why shouldn’t we know what evil is, if it will help us avoid it? But what if it doesn’t?

Ask John Ashcroft (as reported on Slashdot), he’s seen evil and it’s computer crimes. Or that’s what the new Anti-Terrorism Act says: no statute of limitations on computer crimes, retroactive DNA database of hackers, and life in prison for computer intrusion. Harboring or providing advice would be terrorism as well.

What did I write the other day? I don’t want other people to blame. I don’t want “terrorism” to become such an overloaded word that those with the power can do anything they want….

The Rhetoric of Failure

This morning a verse to “Spirits in the Material World” by the Police kept running through my head:

Our so-called leaders speak
With words they try to jail ya
They subjugate the meek
But it’s the rhetoric of failure

I think it’s a response to last night’s speech from W. (Notice how he’s stopped being W. and started being President Bush to everyone?) Lisa expressed concern that we’re escalating to a state conflict with Afghanistan and the Taliban too quickly–that Bush left them no room to save face. The thing I worry about is this: Is giving an ultimatum to the Taliban ‘the rhetoric of failure’? There’s no way to hit the people who were directly responsible. Bringing “justice” to the Taliban is at best a distraction–bringing the real parties responsible to justice will be a much longer and less dramatic process.


A good page at the Urban Legends Reference, dedicated to helping you sort through truth and fiction in the aftermath of the disasters. One example–the thing about lighting candles outside so that “a satellite photo can be taken” is a hoax. But George W. Bush really did say, “I’m not gonna fire a $2 million missile at a $10 empty tent and hit a camel in the ass.”

And Jerry Falwell really did say

I really believe that the pagans, and the abortionists, and the feminists, and the gays and the lesbians who are actively trying to make that an alternative lifestyle, the ACLU, People For the American Way – all of them who have tried to secularize America – I point the finger in their face and say “you helped this happen.”

I need something to celebrate. I don’t need anyone else to blame.

For those who need a laugh

In these times of crisis, it’s useful to remember that though America’s heights have not always been dangerous, an unfortunate few of our population have suffered a disproportionate number of height-related accidents. I’m talking, of course, about our cows. It was only a few years ago that the University of Virginia’s Great Cow Prank was revealed to be the work of the president of the NASDAQ.

Anyone who was an investor in tech stocks over the last few years will be unsurprised to find that the head of the NASDAQ, America’s principal high-tech stock exchange, has a warped sense of humor. However, few tech stocks tanked as dramatically as the poor cow, who according to the article at A&S Online “died from a combination of complications including shock, dehydration and an overdose of tranquilizers administered to calm it during the rescue.” Much like some venture capitalists I’ve met.

And speaking of people needing a sense of humor: the much-discussed Clear Channel list of “songs not to play” on their hundreds of radio stations nationwide has done two things for me. First, it’s given me a head start on finding songs to arrange for the Sloan “E-52s”. Second, it’s given me another opportunity to plug KEXP, the Seattle noncommercial station whose playlists are second to none. If they’ll play Gastr Del Sol for me, they’ll play anything…

On a more serious note


Keep my sister in your thoughts today. On a good note, it’s her birthday (yay!). On a bad note, her dog had to be put to sleep yesterday.

Euripides in Boston

It was Lisa’s birthday yesterday. Night before last I was reading Greek tragedy–the “translation” of Alcestis made by Ted Hughes shortly before his death–and thinking about Lisa. No, not in the context of a Greek tragedy! I’ve got a couple of bad analogies here, so if that sort of thing causes you pain you might want to skip this and go read Bruno (not only is Chris a much better writer than I, but his work is illustrated).

No, I was thinking that I know a lot of people like Alcestis. Queen of Thessaly, she gave her life so that her husband, Admetos, could live (he was “doomed to die young.” Her husband in his grief showed hospitality to Heracles, and in response Heracles went, wrestled Hades, and brought Alcestis back to life. Typical deus ex machina ending, I suppose.

Except. Many of my classmates’ spouses, including Lisa, gave up comfortable lives elsewhere to make enormous sacrifices so that their significant others’ lives could improve. In Lisa’s case, she gave up friends, familiar surroundings, and two incomes in Washington, DC to come to an uncertain income in a city with a much higher cost of living. Whatever Heracles watches over those between employment saw to it that she got a lucrative job, one that has already sent her to Italy once. But that doesn’t lessen the enormity of her sacrifice.

It occurred to me that I’ve not said “thank you” to her publicly. So thank you, dear. I’m no Admetos, but you out-Alcestis Alcestis for me.

Continuing in the face of Death

Another Alcestis resonance for me this week was more obvious. How did Admetos have the strength, knowing that his wife gave her life to save his, to throw open the doors to welcome Heracles?

I think that all of us, as we struggle to continue with life “back to normal, but not business as usual,” have to figure out for ourselves how Admetos did it.

Coming or going?

Lisa (happy birthday, love!) and I have been doing a lot of walking around Boston the last couple of days. We both wanted to get out of the house and away from the TV after the last few days.

Saturday started with a walk from our home in the North End to Tealuxe on Newbury Street. We walked through Quincy Market, past Faneuil Hall, into and through Boston Common and the Public Garden, and past some very expensive shops on Newbury (including what Lisa says is an outpost of the best coffee store in Milan). All this before breakfast–maybe a little much, but it felt good to get out and do some walking.

Our normal breakfast at the Tealuxe in Harvard Square was a personal pot of tea and a scone for each of us. The Newbury St. Tealuxe actually serves food (albeit just sandwiches), so I varied it with an egg, cheese and bacon sandwich that had been pressed in a grill. We shared a pot of Golden Tippy Assam tea. I ended the meal with a cinnamon scone. Afterwards we walked to the Boston Public Library, just around the corner in Copley Square. It all seemed a bit over the top, maybe, but at the same time it was incredibly important–we were celebrating being together and being alive.

Saturday we also started seeing monarch butterflies. One dogged our steps returning to our apartment along Richmond Street. Sunday, we walked to school so I could pick up some readings for my classes, and we saw another one as we crossed the Longfellow Bridge. It fluttered along beside the bridge, careered across the traffic, and over the other side of the bridge. When we saw it, it was winging lazily across the Charles.

There were more of them. Practically every five minutes–on Massachusetts Ave, in the shadow of Calder’s Great Sail… I couldn’t decide, and it seemed very important at the time: had they been there all along and were just leaving? Or had they just arrived from another place, just when we most needed to see them?

The work goes on

If ever I needed a reminder that life does not stop with a tragedy, it was this week. I got the reminder in the form of my project for my Entrepreneurship Lab course. Our project plan is due today at 5. I’ll be offline most of the day as a result.

My work still feels trivial, though, in comparison to the work happening in New York and the Pentagon.

What Not to Do

Update: My sister, always more articulate than me, has written in ten lines what I avoided saying in everything below.


The article this morning in the New York Times reported that Arab Americans have been subjected to harassment and threats. Last night’s version for me was a little more graphic. As I left my apartment building to make a run for some needed groceries, I saw a young muscular man in his mid-twenties wearing a t-shirt, obviously homemade. The t-shirt said on the front, “Die Raghead Scum.”

In the corner store, I heard a soft spoken talk show host explaining that this wasn’t really America against terrorism but the civilized world against terrorism, because you didn’t know who would be next. I agreed with this assessment, but then he went on to say, “There’s a surprisingly small number of countries in the world that are civilized. Outside of the US and Canada, Europe and Japan, most of the rest of the world are barbarians.”

I expect to see xenophobia and racism in the next few weeks that will excel the worst excesses of the Gulf War. But against whom? In the absence of hard evidence, we strike out at those we fear because of differences.

And they’re not making it any easier for us. The reports of Palestinians in the West Bank firing their guns in the air after hearing what had happened is only one reminder that we are already deeper in ancient conflicts than most of us realize.

But if we’ve learned anything from history, it’s that an eye for an eye does not end anything. How can it? How can one loss of life ever repay another?

What To Do


Give blood. If, like me, you can’t because you pass out (shameful truth), give money to relief organizations.

At “MIT”, the Red Cross isn’t taking any more donors because their infrastructure can’t handle it. Don’t give up if you’re turned away–come back later in the week. The survivors are going to need a lot of help for a long time.