Gelegentlich erhalte ich Mails zu meinem Sipgate Faxdrucker für OSX. Die meisten beinhalten die Frage, ob und wann eine Fassung für OSX 10.6 “Snow leopard” erscheint. Nachdem Sipgate inzwischen einen eigenen Faxdrucker für den Mac anbietet, ist mein Leidensdruck nicht mehr so groß, hier eigene Arbeit in ein im wesentlichen identisches Produkt zu investieren.
Dazu kommt, dass ich mich nie mit Objective-C als Programmiersprache anfreunden konnte, gleiches gilt für XCode, die Entwicklungsumgebung im Mac. Ein Ausweg aus dem Dilemma hätte RubyCocoa sein können, die Interpreter-Umgebung in OSX, mit der sich wunderbare Mac-Software allein mit Ruby erstellen lassen soll.
Wie es allerdings so ist, gilt das immer nur zu einem gewissen Grad, und setzt voraus, dass man beide Seiten der Interpreterumgebung kennt - in diesem Fall Ruby und ObjectiveC. Autsch.
normal_result, extra_array = someBezierPathElement.elementAtIndex_associatedPoints(index)
Ich mag die Namenskonvention von ObjectiveC Bibliotheken wirklich nicht. Zudem hatte ich mich dafür entschieden, den Entwicklungsweg eines CUPS-Filters beizubehalten, weil so prinzipiell auch eine Netzwerk-Version des Faxdruckers möglich ist. (Was bei der Variante eines Userspace-Programms nur schlecht geht.) Die zum Betrieb notwendigen Einstellungen wollte ich durch eine Systemerweiterung pflegbar machen. Es gibt RubyCocoa Templates für Systemerweiterungen, hier steckt der Teufel jedoch im Detail: Sobald ich unter OSX 10.6 eine Grafik in einer Systemerweiterung verwendete, lud diese nicht mehr. Boom, dead. Für diesen Effekt konnte ich auch bei den RubyCocoa Autoren keine Erklärung finden. Auch erklärte man mir, dass RubyCocoa keine synchrone http-Übertragung für XML-RPC erlaubt, was für den Transfer der Fax-Dokumente an sipgate natürlich nicht ganz unwesentlich ist…
Somit habe ich also die Entwicklung zunächst eingestellt. Da sipgate selbst inzwischen die wichtigsten Features bereitstellt, weiss ich nicht, ob sich zukünftig Bedarf für eine Sonderlösung zeigen wird.