Gyassa Software Blog

Jun 22 2011

Rated Multiplayer Competitions

In my idle time, I have been playing various computer games. Some of these games (such as World of Warcraft) feature randomly assembled teams that compete against each other. After playing these team player vs. player (PVP) games for a while, I became frustrated at the total randomness in the quality and skill of the players that were on a team. Elite players dominated and bad players could profit by doing nothing and still be on a winning team.

This frustration brought back memories of other team sports that I have participated in which had similar issues. Years ago I dreamed that such issues might be solved by creating a rating system similar to the one used for chess and applying it to members of team competitions. It would be great to go to a pick up game of touch football or Ultimate Frisbee and know that your teammates were of similar skill and aptitude. But I knew such dreams were fantasies because even if a rating system were possible, there was no way it would ever be applied to real sports. The overhead of maintaining information on all the players (and making players use it) would be quite cumbersome and most players would not play enough games so that a proper rating could be given to them.

However, online computer games do not have these problems. It is easy to track the results of players and it is even possible to track performance data so that it is possible to determine which player contributed more to the team effort. Also dedicated players of computer games tend to play a lot more team matches, usually 1000s of team matches a year. In this case, a real multiplayer rating system (using the Elo system that is used for chess as the base) might be quite possible. How could I demonstrate this? One way would be to create a simulation of players and team matches and then show that a rating system would correctly determine the relative skill of the players to some degree of accuracy. This turned out to be large effort and the results produced many interesting facts, many of them unrelated to the number of players on a team. Because of this, I decided to write an extensive document about what I had done.

Feb 03 2011

Runtime Data Differencing

When a team of developers write code for a fairly large project, they typically use a version control system for their source code. One of the standard uses is to create branches and migrate changes in one branch to another branch. In sophisticated version control solutions such as git, recent changes to one branch can be captured as a package of diffs and then applied to other branches of the code being developed by other groups of users. 

The idea behind Runtime Data Differencing is to apply the diffs at the time the code is executed and not at the time the application is built from source code. This brings some of the advantages to source code control to the problems of complicated application deployments. In particular it can help solve the Component Evolution and the Staging to Production problem. It can also allow an administrator for an application who performs complex administrative tasks to get some of the advantages of a source control system for the administrator's changes.

The focus of the solution is on tables and overlaying tables from a Component on top of the configuration or runtime data of an application. This approach forces a change in how the application is designed and written, but with great advantages gained as the applications evolve over the years.

Sep 12 2010

Why Gyassa?

When we were trying to choose a name for our new company we found that it is quite difficult to find a novel and interesting name that is not already taken. When we looked through the names that were already taken, we found that nautical names and terms seemed especially appealing because they were not overly specific but still had implications of "going places" and "doing useful things". 

In our search we found an attractive picture of a sailing vessel that traveled on the Nile called the Gyassa (or alternately Gaiassa). The boat has lateen sails and is used mostly for cargo. We believe that it sends the right message for our company. We want to create software that is useful and depended on for daily work activities. ...

Sep 02 2010

First Post

This is the first post for Gyassa Software, a newly formed entity owned by Samuel White and Eva Cordes. Sam and Eva are the founding developers for the Stellent "Content Management System" (CMS). Three years ago Stellent was acquired by Oracle and the product became the Oracle "Universal Content Management" (UCM) product. As of last July 2010, Sam and Eva are independently employed and started their new company.

Here are some more links on Sam, Eva, and the CMS product.

The Book on the Stellent CMS Product

Documentation on the Workflow Implemented by Eva

Sam White's First Mathematics Article

This website is being run by XWiki, an open source Java software application that lets you create Wiki and Blog web sites. It is our intention to extend and enhance XWiki to do many more things. In particular, we hope to develop a solution for creating independently developed add-on components that can be easily integrated with each other.  For more on this please see Runtime Differencing Data. ...

Tags:

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 2.4.30451 - Documentation