May 2002

Why Worf?

Why did we send Rumsfeld instead of Powell to Pakistan and India? Rumsfeld is not a diplomat. Powell is. It’s like sending Worf instead of Picard.

My theory: Rumsfeld is letting those guys know that if they prepare their nuclear missiles for launch the U.S. military will take those missiles out.

Free Agent Nation

I recently read the book Free Agent Nation (which has a website). It’s about people like me: free agents, consultants, writers, independent developers, home office folks.

If you’re a free agent or thinking about becoming one I recommend this book to you. It was fun to read—inspiring, even. And it opened my eyes to the shape and implications of the free agency trend.

Blogoscope 1.0b2

Remember last week’s release of WeblogWatcher? It’s a desktop interface for Weblogs.com.

As just a straight mirror of the content on Weblogs.com it wasn’t very useful—but now I’ve added filters. Weblogs which match one or more filters are not shown in the main window.

I’ve also changed the name to Blogoscope. You can download it.

Here’s the filters window. (Choose Preferences... from the Blogoscope menu.)

Blogoscope filters

You can see that I’m using filters to not show Radio categories websites. (Radio’s categories feature is very cool, it’s just that I find their being listed on Weblogs.com redundant.)

Here’s the Blogoscope main window:

Blogoscope main window

The beta is free. The final version will be free. The source will be released under the open source BSD license once it’s a bit further along.

More features to come. (And an application icon.) Feedback, bug reports, and feature requests are welcome. There are no known stability issues at this time.

Hot Pages

I’ve been flying blind with my websites—I had referers and user-agents stats pages, but no stats page showing which pages are most popular. So yesterday I set that up. Here for instance is the hot pages page for ranchero.com.

It’s interesting that RSS feeds occupy the top two positions.

Huevos goes one-point-oh

Huevos is now one-point-oh. Changes since the last release are cosmetic—the most important is that the search window is a little smaller so it fits more easily into a corner of your desktop.

Huevos is open source (BSD license) and the source is available as a separate download.

Vowels

The hardest thing for me in learning French is hearing and understanding it. It’s easier to read, and somewhat easier to speak, than it has been for me to understand spoken French.

I kept thinking that the language is not precise. And then my teacher told us something that helped me turn the corner: listen to the vowels, she said. The vowels are all-important.

I had been listening to the consonants and listening for stressed syllables—as if French were English. It never occurred to me that vowels could be more important.

And then a strange thing happened—I started to hear English somewhat as French speakers must hear it. With my new-found French ears (sort of) English sounded weird, a language spoken by people with mouths full of marshmallows. Suddenly it was English that sounded imprecise, more like a low-pitched humming than a language. Like the adults in the old Charlie Brown TV cartoons. Mwa mwa mwa.

First Impressions of Conversant 1.0b2

I checked out Conversant today—here are my first impressions.

Brain language

If you could read minds, would language matter? In other words, could a Spanish person who reads minds read the mind of a Russian?

What I mean is, I wonder if our thoughts are made of the language we speak, or if there’s a universal brain-language we all use. Or maybe there’s a brain language but it’s individual. I can’t seem to catch any one thought long enough to look at it; it turns into language when I look at it.

Cats understand French

Since I was a boy I’ve believed that cats secretly understand French. One cat we had was even born on Bastille Day. Sometimes we called him Jean-Claude Kitty.

On Thursday nights when I come home from French class, with French still ringing in my head, I talk to my kitten Papa. Bon soir, Papa! Ca va? Ca va bien? Oui? Oui, j’aime Papa.

I say, qu’est-ce que on dit, Papa? And he says, miaoooow!

Thursday Bonus Beta

Thursday bonus beta app: WeblogWatcher.

There aren’t any crashing bugs I know of, but there are some more features I want to implement—filters and favorites, sorting, Help book, etc. It’s so totally beta it doesn’t even have a web page yet.

It reads the changes XML file from Weblogs.com, so you can see which weblogs have updated recently.

