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:

Maemo Hacking and Project Revivals

With such a cold wet summer, I thought I would spend more time hacking. Yet this year spare time is a scarce commodity and most of that time I find myself far from a proper development workstation. Fortunately with an Internet tablet in my pocket, I can at least start on learning about Maemo development.

For an embedded device, the maemo platform is neither the easiest nor the hardest device to start hacking. Setting up the SDK on Ubuntu takes only a few minutes. In fact I also managed to setup Eclipse to do maemo development too. But I didn’t try to compile any source code so far.

Developing on Maemo, requires knowledge in both Linux and C programming. The N810 itself uses a heavily modified version of the 2.6.27 Linux kernel, Gnome and GTK. GTK seems to handle the GUI side of things in much that the same that Java Swing does. And I like the fact that GObject brings some semblence of OO programming to C. I’d prefer to learn Qt instead of GTK, but I guess I have to start somewhere. Judging by blog posts from KDE developers that got N810s at Akademy 2008, the state of Qt and KDE on Maemo is in its infancy.

In a recent conversation with Dan D’Alimonte, he suggested that I should think about reviving the justCheckers project as a web application. Considering the state of the codebase I work on a daily basis, the justCheckers codebase is very much maintainable. As a web application, the releases can happen faster and casual users can play with the program. And I’d like to play around with some more advanced Java web technologies. Now whether or not I actually revive the project is another matter. It is a definite maybe for now.

Technorati Tags:

A Call to Action and Progress in Writing

I’m disappointed folks. Where are all my comments on my excerpt? Did you even read it?!? Bah!!!

Well so far, one my coworkers mentioned the wordiness of the passage. I know. I’m guilty of wanting to jam pack my sentences. This makes them almost unreadable. I know. I know. I should use terse short brief simple sentences. But where’s the playfulness?

A few lucky privileged people can read the entire work so far on Google Docs. In fact I’ll probably let a maximum of five people to read my current work. I’d like to know your initial impressions.

I’ll admit it. Even that one short passage needs work. Ten rewrites later, it still needs work. But I’m holding off with major editing. I’m write a rough copy of the novel. Then I’ll edit the hell out of it.

Writing chapter 4 right now. Wish me luck.

Some Thoughts About Life and Consulting

Some thoughts to think about:

  • Set expectations early. It avoids confusion and hassle in the future.
  • Assertiveness instills confidence and helps achieve what you need.
  • Smiling helps keep everyone positive and repels negativity from you.
  • Show progress cause it encourages people.
  • Review your goals and schedule time lines. This will make them concrete.
  • Break up goals into manageable tasks. This will make your goals achieveable.
  • Be patient. Nothing will improve in your life overnight.

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.

Echoes in the Endless (A Preview)

Today brought many disappointments to light. Some trivial, others complicated in their machinations. Then I remembered my todo list for this year. And since a few of you asked me personally about what I’m writing. So I present to you an excerpt of chapter 1 of Echoes in the Endless.

Note that this is an early revision of the book. The end product may be radically different. Enjoy.

Echoes in the Void
By: Dorian Antoni Puła
Chapter 01

Two Ligian Jaguar interceptors tore out of the Magnus Prime Ice Cloud that marked the end of the Gamma Trannes star system. The milky white ice cloud also marked the edge of Allegiance space. Captain Ewa “Hunter” Kruk sighed as her interceptor cleared the last of the ice cloud.

“No immediate threats detected.”, Ewa said. She watched as the sensor mast’s data floated ghostly in front of her forward cockpit monitor.

“Negative on Allegiance presence.”, her wingman repeated. Ewa looked to her right and sighted her wingman’s interceptor. The monitor overlaid a green triangle around the flat triangular hull of her wingman’s spacecraft. The interceptor’s camouflage skin softly faded from a light grey speckled with blobs of white into a uniformly dark grey. Powdery ice dust swirled off the interceptor’s forward swept wings and the high gain transmitter mounted to the belly of the interceptor. The transmitter encrypted and relayed the information to the Sentinel carrier group still hiding inside the ice cloud.

“Acknowledged Alpha Flight. Proceed with sector sweep.”, the deep voice of Admiral Jeremy Nelson boomed in her ears.

