justCheckers on Hold – Again – Kinda

justCheckers logo

justCheckers logo

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.

Retro-gaming: Torus Trooper

In the mood for a bit of retro-gaming?  Try out this amazing abstract shooter.

Torus Trooper is a fantastic game, where you fly a fighter through a twisted torus filled with enemies.  The art brings you back to the era of wireframe graphics.  The trancy, techno music provides an excellent, motivating yet relaxing ambience.  The gameplay starts off easily and progresses with successively more challenging levels.  If you love a frantic, furious shooter to pass the time, you’ll love Torus Trooper.

Ubuntu Linux gamers can install it from the Universe repos with:
sudo aptitude install torus-trooper

Windows gamers can download it from:
http://www.asahi-net.or.jp/~cs8k-cyu/windows/tt_e.html

How Not to Run a Community-Project: justCheckers Post-Mortem

So the day before yesterday, Aaron Seigo wrote up a brilliant piece on running a community-driven project. Since I stole^H^H^H^H^Hborrowed his post, I want to contribute back my own experiences. The justCheckers project is currently in a semi-active state at the moment. But in its heyday, we had a group of 5 active developers. But overtime the momentum dropped off until only I remained on the project.

A major reason for this is my own inexperience in managing a project. Over the years, I learned about and tried out different project management techniques. Unfortunately by the time I could implement those in justCheckers, people had moved on to greater things. And I even thought of closing down the project, until recently I revived it again for a different purpose…

Some of the lessons I learned along the way are:

  1. Manage Expectations. This is a real killer. It is fun and easy to overhype your own project and your involvement in it. But it doesn’t help the project in the long run especially once people realise that their initial expectations differ wildly from reality. Myself I promised the moon, and didn’t deliver.
  2. Be Prepared to Spend the Time. As a lead developer, you will end up doing most of the work. Open source projects begin as ordinary projects, and only in the later stages do submissions and community efforts come into play. So before you begin, be prepared to do a lot of pushing until the project can maintain itself. Being a university student and running an open source project can be difficult if you are still developing your time management skills.
  3. Code is King. This I believe is one of Matt Asay’s favourite sayings. Source code contributions are what make open source work. Later on other kinds of contributions come into play. But source code should come first. I spent an inordinate amount of time on documentation and planning. Instead I should of thrown up a quick sketch and just concentrated on coding.
  4. Establish Good Lines of Communication. Without good, honest and open communication your project goes quickly astray. Facilitating that communication is not a trivial task. My greatest success was via individual e-mails and forums. But things went downhill when I lost the forums. Bringing them back ended up in fighting spam. Same thing with a wide open wiki. A wiki is good for knowledge discovery but not for discussions so much. I tried setting up an IRC channel on Freenode.net but my request never went through. This is one issue I never figured out how to resolve.
  5. Be Flexible. I tried applying conventional project management techniques and that doesn’t work for a volunteer open source project. In time I learned about the importance of voluntary involvement and persuasion as the best tool for moving forward. But that is another matter altogether.
  6. More Warm Bodies Don’t Mean Faster Coding. I learned that open sourcing a program doesn’t suddenly mean that a bunch of people will suddenly appear and work on your ideas. No, again you need to be the primary mover until others decide to help out to use the program to their advantage.

We did do somethings well:

  1. Delegate Tasks by Components. This gave everyone ownership of some part of code. This also prevented people from setting on each others work.
  2. Market Help Needed. This helped a lot in bringing together the core team. In fact the project would of never got off the ground without Sourceforge‘s ask for help functionality.
  3. Build to Last. We tried to build everything in a generic enough manner to allow for future functionality. It takes more time to build this way, but it ensures better design and future-proofs the end result.

Now, the justCheckers project is heading in a different direction. And so a different approach is needed.

Experimental Web Application Branch

Yesterday I started upon moving justCheckers into a web application. I didn’t want to pollute the trunk of the subversion repository. So I created the webappbranch. You can grab it by running:

svn checkout https://justcheckers.svn.sourceforge.net/svnroot/justcheckers/branches/webapps

My next major task to tackle is updating the documentation on the wiki and in the source code. After that I just need to create a few JSPs, and link up the code properly.

Technorati Tags:

Reopening the justCheckers Project

Made the plunge today into FOSS development again. As I mentioned in my previous post, I considered and started work on the next version of justCheckers. There are a few reasons why I restarted the project. I want to play around with Java web technologies. I also want to experiment with project management and FOSS development, again. And I am emotional attached to the project.

One of the failures of my past involvement with the project, was the assumption that people would be as excited about the project as I was. I assumed that people would flock and essentially build my dream for me. I underestimated the challenge of motivating people and managing progress. Drafting an excellent design, a todo list and increasing communication throughput would result in vast source code contributions. Managing a non-commercial open source project turns out more complicated than that.

The future of justCheckers requires a more nimble approach. That is one of first task is to streamline developing the codebase.

