Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: M$ goes Chess?!?

Author: Christopher R. Dorr

Date: 12:06:29 01/06/99

Go up one level in this thread


On January 06, 1999 at 13:28:05, Eugene Nalimov wrote:

>On January 06, 1999 at 10:21:59, Christopher R. Dorr wrote:
>
>>On January 05, 1999 at 20:29:57, KarinsDad wrote:
>>
>>>On January 05, 1999 at 19:35:23, Eugene Nalimov wrote:
>>>
>>>[snip]
>>>
>>>>>I agree that collaboration is very important. But which do you think is going to
>>>>>produce the better outcome: two world-class leaders in the field (with vast
>>>>>amounts of prior experience and education in the field between them) or one team
>>>>>leader, and 50 fantastic programmers, who know *nothing* about chess
>>>>>programming?
>>>>
>>>>Why do you think that optimal group will be "1 leader + 50 fantastic
>>>>programmers"? I'd suggest something like "1 leader + 2 grandmasters +
>>>>5-7 fantasic programmers + 5 very good testers + 1 specialist on
>>>>particular CPU architecture + 1-2 administrators + 2 fast computers
>>>>per developer + lot of *very fast* test computers". And I'm reasonable
>>>>sure that such a team will produce much better results than team that
>>>>consist of just 2 leaders.
>>>>
>>>>Eugene
>>>
>>>Chris,
>>>
>>>I agree with Eugene. Obviously, "50 fantastic programmers, who know *nothing*
>>>about chess programming" isn't going to cut the mustard.
>>>
>>>Hence, you would use a sophisticated team of computer software developers
>>>including testers, technical writers, managers, accountants (well, maybe one
>>>accountant), researchers, reverse engineering specialists, AI experts, chess
>>>programming experts, and possibly a few of us grunts who are really interested
>>>in it (plus a bunch of people I neglected to mention).
>>>
>>>Well, I have to go to the chess club. :) Darn!
>>>
>>>KarinsDad
>>
>>Can we toss in a couple of lawyers?! I know a couple of them that I'd love to
>>send to Seattle for while.  :)
>>
>>Seriously, though, I'm not disagreeing that MS could make things better. The
>>could make interfaces much better, opening book editors much better, databases
>>much better and easier to use. But my issue here is more about the role of
>>large-team based software engineering and a project like chess programming. I
>>simply disagree with the quoted MS manager who said that MS could easily and
>>significantly 'blow away' what currently exists.
>>
>>I don't think that a large team (as talented as they might be) would advance the
>>state of the art to any large degree simply because of the nature of the task. I
>>don't think that chess programming lends itself to the necessary partitioning
>>that would benefit from having a large team work on it.
>>
>>I believe that a program like a chess program (or a specialized modeling
>>program, etc. ) is fundamentally different from a large application. It's
>>inconceivable that a single programmer could put together a world-class word
>>processor or spreadsheet today. No one person can write a million lines of code
>>in a reaonable amount of time.
>>
>>But a chess program? Crafty is world-class, and it's source fits on a single
>>disk. How would a team of programmers be any more efficient than Bob by himself?
>>The code doesn't partialize out well. Of course he could benefit from a
>>full-time GM, or a tech writer, but I feel that a single person (or *very* small
>>team) would be at more efficient in producing the core functions than a large
>>team. To me, it's just the nature of the beast.
>>
>>Chris
>
>Ok. Here is the example: good optimizing C compiler. I'm not
>talking about great effort necessary to confirm with C++
>standard, about MFC classes, about different libraries,
>etc. - just about code quality. Look at MS Visual C/C++.
>If you'll ask "What x86 C compiler generates the best
>(fastest) code", you'll have to admit that VC is *the*
>answer. Ask Bob. Crafty - without any assembly routines -
>is at least 10% faster when it's compiled with VC than when
>it's compiled by other C compiler.
>
>I'd bet that size of the optimizer and code generator is
>comparable with size of the modern chess engines. Maybe it's
>2 times larger, but not 5 times.
>
>Yes, it's part of the huge application, MS Development
>Studio. But that part is still the best.
>
>Eugene

No argument here. MS has always made some of the very best development tools.
But this also goes to something I mentioned, in a way. Compiler design and
optimization are pretty arcane and complex subjects, much like chess
programming.

Ask the development team how long they've been doing compiler stuff. My guess is
that many of them will say 'A long time'. Take a group of application
programmers, with no experience in compiler stuff except, perhaps, for a
compiler design course in college. How long do you think it will take to ramp up
to being as good as the current VC++ team? My guess is that it would take quite
a while. Maybe a couple of years. Until then, they won't be writing world-class
compilers. After that, they'll be competitive.

Take this same group of talented engineers and programmers, and throw them into
the chess programming group. I feel that it would take them a similar amount of
time to ramp up to the point where they'd be producing state of the art code. In
2 years, perhaps they'll be hanging with Ed and Bob, but until then, I feel they
won't be as good.

I feel that it is the nature of the beast. Has nothing to do with MS or anyone
else; it simply takes significant amounts of time to get very good in a complex,
advanced field like compiler design or chess programming. And until you reach
that point, you really can't add much to the 'state of the art'.

Chris



This page took 0.02 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.