Month: May 2006

Code Ants

We all know about the term 'Code Monkey' which refers to junior developers... Well, I'm calling my ants 'Code Ants'! Anyway, slight problem with them - I put hand cream on the edge of their tupperware home, so that if they tried to venture out, they would think twice and wouldn't drown. Sadly, the cream has dried out, and more and more are going over the edge, losing grip and drowning! Lessons Learned for Project Management: Don't allow your code ants boundaries to become unclear! Give them the slightest opportunity to get off the project, they will take it, even at the cost of their own life. Keep reinforcing their boundaries so they know their place.  

Read more

Ant Farm

At the weekend, I was in the park playing with my son and he was intrigued by the beetles and ants. So we popped home, picked up some tupperware and a spoon and went back to get some ants to have our very own ant farm! They are in a tupperware container within a bath, so that if they do climb over the edge they won't be able to escape and scare my wife out of the house. See below for what it looks like. Anyway, its a bit like a fish tank in that its very relaxing to watch them building and feeding, etc. As I was watching them pulling a pupa from where I had tossed it out of the original tupperware container into their new home, it got me thinking. They can't see the bigger picture, yet they make a good job in getting there in the end... For example, they were pulling at this poor thing to try and get it over a blade of grass, but couldn't. So they went left, the long way round. They should have gone right! But there was no one there to guide them along the way. In the end however, they got to where they were going. Now, having turned left, I can't say that they didn't change their plans and continue going that way, because at this stage, there was no established ant hill, so they were just looking to see where everyone else was going I guess.…

Read more

Cartoon

This is one of my favourite software related cartoons. Unfortunately I don't know where it came from, so I cannot give credit to the originator. Sorry! (scroll right down to the bottom of the page, since the blog software is trying to be clever...)

Read more

Cannibals

Apparently a big off shore IT firm is desperately hiring anyone it can, to fulfil its contractual obligations and as a last resort to find resources considers hiring some cannibals. "Look, we will hire you, but we will NOT tolerate you eating any other staff members. Is that understood?" asked the HR manager to the cannibal leader. He agreed and shortly afterwards, him and his tribe get to work. Six weeks later the HR manager learns that a techie has gone missing and runs to the cannibal chief. "What have you done?! I explicitly told you, no eating the staff! You are ALL fired!"  The chief turns to his tribe and asks "Who the hell ate the programmer? We agreed to only eat the managers. We've been doing that for 6 weeks and no one noticed..."

Read more

MDA

Model Driven Architecture apparently... Just been reading about it at http://www.omg.org/mda. The site isn't too good at giving away what this is, until you start to read a little more deeply, but it seems to me that its a development process / architecture which allows you to model your business needs in UML and automagically generate the entire application. As this is basically what Chordiant does, I thought it might be interesting for Chordiant people to read up about. Perhaps some of you have already heard about it? Apparently it's something that software vendors provide the tools for, so I guess that's what Chordiant does in that respect. I'm wondering if the clever people at Chordiant thought of it before it became main stream, but haven't updated their software to be compliant, exactly what, in my opinion, happened with their front end when you compare it to Struts? Anyway, if Chordiant haven't already thought of it, we could suggest that they make their framework more MDA compliant, hence making it more sellable because it complies with some OMG standards! They might like us for suggesting something like that. Alternatively, they might react like SeeBeyond did when I presented our proposed testing tool set to them - negatively with comments like "you can't do that - it shows our product has weaknesses!" I don't bother trying to help software vendors improve their products now, I just build the tools myself and use them, occasionally putting a BA badge on it (e.g.…

Read more

Sudoku Challenges

Anyone into Sudoku? Personally, I don't get on well with the normal Sudoku, but at http://sudoku.maxant.co.uk there are lots of different puzzle sizes (e.g. 2x2 and 2x3 which are dead quick to play) - and it records your times so you can challenge your mates too. So - can anyone beat 1 minute 36 seconds for this one? http://sudoku.maxant.co.uk/index.jsp?puzzleUID=114  

Read more

No More Coding?

This week has been a bit of a fast track when it comes to training. As well as spending two days on a SAP XI (Exchange Infrastructure / EAI) training workshop, I have had some time to check out JBoss SEAM. The SAP XI stuff relates to the Client needing to upgrade their existing EAI platform (eGate) to a newer version. As it will eventually involve recoding of all interfaces, due to no backward compatability, they are taking the opportunity to look at other platforms. And since 80% of their systems are SAP based, XI seems to the the natural and logical solution. So the workshop I attented was aimed at gaining a high level understanding of the product. It's sold as something related to J2EE, but in my opinion isn't really related to J2EE. Sure it lives inside a J2EE app server, but as far as the developer is concerned, all they do is create a toolbox of objects (data structures, mapping rules, business processes, etc). And this is all done graphically! Then they hook it all together and configure it. OK - I haven't done anything hands on, nor seen anything complex done, but I am sure that does involve writing a bit of Java at some stage. Out of interest, mappings are done using XSLT, which is run on the data structures which are defined as XML docs. I also spent time looking at JBoss SEAM, which is a project that combines your database, Hibernate (ORM), Ant…

Read more

Performance Problems with sending data 1000 miles

Well, its not a bank holiday in Switzerland, so while you are all having fun in the sun or spending your day in the pub as is traditional for the May bank holidays, I'm sitting here working on an interesting performance problem. We are trying to transfer 200,000 rows of data from SAP in Lausanne to MS SQL Server in the Ukraine (1000 miles away?). Its averaging 0.5 seconds per row and so will complete in roughly 27 hours. That causes the customer a few problems because its scheduled for 3am and has to be complete by 6am... The techy implementation is to use JDBC to do an insert/update statement depending upon if the row already exists, so we are actually doing several JDBC calls per row of data. Originally we thought that the bandwidth to the Ukraine together with a crackily/dodgy/unreliable phone line was the problem, but a quick calculation for the 1MB ADSL line that services the Ukrainian network, showed that it should be transferring in the range of several gigabytes in 27 hours, not a measly 25 megabytes... So along came our DB expert who suggested that calling a stored proc would be better because it would involve sending less bytes of data (the call to a stored proc does not name the columns being updated) as well as be optimised by the engine. Furthermore, it could do the check to see if the row already exists, reducing the amount of calls we had to do. The…

Read more