Archive for the 'mac os x' Category

Automating the Creation of Traceable and Reproducible Releases

Thursday, January 25th, 2007
As I previously mentioned, I hope to give something back to the Mac development community that is so supportive. In that spirit, I’m releasing the Perl script, under the MIT license, that I use export NewsHawker. I have learned, at times the hard way, that every build that you give to others must be traceable and reproducible. That is, you must be able to determine easily exactly which software someone has on their computer and you must be able to recreate that exact software. This is critical when supporting customers or debugging issues. …

Road to Beta

Friday, January 19th, 2007

This was initially sent to the macsb mailing list. A couple of people suggested I post it here as well. It’s the same other than the addition of some links to previous posts.

I thought I’d share a couple of thoughts that may be of interest to those macsb folks in a similar situation. First, I decided that NewsHawker would be my first app because it met two criteria previously mentioned on this list: one, it is an app that does something I personally want (which provides motivation) and, two, its implementation isn’t too complicated (which results in a greater chance of actually releasing). I’m relieved that I didn’t start with a more complicated application since the effort required to reach beta is more than I expected and the amount of time I have been able to dedicate is less than I had hoped. It seems like other commitments often trumps my development efforts. …

Introducing NewsHawker 1.0 Beta

Monday, January 15th, 2007

NewsHawker, the first application from Sugar Maple Software, has recently reached beta.

NewsHawker

Download Now

Do you spill your breakfast cereal on your keyboard or yourself while trying to eat and read your news at the same time? Does your keyboard get sticky from your dirty fingers as you eat pizza and advance to the next news item in your news reader? If so, NewsHawker can help you read more news while keeping your keyboard clean.

NewsHawker reads you your news so you can focus on other tasks. NewsHawker extends the functionality of NetNewsWire to speak the news items in NetNewsWire. NewsHawker is configurable. Do you want to read just the headlines of the news items? No problem. Just the bodies? Sure. Read the bodies of some items as their headlines are being read? Certainly. Open certain items in your browser if they sound interesting? Of course. …

Helping Myself

Sunday, January 7th, 2007
As I’ve mentioned before, mailing lists are an excellent resource when looking for answers to your development questions. This is especially the case of the mailing lists hosted by Apple (at least those to which I subscribe). I frequently take advantage of this resource and also try to contribute. Often, I don’t have the answer or someone, who checks their mail much more frequently than I, has already answered the question, but, when the opportunity is there, I take the time to help. A couple of days ago, when I couldn’t remember the kernel equivalent of the gettimeofday function, I searched the Apple Mailing Lists and immediately found the answer (clock_get_calendar_value which lead me to kern/clock.h and the currently supported function clock_get_calendar_microtime). The signature of the reply to the original poster’s question caught my eye. It was mine. I had provided the answer exactly two years ago today. It’s like something out of a Sci-Fi movie… or maybe just good karma.

Strip HTML Tags

Wednesday, January 3rd, 2007
I needed to convert HTML to plain text for the application that I’m developing. I figured someone else had done this before; so, I searched for a solution. I found one that leveraged WebKit and worked well but was too slow for my usage. I found another that leveraged libxml2 and was fast but crashed. In the end, and only because I could browse the source to the version of libxml2 included in Mac OS X, I was able to work around the crash and keep the faster solution. …

Kernel Logging

Thursday, December 21st, 2006
While I usually write about programming in the land of milk and honey (i.e., Cocoa), I spent most of the previous ten years writing kernel-level code. Recently, I’ve ventured back into the kernel and was reminded of the challenge of logging from an I/O Kit driver. When writing code in the kernel for an I/O Kit driver, you can’t invoke printf to log messages. Instead, you usually invoke IOLog. …

Leopard Tech Talk in Chicago

Monday, December 4th, 2006
I received confirmation from Apple that I may attend the Mac OS X Leopard Tech Talk in Chicago on 13 December. Since I missed WWDC this past summer and don’t have an ADC Select or Premier membership this year, I’m really looking forward to learning more about Leopard. …

Supporting Apple Help

Tuesday, November 14th, 2006
I recently wrote my first draft of documentation for my upcoming application. Integrating this documentation into Apple Help was much easier than I expected. The Apple Help Viewer simply displays HTML files. More impressively, cascading style sheets (CSS) are supported. I hope this will allow me to share the identical HTML files between my application and the support section of my web site and simply have different CSS files for each. …

The Delicious Generation

Monday, November 6th, 2006
Today, Paul Kafasis wrote about the good, bad, and ugly of the Delicious Generation. Having developed software for Mac OS X, and Mac OS before that, and System 7 before that, I certainly feel that I have an “old school” perspective on Macintosh software. (See, I still use the word “Macintosh.”) That said, I welcome positive change and agree with Paul that we old-schoolers shouldn’t feel that we are fighting this Delicious Generation but, rather, see what we can learn from them. …

IronCoder 4 Results

Monday, October 30th, 2006
IronCoder 4 is over. Congratulations to Jonathan Wight for winning. His SpaceCam application is quite impressive. Thanks to Mark Dalrymple for choosing a cool theme (space) and API (Core Image) and judging the competition. Thanks to all the IronCoders for participating.
thoughts yet to be boiled down to their essence