Sunday, December 20, 2009

My Playground

In order to setup the context for this post I must give small introduction on myself from IT perspective.

I am in software development for many years now. Started back in late 90s with some HTML, JavaScript, Delphi (object Pascal) ... then moved to standard web setup of that time which is still standard: php and MySql and then in early 2k moved to Java with emphasis on Web and JEE which become my first focal point in this huge stack of technologies. Some other post will explain exact stack I've been and am still using from Java perspective.

Recently worked a bit with Flex, started looking into Grails and discovering some other new and cool stuff.

On top of that I have huge stack of ideas in terms of some projects, some should be free and some should be small start-ups.

Finally I have reached a point that I need to have a working playground for all these ideas.

Anyone starts with his notebook, then that becomes too rigid, then you move onto some virtual environments like Parallels or in my case Sun's VirtualBox. VirtualBox is great, you can download from some sites images with your favorite blend of Linux and simply run them. Tools are pretty intuitive and easy to use. With couple of clicks you can set up virtual environment and make some serious playgrounds within the resource pool of your notebook.

I am using at home Mac PowerBook G4 and using the office notebook for playing around since all I play with ends up used on some project I am working on. Now I need to play more seriously and need option to involve other people as well. This eventually defined whole new criteria for my playground. Not only that it needs to be sufficient, but also available on Internet.

This is how I got to Amazon Web Services. They have all I need: resources, access to Internet, existing tools, predefined images and the cost is reasonable.

I have decided that my playground will include some tools SVN, Trac or RedMine so I can properly set up the configuration management for these pet projects of mine. This will affect my only by having some additional load that i will have to pay since cost at Amazon consists of how much instances you have and how much time they were running, how much space you took and what was the traffic.

Here is what I will do. I will start with one CentOS Linux image that will be configured to run from EBS so that I can stop and run it without loosing my data. This option is available only from couple of weeks ago per my understanding and it solves lot of problems. Then I will have another EBS volume which will be used by MySQL and one volume for SVN repository.

I have chosen CentOS since I am working with lot of JBoss products/frameworks and used to work with RedHat so that was somehow the natural choice. I am really not some Linux admin which is fully into it, but I feel this is good choice.

I am looking to initially set up the following components:
1. Apache Web Server with necessary modules for the other components
2. Php
3. Java
4. Tomcat v6
5. JBoss AS v5
6. MySQL
7. SVN
8. Ruby
9. Grails

On top of that I plan to setup:
1. Redmine or Trac - still not sure, will need to think bout it for some time. Used both, need to summarize what I need and what is easiest thing to do. Looking for integration of everything into one of these bundles. Plan to come up with post that will be comparing several open source PM tools.
2. MediaWiki with bunch of extensions and custom theme since my first pet project is wiki :-)
3. Drupal pumped up with whole s..t of extensions. I feel that Drupal is great things piece of software for bunch of web CMS based projects and would like to spend more time around it.

This is the already work in progress and next posts will deal with setup of the Amazon image.

Plan for the upcoming week is Amazon image running from EBS with MySQL, PHP, Apache, Tomcat.

1 comment:

  1. Very interesting overview. Keep talking, maybe some ideas will pop-up in my mind as well :-)