I have received my Daring Fireball t-shirt! Finally! Due to a foul-up that I blame on the postal service my original package was completely empty. Today I found the t-shirt and membership card (witty) in my postbox. Looking forward to wearing it. Thanks to John for sending another.
Membership Gets You More?
August 24, 2006Apple tell us that ADC Membership gets us more, but does it really? I began to wonder about this after reading The Decline of WWDC (originally from Gus Mueller). Michael and I are ADC Select members through Advenio and have been for a number of years. Do we get $500.00 worth of benefit from it each year?
The most obvious way to get value out of the Select membership is to take advantage of the Hardware Purchase Program. It doesn’t seem to say anywhere what the discount is but I will tell you that you’ve got to buy a pretty well configured machine to save $500.00. While we do use the coupon every year it could be argued that some of the purchases are spending money just to save. My old TiBook is still in active use and it would be possible to purchase a consumer Mac for less than a pro model even with the discount. We haven’t taken advantage of the Special Event Hardware Discounts because we haven’t exhibited anywhere.
Select members also receive shipping versions of Mac OS X in the mail, at least according to the website. I haven’t received anything since Tiger was released. Certainly on years without an OS release this isn’t overly useful. It also isn’t made clear how exactly we can use the license. I have 4 Macs in my household and so I purchase a family license when the OS is released. I guess I could use that one license on all of them, but that seems wrong. We can download Mac OS X Server for development and testing. This isn’t something we’ve taken advantage of because we haven’t been developing anything specifically for OS X Server.
The Developer Technical Support consultations are probably quite valuable if you are really stuck on something. I’ve never used one of the two we get per year and I don’t know if Michael has either. Generally I find answers to my questions in the documentation, the ADC website, Apple’s Mailing Lists, Cocoabuilder, CocoaDev, books I’ve purchased, or even a Google search. There are two of us and we get two consultations. To be fair that means one consultation each and just having one makes it seem so precious that it would be hard to decide when to use it. Is this problem really worth using the consultation or should I save it for a bigger challenge? That said, I think all ADC members, myself included, should strive to use these and share the knowledge gained.
Pre-Release Software is likely the most appealing aspect of ADC membership for me. Having access to new operating system features in time to support them in your software is important. So important that you might think Apple would want to make it available to all developers. Unfortunately there is no way to prove that someone who signs up for the free Online membership level of ADC is indeed developing software for the platform. However, as we’ve seen with the Leopard Sneak Peek from WWDC there are always people willing to break the NDA and make the OS available for piracy. This is a bit of sore spot with me. There are many people, particularly Vista fanboys, running Leopard without having attended WWDC and as a paying ADC member I still don’t have official access to it. We will get a seed eventually but that too will be quickly pirated.
Twice a month (pending availability) we have access to the Compatibility Labs in Cupertino. We live on the east coast. Cupertino is not a cheap place to reach. If there were a lab in Boston, or even New York it might be something we’d use. I could use access to an IPv6 compatible network right now actually, but for most consumer oriented (and non-game) applications is this level of testing important?
The most important aspects of ADC membership, namely access to the development tools and kits are available to the free Online members. This is important because it used to be the case that Apple tried to make money on their developer base. Whether the paid memberships are worthwhile for you or not depend greatly on how much you take advantage of the features of it. After this examination of Select I will strive to utilize more of the services we’ve paid for and hopefully get more from my membership.
Distractions
August 17, 2006I can see the wisdom in Never Check Your Email First Or Last (originally from Daring Fireball). I don’t really receive a great deal of email that isn’t spam so it is rare that checking it distracts me. I do catch myself at various times during the day checking my Junk folder to see if there are any support messages I need to handle, but it doesn’t take more than a minute to do. My wife on the other hand would be well served by this advice. She works in an office environment at a university and email is the primary means of communication. Her work email is accessible at home and many times she does read it before bed and I know it stresses her out on occasion. Following the advice in the linked post and setting Mail to check for new email less frequently would probably be beneficial for all of us.
Email has become like the phone, we drop everything to read it. Just the other day I answered the phone when I was right in the middle of working on some complex code. 40 minutes later (and none the wiser for the interruption) I had to try to re-immerse myself in it. Handling email may not take that much time but the effect is the same. RSS feeds (particularly for blogs) are a much larger distraction for me. Like email they can arrive at any time, but unlike email are often more relevant and send me off reading potentially lengthy content and surfing the web. Even worse, sometimes they inspire me to write my own blog entry
.
Cocoa Bindings displayPatternValue leak
August 16, 2006I try to make use of Cocoa Bindings whenever possible but I had never used the displayPatternValue binding. According to Apple this binding is often used to display the size of a selection compared to the size of the entire data set. It can essentially be used like NSString’s stringWithFormat: method to combine multiple bound values into a single string. It is one of the bindings available for a NSTableColumn and that is where I was using it when I discovered this leak. It took me most of the morning to isolate the cause in a small example application I could provide to Apple.
While I can’t tell you what caused me to discover this leak I can give you more detail on its behavior. You could populate and unpopulate a NSTableView and never encounter this leak and that is what makes it a bit odd in my view. Depending on how you remove data from the table you many not leak memory. The assumption is that you have a NSTableColumn displayPatternValue binding set to one or more properties of an object in a NSArrayController. Several rows of data are added to your table and the binding displays information using the format you specified. A row, we’ll say the first row, is removed. If you are watching the instances of your data object in ObjectAlloc you will see one of them disappear from the list. It has been successfully deallocated. Now the row that had been the second row is the first row of the table. If this row is removed you will see that it is not successfully deallocated but it is removed from the table’s display.
The memory leak will always occur when trying to remove a row at an index that has previously been removed. This means that the only way to clear the table without encountering the leak is to always remove the last row of the table. As to why this is the case I’m afraid I don’t know. I’ve reported it to Apple and provided a small example application that illustrates it reliably. I don’t imagine too many people are using this binding in a NSTableColumn so it isn’t likely a big problem, but it is something to keep an eye out for.
Google WiFi and The Cuckoo’s Egg
August 16, 2006Google has launched free WiFi service in Mountain View, CA (originally from Daring Fireball.) It isn’t exactly the community computer access mentioned in Cliff Stoll’s The Cuckoo’s Egg, I suppose internet cafes were more in that vein, but for some reason the book leapt to mind when I read about Google’s offering. Strangely I don’t recall if the book was required reading for one of my CS classes or if it was simply recommended. I do remember it being a good read back in the early 90s and I would guess if you have any interest in computer history it would be worth adding to your list.
If you enjoy cyberpunk novels Google’s WiFi service might be seen as a step toward the corporate states of Neal Stephenson’s Snow Crash. (Google’s hometown is Mountain View and many of their employees live there.) Testament to the power of Wikipedia when unable to remember the author or title for this book and found it by entering “Pizza delivery” into the search. Read the book to find out why.
Posted by Stephan
Posted by Stephan
Posted by Stephan 

