Hi, I'm Sam.

I like to create software, make music, and write about technology.

Find out more about me.

#mac Posts

Twitter from Quicksilver

Posted in mac, quicksilver, and twitter

So I am a huge Quicksilver fan! I use it constantly. You can do so much with it. Since I love keyboard shortcuts so much, so it's probably one of my favorite apps. It is the first thing I download and install when I get a new Mac.

Anyway, there is this thing called Twitter that is pretty cool. I use it a lot. I was thinking about something and remembered seeing a little action someone had written to twitter from Quicksilver. I thought I'd download it and try it out.

I must say, it's pretty cool. I still enjoy using my favorite client, TweetDeck more, but for posting something quick, it's kinda cool to use Quicksilver. I found this script that enables Tweet as an action in Quicksilver. I thought It would be neat to add Growl support to it (as it takes several seconds for it to actually work).

Here is my version: Tweet.scpt

To install it, just download that file and put it in ~/Library/Application Support/Quicksilver/Actions/. Now restart Quicksilver (bring it up and type command-control-Q) and you're golden. Just hit period to enter text editing mode, type your tweet, hit tab, start typing tweet, hit enter, and you've twittered! For the detailed instructions, see the original script's page.

You might also want to check out this neat script for Quicksilver that will twitter you currently playing iTunes track. I thought I was kinda cool.

Why A Mac App Store Would Suck

Posted in iphone, mac, and observation

So recently TUAW did a story about how cool a Mac App Store would be. On the surface, this sounds like a great idea. As a developer, this is the last thing I would want.

There are some pros. Easily allowing anyone with a Mac to be able to search for my apps easily would be awesome. Also, having the ability to update apps automatically is really great too. Probably the best pro for me would be Apple handling taking money with all of the weird currencies. (I hate dealing with money.)

All of that is great, but for an app to be in Apple's App Store, they are going to want to review it and put it through some sort of approval process. For any apps doing unusual stuff or stuff that Apple doesn't really want you doing for whatever reason, won't make it in the store. The developers that have apps that can't get in the App Store would be screwed. People would probably be scared to get non App Store apps.

If Apple let any apps into their App Store, then I would be all for this, but that would never happen. If they did let any app in, the whole thing would get full of crap too.

On the iPhone App Store, if you use any private APIs, you will get banned right away. Everyone's favorite Mac App, Quicksilver uses a lot of private APIs and probably wouldn't be allowed. Firefox and Adium would probably not be allowed either because they duplicate functionality that ships with the OS.

Bottom line: if there is an approval process, I am 100% against a Mac App Store.

Old People and the Other Side

Posted in design, iphone, mac, observation, and ui

Watching different people use software is fascinating to me. My mind works a lot differently than Average-Joe's does when it comes to using software so seeing how people interact with software is really intriguing to me.

The Post Office Lady

I was just at the post office and this old lady in front of me was trying to buy a shipping label for her package. This is a very easy thing to do. There are lots of instructions, big buttons, and even instructional videos to help you if you want.

After two tries she gave up and went to go stand in the super long line to get someone to help her. (Why are the lines always stupid long in post offices? It was 2:30 in the afternoon. Why is there a line?)

She put her card into the machine when she started and then pulled it out when it told her to swipe it. It gave her a message saying please swipe it again, but I guess she thought that she had to start over and left. The other time, the machine wanted her to input the dimensions of her package and she couldn't figure out that there was a third dimension (height) to her package even thought the instructions were quite clear on the screen (there was even a picture of the box with arrows).

Why?

My guess as to why she had such problems with the system are that she has a preconceived idea of how the machine worked and when it didn't work the way she expected she figured it was broken or she wasn't smart enough to use it. That, or she just didn't understand the instructions for whatever reason, although they were very straight forward.

It is interesting to me that no matter how well you design software to be useable, some people will not be able to use it. As a developer, I don't know what to do to solve this problem. I want everyone to be able to use my software. Granted, no old people are going to use Countdown Maker, but regardless, I want them to be super easy to use.

The Other Side

The other side of all of this is OmniFocus. OmniFocus is unlike any other app I've used. The table view in it is completely custom and doesn't behave like I'd expect, they don't use any real world metaphors for their UI, and if you didn't understand GTD principals, you would be 100% confused (as I was).

The only way I was able to use this app was to watch their screen casts. After watching their screen casts, I know exactly how to use the app and I felt like a pro. This was very interesting to me as a developer. They threw out almost everything and started over. They wanted you to forget how to use software and do it their way.

I don't this this is the solution by any means, but it was very interesting to me. (I use The Hit List anyway. It's pretty.)

Now what?

Well I intend to keep making software so the old lady can use it, or at least try. If she really wanted to get her package shipped, I think she could have done it. Everything she need was spelled out for her. If I am making a pro app (think Photoshop or Final Cut) then I would go more the other side approach. I want to optimize the software for people that know how to use it instead of teaching people to use it.

I think the sweet spot is finding a balance of these two. Make the stuff people wouldn't understand more out of the way and make everything on the surface feel easy so the user can choose which path to take.