During a recent lunch outing a discussion came up about one of our clients who doesn’t have enough money for a particular technology related item, but other renovations are happening and people within the group are getting mad. Of course the discussion turned to what all was set forth in the budget and how the IT division was hurting. The typical response is all too common, “There is a pot full of money over there, but we can’t touch it.”
We as programmers need to understand the business side of things, one of which is budgeting. I have made the mistake of assuming everybody is familiar with budget; not only just what they are in general but truly how to use one. Most people understand a budget is used to assign a name for a certain amount of monies, but some of the key ideas behind using a budget is you track throughout a specified time what you actually spend and most important of all the ability to adjust the budget the next time around.
I would like to touch lightly on the first point. If I were to put myself on a diet, I would start out with two things: to write down what I plan on eating, and then to write down what I actually eat. This makes it easier to see if I am really following what I had originally set out to do. Living by a budget is very similar. You absolutely must keep track of what you actually spend, otherwise assigning categories does not do any good. With this said there are key instances where adjusting the budget is crucial.
My wife and I have staunchly lived off of a budget for almost two years. At the end of every month we come together as a couple and decide how we will spend our money for the following month as well as to review the current month’s budget to see how well we did (see which categories we were either short or long on). There are few cases where we have to go over a category in our budget. We have identified a few categories which we deem critical, this means we will (and have) moved money from a noncritical category to the critical category. To get back on topic, in the business world few categories, IT included, are not a critical category and as such it will be difficult to get money moved over to the IT budget.
I view this as a good thing to have in place, I would definitely be in a bad mood to learn some of the IT monies which are needed and instead to be used to make a new awning or some other basically useless item. Developers need to appreciate this particular ‘red tape’ as it is a protection put in place for the company.
With all that said, it is also something we must learn to negotiate with. I do feel most of our needs (note: I did not say wants) are legitimate and came before others. How to battle this bureaucracy is subjective which I will not get into, and this differs dramatically from organization to organization, but is something we must learn to accomplish.