Where's the joy in writing a chess engine?

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Where's the joy in writing a chess engine?

Post by Henk »

Tony P. wrote:
duncan wrote:
Rebel wrote:
Tony P. wrote:Even then, it puzzles me that some people like to have a hobby that reminds them of their jobs. I'd rather have a hobby that's orthogonal to the job, to forget about the job at least for a while.
I can't imagine a programming job that is more creative than chess prgramming.
more than go programming ?
Generally, I don't like the distinction between a job and a hobby. Somehow I fail to enjoy anything that doesn't make at least a modest profit, maybe because I can't afford to retire yet but dream of retiring asap.
If your goal is to create an original top engine then you better forget that for at least testing/tuning is expensive.
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Where's the joy in writing a chess engine?

Post by Henk »

emadsen wrote: However, chess programming is not my only hobby. Last year I ran the Chicago marathon. I'm running it again next month. Training is a major time commitment, but I find the physical demands of marathon training- and the time spent outdoors- a pleasant distraction from the world of chess and computers. So yes, it helps to have other hobbies.

If you suddenly have to stop with marathon training you grow fat. So excessive physical exercise may be dangerous. But I don't know.
adams161
Posts: 626
Joined: Sun May 13, 2007 9:55 pm
Location: Bay Area, CA USA
Full name: Mike Adams

Re: Where's the joy in writing a chess engine?

Post by adams161 »

Depends what you want to do. If you are trying to make a top engine and you want all the latest theory and scientific development you probably do need to be more professional in programming background. But there is olympic sports and just back yard sports. There can be a lot fun in saying "I made a game".

I started my Pulsar Chess Engine in late 1998 from scratch and got it over 2000 ICC Blitz rating not long after. Now it was a weaker engine compared to the top ones out there at the time like Crafty and TheCrazyBishop. But I logged it on it's computer account and it played lots of games. And i'd watch it and see something and think hmm how can i fix it so it doesn't so easily fall for people sacrificing material and storming it's King.

Now my background in 1998 when i started was doing BASIC programming in Junior High and in college taking Intro to C and Data Structures with C. Programming wise as an adult i'd messed around making a couple of VB Dos games between finishing college and when i started Pulsar.

Sometimes it's fun just to make something like a game of your own. And a lot of people have enjoyed playing it over the years. I've since branched it off to play some variants like Atomic, Loser's and Crazyhouse and its in the App store now. The App store program's UI is not real fancy but it's the same engine code i used on computers. https://itunes.apple.com/us/app/pulsar- ... 40447?mt=8
User avatar
gbtami
Posts: 389
Joined: Wed Sep 26, 2012 1:29 pm
Location: Hungary

Re: Where's the joy in writing a chess engine?

Post by gbtami »

Henk wrote:
emadsen wrote: However, chess programming is not my only hobby. Last year I ran the Chicago marathon. I'm running it again next month. Training is a major time commitment, but I find the physical demands of marathon training- and the time spent outdoors- a pleasant distraction from the world of chess and computers. So yes, it helps to have other hobbies.

If you suddenly have to stop with marathon training you grow fat. So excessive physical exercise may be dangerous. But I don't know.
Amateur long distance runners are running for joy. This is a life form, an addiction. If you have to stop it suddenly it will be probably because some kind of illness. You count the days when you can run again. But when you feel better you restart it. First with shorter distances of course.
User avatar
emadsen
Posts: 434
Joined: Thu Apr 26, 2012 1:51 am
Location: Oak Park, IL, USA
Full name: Erik Madsen

Re: Where's the joy in writing a chess engine?

Post by emadsen »

If you suddenly have to stop with marathon training you grow fat. So excessive physical exercise may be dangerous.
Amateur long distance runners are running for joy.
Right. I'm fully aware that most of the health benefit is gained at much shorter distances, provided you run a few times per week. I view a marathon as more of a personal challenge than a quest for health benefits. I have the same view of chess programming- it's a personal challenge, not a quest to win anything.

Everything in moderation- whether running, chess, or programming.
There can be a lot fun in saying "I made a game".
Totally agree.
My C# chess engine: https://www.madchess.net
Henk
Posts: 7216
Joined: Mon May 27, 2013 10:31 am

