Saturday, August 7, 2010

Google Web Tool Kit on 64 bit Ubuntu OS

I see many posts abut trying to run Google Web Toolkit in a 64 bit Linux environment, the toolkit seems to be trying
to use 32 bit libraries when automatically starting Mozilla for testing. 
 
The error looks something like this...
 
** Unable to load Mozilla for hosted mode **
java.lang.UnsatisfiedLinkError: /opt/app/eclipse/plugins/org.eclipse.platform_3.5.0_155965261/
plugins/com.google.gwt.eclipse.sdkbundle.linux_1.7.1.v200909221731/gwt-linux-1.7.1/
mozilla-1.7.12/libxpcom.so:
libstdc++.so.5: cannot open shared object file: No such file or directory
  
My solution to this was to force install a 32bit library (libstdc++5.so) into my 32 bit Ubuntu OS.
 
sudo dpkg -i --force-architecture ./libstdc++5_3.3.6-17ubuntu1_i386.deb
 
GWT should now be able to start up using the Mozilla libraries.  Good luck! 


JMeter for Load Testing

JMeter released a 2.4 version a couple of weeks ago, and I decided to download the tool.  So far, I love it!  Here is why:

  1. Apache JMeter is simple and there is very little barrier to starting up a simple load test from your desktop.  Perfect for my development load tests.
  2. It is free and licensed under Apache.
  3. JMeter runs on the JVM, so the tool is multi-platform.
  4. JMeter allows testing of the following server types...

    Web - HTTP, HTTPS
    SOAP
    Database via JDBC
    LDAP
    JMS
    Mail - POP3(S) and IMAP(S)

  5. In JMeter, you can configure the number of thread groups for both sending requests and sampling initiated during tests.
  6. The results can be dumped into CSV format for graphing via Excel or some other spreadsheet.  JMeter also contains plugins, several of which will generate jpg graphs that can be copied into documentation.
  7. You can record manual web click interactions to create HTTP tests.  These interactions can be saved as a test case and run later during load testing.
  8. Supports JUnit testing too!
  9. JMeter can be distributed in a cluster for simulating requests from multisite locations.

There are many comprehensive suites of test tools available: JRunner, Selenium, etc. However, for quick turnaround in a development environment JMeter cannot be beat.  It is easy and it is simple to show others how to run the tool with very little training.

Wednesday, July 7, 2010

Java Lambda Expressions - Groovy Closure's Evil Twin?

Java lambda expressions appear to be an uglier version of Groovy closures. InfoQ provides some good information about the latest Oracle implementation.

http://www.infoq.com/news/2010/06/lambda-syntax-debate

Sunday, June 20, 2010

The surprising truth about motivation...

An interesting video about what motivates us technical folks.

Saturday, June 19, 2010

SmartFrog distributed system management

I'm impressed with the depth of distributed environment management knowledge in the SmartFrog. SmartFrog is a Java based framework that manages, configures, and deploys distributed software.

Many companies I have worked with have created some form of home grown solution to manage their environments, but the SmartFrog guys seem to have taken this need for environment management to the next level. SmartFrog has plugins for Amazon EC2, ssh, Hadoop, jetty, RPM, more.. and more... This tool is open source too, so there is no limit to the growth of plugins for managing different systems.

The SmartFrog group has addressed the different types of deployments. Continuous integration deployment, MSI deployments, and many more.

I'm setting up SmartFrog for my personal projects and more details about the Smart Frog system will follow.

Monday, May 24, 2010

Gradle Introduction

I love Gradle (http://www.gradle.org)! Gradle introduces so many needed concepts to the world of build scripts and allows developers enough flexibility to either customize to the Nth degree or simply use cookie cutter build scripts.

I have added notes about my adventures with Gradle and some real world examples for Java, Groovy, War, multi-project builds, and even some Gradle customizations.