Hi dear Plan9 fellows,

my Name is André Günther. I'd like to participate in the gsoc with an implementation of a drawterm on the iPhone platform.

In this Mail I'd like to do the following 2 things:
        1) Say some words about me and motivation of this project.
        2) Present preliminary suggestion how I would proceed with the project.

I'd like to ask you to:
        1) Discuss if this project is actually wanted.
        2) If 1) is positive: Discuss my application.


Me and my Motivation:
I am 21 and an undergraduate in Philosophy and Cognitive Science at the university of Freiburg. During the course of my studying i've been taking several computer science classes. The reason I am not studying computer science is, because I have the feeling for problem solving an autodidactic method is sufficient for most cases and for which it is not I am taking those specific classes. I have about 8 years experience with programming C and working in unix like environments. I am working on the mac platform for about 5 years now and aquired some ObjC skills. That means I have done Cocoa development. So I am familiar with apple like APIs and also the whole XCode environment. I haven't done any iPhone development yet, but I am pretty confident, that I can acquire those skills with my background in no time. (I have no apple developer license for the iPhone, but I have an iPhone and I am able to test custom applications on it. I would of course apply for a license if I do the project) Unfortunately I can't show you any recent work of mine, because it's all internal university stuff I am doing for the lab, which I am not supposed to post anywhere.

I've been following Plan9 shallowly for some while now. But just recently got more into it. I am using it exclusively in a Qemu/ Drawterm fashion. I'd like to explore more of Plan9 in the future. Though I don't feel confident just now messing with kernel sources or other important infrastructure, a drawterm port may just be the best thing to do. My mac experiences will come in handy, too.

Why is the port necessary?
Well Plan9 is awesome. Being able to drawterm into it with my iPhone would be totally awesome. I don't know how you guys feel about this. Please discuss!

How to proceed:
Because I might have just failed with the above text, I don't want to go into much detail now. Still a small outline here:

I think there are two parts to the question:
1) How does drawterm theoretically transform into an iPhone application.
        2) What are the technical things to deal with

1) is much about interface design. Clearly the iPhone doesn't have a keyboard nor a three button mouse. For the keyboard it might be sufficient to provide the standard onscreen keyboard apple provides. For the mouse I haven't yet wraped my mind around the problem. Double tapping and gestures come to my mind though. Another possibility would be to have onscreen virtual mouse buttons, but that might be not the best solution. Also Bladerunner type of zooming gestures might come into handy, with such a tiny screen, which is clearly another limitation of the hardware platform.

2) The drawterm code base is pretty much self contained and C based. The iPhone OS is pretty much a stripped down OSX and should be stable enough for that and doesn't amount to much more than a recompile. So the main part is providing the draw/audio and other devices. Reusing osx code is not possible, because the iPhone doesn't share that particular API the code base is using.
Here a new implementation using ObjC and the iPhone API is necessary.


Best wishes,
André Günther

Reply via email to