• If programmers ran the company? Read Animal Farm by George Orwell.

    Also, how many of the DOT COM start-ups WERE run by programmers, and before that the Silicon Valley start-ups? For every Bill Gates who succeeded, there is a Joe Bloggs who failed dismally.

    My IT career can now be measured in decades and the one thing I have learnt that THE most important skill to learn is how to deal with people. Yes you have to be technically aware, but you will be nothing but a backroom boy if that is all that you are.

    By definition, the people at the bottom of the corporate food chain DO see the minutae of the organistion. The won't see the external factors that concern people at the other end of the chain. All they can hope to do is to improve their particular section, get promoted etc.

    At the top of the corporate ladder the CEO's aren't interested with the minutae, they have employees for that! You cannot steer a major company by watching the internal minutae, particularly as you have to be looking at external factors.

    It is the role of the middle managers to inject some realism into the fantasies of senior management. The middle manager should have a grasp of the technicalities and timescales involved in a project. That said, they also need to have a foot in the other camp and be aware of the cost constraints and deadlines being imposed.

    The more layers of management there are the less likely a technical constraint is going to be listened to.

    To give a real example, I used to receive a 12Gb tape of a SQL6.5 database. I had to restore this tape, then transfer the data across onto a SQL7.0 box. I then had to run various processes to migrate this into a data warehouse. That 12Gb would result in 20Gb of data in the data warehouse.

    If I got the tape at 08:00 then by 14:00 I could have the job done. This was with no contingency for SQL6.5 problems, heavy network traffic, dodgy tapes etc. In between 10:00 and 14:00 I would get upwards of 10 phone calls asking when the data would be available.

    I even got a grilling from the CEO on one occassion because the data was needed for a client demonstration at 12:00!

    Eventually, I got smart and told them that the sheer volume of data meant that only next days service could be achieved.

    LESSON. Unless you are 100% confident, never give estimates in hours. Give estimates in days. Management will always try and truncate an estimate given in hours. For some reason they won't try and truncate and estimate of 1 day.