Subject: [hackers-il] usage of patented and closed source products in courses.

From: "Tzahi Fadida" <[email-masked]>
Date: Wed, 24 Dec 2003 23:01:01 +0200

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]On Behalf Of
> Oleg Goldshmidt
> Sent: Wednesday, December 24, 2003 8:45 PM
> To: [email-masked]
> Subject: Re: [hackers-il] usage of patented and closed source
> products in courses.
>
>
>
> "Tzahi Fadida" <[email-masked]> writes:
>
> > 1) closed source applications in theoretic courses.
> > 2) closed source applications in non theoretic courses.
> > 3) patented technologies
> > 4) patented scientific methodologies
>
> > 1) closed source applications in theoretic courses are counter
> intuitive to its
> > definition. i.e. when you do your hw or experiment using that
> > application you cannot prove that the experiment or hw has succeded
> > or failed due to source bugs or fallacy of the underlying
> > algorithms.
>
> Well, it looks like you are assuming that there is a viable open
> source alternative [see also item 2 below]. What if there isn't?

Maybe i didn't make it clear, the lecturer and the TA are the developers of
the software.
They could if they choose teach only the principles and algorithms relevant
to the course and not give hw and use it in exams. In addition they are not
qualified to teach this course because of the NDA.
Its a conflict of interest between the academic interest and the commercial
one.

>
> As to your "bugs" argument, if the app in question has a solid
> reputation I would suggest keeping looking for bugs in your code. I
> don't know what examples you have in mind, I am thinking of MatLab,
> Mathematica, etc. MatLab has open source alternatives (SciLab, Octave)
> that lag behind in functionality, but you can verify a large number of
> things with them. It will still make sense to use MatLab in
> instruction.

you are right about sciLab, i know it. although i for one don't think its
relevant to the question of concentrating on what is teachable and that the
choice of the application they teach is really a matter of their opinion that
its relevant to the course. i.e. how did they determine it will be the main
technology of the future.
besides that, the software is at the experimental stage and no one uses
it.

>
> I recall a case from my own teaching practice where Excel gave wrong
> results. This was verified by doing the calculations by hand - this is
> always a very good learning experience.

as i said, in my opinion the software kind is irrelevant. but, regarding your
comment, what is really learned here, the subject of the course or that
microsoft and closed source in academic institutions sucks. :)

>
> > 2) usage of that applications as a matter of fact is false when
> there are free
> > solutions that can be extended to academic usage on these courses.
>
> This is where you are making the assumption mentioned above [see item 1]
> explicitly.
>
> > just using them do not add anything to the academic
> > experience. you can just read a book or a manual on how to use them.
>
> It adds to your skill set and experience, which is more than you can
> get from just reading the frigging manual. It may prove useful during
> subsequent studies. It may be a tool widely used in the industry in
> which you are likely to work upon graduation.

i have an engineering degree and a b.s.c and i worked in the industry
and i can tell you that a person comming out of the academic institution
should be able to study from a book. as for experience, there are the
yearly projects and semeterial projects for that purpose not in the courses.

>
> > 3) patented technologies means that whatever you learned in the
> course can only
> > be used in the company that provided it or the company product that
> > probably has to be bought to use it.
>
> Here I disagree. Whatever is patented is, by definition, open. If you
> have to pay royalties to apply it in real life is irrelevant. As a
> student, you can benefit from studying the technology in question.
>

i don't disagree here, just saying that you can take, for example, DBA
course for oracle and learn that. in the academy you study science not
technology and many people confuse between them.

>
> > 4) THESE ARE THE WORSE KINDS!:
>
> The worst kind include patents on scientific methodologies that have
> been known for a long long time. This patent
>
> http://www1.cs.columbia.edu/~traub/html/body_patent_information.html
>
> (awarded in 1999) is on a well-known mathematical technique that has
> been developed, IIRC, in the sixties if not earlier, applied in a
> particular area. The patent-holders' claim to fame, it seems, is that
> they "discovered" that it could be faster than other methods for
> certain problems. The speed of solving this particular kind of
> *mathematical* problem was the primary motivation for development of
> the method (in the 60-ies, as I said) in the first place. Check,
> e.g. "Numerical Recipes" for introduction. I find the patent ridiculous.
>
> What would you say if your courses included low discrepancy sequences?
> By Prof. Traub? ;-)

i don't know. i am a little rusted at math, tough i am working hard to correct
this. (shame on me)

>
> > ok, after all that, specifically i have a grievance with a course
> > called "intro to databases engineering" which its main theme is ECA
> > - event condition action.  the lecturer and TA both work for
> > IBM. the engine called AMIT is used to identify world and database
> > events and repond to situations, and used in hw and exams.
>
> OK, I work for IBM, I have no specific knowledge of AMIT, and I cannot
> comment on the specifics for both these reasons. ;-)
>
> In general, suppose your instructors think that their students would
> benefit from learning rule-based reasoning techniques in AI[1]. They give
> you some background, and now they want to give you a demonstration of

if it only been a demostration, i had no grievance here.

> a relatively sophisticated engine that they know well (I'd say it is a
> necessary condition). Suppose the thing is also programmable to some
> extent and allows the students to try things, feed data to it, create
> and modify rules, and thus do exercises.
>
> If you happen to know that there exists an open source tool that is no
> worse that the proprietary one offered to you by the instructors, why
> can't you ask politely if they know about it? Explain why having the
> source and the ability to tweak the algorithms inside is beneficial.

asked, and being told, go look for it yourself. between the lines of
response: "go away, i am under NDA."
me: "where can i find early works not patented?"
response: "go look it up maybe there is". this is comming from the person
who wrote the papers, i.e between the lines: "what, to tell you and so you
will develop a competing application?". as i said conflict of interests.

