Archive for January, 2007

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. …
thoughts yet to be boiled down to their essence