Computer Chess Club Archives


Search

Terms

Messages

Subject: Let's go out on a limb

Author: KarinsDad

Date: 00:41:23 01/08/99

Go up one level in this thread


On January 08, 1999 at 00:52:30, Don Dailey wrote:

>> >I hear what you are saying, but I tend to feel that more people often
>> >just get in the way.  Most projects, even great big ones tend to be
>> >the result of a single vision, often by a single person who is able
>> >to inspire the team.   When a project requires huge amounts of manpower,
>> >then numbers really count, such as building a new O/S.   If I was a
>> >millionaire and could hire any number of people to write the strongest
>> >possible chess program,  I think what I would probably do is hire
>> >many people and let them work independantly and under their OWN ideas
>> >and inspiration.  Then I would take the strongest one.   It's a case
>> >of 2 heads are not really better than one!
>>
>> Actually, 2 heads are almost always better than one. This has been proven. To
>> illustrate it, years ago a quality team at a company I was working at got the
>> quality team (8 of us) and about a dozen high level managers together to take
>> the Artic Survival Test. Lowest score is best. I had a score of 24. The next
>> best score was 63 out of 19 people (which says a lot about the decision making
>> ability of management, but we won't go there). The second part of the test is to
>> have everyone take the test together (this is done before any scoring on the
>> first part of the test). The score dropped to 15.
>
>I'm  sure you  are  a  good team  player  and  were impressed by  this
>demonstration  staged   by  your company.

Demonstration staged by my company? I was too low on the pecking list for them
to stage something to impress me. This came about by a member of the quality
team saying, "I took the Desert Survival Test some years back, let's see if we
can find something like that to illustrate our quality concerns to upper level
management.". We were trying to impress them, not the other way around.

>But    I agree  with  you,
>cooperation can produce better results and is absolutely necessary for
>big projects  where many  drones  are needed  to provide the manpower.
>But  if I  wanted  help mowing my  lawn,  which might  take me about 5
>minutes to do by  myself, do you think I  would benefit by getting 100
>people together to help me?  Could I organize this and all the details
>and get it done in less than 5 minutes?  I think not!
>
>Computer  chess is of course  not mowing a lawn, but  I believe that a
>very small team, or even one is by far best if you want good  results.
>I'll go into why I believe this at the end.

Do you work for a company or by yourself?

>
>
>> My point is that if you get a bunch of people together (good thinkers or not),
>> you can almost always come up with a better set of ideas than with an
>> individual.
>
>I'm not  talking about some kind of  think tank for  generating ideas.
>I'm talking about writing a strong chess program.  Computer chess is a
>lot  more an engineering excercise  than it is sitting around dreaming
>up great ideas.  And how you put these ideas together is where the art
>is.  And when it comes to art, I don't  believe there is much strength
>in numbers.  Forgive me, but thats the way I feel about it.

Are you telling me that Bob couldn't create a set of ideas for a better chess
program (I think you believe that the individual can do better than a group) and
that 4 Microsoft assembly language gurus could not take every line of code Bob
produces and convert it into a tight assembly language unit and that 8 MS
testers couldn't be running various versions of it on 200 different machines 24
hours a day and that 2 MS GUI programmers couldn't take a bunch of requirements
and turn it into a slick interface, 3 database experts couldn't come up with a
better and faster system for the opening books and tablebases, etc.? Again, you
seem to not believe that other people beyond a few select chess computer
programmers have any talent to create good software.

>
>
>> ...         Even Bob has said that the good old days were before the commercial
>> chess programs where you would go to a tournament and everyone would brag on how
>> they had improved their program from the year before. That sharing of
>> information is what got Bob and others to the level where they are today (look
>> at the advantages of the Internet). I think that a lot of people are closed
>> minded when it comes to their evaluation of how well other people can succeed.
>
>But you seem to be one  of these people.  Your main  point seems to be
>that  huge corporations are required    to do great  things, and  that
>individuals are not capable of genius  or accomplishment on their own.
>I have a different opinion.

Where in the entire thread did I say that individuals are incapable of
accomplishment on their own?

This entire thread has been about what MS "could" do. I often said in the thread
that they would need experts from the field. Huge corporations are not required.
Resources are required. Small "expert" groups do not seem to be working either;
in the sense that there are about a dozen small commercial chess companies out
there who cannot seem to make a major leap in the field. The improvements are
there, but incremental and not earthshaking. Just as expected due to the limited
resources. The chess programs of today are near the 2600 mark partially because
they run on 400 Mhz systems. Put them back on a 486 33 Mhz system with 8 Meg of
memory and 120 Meg hard drive from 8 years ago and they most likely won't reach
2400 (please, somebody get a 16 bit version of one of the better programs and
test it out on a real old system).

>
>
>> A single individual will almost always stagnate after a while without the
>> stimulous of the ideas from other people. Just look at the middle ages where
>> people purposely kept apart and advances slowed to a crawl.
>
>Who are you  arguing with?  My point  doesn't have anything to do with
>this.  I'm only trying to  refute what I  consider a fairly naive idea
>that 20 people are bound to come up with something  better than 1.  It
>sounds great on paper and superficially makes sense (20 is bigger than
>1!) but is far from clear cut.

I didn't know I was arguing. I believe it is your contention that a small team
or a single individual (I believe you stated that you would take a bunch of
single individuals, have them each create a program, and take their best program
as the optimal solution) will do better in this field than a larger team. I was
just pointing out that a single individual on his/her own will not do as well in
the long run as a group with that same individual.

>
>
>> >But the strongest evidence is to look at Windows95 itself.  It's like
>> >this huge swiss army knife,  not good at anything, but perfectly adequate
>> >at everthing.  It's certainly NOT a work of art, and I can imagine that
>> >there must have been thousands of ideas tossed around, rejected, argued
>> >over and eventually voted on and compromises certainly taken.  Microsoft
>> >is not really a software company so much as a marketing company and
>> >acquirer of software.   The approach microsoft would use would be to
>> >find out who has the best program, and make them an offer.
>>
>> You are comparing an OS with a Chess program? There isn't an OS on the planet
>> that isn't like a huge swiss army knife (although NT and Next were designed
>> fairly well). They are SO complex and SO large that it seems unlikely that
>> anyone will ever get the resources together ever again to create a new one (does
>> anyone see Pink going anywhere?).
>
>This is one  of those statements that  you will be embarassed to admit
>to saying in 20   years!  I remember  it  being thought that  640K was
>overdesigning the PC and that no one would ever use this much memory.

