Computing


Computer Keyboard
Both my job and my principle leisure activity is computing. I am a software developer specialising in the development of large-scale Enterprise and Web Applications. I principally develop in both Java and Ruby, but I also know a range of other languages, including Javascript and HTML. I am an advocate of the Agile approach to software development. I’m a qualified SCRUM Master and an active proponent of Test-Driven Development.

In my spare time I enjoy surfing the Internet, playing computer games, developing fun projects, building personal websites and generally just messing about with computers.

Read my Computing Blog for more details on my current projects.


Current Computing Platforms


Desktop: Apple Mac Pro (2007 model). 2 x Core2 Duo processors, 4GB RAM, 2 x 500GB hard disks. Apple 30” Cinema Display + secondary 23” widescreen monitor.
Laptop: Apple 13” MacBook (late 2008 model). Core2 Duo processor, 4GB RAM, 320GB hard disk
Build Server: Custom built. Core2 Duo Processor, 4GB RAM, 500GB Hard Disk. Running Fedora 11 Linux distribution
Mobile Phone: Apple iPhone 3G

Java Development

I have 12 years experience in Java development and have worked on a large number of large Java enterprise applications.

Versions: 1.4, 5 and 6
Standard Frameworks: Servlet, JSP, JEE, JPA, EJB, JTA
Popular Frameworks: Spring, Google Guice, Struts. Tapestry, Wicket, Hibernate, Quartz
Application Servers: Tomcat, JBoss, WebLogic, WebSphere
IDEs: IntelliJ IDEA, Eclipse
Build Tools: Ant, Maven, Continuum

Ruby and Rails Development


I have been learning and developing in Ruby during 2009. I have found it a refreshing change from the verboseness of Java development. I’m working my way through my first commercial web application using Rails. I have found Rails to be a fantastic web development platform. I initially though that the development by convention approach might be less flexible than what I am use to with Java. However, I have found the conventions to be well thought out and it’s just so easy to get stuff up and running with minimal effort.

Ruby: 1.8
Rails: 2.3