The SQO-OSS project has turned me into a (mediocre at best) java programmer; over the past two weeks I have laid down my arms regarding build systems (as in “it is permissible to use something other than make for the actual build process; tools generating makefiles have their limitations and place”) and embraced what the java gurus in the project have said all along: use java build tools for java projects. In this particular project this means Maven.

There are things to like in Maven – it is faster than make for our source tree and produces better jars and will also do nice things like produce reports about the codebase, much like the EBN does about the KDE codebase – and things to dislike – the documentation is, frankly, awful and if some compile fails it is impossible to find out what the compile command actually is.

Purely from a cultural perspective it has been an interesting ride. I realise better now how much programming culture exists and how pervasive particular mindsets are in different programming communities. It’s been much more like learning a new human language and culture than “just switching” programming languages. Something else I’ve learned is that writing C++, Java, Python and Perl programs all in one day is just asking for syntactic confusion.

Anyway, as a consequence the SQO-OSS project team is coming together better, from one bunch of Java programmers plus one bunch of C++ programmers to a bunch that, well, is all on the same paradigmatic page, so to speak. And that’s a good thing for productivity.

I’m afraid I will always remain a mere monkey, though.