Sierra Sliders

Kathy Sierra, of the Creating Passionate Users blog, posted about using an equalizer metaphor for product planning and brainstorming. She included some images for her readers to play around with for their own equalizer-planning projects. I took those, apply the Gimp to them, mixed with Bob Ippolito’s uber-cool MochiKit, and release to you:

Sierra Sliders

You can label up to eight sliders using the text box, hit enter and tweak the sliders. When you have it the way you want it, you can bookmark the result and send it to your team members, or your mom. Tested in IE 6, Firefox 1.5, and Safari 2.0.2. Your mileage may vary. Void where prohibited by law. Some limitations may apply. Coded in a hurry™.

Interface Builder vs. Macromedia Flex Builder 2

I recently tried out the beta of Macromedia Flex Builder 2, and was quite impressed. I normally avoid Flash on principle, but it has some pretty powerful tools built in. It feels more limited than Apple’s Interface Builder, but it has one feature that I’ve been dying to see in IB: You can flip between visual drag-and-drop widget mode, and editing the layout as XML. Interface Builder so needs this ability. It would help for folks writing about developing for OS X (sometimes 100 words is better than half a dozen pictures, and trying to show CTRL-dragging in a still picture is an exercise in futility), and it would help when you come to a new project (or one you haven’t worked on in awhile) and want to get a feel for what methods and event handlers are hooked in to various widgets. Heck, it would help with automated tools, with testing, with grep. Just do it, Apple, or hire me to do it.

The other part that was interesting for me was that Flex Builder runs inside of Eclipse. It’s been a long time since I’ve tried Eclipse and I was pleasantly suprised. It was fairly snappy, not too confusing to find my way around in, and looked better than I remembered. Of course, I was running it on a dual 3GHz Windows box, so I might be disappointed once more if I ran it on my Powerbook, but my brief encounter with it didn’t suck, which was a big improvement.

Of course, neither of these developments are going to lure me away from Python and Vim any time soon.

PySight Preview

Awhile back I promised a bunch of posts, but delays were made (including a month of vacation travelling around BC which I won’t apologize for). One of the promised projects I was going to talk about was PySight, which ought to be simple, since it’s just a trivial wrapper around Tim Omernick’s CocoaSequenceGrabber (used with his permission). But I wanted to package it nicely, write more example code, maybe some documentation.

So instead of a polished project I have no project, and finishing it is pretty low on my priorities right now, sad to say.

Fortunately, Robbie Tingey came to the rescue and prompted me about it. I put a zip file together with Tim’s code to create a framework, his example program to use the framework, my simple wrapper, and my re-write of Tim’s example program in python using PyObjC to show how to use this. There’s a README, but not much else. I sent Robbie the URL and he tried it out successfully, so I thought I’d toss it out to the rest of the world. Caveat emptor, this is pre-alpha, no guarantees, no promises, but hey, it “Works for me™.”

So if you’re feeling adventurous, go ahead and try out PySight (74K Zip) and start grabbing data from your iSight camera from Python. Contributions to packaging it nicely, documenting it, or adding examples are gratefully accepted. Or, just bug me about it and I’ll see what I can do to move it up my priority list.

Python, meet iSight. iSight, meet Python. Play nice together now.

[Update: I forgot the link. Thanks, Marcia!]

The Sky is Falling

Is it just me, or has the world gone crazy?

First, Microsoft announces that the next version of Office will use XML file formats as the default. Now, Apple announces that (after all these years of denial) they are moving to Intel chips.

Vuja Dey (Vuja dey is the strange feeling you’ve never been here before).

Years ago I was in Boston for MacWorld and the BeOS developer’s conference when Jean-Louis unveiled BeOS running on Intel processors (because Steve Jobs wouldn’t give Be specs to the PowerPC Macs). Yesterday’s announcement felt a little like that (even a similar presentation, hmmm). Intel is very motivated to have something besides windows running on their chips–they loaned Be a couple of engineers for the port. Of course, BeOS started on IBM “Hobbit” CPUs, then the PowerPC BeBox, then the PowerPC Mac, then Intel, now PalmPilots. OS X started on Intel and wasn’t ported to PowerPC until Apple bought them, so it’s not as much of a stretch. Now if Microsoft started to build stuff on PowerPC, that would be crazy.

Oh, wait, never mind.

The thing that really gets me is that I have to wait another year before I can buy a PowerBook with good battery life which doesn’t sear my lap.

Happiness is a Warm Tiger

My copy of Mac OS 10.4 arrived Friday, right on schedule. I spent the weekend backing up my laptop, doing a clean install, and then restoring my data, which also fixed the problem I’ve been having where applications take a really long time to launch. No problems so far and performance is noticeably faster. You gotta love an OS where each update makes your existing hardware faster.

First impressions: Spotlight searching really is as fast as they claim, Dashboard is neat in a gee-whiz sort of way, but I’m not sure how much I’ll actually use it. The built-in dictionary and thesaurus are welcome additions. I’m sure with time I will come to use smart folders in both the Finder and Mail. But for me the real juice in this version is underneath the hood in the development tools.

I’ve had a few secret hopes for Tiger, for things which have not been announced, but might be slipped under the door. Three of them were: NSOutlineView gaining support for varying row height (to make it easier to write applications like OmniOutline), improved Cocoa support for QuickTime, and being able to round-trip Nibs to text format and back via nibtool. Well, two out of three ain’t bad. The NSOutline now supports row height via it’s delegate method heightOfRow:ofItem:, the QTKit framework provides excellent support for QuickTime media from Cocoa (and thus from PyObjC), but alas, nibs cannot be created from text input via nibtool (or any other tool that I’m aware of), although the nibtool man page does at least list this deficiency as a known bug.

But there is more good news in the Core Image, Core Audio, and Core Data frameworks. Core Image gives fast, powerful graphic processing and pipelining tools for both still images and video. Core Audio does the same for sound. And while Mac development in the Model-View-Controller (MVC) has been supported via Interface Builder (View), NSArrayController and NSObjectController (Controller), now with Core Data the Model portion is fully supported as well. Bill Bumgarner has a welcome example on his blog of how to use CoreData from Python.

But wait, there’s more! There’s an NSTreeController to go along with the NSArrayController and friends. There are hooks and documentation for many more of the Apple-supplied applications, including the new Sync Services. And PyObjC now has wrappers for Core Data, Automator, XGrid, and Sync Services. And that’s not to mention the improved WebKit, new features of NSTextView, and much more. It’s a great time to be a Mac developer, and being able to do all this from Python really ices the cake for me.

« Previous Page« Previous entries « Previous Page · Next Page » Next entries »Next Page »

google

google

asus