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.