>
> I can tell you what my reaction to this would be. I would suggest that
> you use both tools in parallel and compare the results. If the results
> are the same consistently, then you would gain the skills and
> knowledge of an open source tool that performs - for the set of
> problems studied - at par with the allegedly advanced proprietary
> tool. That's useful. If the results are different, could you figure
> out what the difference is? Could you modify the open source code to
> get a closer match? Could you reason which is correct? Could you
> improve upon the open source program based on what you've learned?[2]

agreed, they claim however they don't know a similar tool(which they
developed themselve and i don't think they didn't say the truth).

>
> In the Excel example mentioned above the suggestion to use Excel
> (rather than doing the stuff by hand) invariably came from
> students. The suggestion to do the stuff both by hand and with Excel
> invariably came from me (the instructor). The results were invariably
> different. The students learned.
>
> Question is, did you approach your lecturer? What did he (or she) say?

yes read above. completly reluctant to help because of conflict of interest.

>
> > The main excuse for this product promotion is that the lecturer
> > wants to teach us about new technologies that are about to come
> > out. now, if i wanted to do that, i could open a gartner survey or a
> > few companies brochurs.
>
> You cannot explore the technology or learn to use it by reading
> Gartner reports. I keep returning to the MatLab example.

matlab is in use. this technology will maybe be used(as promoted by
the lecturer) in the next 5 years

>
> To summarize: I don't think you can just reject usage of proprietary
> technologies in instruction simply because they are not open-source.
> If there is an open-source alternative you will, I think, benefit from
> comparison. It may turn out that your lecturers will agree with this
> last statement.

i don't, if its not used to explain scientific principals

>
> [1] OK, I probably goofed, most likely I mixed AMIT,
>     http://www.haifa.il.ibm.com/projects/software/amit/index.html
>     and ARAD (can't find a description, but it's mentioned in the
>     URL abive). I don't know if AMIT uses any rule-based AI, but it
>     well may be the case. I told you I didn't know...
>
> [2] This again assumes there is an open source alternative, of course.
>     I would love to know if there is an open source AMIT - can you
>     give me a pointer?

I want to know too.
DBs usually includes a trigger mechanism. consider it an event. now take
this event and put it in an ECA model Event Condition Action like in the
UML states model. now take a methodology to identify complex events
like SNOOP and extend it to include a context for events.
context - time or place or anything. and you get AMIT.
I think that AMIT is not a bad idea and can have many uses, for example,
put it in SNORT and get a more high performance and more accurate
identification device.(of course some adjustments and performance issue
should be resolved first).

>
>
> --
> Oleg Goldshmidt | [email-masked]
>
> To unsubscribe from this group, send an email to:
> [email-masked]
>
>
>
> Yahoo! Groups Links
>
> To visit your group on the web, go to:
>  http://groups.yahoo.com/group/hackers-il/
>
> To unsubscribe from this group, send an email to:
>  [email-masked]
>
> Your use of Yahoo! Groups is subject to:
>  http://docs.yahoo.com/info/terms/
>
>
>

---

From: Shlomi Fish <[email-masked]>
Date: Thu, 25 Dec 2003 00:49:56 +0200 (IST)

Hi Tzahi and all!

Tzahi, judging from your answers you seem to be very frustrated about this
course. And, from my impression based on your description, you have every
right to. However, you seem to have started this argument with some
overgeneralizations:

1. Use of proprietary software in Academic courses is bad.

2. Teaching of patented technologies is bad.

Both of them may or may not be valid depending on the case, but
over-generalizing them is bad. In general my belief is that:

1. A course should teach using mature, well-proven tools, whether open
source or (with a lesser preference) otherwise. Open source programs are
not a panacea. A sub-standard open source program can waste a lot of times
for the students, and for the other staff, while a high-quality
proprietary solution will just work and give them what they need.

I can testify from my experience, that in EE Lab 1, my partner and I had
to work against a pre-configured circuit of electrical components
(hardware not software) that we had to analyze. In the middle of the
experiment, the case broke down and no one was able to fix it. To get the
score for this experiment we had to come another time and spend some good
3 or 4 hours doing the experiment again.

So, bugs, whether in software or real-world, always cost time. No one has
time to debug bugs in open source software in the context of Academic
studies. So, I think a course should prefer the solution that is known to
work best.

2. Regarding the course's staff and its treatment, I think it is very bad
that they treat you this way. By all means, answering "we are under NDA so
we can't tell you", etc. defies the purpose of Academic studies, in which
the staff aims to educate the students as much as possible, rather than
hide information from them.

If this technology is problematic in this regard, then they should have
avoided and teach you something less proprietary.

3. Teaching Patented technologies sometimes cannot be avoided if the
university wishes to stay on the cutting edge.

4. Regarding your point that because I don't have access to Excel's
source, I can't tell what its algorithms are. As far as Excel is
concerned, I can, because programming spreadsheets is well known with many
partial open source implementations. Even, if I don't know how a feature
works, I still know the formulas behind it (they are in the help file),
and can still do it by hand.

Most able programmers can tell how to write most programs based on their
behaviour. The source code itself is useful for modifying the program when
the need arises, but is otherwise not necessarily a pre-requisite for
duplicating its functionality. (nor is it always very helpful if you need
to know how it works).

Like I said, in a course that involves using a tool, you usually don't
expect the students to fix bugs, much less add features to the tool. (you
can't do it with physical tools, so why should you with software). Unless
of course, the entire purpose of the course is to extend this tool.

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