I do not think so. Only a major player has the resources to put out a new OS.
And if it is Microsoft, 75% of the OS will be based off of NT (hence, it will
not truly be new and original). Not only that, the recent failures of the other
new OSs (such as OS2 and Pink) has left a bad taste in the mouth of other
companies for investing the type of money required and getting shut out of the
market yet again. A new and original OS may happen in the future, but it most
likely will be WAY in the future (at least beyond the 20 years you give me for
an embarassment).

>
>I don't think it makes  too much sense trying  to predict the computer
>future unless  you really want to embarass  yourself.  I personally am
>hoping  something really strong,  better  than windows and even  linux
>will  come  along.   I  have  yet  to feel  very   satisfied with user
>interfaces  and OS's, and  can't help but  think there  must be a much
>better mouse trap.  I hope there are a few others  who are not willing
>to lay down and  die but think  the same way I  do.  I'm not  going to
>hold my breath  waiting for microsoft to  do  it, but I would  welcome
>this if they   did and would   buy it.  They  just haven't  and it  is
>extremely unlikely that they will.
>
>
>> Microsoft did not acquire NT (nor Windows 95). They acquired the services of OS
>> engineers from other companies (such as Cutler) to create it. Yes, some of the
>> ideas (and even some small portions of some of the code) have come from other
>> companies (via their ex-employees), but the largest portion of NT was created by
>> Microsoft.
>
>Windows is  big  and  complex.  Of course  it   took huge amounts   of
>manpower and organization.
>
>
>> This concept of "Microsoft buys everything" is vastly distorted. Acquistion is a
>> great way to get into a niche market, but it does not guarantee success all on
>> it's own. That takes work.
>>
>> KarinsDad
>
>I think  microsoft probably has a lot  of innovative  people, but as a
>company they  are not innovative.  Their big  thing  is not innovation
>but just getting  their products into  everyones homes and their hands
>into everyones pockets.  This is good  business and what they do best.
>They  are aggressive, but very  conservative and everything they do is
>calculated and  controlled.   There  will  be  no innovation  or  risk
>comming from them, that's not what they do.  Probably some guy working
>in his basement will come up with the next OS innovation.
>
>- Don
>
>
>P.S.
>
>How would you get a dream  team of computer chess programmers together
>to write the  very strongest chess  program ever?   Let's  say we took
>Fritz programmer  Frans, Rebel programmer  Ed, Genius program Richard,
>Junior programmer Amir and others of their calibre.  And we decided to
>pay them 1 million dollars each if they  produced something 150 rating
>points better than the very best of the bunch and  gave them 12 months
>to do it.   How would you organize such an effort?
>First of  all, they would  be  motivated by the  1  million dollars to
>share their  ideas freely (I assume,  unless they are already  rich or
>are not motivated by money which is  also possible.)  Presumably, they
>would   just  go crazy  playing  off   of  each others  brilliance and
>inspiring one another to greatness.  But then they would have to start
>writing code.  If Bob Hyatt was in the group, he might argue for using
>the bit board approach.  But  most of the  other programmers would not
>find this very friendly to their particular approach and would have to
>adapt, or tell  Bob he  cannot have  his  way.  After comming to  some
>mutual agreement (which has a definite chance of not being the optimum
>decision  but might  be)   you will  get to   the  issue  of speed  vs
>evaluation.  Franz will argue  strongly for tremendous speed and tight
>code, but perhaps Ed will find this distasteful or too compromising of
>the  programs  evaluation potential   and will  argue for  more  chess
>knowledge.  Some compromise will be  chosen and one  or both will feel
>that the  ultimate   strength of  the program  has  been  compromised.
>Issues  of using null move for  the selectivity will cause an argument
>between  Bob  and Ed, and maybe  Richard  will argue strongly  for his
>approach which no  one understands but  himself.  Amir  will argue for
>making positional decisions  at internal nodes but  Bob will hate what
>this does to the hash tables or  how he believes it affects positional
>play and will  argue  for dynamic  evaluation at  the end nodes  only.
>They of course will all have their particular  bag of tricks which may
>or may not integrate with the whole project very  well.  No doubt this
>will  cause  a  great deal of    wasted energy figuring  this  out and
>probably  a few  more  bad decisions  will be  made  to spare someones
>feelings.

