Author Archives: Chris F Carroll

Making TDD even more efficient

Kent Beck is still kind of working on unit testing tools — a couple of simple but great ideas that are baked into his re-launched JUnitMax:

  1. When running a test suite after a failure, give the most useful feedback first — by running the failures first before the rest of the suite
  2. Otherwise, run the fastest tests first. This gives you 99% of the feedback as fast as possible
  3. Alas, only currently available for Eclipse.

The Cloud defined in a sentence, 12 bullet points and 3 pictures

Kudos to someone at or NIST for a great 2 minute summary of the cloud. My summary of the summary:

Cloud Computing Defined

Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources e.g., networks, servers, storage, applications, and services that can be rapidly provisioned and released with minimal management effort.
Cloud computing - picture by

Five Characteristics of Cloud Computing

  • On-demand, self service
  • Wide network access
  • Resources dynamically shared and allocated across customers
  • Elastic rapid provision and release
  • Metered service

Three Main Layers of Service Provided by Cloud Computing

  • Saas: Software as a service, for end-user consumers
  • Paas: Platform as a service, for software developers
  • Iaas: Infrastructure as a service, for system administrators

Two Axes of Choice for Cloud Deployment

  • Public vs Private
  • Outsourced vs In-house

And finally a bonus:

A History of Cloud Computing in Three Sentences

  • It began life as “Grid Computing” – a technology to solve large problems with parallel computing on widely distributed resources.
  • Grid computing matured to be offered as a metered service known as “utility computing”.
  • This evolved via packaged solutions and self-service subscription over the internet into what is now known as Cloud Computing.

Condensed from

AppleScript : Start a background process and get the pid to kill it

Like so:

do shell script ("cd /Users/myName/Sites/FitNesse ; java -jar fitnesse-standalone.jar -p 5555  &> fitNesse.log & echo $!")
set pid to the result
open location "http://localhost:5555/"
display dialog "Press okay to shutdown FitNesse (" & pid & ")" buttons {"OK"}
do shell script ("kill " & pid)

To see it work, open AppleScript Editor, and paste in the script.
Save it first as a script, then Export it as an Application.

A couple of tricks are involved, the two least well-known are perhaps:

  • $! will return the pid of the most recently started background process
  • You may not need to log output but you still apparently need an output redirection clause such as &> /dev/null“. Otherwise AppleScript waits for the stdout / stderr to free up. Which never happens.
  • You usually want to cd to the right directory when you run a shell script from AppleScript

How to force Remote Desktop Connection to 256 colours

Windows Remote desktop is great. It’s less great if you connect to a computer over a slow internet connection and want to do some actual work. It’s even less great when you’ve finally migrated to Windows 7 and found that you no longer have a 256 colors option, but instead have to use 15-bit color at least, which becomes achingly slow.

Help is at hand. Simply save your connection settings. This create a .rdp file which is a text file you can edit. Not far from the top you’ll see the bits-per-pixel setting:

screen mode id:i:2
use multimon:i:0
session bpp:i:15

Change the 15 to an 8. Save it, and open the file in Remote Desktop. Although the GUI still shows ‘Thousand of Colors’ in the dropdown, when you connect you’ll find it’s actually 256 colors. Much, much faster.

Thanks to Raymond Diack,