On Mon, Jan 24, 2005, Danny Lieberman wrote about "Re: Looking for a viable 
alternative to MS access.":
> 1. musicians practice all the time and learn by emulating other 
> performers as part of their theoretical studies
> 2. CS student who "emulate" are thrown out for cheating (hackers emulate)

#2 is not true. "Cheating" is not emulating others. In fact, everything you do
throughout your studies - called "learning" - is actually emulation - you
see how your professors and TAs solve problems, and you try to solve these
and other problems in similar ways. You are also allowed to learn from your
fellow classmates, if you want. This sort of learning or emulation is
considered perfectly legitimate, and even recommended. To get a 100 on a
course, you're not expected to innovate - you're expect to emulate what
your teachers do, in the setting of test or project.

"cheating" is another thing - it means making taking an exact copy of other
people's work, and passing it as your own. This sort of behavior is not
similar to the behavior of hackers or that of musicians. The appropriate
parallel of this cheating-in-school behavior to the real world of programming
and music will be:

  1. Taking the source code of Emacs, replacing all mentions of Stallman and
     GNU by your name, and selling it as a "hot new editor" for $100 a copy,
     with a scary-looking EULA.

  2. Taking a song someone else wrote, and performing it without change, but
     claiming you wrote it.

This sort of cheating behaviour has nothing positive to it.

> 1.musicians are trained to play together in groups of 2, 3 ,5 ,7, 17 etc..
> 2. CS students might do a 2 or 3 man project once or twice - working 
> together is called "cheating".

I wish this was the case. But in fact, in many CS classes, you are forced
to work in pairs (or even more). The teachers simply find it easier to
grade less work.

Besides, when a teacher asks to work in a pair (and not a group of 10),
the exercise is designed for 2. If 10 people worked on it together, it
would simply be too small an exercise. The result is that most of the 10
would simply slack off and do absolutely nothing. I've seen this actually
happening. So, just like in a (sensible) company you can't hire 10 people
when 2 would be enough to do the job, similarly in classes, you can't
just do less work by giving the work to more people. The whole idea is
to leave enough work for you to learn.

You do have a point, though, that CS in the university does not directly
prepare you to work in large groups. But since large groups should have
managers, who fork of individual pieces of work to individuals, I don't
see the big problem. 10 people simply can't program "together" in the
same sense that 10 musicians play together, and since they eventually
end up working individually on individual pieces of the work, they better
learn how to do *that*.

> 1. musicians can sit in with a professional ensemble and play from the 
> chart in their first year
> 2. CS students cant even dream of working in a professional programming 
> team in their first tyear

It depends what you mean by "professional". If you think "professional"
means "highly-paid, high profile, well known group" than I think you are
wrong about musicians too. Will a person with 1 year experience in music
be hired for a world-class philharmonic? Or even to play for some
famous professional singer? I really doubt it. Similarly, you don't expect
first year CS student to find a job in highly-paid jobs in a well-known
company.

But if by "professional" you mean working with people who have some real-world
experience that you can learn from - well, this exists both in music and
in CS. Just like you can join a small amature or low-profile neighborhood
band, you can also join a Free Software project, or, in some cases, a small
start-up company. You won't get big bucks, but you will get excellent
experience and the chance to learn from some of the greatest programmers
out there.


-- 
Nadav Har'El                        |     Tuesday, Jan 25 2005, 15 Shevat 5765
[EMAIL PROTECTED]             |-----------------------------------------
Phone +972-523-790466, ICQ 13349191 |Sorry, but my karma just ran over your
http://nadav.harel.org.il           |dogma.

=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to