Yesterday I stumbled upon an article about why software projects fail. Though hardly you can find any surprising claim while reading, it is nonetheless a quick paper you can hand over to your colleagues and/or managers when trying to enhance the chances for a successful project.What I find quite interesting is the table near the beginning, the one titled “Project Challenged Factors”. What draw my attention is that the “other” item weights more than each other single entry in the top ten. In other words the causes for challenging projects are so widespread and so equally important that there is no a main culprit.
We programmers are working on a so complex and delicate mechanism that any one in hundreds of factors could drive the entire stuff crazy. On the other hand the number of variables involved is so high that it is not possible to shot at one target to likely ensure project reliability.
Take software requirements for example, (missing or incomplete accounts for a 12,3%), while I am not advocating about entering a project without them, it is clear that in some circumstances the lack of such documents is not dooming per se. Take for example an expert team that knows all the ins and outs of the domain and has a crystal clear idea of what is needed. In this case maybe the project could get along with no SRS.
So one might be tempted to strictly follow every “best practice” to minimize the risks of a failure. But this is not likely to work either – every practice has its cost and some practices (take the “code review”) are extremely daunting.
Therefore is all a matter of balancing, picking the right decisions, having good reflexes and willing to occasionally work harder to fix what has gone wrong.
Following this line of thought the best insurance you can have for your projects is an experienced and well jelled team with: a) an experienced leader, b) a good success history. This isn’t rocket science either, you can find similar assertions in many software project management books (Peopleware is the first coming to mind).
On the other hand projects keeps failing. This leads me to two considerations, first is that even with the best premises a challenging project could fail – we have to accept this for today’s projects and try to minimize the failure impact. Second how is changing the failure rate in time? The first study quoted in the article is more than 13 years old! That’s a huge time in software industry.
Jingo
For those of you that know me, it is not a surprise that I really like Terry Pratchett work. So before the holidays I placed a huge order to amazon comprising all his book I haven’t yet read.”Jingo!” is the first popped out from the reading queue. I though this summer I would have read a bit more, but traveling throughout USA, trekking in parks and keeping an attentive eye on a teen nephew it’s time consuming as it sounds.
Back to the book. This time an island is rising from the ocean about halfway from Ankh-Morpork and Klatch. The island is discovered at the same time by two fishermen from the two towns. Everyone claims his country rights on the new land, and this leads to political frictions between countries.
As if this would not be enough, someone try to assassinate the brother of the Klatchian sovereign visiting Ankh-Morpork.
As the international struggle escalates both Vimes with his Watch and the Patrician with his political skills attempt to settle the question avoiding what seems to be a inevitable war.
As in every other book by Pratchett the witty humor is always paired with deep insights in the human mind, in community habits and legacies and plots are never obvious or sacrificed to the funny side of his writings.
I read this book as a strong position against wars, against the blindness of generals and war commanders, the arrogance and stupidity of racism and discrimination.
How to upset Italian people at drive
A sure way to really upset Italians driving their cars and trucks is to strictly obey to speed limits. Just try to stick with 10km/h limit near road works and you can learn a whole new dictionary of insults.
2nd level outsourcing
This is funny, I was joking last Saturday with two friends of mine about the fact that outsourcing to India is no longer convenient and that Indians may outsource tech-jobs back to US, and this morning I found this news: Indian Software Firm Outsourcing Jobs To US. I hope this could reverse this odd trend of relocating tech jobs in the far east, and provide for a better distribution of the wellness in the world. A friend of mine told me that Indian programmer salaries are low for young and/or inexperienced, but rise steeper when compared to western programmer. In other words inexperienced programmers are cheaper in India, while experienced programmers are cheaper in western countries (while being more expensive than inexperienced programmers everywhere :-)).
And Italian programmers are cheaper than other western countries’ programmer because Italy has the lowest salaries among the industrialized countries of the EU. That’s to say it is viable and worthing for a US company to outsource tech jobs to Italy. I just recommend to provide their management because local workforce has serious trouble in grasping tech-projects management 101.
Are we sure we have to be in UE?
According to this research, Italy is quite prone to corruption, scoring well below all western countries. This is something that we cannot blame our politicians for. Corruption is endemic, it involves two parties – the corrupted and the corrupter. It cannot happen just because of politicians. It is a consensus. It has to do with habits and connivance. Is it possible and how long would it take for Italy to gain a corruption-free status like the rest of Europe?
Not even a full democracy
Sadly Italy doesn’t score as a full democracy (pdf). It is the only country in the OECD considered to have a “Flawed Democracy”.
Jet Lag
Jet lag is when your body pretends to be awake (while sleeping) and your brain pretends to be sleeping (while awake), during the day.
U.S.A. and back
I’m back from a long holidays in the U.S.A. More than 3 weeks spent there with my wife and Matteo, our 14 years old nephew.The places are wonderful and amazing. We landed at San Francisco, then moved to Utah, Colorado and Arizona, visiting most of the parks we encountered, hiking around on moderate/strenous trails, and then we get back to California to catch our flight from Los Angeles.
We shot about 500 analog slides, about twice digital pictures and two hours and half of digital video. My log ran about 23 pages though composed by brief notes that have to be expanded in order to be human-readable.
All this will take some time to be ready for making it on-lineable.
I’ll be back before with some travel impressions.
Transformers
Once upon a time, good old cartoons were. Goldrake (Ufo Robot Grendizer), Mazinger, Daitarn 3, Trider G7, Gundam. Then we grew up and new cartoons weren’t any longer what they used to be :-), Transformers (at least for my generation) was the beginning of the decline (at least on TV). I didn’t like much this series because the plot was childish, the transformations were fictitious and the idea of sentient robots was implemented in a pretty ridiculous way.
You can imagine my mindset when yesterday I entered the cinema to watch the Transformers the movie. I must admit that the movie is not that bad. It has some good action moments, some intriguing ideas, although it lacks of a well thought plot and most of the cues are not deployed as one may expect. The part I found most disappointing was that transformations were absolutely undecodable. You see a car, then in a second and half it is robot, but you can’t tell how it did. This is, maybe, one of the greatest difference with the cartoon, where transformations took many seconds in a sort of accelerated bullet time. The intent, back then, was clear – sell the merchandise.
V-day
I have always feel distrust in demonstrations, rallies and overly crowded shouting events. I always though that when you are just a number, an atom of a whole, is easy to manipulate your intentions. Maybe you demonstrate for peace and political leaders use the numbers to show how strong is their party. I mean you are counted for something you don’t even think of supporting.This time I feel different, this initiative is political but is not tied to any party and is intended to start fixing some of the troubles we Italians have. The promoter is not a party leader nor empathizing of any party. You can read the motivations here in English, or here in Italian.