It needs an app icon—if anyone feels inspired to make one, that would be totally cool. I’ll give you credit in the About box and on the web page (when there is one).

WeblogWatcher is and will be free. I’ll release the code under the open source BSD license once it’s a little further along.

Screen shot:

The Hidden World of Unix

Idea for an app: The Hidden World of Unix. (A shorter name would be good, of course.)

It would be an exploration and learning tool. A browser like the Finder’s column view. The root objects would be directories—such as /bin, /usr/bin, and /usr/sbin—where lots of Unix tools live.

When you click on a tool then in the right-most column is displayed the results of whatis and the man page for that tool.

The idea is it would be a way for people to explore and learn about the various command-line tools installed on their system.

It’s unlikely I’ll do this, so if anyone else wants to—go for it.

Sarcastic Remarks

Idea for a website: SarcasticRemarks.com. Every time you refresh the home page it would display a different sarcastic remark, as in: “Thanks for your on-topic and concise feedback. It really helped me turn the corner on this project.” And: “I’m in such awe of our president’s gargantuan intellect.” And: “Oh yeah, you’re the coolest. I totally get off on your website.”

Of course readers should have a way of submitting new sarcastic remarks, which the editor could then approve (or not) for appearing on the home page.

Idea for a website

If you’re a developer starting a new project it can be hard to know if you have a good idea or not. I had an idea for a website that would be a cross between Slashdot and AmIHotOrNot: OSXIdeas.com. People could post ideas for OS X software, and people could rate the ideas and discuss them.

Developers could then get feedback on their ideas before investing in them. Non-developers could post ideas for software they’d like to have and see if any developers go for it.

I probably won’t do this website—but if somebody else does, that would be cool. (I’d be willing to help, but I don’t have time to build it and run it all myself.)

Conversant

Major congratulations and best wishes go to Seth Dillingham and everybody at Macrobyte Resources for releasing Conversant, their Internet groupware platform that runs in Frontier and Radio UserLand. Good job, folks.

MacNewsWire on VersionTracker

Like MacNewsWire? Don’t like it? You can post a review on VersionTracker.

MacNewsWire 1.0b6

MacNewsWire 1.0b6 is a freeware desktop interface (a Cocoa app) for the Macintosh News Aggregator.

Screen shots: reading the latest news; running a search.

Cocoa mailing lists search engine

One of the most useful resources for Cocoa developers is the search engine at cocoa.mamasam.com. With one query you can search both the archives for Apple’s Cocoa-Dev list and Omni Group’s MacOSX-Dev list.

Things

Here are some things that have happened, been found, been invented, been created, become popular etc. since my birth in Q1 1968:

Moon landings
assassinations of Martin Luther King, Jr. and Robert Kennedy
Kent State
Apollo-Soyuz linkup
end of the Vietnam war
Iran hostage situation
end of the Soviet Union
fall of the Berlin Wall
VCRs
the World Wide Web
finding of the Titanic
Tivo
personal computers
mapping of the human genome
CDs
cell phones
Star Wars
Space Shuttle
Watergate and Nixon’s resignation
digital cameras
Clinton’s impeachment
Gulf War
War on Terror
Mini-wars in Panama, Grenada, Libya, Yugoslavia
disco
crack cocaine
microwave ovens
LCD screens
calculators
digital watches
Unix
punk rock
DVDs
email
Internet
household recycling (we used to just put everything in the trash)
HBO
CNN
QVC
satellite television
Seattle Mariners
Microsoft
Apple
video games
Starbucks
Indiana Jones
All Star Trek (except the first season or so)
SkyLab
Vietnam War Memorial
pictures of atoms (my school textbooks used to say that no atoms had ever been seen)
Columbine
rise and fall of the Japanese economy
OPEC-induced oil shortages and gas rationing
the euro and European unification
Falklands Islands War
the fall of Ferdinand Marcos
Pope John Paul II
legalized gambling in Atlantic City
Hank Aaron’s record breaking home run
Ali v. Frazier, Ali v. Foreman, Ali v. Spinks, etc.
McGwire’s record breaking home run
Nadia Comaneci’s perfect tens
mass popularization of running shoes
pet rocks

