Let’s not forget the little guys

Daniel Jalkut made a post yesterday rightfully thanking and praising the Apple employees whose sacrifice and hard work went into making Leopard a great upgrade. And while those employees certainly deserve the lion’s share of the credit, let’s not overlook the contributions of everyone that took the time test and provide much needed feedback to Apple during the course for Leopard development. Especially indy developers like Daniel, Gus, Tom, Chris, and so many others.

Reporting bugs, at least when done correctly, isn’t just pasting a stack crawl into some report with the description “I think I was checking email or something and this happened”. Good bug reports require detailed descriptions, regression testing, and often times, a test case demonstrating the problem. A little bribery may come in handy as well. Doing all this takes time and unlike the folks that fix these bugs, the reporters don’t get a dime for their efforts, at least not directly.

So to everyone out there that took the time to provide your feedback to Apple during Leopard’s development, thank you so much for your contributions to our beloved little operating system.

Continue reading

Are you smarter than a 5th grader

I know that Leopard day is upon us and I should be all a flutter about the Apple’s new cat, but everyone is already getting good and sick of hearing about that I expect.

No, tonight I write to share with you my experiences with fifth grade math homework. My daughter, who just happens to be in the fifth grade, brought home some math homework last night which I checked, as I’m sometimes called to do. Now I’m pretty good at math, not great, but I think I can handle fifth grade math. That is until I ran across this question:

Your friend Tamyra is buying a good-bye card for the coach. She bought a card and then returned it, got her money back, and bought a card for $1.50 less. She ended up with $.75 change in her pocket. What was the price of the first card?

It took quite some time before I realized that I was not losing my mind and came to the correct conclusion. My wife was a bit more skeptical, and so she called several friends and relations to see if they could solve the problem. None of them could. Can you?

Have you figured it out yet?

There are three possible answers:

A – The question is nonsense.
B – The card shop has a $.75 restocking fee.
C – Somebody screwed Tamyra out of $.75 in change.

Poor Tamyra.

Next comes the happy ending.

My wife was able to talk to my daughter’s teacher about the problem and found out that the answer is $2.25 according to the key. She gave my wife a bit of good natured ribbing to go along with it, asking if she was smarter than a fifth grader. That is until she read the question herself. To her credit, she didn’t simply give the kids credit for that one if they got it wrong. Well, she did, but she also decided to have a discussion with the class and let them figure out what was wrong with the question and how it needed to be changed so it matched the answer in the key. During the discussion they were able to figure out that the word “less” needed to be removed from the question to make the answer correct.

Proxi v1.5

Updating my software makes me so nervous.

Today I posted an update to Proxi. This release could almost be called version 2 given the user interface changes, but I’m calling it version 1.5. Here’s a list of the changes:

  • Changes to make Proxi a better Mac OS citizen such as:
    • UI changes which fit better with established conventions especially in Leopard.
    • Moved ProxiLib.framework into the application itself.
    • Moved ProxiCore.bundle and skype.bundle into the application itself.
  • Added Application Monitor trigger.
  • Reduced startup time and memory usage.
  • Added an alert to the Key Press task when selecting a “Press” style stroke.
  • Added icons to trigger and task menus.
  • Added “game mode” to PowerMate trigger
  • PowerMate trigger icons now indicate type of trigger
  • Added editing commands to trigger and task menus
  • Added Duplicate function for triggers and tasks
  • Skype should no longer ask permission to allow Proxi to work with it on every launch.
  • Added ability to set Skype mood in Skype task
  • Bubble text color now defaults to black.
  • Fixed a problem where unknown components in a blueprint could cause data loss.
  • Other minor changes and fixes.

If you’ve not heard of Proxi, I could describe it, but I’ve always had trouble summarizing Proxi in a few sentences. Happily Proxi is mentioned in a new book by Rick Ralston called The Designer’s Apprentice: Automating Photoshop, Illustrator, and InDesign in Adobe Creative Suite 3. Rick provides a great description:

Proxi resembles Automator in both interface and function; however, it differs in two important respects: It includes an automated trigger system that Automator lacks, and it’s geared to system and application events (while Automator is focused more on file processing). With Proxi, you build a set of tasks (like Automator’s workflow) called a Blueprint and assign a trigger to it. Triggers can be time- or event-based and included filters to included or exclude conditions when the trigger fires.

You can grab version 1.5 here.

What Shipley said

I was totally going to write the exact same thing except with less coherency, and fewer oblique references to my financial well being (or lack thereof), but Wil Shipley beat me to it. You see, I was busy catching up on my feeds in NetNewsWire and watching people do silly things on YouTube.

In a nutshell Apple has me (and Shipley) a little worried. Shipley explains.

Which reminds me. I had one other (crazy?) theory recently regarding the iPhone and relative ease with which it was hacked. In this past Apple hasn’t shown much remorse when it comes to “borrowing” ideas developed by third parties and incorporating them into the Mac operating system, no? Everyone remembers Watson, Konfabulator, etc. At least they had the decency to buy CoverFlow. While Apple isn’t encouraging iPhone development (unless it’s web based), they haven’t yet made a concerted effort to put a stop to it. Perhaps Apple is watching closely to see what proves popular so they can incorporate it into the next release of the iPhone / iPod Touch without worry of guilt, compensation, or acknowledgement. Probably far fetched. Not the bit about Apple stealing any good ideas that might come from the iPhone development community. No that’s not far fetched at all. But surely this isn’t part of some master plan… or is it? [Cue: dramatic chipmunk]

G15 Mac OS X Demo

G15 - Album Art
G15 showing currently playing iTunes info

Every now and again, I’ll get an email from someone that has seen this picture on flickr and they are looking for more information on how to write their own code or just curious how what’s being used to drive the keyboard, etc. In the past I’ve answered each person individually, but it probably makes more sense to write it up once here where Google, and hence everyone else, can find it.

The software being used in the picture is an experimental plugin for Proxi. It works pretty much like any other message task (Screen Message, Bubble, etc), so you can push information to it using any Proxi trigger. I decided not to include it in the main release because I didn’t think it was that good, and because I figured there were only a handful of Mac users with Logitech G15‘s. Perhaps there are more than I originally suspected?

So Proxi is one way to use the G15 with a Mac, but if that doesn’t do it it for you, maybe some code will. I pieced together an application that demonstrates how to write to the display and also how to read the 5 buttons immediately below the display. I’m using this to clear and navigate the display and they are, from left to right, clear display, home, scroll up, scroll down, and end. The demo app mirrors the whatever the tiny NSTextView is showing in the G15 display. The demo seems to work well enough, but it was cobbled together pretty quickly so if there are any problems with it just let me know. Also please let me know if this was helpful to you, maybe I’ll put more stuff like this up in the future.

Grab the code here: G15 Demo w/source