As I mentioned the next version of justCheckers will use Java web technologies. The majority of work for version involves migrating the Swing GUI to JSP. Also I plan to refactor the code to use the Model-View-Controller pattern.

Part of streamlining the development process, includes a serious reduction on other activities. Since I am sole remaining developer, I decided to reflect in reality. My team members no longer contribute to the project. So I removed them from the team. Since I don’t have a team, I am also removing the team mailing lists. I never found the current mailing lists useful. Instead of that, I will come up with a simple way for the community to communicate with the project. It probably won’t be a world writable forum or wiki. I can’t be bothered with cleaning up spam.

I’ll keep you posted.

If you wish to contribute to justCheckers, please leave me a comment.

Technorati Tags:

Todo Progress So Far

Remember my TODO list for this year? No, I’m not gonna tell you when I posted it. And no if you find it, you are not allowed to post a link or a hint to it. If you are long time reader and you found it, consider yourself part of the in-crowd.

So how well am I doing? Out of the 8, only number 3 actually is realized to date. Realized late April to be more exact. Item 1 fell through the cracks. justCheckers is dead and served its purpose for me. Number 2 is a real work in progress, and I plan on realizing it before the end of the year. Number 4 is still a dream. With number 5, I’m currently stumbling around with. Maybe a certain someone out there somewhere can help with that. Number 6 is something I need to badly do before the inclement season starts. Number 7 and 8 are still in the initial stages.

Totals so far: 1 success, 1 failure, 3 in progress and 3 that need work on. Not the greatest score. I’m only 12.5% to maybe 25% done. Still have much to do.

Blogging the Busy Life

Its funny actually. I imagined that with work, I’d have more money and time to do the things I want. Money is not the issue after all. Time on the other hand, is the ultimate scarce resource. Hence I blog less than I want to.

Fortunately as I fall into the rhythm of work, free time seems to increase slowly again. However, somethings may fall to the wayside. Like gaming. Unfortunate, but necessary. Then again I always considered gaming as a philosophy and as a thing-to-do in case of everyone else in the world being too busy.

Its funny actually. The name of this blog… I hoped to examine the seamy underbelly of open source gaming. Yet, while my blogging schedule is unreliable as most readers know, I consistently do not talk about open source gaming. One of those inside jokes, that the great machine of the universe plays on us. Or rather that the maker of said machinery, enriches our lives with.

Its funny actually. I feel that I possess more freedom to do see friends. But that too many reveal itself an illusion. Perhaps. Perhaps…

OK. Must stop slacking off and get back to doing productive… err… stuff.

(And the answer is yes. I am trying to out-do one of my blogging friends, with all this stream of consciousness. Was I successful?)

Forward Looking, Backwards Loss

Eric S. Raymond, once said that open source is about a “developer scratching an itch.” Thats what I tried to do with justcheckers. Unfortunately that itch disappeared a long time ago, and now the project just exists. I have different goals now, and different needs. So while I hate to admit it, I am tried of justcheckers and stepping down as lead developer. If anyone wants to pick up the reigns of that project, contact me and I will get you set up appropriately.

I am looking forward to concentrating on doing other work.

War§ow for the Win!

Refactoring code and sending out resumes can get boring after a while. And while working inside of KDE 4 with all its prettiness and ease-of-use helps one be more productive… sometimes you need to be unproductive to be productive. Trust me it makes sense. Its like a zen koan or Ancient Greek paradox.

Thats where a fun game called War§ow comes into play. For gamers out there, its a cell-rendered Quake/Unreal Tournament arena-like based on surprise, surprise: the Quake 2 engine. A heavily modified Quake 2 engine but still looks great. For Ubuntu users, its already in the repositories: just grab warsow. For freedom crusaders (sorry LugRadio had to borrow that one), its free software under the GPL! But most of all its a fun, fun multiplayer FPS game for Linux.

Heres a pro-gamer match played on Warsow:

Digging Out of Self-Made Holes

Right before the end of last year, I made a number of “blue sky” goals for 2008. Unfortunately I fell into a number of self-made holes from last year, that basically prevented me from moving forward. To make things worse, I realized no single “thing” would resolve or complete even part of one of those goals.

So after wishing, raging, and begging the these issues to go away, all thats left is a lot of legwork. Not too happy, but I resign myself to digging away these holes myself. Still open to a magic wand waving away everything, though. 🙂

In the open source programming part, I finally threw out a good chunk of code, restarted and refactored most of the game engine for justCheckers. I need to reimplement moving and jumping pieces in a sane way still. Then after I fix the user interface and do some testing. Only then I can package version 0.1.1 out the door, and show the world some real progress.

As for writing, I cut back on one of my novel ideas. I am concentrating on writing a dark, hard scifi novel called Echoes in the Endless. So far I have the rough draft of half of the first chapter written. Lots to do still.

Job searching is just plain tedious. And no I have not gotten a single reply, so stop asking. Its just not fun to even think about it. Everything else is pretty much on hold until I get a revenue stream… like a job.