QFC Disadvantage

For years Sheila and I have been regular customers of QFC, a regional grocery store chain.

Last week they lost our business.

We made our weekly trip to the store and discovered they had a new thing, the Advantage Card. You need to have one in order to get sale prices.

If you don’t have one then you pay full price.

And of course if you have a card then QFC can track all your purchases.

So what’s the advantage? It should be called the Disadvantage Card.

I’m sure QFC thinks it’s an advantage to them—but I have to think that losing good customers is not really advantageous.

Aside from the sheer fact of this stupid card and the privacy issues is the highly insulting marketing. They market it as if it’s something new and cool that I should really, really want. As if I’m too stupid to see what’s really going on here.

Well, it’s not something I want. I liked the previous system, where things that were on sale were on sale for everyone, and they didn’t know me from Adam, and they couldn’t track what I buy.

So we’re going to another grocery store now.

Here’s Cathy Hatcher from the Seattle P-I on this topic: I won't be a card-carrying columnist.

Open Source Icons

There’s lots of free code out there—lots of code that you can learn from or contribute to or adapt for your own apps. It’s totally cool. I myself have even released some.

Maybe I’m thick, but what I can’t find is open source icons. These days OS X apps are supposed to have toolbars when appropriate—but there’s no source of standard and freely usable icons for commands like cut, copy, paste, refresh, view in browser, and so on.

Not every small developer has an art department or can afford to hire someone to do icons.

I propose, to all the icon makers out there, a website for open source icons. Any Mac developer could use the icons in their software as long as they give credit (with a URL) to the person who made the icons.

I’d be happy to do the site programming. I’d be happy to host it. I just need to hear from some actual icon designers that would like to participate. Whaddaya say?

Update 3:10 p.m.: Scripting News asked, “Why only Mac developers?” Answer: not necessarily only Mac developers. It’s just that I can verify and test Mac icons far more easily. But it would be cool to have Windows and Linux icons too.

App Icon Help Wanted

Help! I’m having a very hard time coming up with a cool application icon for an app I’m working on.

This app—a Cocoa app—will be free, and I think there’s a pretty good chance it will get on lots of desktops.

If you’d like to create an app icon, send me email and I’ll tell you a bit more about the app confidentially.

I can’t offer much—except the sincere thanks of a grateful Cocoa developer and, of course, credit in the About box, help pages, and on the website. (Your name plus a link to a URL of your choice.)

Best viewed with Lynx

Addendum to the below on supporting older browsers—this site looks good in Lynx. It works, it’s readable, it’s usable.

It’s not that Lynx is so important. It barely registers on my user-agents page. But it is an indicator.

There’s an A-B-A structure going on here. The earliest websites—before tables and font tags and all that complicated stuff—worked well in Lynx. The HTML was simple and structural.

Then we got all that complicated stuff, and websites started looking like hell in Lynx. (Many still do.)

And now we’re returning to simple HTML, not unlike the HTML of 1994. More structural markup, less of that complex and weird junk. Layout is done through style sheets.

Sites designed that way look good in Lynx. You don’t even have to try. I didn’t go out of my way to make this site work in Lynx.

I’ve even thought about adding a best-viewed-with-Lynx button. But Lynx users wouldn’t be able to see it.

Where do you stop supporting old browsers?

I agree with Brent Ashley on not supporting older browsers, particularly Netscape 4.x.

I propose a new rule: if you’re using standard-compliant HTML, and it doesn’t work with a given browser released last century, then you don’t have to care—unless the person paying you tells you you have to care.

Pressure

When I was a boy there was tremendous pressure not to succeed in school.

No, that’s not quite right. Success was good—good grades were prized—as long as you didn’t try to get good grades by working hard and being smart.

The A-list kids—the charming boys, the pretty girls, from the nicer homes—they were always on the honor roll, and they got there by habitually and openly cheating.

They got their homework and their test answers, often right under the teacher’s nose, from the few eggheads in class. I was one of those. I wanted to be liked, so I gave them the answers.

