As part of the process of shutting down the project, I am moving domains. Both http://justcheckers.org and http://justcheckers.net will now redirect to http://justcheckers.dorianpula.ca. I will be putting those domains up for sale, so if you are interested please contact me via email at: dorian.pula at amber-penguin-software dot ca.
After the madness of the past few months, I have a bit more free time to work on justCheckers. Not that the fast pace of the last few months has subsided. I just managed to catch up on other projects and free up time here and there. 🙂
The first order of business will be to clear out the old code and get a working Android version of the app. Along the way I will add in unit tests and hopefully make it easier for other people to come out and help with the development.
I just finished migrating the website to a new install and a new hosting service provider. Hopefully everything worked smoothly, and development on the game can begin again proper.
Amongst the various changes that I have planned for justCheckers, I have updated the website. I hope you like the new theme, which I think is much cleaner (even if it is the default) than before. Also I have updated the content of the website, to reflect the new changes.
Probably the most notable change is that I have taken down the Development Guide. Many things will change with the project, as I change it into an Android app. Many of the best practices no longer apply, now that I have transitioned over to Git. Since at the moment I am the sole developer of justCheckers, I think it is pointless for me to keep up a Code of Conduct or Coding Style page up. Many of the changes I will do over the next little while will be invasive, so my code will be of varying style and quality. My many goal is to release a working version as soon as possible.
Before anyone asks: no I am not closing up the project. The code will still remain free (as in speech). I plan on maintaining the project indefinitely. justCheckers is not going to disappear or suddenly become proprietary. However I have a lot of ground I need to cover before I feel comfortable bringing on more developers.
justCheckers is getting with the times and moving over to using Git as our main revision control system.
Git is a much more flexible system and I can manage contributions from the community. If I hesitated with giving out commit access, it was because there is far more trouble with dealing with merging code and dealing with radical changes in Subversion than in Git. So I am a lot more willing to reopening the project to a full team.
I will update the downloads page with instructions on how to access Git later this weekend. In the meantime, feel free to visit the justcheckers SourceForge project page for instructions on how to checkout the code in Git.
The move to using Android as a base for justCheckers is going well. I’ve already managed to setup a nice looking user interface. And the information screens work without any problems. All that remains is to build a settings screen and the game screens. This entire project is still a work in progress and so I expect many changes as the project matures.
Another thing I realized is that at the moment I do not need a team of developers to build justcheckers. At least at the moment, I can get more done without worrying about coordinating a team. I might ask for contributions at a later date, but for now I’m going to fly solo.
I added an initial roadmap for the justCheckers project. It is a bit spartan, but hopefully it will help everyone who wants to contribute on the same page.
Yesterday evening I imported the last of the content from the developer’s guide from the old justCheckers site. I didn’t import any of the even older web content, since most of that was redundant and old. On one hand, I would like to show for my progress back in university. On the other hand, I don’t since I made some rather glaring mistakes back then. Back in university, I attempted to run justCheckers as a professional open source project. Of course, being new to both professional programming and project management I made some fairly easy to avoid mistakes.
For the time being, I can say that all the relevant content is in now on the site, and is properly organized. Hopefully, I’ll be able to get back to developing justCheckers again. But first I want to make the site look less of a default Drupal install. Don’t get me wrong, I like Drupal default themes. However the justCheckers project has a unique style to it, and that should reflect in the look and feel of the site. I plan on using a theme based of the static theme work I did earlier.
I’m putting my involvement with the justCheckers project on hold for a while. Progress ground to a halt when I started to dig into the code. In its current state most of the application’s core functionality needs reworking. Meaning to go forward someone would need to reimplement slides and jumps that allows for multiple jumps and so-called “flying kings”. And the GUI needs refactoring to run in a multithreaded manner and with a main game event loop. I already devised the algorithms for the core game engine. But I need to translate that into real code. I plan on implement those eventually. But the amount of effort to reward doesn’t add up at the moment for me. So justCheckers will not be on my high priority list for the next little while.
Just to be clear, I am not abandoning the project. I still want to work on it. But there are higher priorities on my list. If anyone wants to step up to the plate and massage the code, I’ll gladly help. And when once I get my other higher priority tasks done, I will return to hacking on justCheckers.
I hope so far, everyone is having a happy new 2009. On the development front of justCheckers, I designed a generic move algorithm. This algorithm handles the movement of pieces: both slides and jumps. It also accounts for multiple jumps and for the various checker rule variants out there. However before I implement this code, I want to map out the codebase itself.
I plan to do this by mapping out the components, classes and processes with UML. This way I can better understand how I plan to implement the application and what is it actually doing at the moment. This will help with simplifying the user interface and the rest of the codebase going forward.