keskiviikko 23. tammikuuta 2013

Sunday Evening Kata: Game of Life

I haven't lately wrote to this blog. Instead I have write some posts to my employers intranet, sadly in finnish. I might publish some of that stuff also here, but then audience is quite small, only programmer's among the  5,6 million finnish people. But now some coding stuff  I want to tell to you.

I have studied lately Android programming and at this year I'm also gonna do some Windows Phone (8) and iOS stuff also. One thing I want to develop is Game of Life for mobile phones. Algorithm is simple, but "playing" that game is quite entertaining and relaxing, I think. Also I needed some training with IntelliJ IDEA 12, which I bought just before The World End 2012. Lately I have used it for Grails development, but not much and I'm not comfortable with it, even though fellow developers all the time tell how great it is. I want to learn to work with it as fluently as I can use Eclipse in my daily work. I like IDEA and how it supports many platforms and features without installing anything afterwards.

Actually I have also history with it: at the beginning of the century I worked with web apps running on Weblogic 6.X (can't remember exact version number) and for that I used IntelliJ 3. Now it's version is 12! What I remember it was fastest and lightest full IDE on the market at that time and already then code inspections were pretty cool. Actually, I was one to choose which IDE to use and I chose IDEA over JBuilder and Eclipse. There were couple of guys still using UltraEdit and ANT combination and I had hard time to talk them over to use that more intelligent tool. (Even though I think UltraEdit is great tool for many purposes I believe there are better tools for Java development :))

TDD is thing which I want to master in couple of years. I use it daily, but still I have lot to learn in that "design" part of that method. I watched couple of Kent Becks screencasts (which were quiet nice, watching them you can actually see how Kent Beck does coding, not just how to TDD) and I wanted to test his ideas and techniques.

So there was a goal and this code kata and IntelliJ IDEA were tools. And here are results.

Happy coding,

-j

EDIT 26.1.2013

I noticed that my point of view to this problem was too technical in that first version (I was lookin that "grid" or 2 dimensional array). Now I'm implementing second version, from perspective of one cell and how it relates to other cells. I think this second version gonna be much simpler than first.