"move a little, do a lot"

Have just stumbled across a very cool productivity app for OSX. I’m already a big fan of Quicksilver, and FlyGesture builds on that style of functionality albeit from your trackpad.

FlyGesture is activated like Exposé or Dashboard, bringing up a transparent window of “guides” to move your mouse through. Moving your mouse through the guides lets FlyGesture know what action or actions you want to be performed, such as closing a window or opening an application. Not getting it? Here’s a movie that demonstrates creating and using a new gesture to open Safari.

And like all great Mac apps, it’s free!
Fly Gesture

Read More

Quick tip: split a large file into smaller files

Needed to break a large file containing many messages, each message separated on a new line into many new small files containing only one message per file … Started thinking in perl, but almost looked past the Unix split command:

split -l 1 -a 3 bigfile.txt smallfile_

-l ‘n’ will put ‘n’ lines per file
-a ‘n’ defines the length of the suffix, in this case 3 letters

QED

Read More

Use of dashboards for performance tuning

Jason Gorman describes in his article 6 requirements for the practical use of dashboards in performance related testing.

As a performance tester, I find that I often need to provide snapshot summaries of systems performance ala dashboards. The key requirement imposed is normally timeliness and relevance of data being presented.

So sticking with Jason’s requirements, how do you implement good dashboard design?

Read More

Sharing data safely between Java threads

Am really starting to enjoy the power and portability of using Java in my load testing efforts, especially when the environments in which you work are often limited in terms of tool sets you’re allowed to use. For example the current Solaris environment I work in doesn’t have a C compiler native to the OS, so I am automatically limited in the amount of Perl code I can write, as I am lacking more powerful modules (that need to be compiled). Enter Java; it already comes installed and for the types of mid range services I’m working on (MQ, JMS etc) has loads of great APIs you can incorporate into your own custom test harnesses.

All good test harnesses are going to need to be multi-threaded, but I’ve had no idea on how to safely share data between threads! This problem has been annoying me for sometime, partly due to my own ignorance and lack of understanding of Java (indeed OO principles perhaps). But in any case, I was stuck in old (bad) habits of sharing data between threads. Normally I just assign a global variable but in OO design, that’s considered poor design, so here is my attempt at getting spawned threads of a ‘worker’ class sharing data via a common ‘datastore’ class.

Read More

Humour that only cat lovers can appreciate

I don’t normally blog on the personal side of things, but this video I certainly identify with. Absolute classic!

Read More