Until I realized that I would never be liked more than someone likes their prize dog.

And I realized it was a terrible system. The teachers wanted to be liked by these kids just as much as I did. Nobody ever got in trouble for cheating, or at least none of these kids did.

I quit helping them in the sixth grade, but I noticed these same kids kept on cheating all the way through high school. With no consequences. They got into good schools.

I don’t know what happened to them in college, since I moved across the country, but I bet they did well.

I hope this system has changed by now. I hope it was just the schools I went to where this was going on. But I have doubts.

To this day I have to work hard to remember that I don’t need to throttle back. No one’s going to make fun of me for being an egghead. Or, if they are, then screw them, I don’t care about them.

I wonder how many other smart people throttle back, keep their smarts in semi-seclusion, as a left-over habit from childhood. It’s a bad habit. You just have to keep reminding yourself you’re not a kid anymore.

On the other hand, I’ve also known eggheads who use their smarts to intimidate and belittle other people. I think it comes from the same place; it’s the defense mechanism of a snarling dog. Well, that’s not cool. Snobbery is the sickness.

Trans

The word (or prefix) trans interests me for its exotic flavor. Some words or phrases:

transportation
Trans Am
transvestite
Transylvania
transcendence
transmission

My favorite, for its sound of mystery and mythology: trans-uranic elements.

Programming Books

I sometimes get email asking me about how I learned to be a Mac developer. Here’s a list of books that have been most important to me.

Learn C on the Macintosh by Dave Mark taught me how to program in C. Knowing C, even in this age of Java and Objective-C, is important. It’s the basis for everything else.

The C Programming Language by Kernighan and Ritchie is the essential reference. Years after initially learning C I still refer to it.

Writing Solid Code by Steve Maguire is about the philosophy and practices of development. It teaches, and even inspires, one to be rigorous and thorough.

Ultimate Mac Programming by Dave Mark appears to be out of print. This book taught me the Apple event manager. If you’re interested in Apple events, and can find this book, buy it.

Cocoa Programming for Mac OS X by Aaron Hillegass is an excellent introduction to Cocoa. I went from not really getting Cocoa to building my own apps before I was even half-way through the book.

Untie!

Whenever Mayday comes around, I think of Marx writing: “Workers of the world, unite!”

But then I can’t help thinking: “Dyslexics of the world, untie!” It’s an old joke, but I think of it once a year without fail.

France

When I think of France, I think of the Enlightenment; I think of Voltaire, Diderot, and Moliere. I think of the nation that gave us the Statue of Liberty, the nation of Descartes and Pascal, the nation of wine and cheese and bread and people unashamed to admit their pleasures. I think of the Resistance fighters, I think of that warm and welcoming Paris that was home to Picasso and Gertrude Stein and Ernest Hemingway.

Every nation has a side that sides with devil. I don’t think of the Reign of Terror and the guillotine, Napoleon’s bloody conquests, the Dreyfuss affair, the Vichy government, French collaborationists.

Why would I think of those things? They’re not part of the France that’s in my heart.

Lately, between Jean-Marie le Pen and the resurgence of anti-Semitism, it’s been hard to ignore the side of the devil in France.

But then on Mayday more than a million people took to the streets to rally against le Pen.

To that I say: thank you.

Google’s UI

You know what, as much as I love Google for their cool, clean UI—and I do—there is one little thing that bugs me.

You know how in the search results the URL appears in green at the bottom of each item? Well, even after all this time of using Google, I still click on the URL. And of course it’s not a link. It seems like it should be.

Geodesic’s desktop website

Radio UserLand is perhaps the best well-known of desktop website apps—but it’s not the only such app. The other day I checked out Geodesic’s Great Circle.

Though like Radio it’s a desktop website app, the similarity ends there. Great Circle is a developer’s tool for finding memory leaks and over-writes in their code.

You can get a good feel for the product, which runs on Linux, Windows, and various other Unices (but not OS X), by checking out the online demo.

Archive