So what you are saying is that this group of brilliant people who can
individually produce good results cannot work in a group and produce better
results. In fact, you are claiming that they cannot work well in a group at all.

>
>Then we will get into the choice  of language.  Franz and Richard know
>that assembly  language is the  only way to go.   But this may only be
>something  that they are  very  comfortable with.  Someone will  argue
>that this will inhibit the ability  of the group  to work together, so
>this sacrafice will have to be made  for the good of  the whole in the
>spirit of cooperation.  Franz  will know that an important  compromise
>has been made, but of course the others might feel  less useful to the
>group if assembly is chosen, either because they are not as proficient
>at  it, or simply that  they feel expression of  their coding ideas is
>more important given the nature of the project.

Are you saying that given enough resources, time, and manpower, that Frans,
Richard, Ed, Amir, and Bob are not brilliant enough to realize that they can
have two versions of code: one written in C for readability and standard testing
and the other written in a C/assembly hybrid to make it tight and fast? And that
they wouldn't use the services of some assembly guru to write and test it?

>
>Perhaps most  of  the   programmers will   go  along with  the   group
>decisions, but  will feel that mistakes have  been made  along the way
>and secretly will feel that they  could do a  better job on their own,
>especially after being armed with a couple of  juicy secrets that they
>have learned from the others.
>
>The end result, is that this project  is unlikely to produce something
>even  as strong as  the best of the  bunch.  If these  guys get really
>smart, they will share  all their ideas,  but write their own programs
>and  constantly  challenge each  other and  have internal competitions
>among themselves.  There will be no shortage of ideas, but it will not
>come down  to having lots of  ideas, it will  come down to picking and
>choosing the best ideas and integrating them into a single program and
>doing the engineering part right.
>
>But in a year's time,  most of these programmers  would have made some
>progress anyway on their  own.  Assuming they manage  to come up  with
>something somewhat    better, you will   have to   ask yourself  if it
>wouldn't have happened anyway with individual efforts?

