The Feast, it's Ruined — My Quest For Eggo Waffles

Updated: now with response.
I thought to myself this morning – I want an Eggo Waffle. You see, I have never had one, but have always been interested. There were some in the freezer that Robert had bought, removed from their packaging because of his space-saving ways.
Naturally I found the need to prepare an Eggo Waffle to the correct specifications as I wanted to make sure that I was having the correct Eggo experience (microwave, toast, pan fry, what?). To my surprise the feast was ruined (credit for the title), and breakfast was not magically delicious.
iPhoto-Thunderbird Bridge
For years, iPhoto users have been stuck using a limited number of email clients to send their photos easily. This was mostly remedied by the iPhoto Mailer Patcher, but it left out non-applescript aware applications because, after all, iPhoto uses applescript to interface with them. One of the more notable omissions is Thunderbird.
Finally, this void has also been filled, via the iPhoto Thunderbird Bridge. It’s still quite primitive, but all the basics are there for iPhoto-Thunderbird integration.
If you’re an iPhoto/Thunderbird user, give it a whirl.
Paper Is Bad Records gets a makeover
Paper Is Bad Records, Inc. was formed with no fanfare whatsoever back in 2005 by some of the people behind Tuesday Afternoon at China Wong Buffet as a venue for production and distribution of the resulting DVD. The DVD was a huge success and we all became rock stars. In our decadent complacency, we never got around to making a website for our one-hit-wonder.
Leaky NSSpeechSynthesizer
NSSpeechSynthesizer, the Cocoa class responsible for giving applications a voice under OS X, is leaky. Creating and destroying thousands of instances of this class slowly consumes all the available memory in a system, leading to degrading performance and eventual application instability.
The disappointing part is that this bug was first noticed almost two years ago.
Announcing: kineme.net
The Kineme Quartz Composer patches now have a proper home at http://kineme.net/, including forums, bug reports, comments, and feature requests – complete with voting!
Along with the new site, a few new patches are available as well based on requests from users.
NSURLConnection's sendSynchronousRequest enforces minimum 30 second timeout?
While writing the new Image Downloader (Blocking) QC patch for CoreMelt, I ran into what appears to be a bug in Mac OS X’s NSURLConnection framework – if you construct an NSURLRequest and specify a timeout of less than 30 seconds, it’s ignored when you perform a [NSURLConnection sendSynchronousRequest:returningResponse:error:]
. The request takes at least 30 seconds to time out, contrary to what the documentation suggests..
Steps to Reproduce:
Data Integrity: Resurrection
Faced with a need to recover images from Robert’s camera after a defective card-reader nuked the filesystem superblock, a quick utility came to mind. Nuked superblocks mean no file allocation table. It means no metadata. But it does not mean no data.
- Target medium: 1GB XD card from a digital camera.
- Data to recover: JPEGs. Lots of them.
Whipping out some jpeg-format-and-filesystem-jutsu, here’s the solution (for less than that $20 shareware recovery utility):
How to make Pop-Up Menus in Custom Quartz Composer Patches
Making pop-up menus in custom Quartz Composer patches is actually surprisingly easy.
Please see kineme.net for Leopard-specific informations.
- Set up a QCIndexPort input. QCIndexPorts provide values from 0 to whatever max you specify using
- (void)setMaxIndexValue:(unsigned int)max;
.
New Custom Quartz Composer Patch Xcode Template
Here’s a new version of the Xcode Template for Custom Quartz Composer Patches.
Changes:
- Rebuilt from scratch – no longer depends on QCJP’s work – and, by extension, the Creative Commons “Attribution-NonCommercial-ShareAlike” license. My Xcode Template, as of version 0.2, is released into the Public Domain. You are free to use it for whatever – commercial or non-commercial.
- QCJP’s headers were replaced with headers assembled directly from the QuartzComposer framework – now located in the QuartzComposer/ folder of the project. I’ve exported a few more headers than QCJP had constructed, so there’s some added functionality (namely, image input/output ports).
- The project now automatically assigns an icon to the patch bundle, and installs it in /Library/Graphics/Patches/ for you each time you build, for faster edit-build-test workflow.
Please see the latest version.
Download the installer, version 0.2.
See the old version’s blogpost for some additional instructions and user comments.
Steve Mokris is a developer at Kosada, Inc.