Featured Post

Linkedin

 These days, I mostly post my tech musings on Linkedin.  https://www.linkedin.com/in/seanmcgrath/

Thursday, December 23, 2004

Test first. Code later.

It has taken generations for this simple, brilliant idea to take hold in this industry. As a relatively recent convert to TDD I can attest (sorry) to the power this simple idea encapsulates.

I do a lot of work in the Java ecosystem. Two words spring to mind - actually three. Confidence, documentation and Jython.

Confidence : TDD raises your confidence level in your software. Every step of the way your have a full test suite. Every step of the way you have a mechanism for catching the knock-on effects that accompany even the smallest change in source code. TDD has saved my life so many times...

Documentation : "Read the source, Luke" has been joined by a less daunting epiteth : "Read the tests, Luke". Test scripts are a great source of real documentation for how objects/methods/apis/interfaces are to be used and not to be used. When the Javadoc fails you, hit the tests.

Jython : Anybody coding in a statically compiled programming language that is not using a dynamically typed programming language for the tests, has missed a golden opportunity for a productivity leap. In the C world, CPython. In the .NET world, IronPython. In the Java world, Jython.

Jython has quietly carved out a niche for itself in the testing area. Some examples:

  • Write Eclipse JUnit Tests in Jython - this is a recently published article about unit testing with Jython but there are tons more. Google is your friend.

  • PushToTest is an Open Source test automation system that uses Jython

  • Grinder provides a load testing framework for executing
    Jython scripts across many threads, processes and machines; and allows
    the whole shebang to be controlled from a graphical console.

Tuesday, December 21, 2004

Forward compatability

Fast forward to forward compatibility is this weeks ITWorld e-Business in the Enterprise article. It concerns the lopsided relationship between forward and backward compatability in the application software game.

Monday, December 20, 2004

Dynamic languages infrastructure in NetBeans

Coming to a NetBeans distro near you soon : dynamic-language infrastructure.

Splen. Brill. Excele. Aweso. Fanta.

Sunday, December 19, 2004

Jython update

Today I finally got around to putting a news update on jython.org and sending an e-mail to the Jython lists about recent events of interest.

I have added some entries to Jython users. If you have any Jython project you would like to see listed, let me know.

Thursday, December 16, 2004

Digging holes for yourself with IT

Tunnelling through application mountains is a noodlet on the fact that software is in fact a mutant strain of hardware - sort of.

No matter how flexible an application' model of the universe is, business needs will find a need to break it - to need something that cannot be done[1]. Users will respond to such limitations in software systems by creating semantic "tunnels" to get around limitations in the model.

The result is a system in which less of the logic is computerised than perhaps you initially thought would be computerised. Lots of interesting stuff becomes tacit knowledge in the brains of users. The truly flexible "soft" stuff is people - not software.

[1] Excluding Emacs of course :-)

Monday, December 13, 2004

On Hierarchy

This just occured to me for some reason so I'm writing it down:
    Hierarchies. Cannot think within them. Cannot think without them.