You first claim that they would walk away with juicy secrets from each other and
then claim that it probably would have happened anyway individually. You cannot
have it both ways.

>
>I'm not saying that it's not possible for them to succeed, these ideas
>in fact could magically come together if the right chemistry is there,
>and  if in one way  or another, the proper  leadership is applied.  If
>one of  these guys emerge to  become the defacto leader, which usually
>happens in a group to  one extent or another,  and this person has the
>humility  and  genius to recognize  the best  ideas from each  and the
>group  respects his leadership enough to   let him direct this effort,
>then there is a good chance something good will happen.
>
>But I'm kind of skeptical,  being a chess  programmer and knowing many
>chess programmers.  Most of them are great guys, but also most of them
>are fiercly independent and individual thinkers, and I'm not sure they
>are  at their best  implementing someone elses vision   of how a chess
>program  should  be written.   The one  fact  that  most of  you chess
>programmers will have noticed,  is that no  two programs are very much
>alike.  It's amazing how individualistic each piece of code really is.
>And that is why I say it is an art.  No two artists are going to paint
>the same  picture and the  thought  of it would  not inspire  them too
>much.

Have you ever looked at compiler code? Every compiler is vastly unique. They
have similar functionality, but their internals are often vastly different. This
is the same for EVERY programming effort in the world: spreadsheets, databases,
financial packages. WHY? Because they are written by different people with
different skill sets, different requirements, different languages, at different
times. Why should chess programs be any different than other programs?

Show me 2 programs in the top 10 which do not use some form of Alpha Beta
pruning (or a mathematical derivative of Alpha Beta) and I'll concede that they
truly are individualistic. Take the Alpha Beta algorithms out of any of those
programs and they will probably drop below 1800 or lower.

>
>
>Let's not even talk about  what would happen if  you gave this project
>to a buch of microsoft guys who know  little or nothing about computer
>chess!

Yes, let's once again claim that only chess programmers can write a chess
program. Nobody else in the world has enough talent to research, reverse
engineer, design, and implement like we can.

>  In fact,  the very   thought microsoft  trying to take    over
>computer  chess turns my  stomach!  But if they  wanted  to, what they
>would do is simply  buy up  chessbase, Rebel  or whoever caught  their
>fancy.  Perhaps they  would simply hire some of  these guys.   This is
>not particularly innovative, but it would be the most conservative and
>effective way for them to get what they want  and that is how it would
>work.  They would hire their own guys to do some gaudy interface, put
>their name on the box and have a best seller.
>
>
>- Don

Final note. I'm really skeptical about opinions where people say that something
cannot be done (there is a difference between cannot be done and will not be
done, like my thought on no new original OSs in the future). I'm more optimistic
than that. Usually, the people who say that something cannot be done put
contraints on the ideas such as "those guys cannot work together" or "that
company is not innovative". This thread was a philosophical discussion on what
could be done, given an increase in the resources. Also, I am skeptical that
praising people for their talents as individuals and then turning around and
criticizing their ability to work together within a group indicates as great a
respect for them as individuals as claimed.

Let's just agree to disagree.

Keep your chin up :)

KarinsDad



This page took 0.01 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.