Monday, March 07, 2005

shit code

I've been talking a lot about X-Men producing crappy code, so today I like to give an example.
The project that I am involve in uses . In Struts, a request is routed to the execute method of an Action class based on the struts-config mapping. This one particular action class written by an X-Men is horrible. This execute method is 700+ lines long. A lot of codes were duplicated and I suspect that it was copied and pasted which could have been extracted out into functions.

Looking at it will make you feel nausea, and to think that I've got to make some changes to it.
GD it!

Here is another classic.

if (collection == 0) {
for (e : collection ) {

It was not clear to me at first that the FOR loop was use as the ELSE part of the IF statement and got me really confused.

So this is the kind of quality work you get from a "highly skilled" X-Men. If you got one in your office, I say that your boss has been suckered into paying an astronomical amount of money which could've been your year end bonus.

Technorati Tags:

Saturday, March 05, 2005

Exact Software vs DHL?

A friend of mine will be joining Exact Software which reminded me of the annoying SMSes sent by Jobstreet recently about the Exact walk-in interview. I don't know if Jobstreet is just spamming every registered users or Lina really thinks that I am qualify to work for the "other" side.

Anyway, that friend told me that Exact will be adding around 180 more head counts in this round of the recruitment to their current 200. Suddenly, I realized that Exact is big here. It is actually their Asia development center. So that made me think, if Exact can setup a development center here and their local staff are really doing the coding work, why can't DHL?

From what I gathered from the people that I know who work for DHL. Most of the coding work are outsourced either to local vendors or to the X-Men. Most of the DHL local employees are doing so call higher level value added work. Some people look at coding as grunt work, no value. Any Tom, Dick and Harry with basic programming skill can do the work. So the DHL staffs are then only responsible for producing requirement specification, coordinating and liaising with the vendor doing the actual coding work, testing and code review.

Beside producing the specs, I am not sure how higher level or value added the other responsibilities are. But its looks pretty darn boring to me. Testing and code review? X-Men written? You must be kidding me man! I won't even think about it even if DHL pays me 5 figures for allowance on top of the basic salary.

CMM Level 5? Who cares?! Once you are in, you will be there for good! I doubt you can get another job which can pay that kind of money for doing testing and code review. Unless of course you are in the management level, then that's a different story. Nevertheless, some people are quite happy with that kind of work and its good money.

Friday, March 04, 2005


No, I am not talking about the mutant superheros from your Marvel comic books. The X-Men that I am talking about are from country X. On the surface, the impressive skills that they put on their resumes will make almost anyone's jaw drop. Some people know them by another alias, Ah X.

I believe that, anyone who have worked with the X-Men can concur that the truth is far from what it seems. Let me just relate to you my experience working with these X-men. Most that came, have Master degree. Yes a Master degree. But wait.... its not a Master degree in Computer Science. You might say, "That's okay, they have their Computer Science degree to back them up". Opps.. sorry to inform you this.. Most of them also don't have a CS degree too. In fact, its not even any degree remotely related to IT. They either have some sort of engineering degree or a science degree.

So why did so many companies acquire their services then? This is the biggest mystery of the 21st century. The funny thing is a lot of people look highly on the X-Men and most of these people are usually in some high management level position and love to employ these X-Men. Perhaps they think that the X-Men really have mutant skills which the locals don't have.

When you ask those management people why they would go for the X-Men, the usual answers would be there are a ready pool of highly skilled programmers available during the crunch period and they are cost effective. I say these management people don't have a clue on what they are talking about. Ready pool, yes. Highly skill, hmm... Cost effective? These X-Men usually do their costing in USD. How cost effective can they be? To a US company which do their business in USD, X-Men are cost effective but not to a country where the currency exchange is peg 3.8 to the USD.

Let me give an example, a so call "highly skilled" X-Men with an MBA and a degree in Physics who knows shit about Java will probably set you back 5-7K a month. The vast number of jobless IT fresh graduates who are begging for a job will set you back average 2K. By my calculation, I can get 3 IT fresh graduate for the price of 1 "highly skilled" X-Men. I get 3 pairs of hands cracking on the codes. Although these 3 pairs of hands are not as "highly skilled", neither are the X-Men. So would you rather have 3 pairs of hands coding or 1 pair of hands coding?

Technorati Tags: +

Thursday, March 03, 2005

Its been a while...

Have not been blogging for quite sometime. I was tied up in a project at work. This project is typical of IT projects where most of the coding work are outsource. The outsourcing model that the company I work for opted is onsite outsourcing whereby the programmers will be onsite at the customers place to do the work. These programmers are from a country(lets call this country X) where most media reports would agree is the next silicon valley. Now these so call programmers from country X is giving me major brain damage. They come, they coded and they left. So after they left, we have to pickup the maintenance work. Boy, once you've seen the code that they produced, most will agree with me that they will never ever want to work with any of them.