goodbye Carbon and good riddence

From the documentation for GetProcessInformation()

You need to specify values for the processInfoLength, processName, and processAppSpec fields of the process information structure. Specify the length of the process information structure in the processInfoLength field. If you do not want information returned in the processName and processAppSpec fields, specify NULL for these fields. Otherwise, allocate at least 32 bytes of storage for the string pointed to by the processName field and, in the processAppSpec field, specify a pointer to an FSSpec structure.

no joke

Rollover Carbon, rock on OOP.

Defactoring

You’ve read Refactoring. You’ve seen Prefactoring on the bookstore’s shelf. Well, after you’ve fact’d it all up, it’s time for Defactoring.

My new book, which introduces such techniques as overriding your framework’s core eventloop and running dynamic_cast<> on each widget that passes through to see if it’s the widget you’re looking for.

Red Sweater Blog – It Should Be Free

Red Sweater Blog – It Should Be Free

I don’t care if someone charges for an app or not. But one thing that has always puzzled me is why there are so many free (as in beer) applications for the mac that aren’t also open source. If you’re giving your application away for free, why not show the source too?

My only guess is that the default-to-open-source attitude isn’t as in-grained in the mac world as is it elsewhere.

gpl craziness

Sometimes, late at night when the moon is full and no one is around, I’ll download the Emacs source. Then, I’ll make a single change. Maybe rename a variable or a function, or comment something out. Then, I’ll recompile it and put the binary on my website for people to download. But I won’t provide the source of my changes! Muahahahaha.

whoa guys

In Vacuous Virtuoso’s CTGradient code bloat article, he showed how easy it was to trim a 1300 line 3rd party piece of code down to 30 lines by trimming the unneeded code.

Super. We should all look at what code we use and whether it is inefficient or not.

The problem is he didn’t include any numbers beyond the LOCs. It would have been nice to have had some before and after numbers on execution speed, binary size, and memory usage.

No big deal though. It’s still a decent article.

It’s turned into a bit of a flame war though, or as close to a flame war as the usually polite Mac developer community gets.

I started it with what I like to think of was an innocuous comment.

It went back and forth a little bit with Daniel Jalkut joining in too.

Then this guy, Rick, joined in and immediately went personal.

Rick also posted a fun little timecube style rant on his blog where he referred to developers as the Landed Gentry of Mac Development and as snakes. He also put the word “people” in scare quotes.

It’s also amazing how far these ‘people’ will go to defend what essentially is a defenceless position.

Not quite sure what he thinks we are instead.

Sean was totally unnecessary with his

Do us a favor, think of this as being a thanksgiving dinner. The adults are busy discussing things at the dinner table. Take your slice of turkey, and go back to the childr- Oops, I mean, “indy” developer table.

style comments.

I just think that the personal attacks are pretty lame in a discussion by a bunch of developers about the relative merits of a code cleanup.