Re: Where's the joy in writing a chess engine?

Post by Henk »

Henk wrote:
emadsen wrote: However, chess programming is not my only hobby. Last year I ran the Chicago marathon. I'm running it again next month. Training is a major time commitment, but I find the physical demands of marathon training- and the time spent outdoors- a pleasant distraction from the world of chess and computers. So yes, it helps to have other hobbies.

If you suddenly have to stop with marathon training you grow fat. So excessive physical exercise may be dangerous. But I don't know.
When you do exercise you need more food. So you start eating more. But when you stop for a longer period of time you should also eat less. And that's some don't do so they grow fat. You don't grow fat by eating air. Fat doesn't come out of nothing.
Ras
Posts: 2487
Joined: Tue Aug 30, 2016 8:19 pm
Full name: Rasmus Althoff

Re: Where's the joy in writing a chess engine?

Post by Ras »

Tony P. wrote:Namely, writing an engine can only be enjoyed by someone who already does software development as a job.
True here, though the motivation was a bit different. I saw an exciting Cortex M4 evaluation board: 1 MB flash-ROM, 192 kB RAM, 168 MHz, 15 EUR. Wow!

I'm in embedded systems development professionally, but I have not yet had the opportunity to work with these MCUs, and I wanted to to something with such a performance beast (for a microcontroller). So I came up with the idea to build a dedicated chess computer around that.

It's also a nice reference project in case I'd look for a new job, I guess.
AlvaroBegue
Posts: 931
Joined: Tue Mar 09, 2010 3:46 pm
Location: New York
Full name: Álvaro Begué (RuyDos)

Re: Where's the joy in writing a chess engine?

Post by AlvaroBegue »

Tony P. wrote:Namely, writing an engine can only be enjoyed by someone who already does software development as a job.
Not true. Although it might be true that writing an engine can only be enjoyed by someone whose brain works like that of a professional programmer.

I started writing my checkers engine when I was 17, about 8 years before I became a professional programmer. I started my chess engine while I was studying math in college.

I ended up having a career in software development, although my current job involves more math than programming.
User avatar
Ponti
Posts: 493
Joined: Wed Mar 15, 2006 6:13 am
Location: Curitiba - PR - BRAZIL

Re: Where's the joy in writing a chess engine?

Post by Ponti »

I´m not a programmer, but I think it must be a joy to write a program that can beat Kramnik, Anand, Vachier, Aronian... or help them to beat Carlsen!

:lol:
A. Ponti
AMD Ryzen 1800x, Windows 10.
FIDE current ratings: standard 1913, rapid 1931
S.Taylor
Posts: 8514
Joined: Thu Mar 09, 2006 3:25 am
Location: Jerusalem Israel

Re: Where's the joy in writing a chess engine?

Post by S.Taylor »

Tony P. wrote:I have a conjecture that I'd like to check with the forum residents.

Namely, writing an engine can only be enjoyed by someone who already does software development as a job.

The thing is that the actual development is too stressful for an uninitiated person. Algorithm design in terms of pseudocode is much easier than making code actually work fast and as intended on real-life hardware. The latter is a huge problem that constrains one's fantasy.

Thus I suppose that coding an engine can only be enjoyable if one is already very disciplined at debugging and testing and has a very strong mindset that's not ruined by numerous bugs that inevitably happen (and, to make things worse, in chess programming, bugs tend to harm the engine's strength subtly instead of making it crash).

The reason why there are people who enjoy this utterly stressful hobby is perhaps that their main jobs are even more stressful and this hobby is something that sounds familiar but provides 'relative relaxation' because bugs in toy software like non-commercial chess engines don't have a monetary impact and thus don't place responsibility.

Even then, it puzzles me that some people like to have a hobby that reminds them of their jobs. I'd rather have a hobby that's orthogonal to the job, to forget about the job at least for a while.

Or am I missing something?

Anyway, thanks a lot to engine authors for suffering in order to provide us, mere mortals, with entertainment :!:
Maybe if joystick if you use one.
That's about IT.

(I guess)