Programming Project Experiment (PPE)
I've been toying with the idea of building a site around the game of life simulator. In the spirit of just playing, I figured I'd blog about my process and thinking to see where it goes while keeping a record of it. With that broad mandate some rough idea of what I could see happening along the way.
Provide an online tool for exploring game of life instances. Flex based front-end with a Java based back-end and data storage in MySQL.
Why those technologies?
Well I think Flex is where it is at for rich UIs right now. I do most of my day work in Flex so I should be able to develop quickly. While Silverlight and JavaFX might be fun to play with, I'm more interested in getting something working versus learning a new language, that's better suited, in the context of some project. I'm always up for learning new stuff if I can see some clear benefit. Switching from Flex to something else right now doesn't seem to offer that clear win so I'm going to stay with what I know works.
Many people who's work I follow would say that Ruby would be the language to do the back-end in. While there is some appeal to that, given other aspects of this open development I don't want to throw too many new things into the mix. There are already some Java tools I'm looking at on the Java side that I've not used before. In fact I could see reimplementing the final functionality in Ruby as a good example of getting a better grasp on how the technologies differ.
As for MySQL, well its what I already have installed and running on my machine. In fact its the data store behind this blog. Given that I don't foresee any need for a lot of heavy lifting from the database layer I'm certain MySQL can handle it.
As far as a development environment, I'll be using my Mac. I'll be using Eclipse as my IDE since it has great Java support and okay Flex support. I'll probably throw in some Ant scripts for deployment and the like since my web server resides on a different machine. Lastly I'll be using Subversion to store my code.