From time to time, I get these insatiable urges to read what other Cocoa developers blog about. Sometimes they’re informative, sometimes they’re funny, sometimes they read like college textbooks, and sometimes they’re just downright terrible, but I read them anyway. It comes and goes in waves, every 2 or 3 months. A couple weeks ago, one such binge happened, and I started reading Aaron Hillegass’ critique of NSController (since I was hating it at the time, and wanted to feel justified in hating it). In the critique, the following statement was made: (more…)
Apple has been busily working to 64-bit-ify all of the frameworks they plan to continue supporting into the future (Snow Leopard and beyond). However, QuickTime is scheduled for some nice Cocoaification, so it didn’t get much 64-bit love. QTKit, the 64-bit impostor, pretends to be the 64-bit way forward, but unfortunately this is far from useful.
QuickTime is all C function stuff, rather verbose and boring. It’s also 32-bit only. The 64-bit front end on it is a framework called QTKit. However, 64-bit QTKit is little more than an impostor that secretly makes things messier during the 32-to-64-bit transition. (more…)
Cocoa’s NSSound provides a blindingly simple way to play back audio asynchronously, and even provides some metadata and control over how the audio is played back.
It uses the default sound device, by default. It gives you the ability to change the output device.
According to the documentation:
- (void)setPlaybackDeviceIdentifier:(NSString *)playbackDeviceIdentifier
Specifies the receiver’s output device.
playbackDeviceIdentifier
Unique identifier of a sound output device.
That’s it. What is the “Unique identifier of a sound output device”? What format is this “Unique identifier”? How do I get a list of the “Unique identifiers” of the available output devices on my system? (more…)
Remember how in 2004 everyone was so freaked out about the terrific hackability of both the hardware and software of Diebold and other electronic voting machines? Well, the fuss has sort of died down about that. (Not that there was any reason for it to — there are no reports that the problems with the machines were ever adequately addressed.) And anyway, what vigilante dictator has the time or inclination to mess around with all that techno-crap involved in hacking a voting machine? Key-cutting takes all of 2-5 minutes per key, and firmware hacking involves learning boring things, like what firmware is. It’s enough to get a would-be crooked election worker or stealth saboteur to give up and go back to throwing Molotov cocktails at Planned Parenthood staff.
But don’t give up yet, all you burgeoning totalitarians out there! For here I shall reveal a much simpler (albeit slightly less efficient) method of voting fraud. Here is what I learned in my absentee-ballot-casting experience. Oh yeah, and dear internets: please use this for good and not evil. And also don’t use it at all. (more…)
Lately I’ve been working on integrating (or, more accurately, attempting to integrate) the Python scripting language into some plugins for an application we develop plugins for. We’ve wrapped many libraries with varying levels of success, so this one wasn’t going to be much different. Or, so we thought. (more…)
Last summer Kosada purchased a MacBook Pro for the president of Yon Reptile Campaign. It’s been a great improvement over the old Dell laptop he was formerly using, and, though he was initially worried about whether he’d be able to grasp the new UI, he seems to have picked it up quickly, and he reports that he’s been loving it.
But this morning he called me with a rather odd problem:
(more…)“I hooked up my Treo and started syncing it, then walked away for a few minutes. When I returned, the screen was covered with a bunch of squares, and I can’t do anything.”
RSS