Ewa looked down at the floor of her cockpit. The cockpit’s bottom monitor displayed a large hexagonal sensor array hugging the belly of her own Jaguar. Thin long pale graceful ice dust trails streamed off the sensor’s edges. The monitor drew a orange outline around the sensor. Cleaning sensor array – 60%. The message written in large orange font flashed across the sensor. The surface of the sensor pulsated as its membrane tried to throw off the sticky dust. Cleaning sensor array – 63%.

“Permission to clear buffer zone. Particle interference with array.”, Ewa said.

“Granted. Proceed with caution.”

The admiral’s words sent a shiver down Ewa’s spine. Without the standard set of capital ship buster and anti-spacecraft missiles on either her or her wingman’s interceptor, she felt vulnerable. A Jaguar interceptor could outrun and outmaneuver any Allegiance interceptor. But if the Allegiance placed a beacon drone close to their position, it would sense their presence and sent out an alert to the nearest Allegiance fleet. Neither the carrier nor the accompanying Hibernian lance frigate would have time to escape. Ewa breathed deeply and eased her fighter out of the cloud.

To be continued…

All rights reserved. Copyright Dorian Pula.

Update: 200th post too! w00t!

Perfection in Your Process

I have a serious character flaw. I’m a perfectionist. Nothing kills creativity like trying to get everything right the first time around. One of the most important skills I learned in professional writing: is create first, edit to perfection later. Give yourself leeway and freedom to make mistakes and to experiment.

There is a second part to the lesson though. You must treat and follow your process as closely one should practise religion. In writing, a process gives you the structure to write faster, better and with more freedom. In programming and developing applications, rigour in sticking with your process is essential for the project’s health and your sanity.

Processes like planning, documenting, testing, deploying and fixing bugs should be well worked out in the developer’s mind. Being drilled, the developer can control her environment better. In a controlled environment, there are no surprises or unexpected issues. Everything works with the precision, logic and accuracy of a Swiss watch. With a well documented and followed process, you can measure efficiency and progress.

In a controlled process, you can work out what you can expect to happen and how. Your developers can gauge how their work is progressing. Your designers can see how well the implementation follows the design. Your testers know where to spend time testing. And your business people, can figure out the cost in time, people and materials your project will take. Everyone know what is expected of them. Your team feels less stress, and works more effectively. That is why ideas like Sigma Six and best engineering practises exist. Japanese manufacturer stressed over their processes bring them to perfection. No wonder why Japanese manufacturers can corner the market.

Without a process, chaos ensues, stress builds and projects fail. So if you manage a team or a project, do your team a favour: figure out a process that works for everyone and stick to it. Your team will appreciate less stress and chaos. And your bosses will appreciate a project well done. Perfection belongs in your processes.

Nighttime Rambling about the Weekend

Too busy to blog this long weekend. Still I feel a short update is in order for my readers.

Went out on Friday with the Rudy and Olga, to a nice little place in downtown Toronto called West 7. Open 24 hours, nice Italian cuisine, tea candlelights and jazzy-lounge music; basically you can’t go wrong with a formula like that. And they make a mean bruschia. Almost as good as the one I had in a villa in an olive grove overlooking Terni, Perugia. You may be jealous.

Also I got to play around with somemore overhyped AJAX and WSDL web technology. I still think that the entire over-the-web technology needs to move past the whole document and browser interaction paradigm. The KDE 4 promises to change that with their Plasmoid concepts.

Moving on to Saturday, got to hike in Hockley Valley again. Nothing beats walking through forests and old fields. Ok, mosquitoes always suck. But the smells, sounds and sights of nature relax the soul in ways no urban or suburban landscape can. The sound of water rippling by. The sunshine filtering through the cedar forest, filling the air in a sweet woody smell. The flurry of grasshoppers springing up, avoiding your footsteps as you walk through a sun baked pasture. Reconnecting with Nature is an exhilirating and sootheing experience.

I got to reconnect again with Nature today, by attacking our hedge with a pair of shears. This time there was no love lost between me and nature. Almost crashed into a hornet’s nest. Cutting thick branches also sucks. But the hedge is trimmed now.

Kinda jealous that this semester’s web development course at UofT gets to tinker with some pretty neat Web 2.0 ideas. My own web development course of JSP, CGI-Perl and Servlets with database applications feels dated by comparison. I don’t knew all this Ajax and web services stuff as much as I’d like to. Hmm… Another technology to learn?

Anyways, it is 1:14 now and need my sleep for tomorrow’s workday. Night.