Perfect Maze

My older son likes to solve mazes that I draw to him. It’s takes a bit effort to create larger mazes at least if you want them to be “perfect” mazes. A perfect maze is defined as a maze which has one and only one path from any point in the maze to any other point. It was pretty easy to write a piece of code that creates mazes automatically using the Depth First Algorithm.

Perfect Maze

Perfect Maze

I wrote a small Java Applet that creates a different level of mazes with each mouse click. I haven’t written an applet for years so now it was time to try out the latest features of the Java Runtime. Sun have introduced many improvements in the latest runtime updates (Java 6 Update 10). Now applet is run in a different thread then the browser itself so you can’t hang the browser when starting an applet.

One of the cool features is that you can even drag the applet outside from your browser and close the browser while having the applet still running. That could able nice solutions to be written in applet format.

I created a new page for my latest Maze Applet so go a head and try it out. It doesn’t have much interactive features. You can just create new mazes by clicking the left mouse button. If you have the latest Java Runtime you can also test the dragging by holding the ALT key and then dragging the applet out from the browser window.

Nokia E71 and new Twitter client

I finally upgraded my phone from N80 to E71. The new Nokia E71 is a really nice. Even the Symbian S60 feels much better now that the phone has enough memory to run it. Operating system still has not changed that much compared to my first smart phone, Nokia 7650 which I had in 2002. This phone is still the best one I have ever had. Even Joel Spolsky is using it.

Twim on Nokia E71

Twitter Client Twim running on Nokia E71

The new phone got me inspired to improve my Twitter client, Twim. I fixed a few bugs like showing the replies feed. I also added a new feature for displaying public feed in own tab. You can download the JAR and JAD files from the Twim page or directly from these links:

Twim v1.2: Twim.jar and Twim.jad

Sunny Summer Vacation

Summer Scenery From FinlandI’ve been on summer vacation for three weeks now and I still have one more week to go. It has been quite an excellent weather on a Finnish scale as the sun has been shining the whole time (okay maybe there were a few rainy days, but still…). My son has taken care that all the job related matters have been erased from my mind.

I still got some occasions to sit down by the computer to write this entry along with a new applet that is showing the sunny lake scenery from Finland. I created an effect renderer for this applet so that I am able to develope different effects easily. Effect pipeline allows me connect effects to each other so that effect can utilize the previous effect’s output. For example the new applet is using the WaveEffect to produce the wave and AlphaEffect to blend an image over the wave effect’s output. The source code have been released under the LGPL license along with the project files for NetBeans IDE (v5.5).

You can see the applet in action here. You can also download the source code for the applet from the same page.

Transparent rendering in 3D applet

Transparent RenderingIt was time to wipe out all the business logics and architecture designs from my mind for a few minutes and to code something refreshing. Here is the result. The applet renders nice 3d model in real time with a little transparency effect. I wrote the base code for this applet few years ago and now I polished and refactored it a little. What do you think about the result?

I made the source code available along with the project files for NetBeans IDE v5. If you haven’t coded applets with the NetBeans IDE before you can debug them just by selecting the applet class from project browser and selecting “Run File” from the context menu.Сувенири