MESSAGE
DATE | 2005-02-23 |
FROM | From: "Steve Milo"
|
SUBJECT | Subject: [hangout] Realizing the meaning of GPL software.
|
Today I helped a friend in his Intro to C course, he is currently suffering from a back problem and is going through some personal issues. He asked me to help him out as much as possible, I had asked him how far along he had gotten so far. His reply was 'I dont have anything right now', I am always reluctant to get to involved in something that might turn into me doing 90% of the work. But I decided to take this on because he is a friend and an all around good guy. Even though he seems very slow in absorbing C he is very literate, he is very good at abstract conversation (which is more than I can say for about 90% of the CompSci students in general if not just at BC). Earlier on I gave him an overview of how C works in a computing environment and what the relevance of all the syntax is. That seemed to have helped him along in his learning, and he was able to finish another homework I had helped him. Today, however, I did most of the heavy lifting, but talked through how I was figuring the specifications out. As I typed the code I spoke it outloud and how it was relevant to the rest of the program. This method helped me get a better grasp on my technical communication skills. He followed along and asked questions when it wasnt intrusive but relevant. This is probably what the buzzword 'Extreme Programming' is supposed to mean. Throughout this effort he clearly felt guilty that I was doing much of the work, but considering his condition it was forgivable. My reply was: 'No one ever picks up this stuff on their own'. I didnt really realize the significance of what I had said, nor the significance of this excersize until now.
It is true no one ever picks up this stuff on their own, *ever*, there is always collaboration involved somewhere. The philosophical roots of C are based on collaboration, the CVS bullshit is just a technical excuse for poor programming skills and lack of technical talent. I had been taking for granted the possibility that some of the people in the advanced classes (despite their inability to communicate clearly) was some kind of inherent talent. I was completely wrong, I have also realized why it is important to understand the important fundamentals of programming. Why Java and PHP are completely worthless excuses for programming langauges. Those 'programming languages' are not designed to make the lives of programmers easier. They are designed to cover up the poor skills of supposed programmers who werent studying when they were supposed to. I should also mention that we were working under a time constraint. I had about 4 hours to crank out this code, document it and debug it. I documented everything as I went along, quite frankly I am still amazed at myself(whether it is warranted can probably be debated). I finished 90% of the project in about 2 hours(108 lines of code including documentation, not much by many standards probably). Of course this is an Intro to C homework, but the excersize was intellectual. How to communicate what you are trying to accomplish while thinking through the problem, so that the person you are helping is atleast gaining some benefit from it.
Steve M
-- Open WebMail Project (http://openwebmail.org)
____________________________ NYLXS: New Yorker Free Software Users Scene Fair Use - because it's either fair use or useless.... NYLXS is a trademark of NYLXS, Inc
|
|