FastScripts Plugin For Google Quick Search Box

March 24th, 2010

I love to be surprised by what customers manage to do with my products, so I was thrilled when Martin Kühl wrote to tell me about his GitHub project that provides a FastScripts plugin for Google Quick Search Box.

If you’re not familiar with Google Quick Search Box, it’s basically a Quicksilver-style launcher, which can open all manner of documents and also do Google searches for whatever you’re typing, all at once. With the addition of Martin’s FastScripts plugin, it also magically gains the ability to directly run FastScripts scripts.

So if I bring up the quick search box and start typing the name of one of my scripts, it shows up instantly:

Significantly, this is more meaningful than simply knowing about where the scripts are located, and running them. Martin mentioned to me that he was taking advantage of my “API” for accessing and running the scripts. Huh? What? I don’t have an API, do I? Oh yes, but of course! AppleScript itself! Martin used the fact that FastScripts exposes AppleScript access to its library of scripts, and for executing those scripts in the context of FastScripts. So when you select and run a script from the GQSB, it runs exactly as it would if you selected it from the FastScripts menu itself.

A clever piece of work by Martin that takes unexpected advantage of these hooks I put into FastScripts. If you use both FastScripts and GQSB, you might want to check his project out!

Surfing In Antarctica

March 15th, 2010

I hate the iPad! I love the iPad!

I object to Apple’s sometimes farcical behavior when it comes to App Store policies, rejections, exceptions, etc. But my feelings are extremely mixed. I love the hell out of my iPhone, and I pre-ordered an iPad at 8:30 AM on Friday. I believe Apple has a morsel of magical quicksilver in its palm. As with the iPhone, I’m coming along for the ride, whether or not I like the way they are driving.

The iPhone and iPad are compelling enough, so why haven’t I released any significant apps yet?  I still have several apps under development, but none of them is ready for mass consumption. Mainly because my Mac software takes priority for my attention, but also because I want to make sure I understand how software on touch devices should work before I tackle the problem.

I attended Apple’s iPhone Developer Tech Talk in New York in December. During the reception, I had the privilege of speaking briefly with Apple’s UI design rock-star evangelist, John Geleynse. I got to talking with him about the iPhone and its significance in the world:

“I’ve lost 20 pounds in the last 4 months,” I blurted out. “I don’t think I could have done it without the iPhone.”

I had downloaded an app called Lose It, and thanks to the ubiquity of the iPhone, I was able to use this simple calorie-counting aid to change my eating habits for several months. I was eager to share how this little app had changed my life. I struggled to make my point:

“The iPhone has changed everything. Surfers love waves, right? And they want to surf everywhere. But if you’re a surfer and you want to surf in Antarctica, you’re screwed. But if you had the right wetsuit, you could surf anywhere. You could surf in Antarctica!”

Mr. Geleynse indulged the metaphor, but seemed to be waiting for the punch line.

“So, I lost all this weight, and it wouldn’t have happened without the iPhone. Before the iPhone and before this app, losing weight to me was like surfing in Antarctica: I had no equipment, and no chance of survival.  The iPhone gave me the equipment not only to survive, but to know that survival was possible.”

This is what Apple does well. While the rest of the world iterates on existing solutions to known problems, Apple discovers and solves problems we didn’t even know we had. I didn’t realize that the lack of a ubiquitous, hand-held computer was limiting my abilities. I didn’t know what had been impossible would become possible.

Skeptics of Apple’s innovation tend to be stuck in that mode of thinking which judges solutions only in terms of known problems. Imagine the poor inventor of the scuba suit, who upon first showing his contraption to peers, may have been met with flat rejection: “It doesn’t look very comfortable.” True, the scuba makes for terrible evening wear … unless you’re throwing a party at the bottom of the ocean!

If you’re not looking beyond the horizon, if you don’t care to expand the reach of civilization, or to solve impossible problems, then you don’t need a scuba suit.

If you are looking for adventure, suit up. Antarctica on a surfboard? April 3.

Always Be Marketing

February 25th, 2010

Dan Wood just posted an interview with me on the Mac Indie Marketing Blog. I love how interviews tease out thoughts that had never previously been fully gelled in my head.  Thanks for the thoughtful conversation, Dan.

