An interview with Gabriel Benmergui (aka 'DexMorgan' 7d) - creating a new Go Server: Kaya.gs
Q: Could you
please introduce yourself to our readers?
A: My name is
Gabriel Benmergui. I am known on KGS as 'Conanbatt', 'DexMorgan', 'danigabi',
and by many other nicknames over the years :). I am from Argentina, born and
raised. I have studied Go in Korea for short periods of time, and in my day job
I am a software developer.
Q: When did the
idea of creating a new Go server first came to your mind?
A: The thought
crossed my mind long ago, but then I decided there were smaller ventures easier
to do. My professional expertise did not help me to make websites, so instead I
chose a smaller goal: a Go School. That was the Atsumi Go School, which had
over 60 students for the 6-7 months I run it.
Right
after the third month, I wanted to have some tools to administer the problems I
was giving to my students, and so I thought of creating a website for that. So I
started looking for a web-developer job to get the skills to do it myself.
In
the meantime, my dealings with KGS concerning my school were fruitless; I had
to do everything by myself, which was difficult, considering that I didn't have
the reputation of other teachers like Guo Juan 5p or Cornel 7d (whom I much
respect for his profession).
Several months later, I realized that I had
honed the skills to make a Go server, and it become a natural goal.
Q: You stated
that you want to 'replace current servers [that] run on Java applets and
desktop applications'. What do you consider to be the main
advantages/disadvantages of browser applications, when compared to desktop
applications?
A: Accessibility
and flexibility. Let me explain each with an example.
I was
once talking with a female friend online who was very curious about the game,
and she wanted me to teach her how to play. I immediately realized that I could
not show her a board in a single link, and chat & play there. Most of the options
which allow that are very poor and non-server like. Yet telling someone who
knows nothing about Go or Java applets to go to the KGS website, perform
several clicks, accounts, buttons, etc, has great friction. A web-based
application would allow you to share whatever is inside the server with a
single link & click. That's really accessible, and it was one of the
features that made KGS favored over IGS almost 10 years ago.
Regarding
flexibility, the point inside a browser is that not all elements inside it have
to be yours. Imagine logging into the server and being able to open up a small
window that has GoSensations news right there, in the same page. Or being able
to watch a Go video or feedback at the same time you are chatting or playing a
game.
Doing
it in a web-browser means that someone else can publish a video, and we can add
it to the server, without having to talk, discuss, send emails, wait for approval,
and see if a developer is able to make the change to fix this new content.
Q: Many people
really like KGS because of its teaching tools for game reviews (and lessons).
Are you preparing something similar for Kaya.gs?
A: The KGS
teaching tools are by far the best out there. I am confident that we will
eventually match the very same tools and also provide new and exciting features
for that. One of the first ones that we will easily support is that teachers
can give video feedback to their students or attendees, without requiring a
teaching account or any bandwidth restrictions, as it will be Peer-to-Peer.
Q: Do you have
any special strategy to attract strong players (if possible professionals) to
the server?
A:We have some ideas, but that is going to take time. I will be spending some
time in Korea after the KPMC [Korea Prime Minister Cup] specifically to talk with
professionals and form a solid strategy. We have definite and concrete
strategies to attract the strongest players from the West, which are one of our
immediate targets.
Q: How will the
rating system on Kaya.gs work? (Is it going to be like KGS or Tygem?) Which
rating system do you personally prefer?
A: This is the most difficult point :). I will make a thread in the L19x19 Forum
and discuss this with the community. Rating systems never leave everyone happy.
What
I definitely don't like in KGS - it is unacceptable for me - is that people
make many accounts. To me that's a sign of failure, and I'd rather have a less
"accurate" and transparent point system like WBaduk to avoid that
effect. But those aren't the only two options. In the feedback section of
Kaya.gs people have suggested having double ratings: one for blitz and one for
slow games. There are many ideas and systems to discuss before making a
decision.
Q: Having a
nice environment and a sense of community in the server is one of your
ambitions. How are you planning to handle the conversation there? (Will off
topic discussion be allowed?)
A: Of course :). There is no chatter without off topic. Regarding chatting tools,
we have the following ideas:
a)
Game chatter has 2 "channels". Off topic and purely Go. So people
that just want to chat about pizza or Korean vs. Japanese pro ranks (which are real
KGS conversations) can do it, while people that just want to discuss Go won't
be overwhelmed.
b)
We want to have a more feature-rich chat, and incorporate commands like IRC.
For example, by writing someone's name, that person reads your comment in bold,
calling for your attention.
Q: We are
curious as to what your 'escaper' policy will be. What do you think is the best
way to treat escapers?
A: It is clear
to me that the Asian way is the way to go. That is, disconnections cause losses
after X minutes. The KGS system looks good in theory, but most of the games
that got interrupted never get finished, and those that do feel weird. And
worst of all, the first thing you read when you enter KGS is what you shouldn't
do about escapers. It provokes too much response. It is better to forget about
it and play another game :).
Q: Will
it be possible for users to customize Kaya.gs (particularly through the
creation of community-made desktop applications for those who prefer them)? Are
there any plans in this area?
A: When we
reach a certain level of maturity we will open-source parts of Kaya.gs, most
likely the client ("The Board") and the widget creation. Widgets are
small pieces of code that are self contained and unaware of other parts of the
page: they purely talk to the server or an outside site. The idea of making
widgets is that the community will be able to make one, and we can insert it
into the server, knowing that it won't affect the rest.
Our
prime example is the ASR [Advanced Study Room, a famous room on KGS] widget.
Figure that if you play in the ASR League, you can have a small box with
statistics on your play there, your missing games, your opponent stats, league
stats, etc. The whole point is that the ASR guys can make the statistics, and
we can include them in the site.
Q: Somewhat
related to the last question: will it be possible for bots to run on your
server?
A: Definitely
:). (That was an easy one...)
Q: Regarding
how to get a game on Kaya.gs: will the pairings be negotiated (i.e. match
offers) or automatic?
A: This is a
good question. I am experimenting with a model right now on our development
server which is pretty similar to KGS' open games, but it has less friction (it
requires less attention and less clicks to start the game). Supporting
automatch is likely.
Q: Will
the games played on the server be saved and available to the public?
A: Yes, and even
more: we will make a server where certain operations can be done on the game
database. Potentially pattern searching, or other things like special searches.
Q: One
promising aspect of Kaya.gs is that the players will be able to "host video
conferences or audio lessons as much as they want and without limit". Please
mention some other exciting features that you are planning to implement on the
server.
A: The
development "backlog" (the list of features we have already decided on
doing) is very exciting.
Some
delicious teasers:
- Fake
betting;
-
Sharing game variations and reading them dynamically on the board;
-
Game scheduling;
- Community
organized tournaments and leagues;
- Integrated
training tools;
-
Karma system;
- Following
of players (getting notices when your favorite players get online or play);
-
Tournament video feed while watching a game;
-
Included Go videos/shows inside the server;
-
A room & channel system, where you can access spaces sponsored by the
server and get special and unique features related to communities or services, and
where you can create any space to chat with your friends, clubs or anything
else;
-
Being able to do pattern searches or consulting joseki dictionaries directly on
the board of the game you are watching;
-
Server currency that you can purchase or gain, and utilize to get lessons or
materials from retailers, teachers and different services;
-
The ability to send the game you played to get reviewed by a community or
private service with a single click;
-
etc etc.
Q: Some of our
readers mentioned that they would like to see a server with better graphs
(visual interface: colors, etc) than what we have on KGS. Overall, people seem
to like the Kaya.gs prototype: have you been getting good feedback?
A: The
prototype was drawn by a recommended designer we have, and we liked it very
much. I fell in love when I saw it, and that was before we made loads of fixes
on it. My partner, Polly, has a keener eye for design and he said "we can
do much better".
As
I know, everyone liked the prototype a lot, although some people were worried
that the colors were too bright. (They are used to grey, I suppose :).)
Readers
can tell their opinion on our site, we have a feedback section where you can
suggest things and even vote other people's suggestions.
Q: You
mentioned quitting your job so that you could work full time on the Kaya.gs
Project, and that is why you are asking for donations. What is your situation
at the moment?
A: The quitting
day has been set already. By September 5th, I will be 100% devoted to
Kaya.gs. This is definitely happening. Donations are a really big boost to us
because they will allow us to make a better first version fast, without
worrying about money for a few months.
We
are looking for other ways to finance it; in the ultimate case we will fund it
ourselves. The communities' help here is vital to our prompt success as each
hour we spend looking for funding through investors is an hour we are not
adding previously mentioned features.
Q: What would
you say are the chances that the Kaya.gs project will succeed? Can you give us
some estimation of when it is going to finish?
A: The server
itself is in a quite advanced stage, we have been working on it since April
part-time. We are not so far from a first functional version.
We
have played in our internal developer servers, chatted away, made channels,
opened games. However, there are still many things to polish, especially the
user interface. We will go out as soon as possible, but no sooner.
We
are hoping to make a showcase in the KPMC, as I am representative for that
tournament, so 70+ of the strongest players in each country in the world will
get to see it. Of course, our already 30+ supporters will enjoy a private
showing before that happens.
We
estimate to have a very nice featured application by December. It will not have
all the features that current servers have, as you can imagine that takes time.
But more importantly, it will already have features which no other server ever
had, will have or are even able to have.