Author |
Topic: Arimaa community website (Read 6065 times) |
|
Brendan_M
Forum Full Member
Arimaa player #8106
Gender:
Posts: 21
|
|
Arimaa community website
« on: May 5th, 2015, 6:10pm » |
Quote Modify
|
Omar and lightvector have been talking about potentially opening up arimaa website development so it is a shared open-source project I know lots of people have written various tools, websites and clients for arimaa. Doing a project like this on your own is often just too much to do - I personally have found this. However if we all can work together on the same codebase with the backing of Omar this could really begin a new phase for arimaa. If anyone is interested in contributing to this then please say so here and we can start to thrash out a plan
|
|
IP Logged |
|
|
|
lightvector
Forum Guru
Arimaa player #2543
Gender:
Posts: 197
|
|
Re: Arimaa community website
« Reply #1 on: May 5th, 2015, 6:43pm » |
Quote Modify
|
Thanks to Brendan for taking the initiative to open this thread! I've talked to Omar and he has no objections to the beginning of a new website, and would be happy to okay the project (as a non-commercial project it would fall under the third section of the Arimaa public license). Omar also said that he would prefer relatively minimal involvement if any, given his desire to move on to other things after having put so much time into the current site. So I'm envisioning that this will pretty much be a new site (and regardless it would probably be best to redesign the infrastructure ground-up anyways). Who is interested in helping? Let's form a team and find a time to talk and plan things out!
|
|
IP Logged |
|
|
|
arimaaisagame
Forum Junior Member
Arimaa player #10158
Gender:
Posts: 6
|
|
Re: Arimaa community website
« Reply #2 on: May 6th, 2015, 2:38am » |
Quote Modify
|
I'd love to contribute. I can do iOS, android, and some webdev.
|
|
IP Logged |
|
|
|
mattj256
Forum Guru
Arimaa player #8519
Gender:
Posts: 138
|
|
Re: Arimaa community website
« Reply #3 on: May 6th, 2015, 9:30am » |
Quote Modify
|
on May 5th, 2015, 6:43pm, lightvector wrote:Who is interested in helping? Let's form a team and find a time to talk and plan things out! |
| Me! My skills really aren't THAT strong and I look at this as a learning opportunity. I can't make a major time commitment but I definitely want to help. At my day job I do full-stack web development (Java, JSP, Apache/Tomcat, Struts, Hibernate, PostgreSQL, JavaScript, jQuery, CSS). We also use Amazon Web Services for cloud computing, so I know that stuff as well. (Cloud computing is mainly useful when you need to scale for large volumes of traffic or data.) Is the codebase going to be open source and public? I definitely want to be able to put this on my resume.
|
|
IP Logged |
|
|
|
lightvector
Forum Guru
Arimaa player #2543
Gender:
Posts: 197
|
|
Re: Arimaa community website
« Reply #4 on: May 7th, 2015, 10:21pm » |
Quote Modify
|
Fantastic. Yes, I at least would want the code to be open-source, as I think the main way that this is going to work is if it's shared across multiple people and has the ability to change hands as time goes on. This is in contrast to the current website which is largely developed and run by just one person, Omar - which is quite impressive, but hard to make work long-term. I think the first step is to just meet and chat about how to get started. Agreeing on a choice of framework/language, laying out the organization for the pieces that will need to be implemented, finding out who might want to contribute to what part, etc. We can meet in a group chat such as via Google hangouts. (I think a chat is valuable compared to a forum thread due to the faster back-and-forth). How is everyone's availability this weekend up through next weekend? (One might also consider the Arimaa chatroom, although something a little less likely to clutter and overlap with other discussion would probably be good).
|
« Last Edit: May 7th, 2015, 10:25pm by lightvector » |
IP Logged |
|
|
|
arimaaisagame
Forum Junior Member
Arimaa player #10158
Gender:
Posts: 6
|
|
Re: Arimaa community website
« Reply #5 on: May 8th, 2015, 4:52am » |
Quote Modify
|
Open source is good. I was thinking we use Lichess as a general idea of what we want to achieve. How about we have our first meeting after the awards ceremony on Saturday? Google hangouts and skype are both fine for me. I'm in Pacific time.
|
|
IP Logged |
|
|
|
lightvector
Forum Guru
Arimaa player #2543
Gender:
Posts: 197
|
|
Re: Arimaa community website
« Reply #6 on: May 8th, 2015, 12:47pm » |
Quote Modify
|
Meeting after the event tomorrow works for me. If most or all of the people who've expressed interest here reply back by then, let's do it, otherwise let's shoot for a time next week.
|
|
IP Logged |
|
|
|
clyring
Forum Guru
Arimaa player #6218
Gender:
Posts: 362
|
|
Re: Arimaa community website
« Reply #7 on: May 8th, 2015, 3:50pm » |
Quote Modify
|
FWIW, I would prefer chat discussions on ongoing Arimaa web development to occur in the Arimaa chatroom as a first choice. I don't think it's clutter at all. Maybe be willing to relocate if there is concurrent but unrelated Arimaa discussion and the other occupants explicitly request the discussion be moved, but I wouldn't go further.
|
|
IP Logged |
I administer the Endless Endgame Event (EEE). Players welcome!
|
|
|
lightvector
Forum Guru
Arimaa player #2543
Gender:
Posts: 197
|
|
Re: Arimaa community website
« Reply #8 on: May 9th, 2015, 10:49am » |
Quote Modify
|
Good point. In that case, that seems sensible to me too.
|
|
IP Logged |
|
|
|
mattj256
Forum Guru
Arimaa player #8519
Gender:
Posts: 138
|
|
Re: Arimaa community website
« Reply #9 on: May 11th, 2015, 10:10pm » |
Quote Modify
|
Hi all. Lightvector and I are working on the backend for the new Arimaa server. We talked about specifics in the chat room, from 2.5 hours ago until 1.5 hours ago. A brief summary: - The repo is: https://github.com/lightvector/arimaa-server
- We'll be using Scala.
- lightvector: "I think the first actual thing that I want to do is to implement the Arimaa rules in the language (game state + making moves + move legality checking)"
- lightvector: "the first target point I would say is to have something capable of playing a game and reporting and updating via GET and POST the game state (even if it only has one game as the state, etc)"
- lightvector: "awesome - if you have enough to get started, then we're good to go - for my part, I will begin by renting a server from Amazon and then attempt to get a vanilla "hello-world" http server working"
Time for me to learn Scala...
|
« Last Edit: May 11th, 2015, 10:19pm by mattj256 » |
IP Logged |
|
|
|
rabbits
Forum Guru
Arimaa player #1337
Gender:
Posts: 108
|
|
Re: Arimaa community website
« Reply #10 on: May 13th, 2015, 10:26pm » |
Quote Modify
|
I am interested in helping with this project. I have put a lot of effort into making an Arimaa website, and I have learned quite a bit of web development as a result. As a matter of observation, my motivation for projects like this waxes and wanes. I do not want to over commit myself right now. I only glanced at the chat archive that mattj256 mentioned. Scalatra is an interesting choice, and I like it given that I like trying new frameworks. And I've been interested in Scala for a few years now. It looks like there are a lot more decisions to be made about what technology to use. My version of the site is written in server-side Javascript using NodeJS and ExpressJS. It talks with a MongoDB database and a Redis database (for session data). I had an ElasticSearch database set up at one point to search the forum text too. The site uses both jQuery and AngularJS on the client side. And there were a ton of other decisions about how to do authentication, sockets, etc. I was relying on scraping Arimaa.com to get all of the relevant data and keep it up to date. This was actually a pretty big task, partially because the current HTML has very few IDs and class names. If we have a way to get the important data directly, that'd be easier. Test driven development, especially in a communal project of this size, is important. That's my quick 2-cents for now. This is an exciting project! I look forward to seeing what we come up with!
|
|
IP Logged |
|
|
|
arimaaisagame
Forum Junior Member
Arimaa player #10158
Gender:
Posts: 6
|
|
Re: Arimaa community website
« Reply #11 on: May 17th, 2015, 5:21pm » |
Quote Modify
|
Hello, Now that other things are winding down I think I can start writing some code. Brendan hasn't been online in a week and I'm not familiar with closurescript so I was planning on porting most of his existing stuff to some javascript. Rabbits can we see the source code for that project? That would probably be very useful to look at. I've been working on this for a while and its also using MEAN. Its not done of course but I think I'll prioritize the new website over this. http://arimaa-puzzles.herokuapp.com/
|
|
IP Logged |
|
|
|
leo
Forum Guru
Gender:
Posts: 278
|
|
Re: Arimaa community website
« Reply #12 on: May 21st, 2015, 7:28pm » |
Quote Modify
|
Oh, I've missed the start of it! Is the plan to use one language at the risk of ending up with only one person able to maintain and extend the code, or to allow multiple languages and modules that interact? If the latter, I would suggest laying out the architecture so that the modules communicate swiftly and don't tread on each other's toes. If the former, that looks like the thing to do as well Client side, for the game board, do you favor html canvas or svg or image elements? I lean toward canvas for its versatility and smooth display although it makes interactivity a bit harder to code. For the chat, I have that js object/module in the works, aiming at multi-instancing, multi-channeling, game position display, alternate game notation encodings, more commands, events, formatting. In the previous thread I asked about how to make it work with the new server (and new client), as it is currently devised to work with the current chat server.
|
|
IP Logged |
|
|
|
lightvector
Forum Guru
Arimaa player #2543
Gender:
Posts: 197
|
|
Re: Arimaa community website
« Reply #13 on: May 24th, 2015, 8:48pm » |
Quote Modify
|
Hey Leo! What would you like to work on? The current plan is to in parallel: 1. (underway) Write a back-end in Scala to serve as as a new gameserver that communicates via RESTful json. Also, the library being used for the web communication has good support for websockets too, so we have the option of that in the future too. 2. (planned but not quite started, but possibly can draw on bits and pieces of code that people independently wrote on earlier projects) - Write a front-end that can talk with the existing Arimaa gameserver to play games right now, keeping in mind that we will want to switch/add the ability to communicate with the new gameserver once it's working. I think this has not started yet mostly because the primary people interested in working on this part (and who have the most experience in the neighborhood) haven't quite had time yet, but from what I can tell we can probably kick things off after the next week or so. It will likely be possible to work on chat/game interface/misc tools somewhat separately. Oh, and updates for the back-end for (1): Basic board data structures are implemented, and we now have a "hello world" webpage up served via Amazon AWS and Scala. Long way to go still, but nonetheless - Yay! http://playarimaa.org/ https://github.com/lightvector/arimaa-server Next up, for me at least, is working out the API for talking with the server, getting more experience with the web library being used (and also figuring out how data storage/databases will work).
|
« Last Edit: May 24th, 2015, 8:51pm by lightvector » |
IP Logged |
|
|
|
leo
Forum Guru
Gender:
Posts: 278
|
|
Re: Arimaa community website
« Reply #14 on: May 31st, 2015, 3:57am » |
Quote Modify
|
Hi Lightvector and all, Thank you for the summary and updates! First suggestion I have for the html client is to use html5 with proper doctype and utf-8 encoding throughout to avoid inconsistent rendering and text handling across modules and browsers. The API! Great! I would like to discuss this, so that we can all start figuring out how to efficiently plug into the system. "Namespaces": Not really part of web techniques but workarounds exist. For instance the CSS selectors can be devised to prevent collisions by setting up root selectors than act like namespaces and allow every interface module to have their own common styles such as .selected and stuff. I will write some documentation about my new chat module. I think that ideally it would store the data in a database using the common database management of the server, especially if it is extended to handle game chat additionally to the common chat. The current chat is totally disconnected from the rest. Gotta run, I will write more tonight.
|
|
IP Logged |
|
|
|
|