Out of this experience came a new personal mantra: Always Be Marketing. This catch-phrase came to me as I tried to discover what it is that I actually do to market myself, my business, and my products. The answer fell somewhere between nothing specifically and everything specifically!

Another catch-phrase I bring up a lot when talking to other indie developers is Say Yes. This captures my belief that we developers are shy, scared, and would rather be programming than doing anything “out there in public.” So I often implore other developers to say yes to interviews, speaking engagements, etc., before your scared nerd-brain can take over and run screaming.

But Always Be Marketing sort of captures the same sentiment while driving the message home:

  • The local user group wants me to present, should I go?
    Always be marketing.
  • Another developer wants to co-market my product with theirs.
    Always be marketing.
  • What the … CNN wants me to be a talking head?!
    Always be marketing.
  • Should I really have a Twitter account and a Facebook account?
    Always be marketing.
  • I don’t have time to monitor searches, comments, feedback.
    Always be marketing.

OK, I’m running dangerously close to being a world-class prick if I really reduce my conversational skills to this kind of catch-phrase smack-down. But you can bet this is what my  internal dialogue is going to sound like from here on out.


Michael L. Jalkut – 1950-2010

February 3rd, 2010

Today I learned that my dad, Michael, has passed away while traveling in Washington, D.C. We were never the closest father & son pair, but I loved him, and he loved me. Over the years of my adulthood, and especially since my son Henry was born, I have been trying to work towards a closer relationship with him.

He taught me to love computers. When I was 5 and living alone with my Mom, he brought me a copy of a BASIC programming magazine, and a Timex Sinclair computer. He tried to talk through the logic of control flow with me. Of course, it flew over my head, but it taught me enough to know that my dad’s finger could move across the rules on a piece of paper, and the rules dictated where his finger would go.

A few years later he and my Mom got back together and we all moved back in together. He bought me a Commodore 64, and set me up with some fun games. I didn’t program anything, I was too busy playing Little League baseball and trying to be a normal kid. Sometimes he played catch with me. On Father’s day we would drive to San Francisco to see the Giants. He didn’t even like baseball, but he did a good job faking it for me. He bought me frozen Carnation malts.

My Dad had gone back to school in his 30’s to earn a computer science degree. When we moved back in with him, he was starting his late-blooming career at IBM, where he worked for a short time. He moved on to Digital Research and worked on GEM, a graphical windowing system not terribly unlike the Mac. Later he joined MetaWare, where he worked as a compiler engineer with the same group of people for almost 20 years.

When I was 17, a friend of mine got into legal trouble, and I could have snitched on him and made it worse. I asked my dad for help, so he took me to a lawyer and paid for it. He didn’t judge me for wanting to protect my friend. He made it possible for me to be a loyal friend, even to somebody who may not have earned my Dad’s respect.

After I graduated from college and left the house, the years seem to rush by like a blur. I did my thing in San Francisco, working at Apple, meeting my (now) wife, and going back to school for a second degree. Meanwhile, I saw my Dad a few times a year. We always expressed our love for each other, but there was a lingering anxiety and awkwardness. Our relationship had frozen somewhat in the form we had left it in my teens: each of us struggling to come to terms with our significantly differing political and metaphysical beliefs. After my wife and I moved to Boston in 2005, I saw even less of my family, sometimes only once or twice a year.

He always expressed great pride about the career path I followed. He was impressed that I had graduated from University, found a great job at Apple, and then founded my own business, all after dropping out of high school (against his wishes!). He let me know so often of his pride, that he gave me the gift of never having to worry particularly that I might have disappointed him. I think this helped me to pursue my dreams more freely than ever.

His satisfaction with my career turned him slowly but surely from an Apple-hater into one of its biggest fans. A few years ago he lost his long-time job as a compiler engineer, and reoriented himself towards the Mac, starting a business of his own, and feeling his way towards a niche. He became certified in all manner of OS X support technician programs, and even decided to attend WWDC a couple years ago. Some of you will probably remember having met him there.

His business never really took off, and a sequence of unfortunate events handed him some serious blows. Life didn’t hand him a perfect hand, but he managed to leave some beauty here with us, and I am grateful for that. I would have loved to have seen what would have become of the rest of his life, and how my own young family would have fit into it.

The circumstances of his death are sad, and personal. We barely spoke over the past year, but I had a good conversation with him at my Grandmother’s funeral in November. Suffice to say, he died too young. I miss you, Dad.