Thanks for taking the time to check it out. This was a "weekend hack" for me -- really, two weekends since I implemented Ko enforcement and a few other requested features the weekend after the original code was written.
The project is an open-source AppEngine application. The source code is up on GitHub; it is released under the AGPLv3. This was a hack, so don't expect the world's finest code base! http://github.com/davepeck/appengine-go/tree/master
Please send your suggestions (or, better, patches) my way. Happy Go!
This version of Go is played by correspondence. Email or twitter is required. There are no "accounts" on go.davepeck.org -- just people playing the game via their preferred contact mechanism.
Are you using the Japanese or Chinese scoring system?
EDIT: Also, I'd like a way to send a message to the person I'm requesting to play with. I checked to see what the message was like and for someone who doesn't know what it's about might be confused, even consider it spam.
Now that it is open source, I'm aware of at least two efforts that will provide tools to help with scoring once the game is finished. Currently scoring is up to the players after the game is done.
As for the message: interesting. It says, effectively: "Someone started a game of Go with you; click here to play." Is that really so confusing? What would you say instead? Do you want control of subject, message contents, both?
It's just that the message sounds a lot like that website that mass-emailed people with the message "someone wants to share pictures with you, click here to see them" or something like that.
A simple textbox containing some optional text to be sent along with the email to provide some context would be nice.
As for the message itself, maybe adding some of the game details such as board size and each player's colors? For someone who knows Go this would make the email seem more legitimate. And/Or you could add a "What's this" at the email's bottom that's only added to game invites that briefly described your app.
Damnit, I know Python, time to check out the code and stop writing lists of stuff you should do!
Nice work! It's great to see a fellow go-playing hacker on HN. I'm the author of EidoGo (http://eidogo.com/, http://github.com/jkk/eidogo/tree/master), which is JavaScript-based, open source, and has features like branching and labels. Feel free to steal any of my JavaScript; I'll certainly be taking a peek at yours :-)
I played with your site and it's really nicely done. Following your project on GitHub now. Good to know about this; I've discovered a few other Go+GitHub types in the past few months. Cheers.
To explain the history a bit: I originally wrote this site so that I could play with my friends, whose email addresses (and twitter accounts) I know. That's why there are no accounts on the site itself right now. (And as I've mentioned elsewhere, accounts starts to look more like other services I know, so I'm less excited about going that direction.)
The site has enough traffic these days that I could imagine a match-making service that didn't require an account; you just get in line and give a rough sense of how good you are, and when a match is found both players get an email (or twitter) and away they go.
Does this sound like a good feature? I think it would be easy to add!
Yeah. I'm starting to think that my site best serves people who are new to Go, or who are casual about it, and want to play some fun games without worrying too much about all the complexities. So having tutorials about the game, including this kind of information about Kyu/Dan (especially in the match-making section of the site) I think makes a lot of sense.
First off, I love it that you made a game without flash. way to stick it to the man. I also have some javascript games on my site http://kidbuilder.net
To improve it: Why not add instructions? I'm not sure how to play. Also, The main page is just a little taller than the screen on my hp laptop. I had to scroll down to find the play link.
Drat! I tried to be careful about the size of the main page so that you'd never have to scroll. What browser, and what screen resolution do you have? I will correct for it.
I definitely intend to add instructions to the site soon. I also want to add full-on interactive tutorials so that new players can learn the game. But... time! :-)
If you need any advanced features, or you want to play for rank, DGS is the place to be.
If, on the other hand, you want to casually play games with friends, my site is probably better suited to that. My site has (in my opinion) much nicer visuals & interface, but most importantly it is easy to play with anyone you like -- they don't need to have an account.
I am contemplating adding accounts and rankings in the future. But then I would stray into DGS territory.
Wow, this is drop-for-drop exactly what i wanted to make for chess, because i wanted to play with friends over email. I went as far as to write the valid chess move logic, I just never set up the web app. Cool stuff, thanks, i've been playing Go for 4 hours!
Chess like this would be a lot of fun, too. By all means, use whatever of my code is useful to build a similar chess service. (Note, though, that my Go service is under AGPLv3 which is a very restrictive/viral license.) Cheers.
This is great! If it were possible to play against people I didn't know I would use it all the time. I've annoyed friends for years trying to get them to play.
I originally designed this site so that I could play with _my_ friends, which basically meant I wanted to challenge them via email.
As a result, the site is (currently) correspondence rather than account-based. If you want to play with strangers, Dragon Go Server is the place to be.
I am thinking about adding accounts and rankings in the future but if I do so, I want to make sure I can differentiate enough from DGS to make it interesting to people.
Cool, good to hear this, and I was hoping to have discussion about the toggle controls.
There are only two toggleable options on the entire site that would be better served by a combobox. The rest are binary. The two in question both appear on the sign-up page and both are rarely used (based on the site statistics.) Therefore I opted for the less "correct" (and less usable) but more visually consistent option.
If all you're doing is spinning those two options around to test the site, then yes it certainly could be annoying. But my hunch is that for the average use case, it's just not a big deal...
As it happens, I watched Helvetica a few days before I built this site. I had in mind the typographer who was viscerally angry about Helvetica's popularity; he described Helvetica as "textual dung." I decided I disagree!
Apparently it’s a webkit thing, done for performance reasons. On IRC, it was claimed that when they last tried it, kerning slowed text rendering down 25% (because it makes it impossible to cache some glyph metrics or something), but that was apparently quite a while ago, and they said it "might be a good idea to test again".
I wrote more about "weekend hacks" here: http://davepeck.org/2009/01/26/weekend-hack-1-go/
The project is an open-source AppEngine application. The source code is up on GitHub; it is released under the AGPLv3. This was a hack, so don't expect the world's finest code base! http://github.com/davepeck/appengine-go/tree/master
Please send your suggestions (or, better, patches) my way. Happy Go!