Wired Up And Fired Up

           Software of distinction

Oct 2006
Continous Cocoa
Here in Wired Up And Fired Up's bustling, metropolitan offices we build things - lots of things. Many of them in different technologies (although mostly Java and Cocoa these days).

And I wanted a Continuous Integration server to build the things for me while I did more important stuff like, go to the pub or walk the dog or anything other than build things really. I only wanted the one mind (I don't want to waste time to go fiddling about setting these things up for the hell of it) and it had to be capable of building Java and Cocoa targets as well as potentially anything else I could be bothered to throw at it.

And do you know what? I chose Continuum from the Apache Maven project.

On the face of it it may seem an odd choice but it's one that works extremely well and here are my top three reasons why.

1. Virtually Zero Configuration

Do you know how you configure CruiseControl to build a project? Well, you set up a work area, create some directories in it, check out a project into one of them, create another build script for it, create a config.xml, wade through pages of documentation, edit the config.xml...etc....etc.

Guess how you achieve the same in Continuum? You go to the web interface, click 'Add Project' and type in the Project Name, Subversion Url and your Subversion login and password (if required). Then, as if by magic, the project is all there ready to build.

2. Builds anything

When you add a project you pick a builder from Maven, Ant or Shell Script. If you can build it from the command line, you can build it from Continuum.
Just so you know - the following cut and pasted into a file called build.xml will tell Ant to build an XCode project...

<?xml version="1.0"?>
<project name="ProjectName" default="build" basedir=".">
 <target name="build">
  <exec executable="xCodeBuild" failonerror="true">
   <arg value="-alltargets"/>
  </exec>
 </target>
</project>


That's it. If you have that file in the same directory as your .xcodeproj check it all into Subversion and point Continuum at it, you're away.

Of course, you can create custom targets for different build configurations such as Debug, Test (OCUnit fans, take note) and Release and build them all together or separately.

3. The UI rocks

CruiseControl...



Continuum....



Hmm, pretty conclusive I'd say.

Of course, if you're only building Cocoa projects for OS X then I'd strongly recommend a look at BuildFactory from BleepSoft. However, if you work in a more heterogeneous or distributed environment then I think you'll find that Continuum is a lovely little app which will save you a lot of time and pain rolling your own build tools.

Need help setting up your builds? At Wired Up and Fired Up Ltd. we understand that your developers are often too busy developing to spend time setting up configuration management systems and writing build scripts, that's why we're offering a free project health check. Email us on [email protected] to see how we can help improve the quality, reliability and maintainability of your software.
|
Relaunch 1.3.4
Announcing the latest version of Relaunch. Now with added extra document app support goodness (Smultron, FlexTime, Merlin and iCalamus) and a few extra user preferences (apparently some people didn't like the launch sound... :p )

In the pipeline:
* More app support (of course)
* Internationalisation (being international, I spell it with an 'S')
* I'm working on a couple of new features, but I'd rather not disclose them yet because a) they might not work and b) secret, innit.

Oh, and to keep Technorati happy here's my Technorati Profile. (Not that there's anything there).

|
Social App discovery?

is fun, it's a simple but cool (or cool but simple) social site type thing where you specify what applications you use. It's kind of like Digg, but for apps as opposed to tech news (yes, I know there's more to Digg than tech news but, well, no there isn't.)

The neat thing about this is that you then form a network with people who use the similar applications and it's kind of fun to see what other people have discovered that you haven't.

It's full of Web 2.0 goodness, with tag clouds, AJAX and all that malarkey and Relaunch is on there. So, if you use it go click it :)
|
iShowU
I just thought I'd mention that I've been creating the screen casts for Relaunch using an application called iShowU from ShinyWhiteBox.

This is a truly ace little product and at an extremely low price. I've been looking for something like this for a while and I'm very glad to have found it :)

There's more info on their website - http://shinywhitebox.com

|
What now?
Well, I found a wee bug that caused Camino to quit unexpectedly, so I thought I'd best push out a new update.

What has been interesting is that people are picking up on the AppleScripting side of how Relaunch works and are sending suggestions and scripts which, as soon as they're properly tested I'll include in later releases. One such contributer is Miles Metcalfe, who I ought to mention as it were he who put VoodooPad Pro support in version 1.3 and has sent another couple of scripts already.

If you're interested in how this works, or just fancy a hack around have a look at the 'ScriptingRelaunch' page on the wiki.
|
Relaunch 1.3
Not wanting to rest on my laurels, a new version of Relaunch is out that adds the ability to save multiple snapshots and launch them from the finder.

I've also posted a screen-cast of this so you can see exactly what it's all about.
|