A program is a process, not a thing. This also applies to life, the universe, and everything.


Coming attractions

I'm slowly making progress on ZenPaint, a simple animation tool for kids. I started writing it using PyGame, but hit the wall in terms of display, having to redefine my own widgets, etc. So I've taken a couple of step back and now I'm working on it using PyObjC. I keep waffling back and forth on whether to use Interface Builder or not. I don't find Interface Builder very intuitive at all, but maybe I need to buckle down and get good at it. Knowing about nibtool helps--at least I can do text diffs and simple renames from the command-line.

One thing I would like to point out, the Apple NSDocument FAQ is one of the best bits of documentation I've ever seen out of Apple. So I'm mentally translating it into Python and trying to apply it to ZenPaint. As soon as I can load and save files reliably I'll post the program and code up here for comments.


Hearing Voices

Northern Voices, that is. The local blogging conference is tomorrow and I'll be there, along with my friend and co-worker, Michael. While I find the idea of a conference about blogging to be a bit odd, it's a good chance to meet some of the people in person who I only know from blogspace, like Ted and Julie, and a chance to catch up with Tim and Lauren, who I almost never see even though we live in the same town.

Should be a good time.


Why Macintosh?

I admit it, I'm a bit of a Mac bigot. What I'd like to talk about briefly is why. I've used Macintoshes since the very early days of the 512K Mac and enjoyed the experience mostly. I've also used DOS extensively, Windows since Windows 2.0, many flavors of unix and linux, BeOS, Commodores, and the venerable TRS-80. I've left out a few, for brevity. The only one which came close to being as day-to-day usable
for me as a Mac was BeOS, and that didn't work out because a) they never achieved good Java support (which used to be quite important to me), and b) they went out of business (although their DNA lives on in PalmOS, and their influence is quite active in both Linux and OS X). So I keep coming back to the Mac. At work I use Windows because I have to. At home I use a Mac because I enjoy it.

What is so different? Over the years Windows and Linux have become more Mac-like to the point where the differences are less grating. To some it is as if the differences have been erased, but that isn't so (on many levels--the programming experience is also quite different on different platforms). The same guys who sneered at the Mac in the old days because "real men use DOS and don't need pretty fonts or mice" now sneer at the Mac because "real men use Windows and can't live with one-button mice." I'm only exaggerating a little here, I've really had conversations along those lines.

Here's the deal: Computers aren't really ready yet. They haven't been made usable for real people and are only fit for extreme geeks with a lot of time to kill. The past decade or more has seen more backsliding than progress on this front. Of course, computers are cheap now, and can be made to do useful work if you are willing to try hard enough, and they're sexy toys, so everyone buys them and uses them. Some progress to make them more useful has happened (email and the web, mainly), but what progress has been made has been mostly in off-the-clock, non-authorized ways.

One of the very few companies to at least try to make computers more usable by normal people has been Apple. They don't always succeeed, but they consistently try, and they consistently do better than the rest. By a large and growing margin.

I'm happy to see Linux becoming more usable as a desktop computer. I use Linux and I recommend it for many situations. And frankly, I don't care much for Steve Jobs as a person and feel kind of dirty giving him free advertising like this. But when I focus my time, my development efforts, and my creativity, I want to focus on the best. And right now that's OS X. It just is.

For more along this lines, see Ian Bicking's response to JWZ's highly-linked rant against "groupware".


Slides Up

After much delay, my slides are finally up from the VanPyZ talk last week.

Using Python and Cocoa on OS X

Again I'm using Eric Meyer's S5 tool for HTML slides, but it still ends up being a large download because it includes a completely unneccesary quicktime movie. My daughter and I have been playing with iStopMotion and this was one of our first forays into claymation.

The reason it's in the slideshow, is that movie making is now completely accessible to an eight-year-old, and I want to writing games and other programs equally accessible to her.

Still a ways to go...


Is that a banana in your email or are you happy to see me?

I've gotten a couple of messages asking why there are strange attachments in my email which may or may not prompt you to open your security settings if you try to open them. Fear not, these are not viruses! Rather, it's the basis of email itself if we ever want to move beyond the ocean of spam we currently swim in.

First some background. When you send an email, by default there are three things which *do not* occur. The first is Authorization, i.e., there is no guarantee that the person you are sending the mail to is able to read it. The second is Encryption, which ensures that other people are not able to read it. The third is Authentication, proving that the mail which appears to be from me, actually is from me. None of these are present in normal email.

In fact, sending an email without these is like putting all of your standard (snail) mail on postcards, then having the postcards travel through the houses of random strangers until they (possibly) end up at their destination. Adding authentication, authorization, and encryption is like putting your email in an envelope.

So that is what the obscure attachment is in my email, it's a digital signature, which provides some form of authentication (better than nothing). I recieved this certificate from a company called Thawte, for free, and installed it in my primary email application, Mail.app. There are very good instructions for doing this at http://www.joar.com/certificates/. Once you have installed the certificate, signing your mail happens authomatically and transparently. The process of getting the certificate could be easier, but it's certainly not difficult.

The real benefit happens when more people start doing this. See, if I have received mail from someone who also uses digital signatures, then Mail.app remembers this, and when I respond it uses their signature and my signature in combination to get the rest of the picture: Authorization and Encryption. If we can get to the point where the standard is to put messages in an envelope instead of postcards, it makes much better tools for eliminating spam available--don't accept mail unless it is from a verifiable source. It's not perfect, but a big improvement over the situation we have today.

Big 40

I noticed over on Planet Python that David Brown (who I only know of from blogspace, as opposed to Dave Brown, who I know from meatspace), just turned 40. Congratulations, David! I turned 40 last Friday, so happy birthday to me as well.

As the geek joke tells us, don't worry, next year we'll be back in our primes.


No mirrors allowed

Just a reminder that tonight at 7:00 I'll be speaking at VanPyZ (Vancouver Python and Zope users group). I also had surgery today on my foot to remove a cyst, so I'll be presenting while sitting with my foot in the air. I hope that's not too distracting. The subject, of course, is how to use Python to make programming OS X easier. Hope to see you there!

This page is powered by Blogger. Isn't yours?