Subject: RE: [hackers-il] My Opinion about the Technion

From: "Ofir Carny" <[email-masked]>
Date: Mon, 3 Nov 2003 13:07:09 +0200

I really tried not to reply, but I couldn't keep resisting the urge, sorry:

IMHO, The reason for choosing csh instead of bourne-sh or bash is that it doesn't matter, isn't meant so you can write scripts and learn csh, the one week devoted to it is only meant for you to learn the concepts of pipes, filters and output redirection, and learn to use a unix-like shell, any differences between them really don't matter here, maybe another shell would be better, but not so much better to be worth a switch (preparing course material, etc.).

<shlomif>
My friend took "Introduction to Data Structures and Algorithms", which is
a basic course given by the EE faculty. My test was OK, and I got a 100 in
it. His, however, was littered with correctness proofs. In the entire
course, I think there's one demonstrated correctness proof. Plus, at this
level and in this context, the students are not required to know how to
prove the correctness of an algorithm. This is much more the domain of the
more advanced "Design and Analysis of Algorithms" and does not belong
there and was not shown in class or practiced in homework. What were they
thinking?
</shlomif>

One demonstrated correctness proof should be enough, it was meant for you to learn, not as an indication that the test will not contain more than one such thing. The questions most indicative of a bright mind are the ones which require you to think rather than spew memorized material, if the test only contained things you did in the homework, I would say it was a bad test. Questions that are based on the course material, but a little outside it show that you understood the material, rather than memorized it, if you understand, you can extend. Anyway, I took that course, and I think that if you can't show the correctness of an algorithm, you didn't understand it, in all probability whoever wrote that test thinks so too.

I think that the things you shown are some of the best qualities of the technion, it requires you to work hard to learn new material, by your account, material you already knew, you had no problems with, this means that if you studied hard enough to really know those subjects too, you would ace those test as well, by your account you didn't (you have better things to do), you may have studied a lot (and that you even passed the tests, seems to verify that very well in the technion), but not enough.

Anyway, you are an electrical engineer, not a computer scientist, sure, you may know a lot about programming, be a great programmer, and focused your degree on computers, but there is a reason there is a separate degree for CS, and anyone who took it, took more CS course than you, I don't find it surprising that prospective employers would place a higher bar for this kind of degree, no matter how much harder it is.

-------
=============================================================
Ofir Carny
Design engineer
Vidius Israel Ltd.   
Hasadna 13, Ra'anana, Israel
Telephone: +972 (9) 7439250 Ext. 211
Fax: +972 (9) 7439251
[email-masked]
http://www.vidius.com

PortAuthority(tm) Server 
Keeping Information Inside
=============================================================

This electronic mail transmission and any accompanying attachments contain confidential information intended only for the use of the individual or entity named above. Any dissemination, distribution, copying or action taken in reliance on the contents of this communication by anyone other than the intended recipient is strictly prohibited. If you have received this communication in error please immediately delete the E-mail and notify the sender at the above E-mail address.

---

From: Shlomi Fish <[email-masked]>
Date: Mon, 3 Nov 2003 15:54:17 +0200 (IST)

Ofir, your mailer does not cut long lines. Please configure it that it
would.

On Mon, 3 Nov 2003, Ofir Carny wrote:

> IMHO, The reason for choosing csh instead of bourne-sh or bash is that it
> doesn't matter, isn't meant so you can write scripts and learn csh, the
> one week devoted to it is only meant for you to learn the concepts of
> pipes, filters and output redirection, and learn to use a unix-like
> shell, any differences between them really don't matter here, maybe
> another shell would be better, but not so much better to be worth a
> switch (preparing course material, etc.).

Listen: Mamat and Matam teach more than pipes, filters and output
redirection. They also teach conditionals, loops, string capturing, etc.
All these things as well as the previous things are broken in Csh.
Teaching those things in Csh is like teaching OOP in Basic, or Functional
Programming in COBOL. And it is worth the effort of preparing course
material, because the choice of Csh was a poor choice to begin with.

Csh is so broken that it has no place in a university's corriculum. It is
not used for production code, its use is deprecated for scripts, and was
shown to be broken by Tom Christiansen and by many others. Eventually,
people get used to writing their system scripts with it, and it cripples
their minds. Sorry, but I still don't buy it.

> One demonstrated correctness proof should be enough, it was meant for you
> to learn, not as an indication that the test will not contain more than
> one such thing.

1. It was demonstrated, not exercised.

2. There was exactly _one_ like that.

3. It wasn't given enough focus.

4. Correctness Proofs are clearly out of the scope of the course.

> The questions most indicative of a bright mind are the
> ones which require you to think rather than spew memorized material, if
> the test only contained things you did in the homework, I would say it
> was a bad test.

My test contained many things for which I needed to think or improvise a
little. But it did not contain any correctness proofs, which are far
complex to do in the time frame allocated, and also were never required in
homework.

> Questions that are based on the course material, but a
> little outside it show that you understood the material, rather than
> memorized it, if you understand, you can extend.

Correctness proofs are not a little outside the material! They are way
outside it. Like Israel is a little outside the continental USA.

> Anyway, I took that
> course, and I think that if you can't show the correctness of an
> algorithm, you didn't understand it, in all probability whoever wrote
> that test thinks so too.
>

Here I disagree with you. While a person may be able to prove the
correctness of an algorithm given enough time and some help, it would be
unreallistic to give it in a test, because _it was never shown_! Besides,
not every Technion student is as bright as you are and can give
correctness proofs for every algorithm he has to develop in his class,
within the allocated time-frame, without the process of developing a proof
been actively demonstrated in class, and stressed that it could appear in
a test.

Note that I took the sequel course "Design and Analysis of Algortihms" and
there we were shown correctness proofs in class, required to do them in
our homework, and yes, they appeared in the test. But they are clearly way
out of scope of the "_Intro_ to Data Structures and Algorithms" where most
algorithms are said to work just because it is evident they do.

> I think that the things you shown are some of the best qualities of the
> technion, it requires you to work hard to learn new material, by your
> account, material you already knew, you had no problems with, this means
> that if you studied hard enough to really know those subjects too, you
> would ace those test as well, by your account you didn't (you have
> better  things to do), you may have studied a lot (and that you even
> passed the tests, seems to verify that very well in the technion), but
> not enough.
>

I've studied my ass off, mind you! More than enough. But the tests I
receive keep surprising me, and there's no way I can prepare for them.
They are simply and balantly unfair. And most students can testify to
that. A test should be easy in comparison to the homework given. Too pity
that in the Technion this is not always the case.

> Anyway, you are an electrical engineer, not a computer scientist, sure,
> you may know a lot about programming, be a great programmer, and focused
> your degree on computers, but there is a reason there is a separate
> degree for CS, and anyone who took it, took more CS course than you, I
> don't find it surprising that prospective employers would place a higher
> bar for this kind of degree, no matter how much harder it is.
>

Actually, I'm pretty sure that for this particular job, I would have not
been accepted even if I were a CS major with the same average score,
and and the same amount of experience and expertise. They are simply
blindly looking at the GPA. And, BTW, this company employs a great deal of
Electrical Engineers.

Regards,

	Shlomi Fish

----------------------------------------------------------------------
Shlomi Fish        [email-masked]
Home Page:         http://t2.technion.ac.il/~shlomif/

An apple a day will keep a doctor away. Two apples a day will keep two
doctors away.

	Falk Fish