Women in Technology

Hear us Roar



Article:
  Cocoa Diversions; More on Views
Subject:   preliminary comments on 2 origin lines
Date:   2002-02-19 22:50:55
From:   psheldon
Response to: windows don't fly ?

The first line reflects a shift from local next step coordinates to global coordinates on the screen, while the second shifts back to local coordinates referenced to the top edge of the new window size so it expands about that new origin. Mike, thanks for the confidence you gave me in my observation that the mathematically clever code was choosing what corner to hold fixed on the window. I got my first bit of confidence to try to thrash out the commenting of the two lines of origin code.
What I just wrote isn't clear to me, I sort of know it is true and I bet Carolyn Rose of Inside Mac fame could write it a whole lot better. Or maybe some of you guys reading this could take the pass and run with the ball and write it better.
We're here to help each other, right?
;-)
Full Threads Oldest First

Showing messages 1 through 1 of 1.

  • no Carolyn Rose with her global and local
    2002-02-20 09:18:43  psheldon [View]

    Agenda :
    ***** 1. -----Some stories----- to smooth the notion of students writing comment statements in general (off the syllabus); why this homework should be respected by all as work and how noone can do your homework for you with same effect. I tried to muster up my courage for this stage with a phone call to my relativity professor and formal thesis advisor. He was busy preparing his comments or notes for a class...
    ;-)
    ***** 2. What might still be, after this introduction, the -----sordid details----- behind two lines of origin code. I hope they would not be considered sordid details and I hope that none might feel humiliated that they hadn't done it themselves, because that shouldn't be the purpose of teaching, to humiliate. The general association of humiliation by a brilliant teacher stuck up on himself made Wheeler not choose Oppenheimer for a mentor...

    1. Some stories:

    ***** A programmer has an intuition from a lot of trial and error that can get him things that work. Once things work, he might take the whole history of his experience (including windows flying). He may merely note that once he was blind and now he has vision, as did Mike.
    ***** It is hard to revisit that history (of trauma), but that is where "the fundamental" lies; that is what must constantly be revisited to do great stuff. We do that everytime we read a column and get through some confusion in it.
    ***** I find great difficulty in composing the beginnings of algebraic statements that solve problems. After much time, everything is simple in hindsight, embarrassingly so. But, the trick was that it was me that made it embarrassingly simple, so I can't blame myself.
    ***** Many people probably get blocked going through the confusion stage of creativity because someone who knows the answer undercuts them. They associate their confusion, not with personal victory (as they should) but with extrapersonal humiliation. For example, many of us might be forced to write comment statements explaining our code to bosses who think they can purchase organization with money rather than blood sweat and tears. Their higher salary ceiling seems to support this hypothesis of theirs. They haven't read Starship Troopers course in moral philosophy, nor have their girlfriends. Oh well.

    ***** I had a professor, Elliezer Dekel, who, in a Yiddish accent, would read us computer listings. I'd be dying to break in with a comment or question, but somehow that was perceived as wasting everyone's time or flowing against the syllabus.
    ***** The textbook on data structures would also have computer listings. The publishers would invariable paginate in a most irritating manner. They would have the explanation always on the next page. I'd feel guilty turning a page before understanding what was on that page. Finally, when I couldn't stand trying to understand the listing anymore, I'd turn the page.

    ***** So, here is a staged introduction to writing comments to two lines of code. It felt a bit like pulling my own teeth, but I know comment statements amplify my power to think later faster. It is the way to keep or own my vision that transcends the blindness. It is the notes written upon the notes from the teacher.

    2. The sordid details :

    ***** The window origin in a next step os x machine is, not upper left (as in an os 9.x), but rather lower left. This is the origin that is fixed in an os x window size change.
    ***** We wish, instead, to fix the upper left origin to make behaviors look familiar.
    ***** We could say, give this upper left corner a name, "os 9.x origin" or better os9xo.
    ***** Now, we also have an os x origin, osxo = aframe.origin, the one that would be fixed if we didn't add the two lines of origin code.
    ***** Let's write two equations for the two origins at two different times before and after the window size change. Only the y coordinates are different, so that means we, in effect, have, not two systems of equations of two, two equations. Surpress the y for momentary economy of writing.
    ***** Call the times before and after, tb4 and ta.
    ***** 1. os9xo(tb4)=osxo(tb4)+height(tb4)
    ***** 2. os9xo(ta)=osxo(ta)+height(ta)
    ***** Now, how must the os x origin move to keep the other origin fixed?
    ***** 3. os9xo(tb4)=os9xo(ta)
    ***** Eliminate left and right hand sides with 1 and 2 :
    ***** osxo(tb4)+height(tb4)=osxo(ta)+height(ta)
    ***** Solve for the new os x origin :
    ***** osxo(ta)=osxo(tb4)+height(tb4)-height(ta)
    ***** We have finished generating the commentary once external reference is made to c's syntax abbreviating change to a variable.